// JavaScript Document
/* insira assim...
<input type="text" maxlength="13" onKeyPress="mask(this,phoneMask);" />
*/
function onlyNumbers(value){
	value = value.replace(/\D/g, '');
	return value;
}

function onlyLetters(value){
	value = value.replace(/[^A-Za-z]/g, '');
	return value;
}

function onlyAlpha(value){
	value = value.replace(/\W/gi, '');
	return value;
}

function shortYearDateMask(value){
	// maxlength="8"
	// xx/xx/xx
    value = value.replace(/\D/g, '');
    value = value.replace(/(\d{2})(\d{2})/g, '$1/$2');
    value = value.replace(/(\d{2})(\d{2})/g, '$1/$2');
    return value;
}

function longYearDateMask(value){
	// maxlength="10"
	// xx/xx/xxxx
    value = value.replace(/\D/g, '');
    value = value.replace(/^(\d{2})(\d{2})/g, '$1-$2');
	value = value.replace(/(\d{4})$/g, '-$1');
    return value;
}

function phoneMask(value){
	// maxlength="13"
	// (xx)xxxx-xxxx
    value = value.replace(/\D/g, '');
    value = value.replace(/^(\d{2})(\d)/g, '($1)$2');
    value = value.replace(/(\d{4})(\d)/g, '$1-$2');
    return value;
}

function cepMask(value){
	// maxlength="9"
	// xxxxx-xxx
    value = value.replace(/\D/g, '');
    value = value.replace(/(\d{5})(\d)/, '$1-$2');
    return value;
}

function cpfMask(value){
	// maxlength="14"
	// xxx.xxx.xxx-xx
	value = value.replace(/\D/g, '');
	value = value.replace(/(\d{3})(\d)/,'$1.$2');
	value = value.replace(/(\d{3})(\d)/,'$1.$2');
	value = value.replace(/([\d|\.]{11})(\d{2})/,'$1-$2');
	return value;
}

function cnpjMask(value){
	// maxlength="18"
	// xx.xxx.xxx/xxxx-xx
	value = value.replace(/\D/g, '');
	value = value.replace(/^(\d{2})(\d)/,'$1.$2');
	value = value.replace(/(\d{3})(\d)/,'$1.$2');
	value = value.replace(/(\d{3})(\d)/,'$1/$2');
	value = value.replace(/(\d{4})(\d)/,'$1-$2');
	return value;												
}

function currencyMask(value)
{
    // maxlength: any
    // xxxx,xx
    value = onlyNumbers(value);
    
    // Remove todos os zeros à esquerda.
    while ((value[0] && value[0] == '0') && value[1])
        value = value.substr(1,value.length);
        
    //-> retirado por não funcionar no i.e.
	// Acrescenta zeros à esquerda até que o tamanho da string seja pelo menos 3.
    //while (value.length < 3)
       //value = '0' + value; 
        
    // Acrescenta a vírgula.
    value = (value.substr(0,value.length - 2)) + ',' + (value.substr(value.length - 2, value.length));
    
    return value;
}

function mask(control, maskName){
    _control = control;
    _maskName = maskName;
    setTimeout('applyMask()', 1);
}

function applyMask(){
    _control.value = _maskName(_control.value);
}
