function TestaComboSelecionado(combo)
{
	indice = combo.selectedIndex; 
	if (indice == -1) {
		return '';
	}
	selecionado = combo.options[indice].value; 
	return selecionado;
}

function TestaRadioSelecionado(radio)
{
    selecionado = "";
    if (!(radio.length >= 1)) 
    {
        if (radio.checked) 
            selecionado = radio.value;
        else
            selecionado = 0;
    }
    for (cont = 0; cont < radio.length; cont++)
    {
        if (radio[cont].checked) 
        {
            selecionado = radio[cont].value; 
            break;
        } 
        else
            selecionado = 0;
    }
    return selecionado;
} 

function Trim(String)
{
	pos = 0; 
	str = String.substring(pos,pos+1); 
	cont = 0; 
	straux = String;
	
	while ((str==" ")&&(cont<=String.length)) {
		pos = pos + 1;
		straux = String.substring(pos, String.length); 
		str = String.substring(pos,pos+1); 
		cont = cont + 1;
	}
	
	String = straux;
	pos = String.length;
	str = String.substring(pos-1,pos);
	cont = 0;
	while ((str==" ")&&(cont<=String.length)) {
		pos = pos - 1;
		straux = String.substring(0, pos);
		str = String.substring(pos-1,pos);
		cont = cont + 1;
	}
	return straux;
}

function TestaData(data, desc)
{
	vetor = data.value.split("/");

	if (vetor.length != 3) {
		alert(desc+' inválida, o formato está incorreto');
		return false;
	}
	dia = vetor[0];
	mes = vetor[1];
	ano = vetor[2];

	if (vetor[0] == '' || vetor[1] == '' || vetor[2] == '') {
		alert(desc+' inválida, o formato está incorreto');
		return false;
	}

	if ((dia>31)||(dia<1)) {
		alert('Dia inválido na ' + desc + '. Por favor, preencha corretamente');
		return false;
	}
	if ((mes>12)||(mes<1)) {
		alert('Mês inválido na ' + desc + '. Por favor, preencha corretamente');
		return false;
	}
	if (ano.length < 4) {
		alert('Ano inválido na ' + desc + '. Por favor, preencha corretamente');
		return false;
	}
	if (mes==2)	{
			if (((dia)>29)||(dia=='29' && (ano)%4!=0)) {
				alert('Dia inválido na ' + desc + '. Por favor, preencha corretamente');
				return false;
			}
	} else {
		if ( ( (mes==4) || (mes==6) || (mes==9) || mes=='11') && (dia>30) ) {
			alert('Dia inválido na ' + desc + '. Por favor, preencha corretamente');
			return false;
		} else {
			if (dia>31) {
				alert('Dia inválido na ' + desc + '. Por favor, preencha corretamente');
				return false;
			}
		}
	}
	return true;
}

function TestaCPF(st)
{
	l = st.length;

	//aleterado para se usuário não digitar os zeros na frente do CPF, completar sozinho
	if ((l == 9) || (l == 8)) {
		for (i = l ; i < 10; i++) {
			st = '0' + st
		}
	}
	l = st.length;
	st2 = "";
	for (i = 0; i < l; i++) {
		caracter = st.substring(i,i+1);
		if ((caracter >= '0') && (caracter <= '9'))
			st2 = st2 + caracter;
	}
	if ((st2.length > 11) || (st2.length < 10))
		return (false);
	if (st2.length==10)
		st2 = '0' + st2;
	digito1 = st2.substring(9,10);
	digito2 = st2.substring(10,11);
	digito1 = parseInt(digito1,10);
	digito2 = parseInt(digito2,10);
	sum = 0; mul = 10;
	for (i = 0; i < 9 ; i++) {
		digit = st2.substring(i,i+1);
		tproduct = parseInt(digit ,10) * mul;
		sum += tproduct;
		mul--;
	}
	dig1 = ( sum % 11 );
	if ( dig1==0 || dig1==1 )
		dig1=0;
	else
		dig1 = 11 - dig1;
	if (dig1!=digito1)
		return (false);
	sum = 0;
	mul = 11;
	for (i = 0; i < 10 ; i++) {
		digit = st2.substring(i,i+1);
		tproduct = parseInt(digit ,10)*mul;
		sum += tproduct;
		mul--;
	}
	dig2 = (sum % 11);
	if ( dig2==0 || dig2==1 )
		dig2=0;
	else
		dig2 = 11 - dig2;
	if (dig2 != digito2)
		return (false);
	return (true);
}

if (navigator.appName.indexOf('Microsoft') != -1)
{
 	clientNavigator = "IE";
} else {
 	clientNavigator = "Other";
}
 
function Bloqueia_Caracteres(evnt)
{
 	//Função permite digitação de números
 	if (clientNavigator == "IE") {
 		if (evnt.keyCode < 48 || evnt.keyCode > 57) {
 			return false
 		}
 	} else {
 		if ((evnt.charCode < 48 || evnt.charCode > 57) && evnt.keyCode == 0) {
 			return false
 		}
 	}
}

function Mascara(objeto, evt, mask)
{
	var LetrasU = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
	var LetrasL = 'abcdefghijklmnopqrstuvwxyz';
	var Letras  = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
	var Numeros = '0123456789';
	var Fixos  = ',().-:/ '; 
	var Charset = " !\"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_/`abcdefghijklmnopqrstuvwxyz{|}~";
	
	evt = (evt) ? evt : (window.event) ? window.event : "";
	var value = objeto.value;
	if (evt) {
		var ntecla = (evt.which) ? evt.which : evt.keyCode;
		tecla = Charset.substr(ntecla - 32, 1);
		if (ntecla < 32) return true;
		
		var tamanho = value.length;
		if (tamanho >= mask.length) return false;
		
		var pos = mask.substr(tamanho,1); 
		while (Fixos.indexOf(pos) != -1) {
			value += pos;
			tamanho = value.length;
			if (tamanho >= mask.length) return false;
			pos = mask.substr(tamanho,1);
		}
	
		switch (pos) {
			case '#' : if (Numeros.indexOf(tecla) == -1) return false; break;
			case 'A' : if (LetrasU.indexOf(tecla) == -1) return false; break;
			case 'a' : if (LetrasL.indexOf(tecla) == -1) return false; break;
			case 'Z' : if (Letras.indexOf(tecla) == -1) return false; break;
			case '*' : objeto.value = value; return true; break;
			default : return false; break;
		}
	}
	objeto.value = value; 
	return true;
}

function MaskCEP(objeto, evt)
{ 
	return Mascara(objeto, evt, '##.###-###');
}

function MaskTelefone(objeto, evt)
{ 
	return Mascara(objeto, evt, '(##) ####-####');
}

function MaskCPF(objeto, evt)
{ 
	return Mascara(objeto, evt, '###.###.###-##');
}

function MaskData(objeto, evt)
{ 
	return Mascara(objeto, evt, '##/##/####');
}

function MaskHora(objeto, evt)
{ 
	return Mascara(objeto, evt, '##:##');
}

function TestaEmail(email)
{
	if(!email.value.match(/([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+.[a-zA-Z0-9._-]+)/gi))	{
		return false
	}
	return true;
}

var max = 1000;
var ancho = 380;

function progreso_tecla(obj) {
	var progreso = document.getElementById("progreso");  
	if (obj.value.length <= max) {
		progreso.style.backgroundColor = "#FFFFFF";    
		progreso.style.backgroundImage = "url(imgs/progresso.png)";    
		progreso.style.color = "#000000";
		var pos = ancho-parseInt((ancho*parseInt(obj.value.length))/max);
		progreso.style.backgroundPosition = "-"+pos+"px 0px";
	} else {
		progreso.style.backgroundColor = "#CC0000";
		progreso.style.backgroundImage = "url()";
		progreso.style.color = "#FFFFFF";
	} 
	progreso.innerHTML = "("+obj.value.length+" / "+max+")";
}
