function formataTelefone(campo){
	var tel = campo.value;
	if (tel.length == 9){
		tel = tel.replace("-","");	
		campo.value = tel.substring(0, 4) + "-" + tel.substring(4, tel.length);
	}
	else
		if (tel.length > 3){
			tel = tel.replace("-","");
			campo.value = tel.substring(0,3) + "-" + tel.substring(3, tel.length);
		}				
}

function formataCep(campo){
	var cep = campo.value;
	if (cep.length > 5){
		cep = cep.replace("-","");
		campo.value = cep.substring(0,5) + "-" + cep.substring(5, cep.length);
	}				
}



function sourcecodeprotect(e) {
	var ns = (document.layers)? true:false;
	var ie = (document.all)? true:false;
	if (ns&&(e.which==3)) 
		return false;
	else 
		if (ie&&(window.event.button==2)) 
			alert("Não é permitido o uso do botão direito neste campo.");
		else 
			return true;
}


function contadorCaracteres(texto, labelContador){
	resto = texto.maxlength - texto.value.length - 1;
	labelContador.innerHTML = resto;
	if(resto < 1){
		alert("Limite do tamanho do texto!");
		texto.value = texto.value.substring(0, texto.maxlength - 1);
		texto.focus();
	}
}




function formataMoeda(campo){
	var valor = campo.value;
	
	if (valor.length == 0)
		return;
	
	if ((valor.length == 5) && (valor.substr(0, 3) == "0,0")){
		campo.value = "0," + valor.substr(3, 2);
	}
	else
		if (valor.length == 1){
			campo.value = "0,0" + valor;
		}
		else
			if ((valor.length == 5) && (valor.substr(0, 2) == "0,")){
				campo.value = valor.substr(2,1) + "," + valor.substr(3, 2);
			}
			else
				if ((valor.length == 5) && (valor.substr(0,1) != "0")){
					campo.value = valor.substr(0, 1) + valor.substr(2, 1) + "," + valor.substr(3,2);																							
				}								
				else{
					valor = valor.replace(",", "");
					campo.value = valor.substr(0, valor.length - 2) + "," + valor.substr(valor.length - 2, 2);								
				}
			
				
				
}
	

function formataData(campo){
	var data = campo.value;
	if ((data.length == 2) || (data.length == 5)){
		campo.value = data + "/";
	}
}
	


function validaCombo(campo, labelCampo){
	if (campo.selectedIndex <= 0){
		alert("É preciso selecionar um item do campo " + labelCampo);
		campo.focus();
		return false;
	}
	return true;
}




function validaHora(valor){

	if (valor.length != 5)
		return false;

	hora = (valor.substring(0,2)); 
	minuto = (valor.substring(3,5)); 

	// verifica o dia valido para cada mes 
	if (hora > 24){
		return false;
	}
	
	if (minuto > 59){
		return false;
	}		

	return true;



}


function validaCampoHora(campo, labelCampo){
	var valor = campo.value;

	if (valor.length != 5){
		alert("Horário Inválido!");
		campo.value = "";
		campo.focus();
		return false;
	}

	hora = (valor.substring(0,2)); 
	minuto = (valor.substring(3,5)); 

	// verifica o dia valido para cada mes 
	if (hora > 24){
		alert("Horário Inválido!");	
		campo.value = "";
		campo.focus();		
		return false;
	}
	
	if (minuto > 59){
		alert("Horário Inválido!");	
		campo.value = "";	
		campo.focus();		
		return false;
	}		

	return true;



}

function validaPeriodo(valor){
	if (valor.length != 8)
		return false;
		
	hora = (valor.substring(0,2)); 
	minuto = (valor.substring(3,5)); 
	segundo = (valor.substring(6,8)); 

	// verifica o dia valido para cada mes 
	if (hora > 23){
		return false;
	}

	if (minuto > 59){
		return false;
	}
	
	if (segundo > 59){
		return false;
	}		

	return true;
}






function formataHora(campo){
	var hora = campo.value;
	if (hora.length == 2){
		campo.value = hora + ":";
	}
}	

function formataPeriodo(campo){
	var minuto = campo.value;
	if ((minuto.length == 2) || (minuto.length == 5)){
		campo.value = minuto + ":";
	}
	minuto = campo.value;
	if ((parseInt(minuto.charAt(0)) < 0) || (parseInt(minuto.charAt(0)) > 2)){
		alert("Período inválido!");
		campo.value = "";
	}
	
	if ((parseInt(minuto.charAt(3)) < 0) || (parseInt(minuto.charAt(3)) > 5)){
		alert("Período inválido!");
		campo.value = "";		
	}	
	
	if ((parseInt(minuto.charAt(6)) < 0) || (parseInt(minuto.charAt(6)) > 5)){
		alert("Período inválido!");
		campo.value = "";		
	}		
}
	


function comparaData(dtInicio, dtTermino, inicio, fim){
	
	anoInicio = dtInicio.substring(6, 10);
	anoTermino = dtTermino.substring(6, 10);		
	diaInicio = dtInicio.substring(0, 2);
	diaTermino = dtTermino.substring(0, 2);		
	mesInicio = dtInicio.substring(3, 5);
	mesTermino = dtTermino.substring(3, 5);				
	horaInicio = inicio.substring(0, 2);
	horaFim = fim.substring(0, 2);
	minutoInicio = inicio.substring(3, 5);
	minutoFim = fim.substring(3, 5);
	

	
	
	
	
	if (anoInicio > anoTermino)
		return false;
	
	if ((anoInicio == anoTermino) && (mesInicio > mesTermino))
		return false;
	
	if ((anoInicio == anoTermino) && (mesInicio == mesTermino) && (diaInicio > diaTermino))	
		return false;
		
	if (horaInicio >= horaFim)
		return false;
	
	return true;			

}




function validaDataAntiga(campo){
	var data = campo.value;
	dia = (data.substring(0,2)); 
	mes = (data.substring(3,5)); 
	ano = (data.substring(6,10)); 
	dataDigitada = (data.substring(6,10)) + (data.substring(3,5)) + (data.substring(0,2));

	// verifica o dia valido para cada mes 
	if ((dia < 01)||(dia < 01 || dia > 30) && (  mes == 04 || mes == 06 || mes == 09 || mes == 11 ) || dia > 31) { 
		alert("Data inválida!"); 
		campo.value = "";
		campo.focus();
		return false; 
	} 

	// verifica se o mes e valido 
	if (mes < 01 || mes > 12 ) { 
		alert("Data inválida!"); 
		campo.value = "";
		campo.focus();
		return false; 
	} 

	// verifica se e ano bissexto 
	if (mes == 2 && ( dia < 01 || dia > 29 || ( dia > 28 && (parseInt(ano / 4) != ano / 4)))) { 
		alert("Data inválida!"); 
		campo.value = "";
		campo.focus();
		return false; 
	} 
	
	if (ano.length < 4){
		alert("Data inválida!"); 
		campo.value = "";
		campo.focus();
		return false; 
	}

	return true;	
}



function validaData(campo){
	var data = campo.value;
	dia = (data.substring(0,2)); 
	mes = (data.substring(3,5)); 
	ano = (data.substring(6,10)); 
	dataDigitada = (data.substring(6,10)) + (data.substring(3,5)) + (data.substring(0,2));

	// verifica o dia valido para cada mes 
	if ((dia < 01)||(dia < 01 || dia > 30) && (  mes == 04 || mes == 06 || mes == 09 || mes == 11 ) || dia > 31) { 
		alert("Data inválida!"); 
		campo.value = "";
		campo.focus();
		return false; 
	} 

	// verifica se o mes e valido 
	if (mes < 01 || mes > 12 ) { 
		alert("Data inválida!"); 
		campo.value = "";
		campo.focus();
		return false; 
	} 

	// verifica se e ano bissexto 
	if (mes == 2 && ( dia < 01 || dia > 29 || ( dia > 28 && (parseInt(ano / 4) != ano / 4)))) { 
		alert("Data inválida!"); 
		campo.value = "";
		campo.focus();
		return false; 
	} 
	
	if (ano.length < 4){
		alert("Data inválida!"); 
		campo.value = "";
		campo.focus();
		return false; 
	}

	hoje = new Date();
	diaHoje = hoje.getDate();
	mesHoje = hoje.getMonth() + 1;
	anoHoje = hoje.getYear();
	
	if (diaHoje < 10)
		diaHoje = "0" + diaHoje;
	
	if (mesHoje < 10)
		mesHoje = "0" + mesHoje;			

	dataHoje = anoHoje + "" + mesHoje + "" + diaHoje;
	
	if (dataDigitada <= dataHoje){
		alert("Data anterior à data atual!");
		campo.value = "";
		campo.focus();
		return false;
	}
	
	return true;	
}

function obrigatorio(campo, label){
	var valor = campo.value;
	while ((valor.search(" ") >= 0) || (valor.search(String.fromCharCode(10)) >= 0) || (valor.search(String.fromCharCode(13)) >= 0)){
		valor = valor.replace(" ", "");
		valor = valor.replace(String.fromCharCode(10), "");
		valor = valor.replace(String.fromCharCode(13), "");
	}	
	if (valor == ""){
		alert("O preenchimento do campo " + label + " é obrigatório!");
		campo.value = "";
		campo.focus();
		return false;
	}
	else
		return true;
	
}

function limpaCampo(campo){
	var valor = campo.value;
	while ((valor.search(" ") >= 0) || (valor.search(String.fromCharCode(10)) >= 0) || (valor.search(String.fromCharCode(13)) >= 0)){
		valor = valor.replace(" ", "");
		valor = valor.replace(String.fromCharCode(10), "");
		valor = valor.replace(String.fromCharCode(13), "");
	}	
	if (valor == ""){
		campo.value = "";
	}

	return true;
}


function validaEmail(campo){
	email = campo.value;
	if ((email.indexOf("@") == 0) || (email.indexOf("@") == email.length - 1)){
		alert("O campo E-Mail está num formato inválido!");
		campo.focus();
		return false;
	}

	
	i = 0;
	while(email.search("@") > 0 ){
		email = email.replace("@","");
		i++;
	}

	if (i != 1){
		alert("O campo E-Mail está num formato inválido!");
		campo.focus();
		return false;
	}
	
	return true;
}

function limpa_string(S){
	// Deixa so' os digitos no numero
	var Digitos = "0123456789";
	var temp = "";
	var digito = "";

	for (var i=0; i<S.length; i++)	{
		digito = S.charAt(i);
		if (Digitos.indexOf(digito)>=0)	{
			temp=temp+digito;	}
	} //for

	return temp;
}

function valida_CPF(s)	{
	var i;
	s = limpa_string(s);
	var c = s.substr(0,9);
	var dv = s.substr(9,2);
	var d1 = 0;
	for (i = 0; i < 9; i++)
	{
		d1 += c.charAt(i)*(10-i);
	}
        if (d1 == 0) return false;
	d1 = 11 - (d1 % 11);
	if (d1 > 9) d1 = 0;
	if (dv.charAt(0) != d1)
	{
		return false;
	}

	d1 *= 2;
	for (i = 0; i < 9; i++)
	{
		d1 += c.charAt(i)*(11-i);
	}
	d1 = 11 - (d1 % 11);
	if (d1 > 9) d1 = 0;
	if (dv.charAt(1) != d1)
	{
		return false;
	}
        return true;
}


function pesquisaAluno(){

	//var aluno = prompt("Digite o nome do aluno: ","");
	//var auxAluno = "";
	//if (aluno != null){
		//auxAluno = aluno;
		//while (auxAluno.search(" ") >= 0)
			//auxAluno = auxAluno.replace(" ", "");
			//if (auxAluno == "")
				//aluno = "";
	//}
	//else
		//return false;
	
	window.open("pesquisaaluno.php","aluno","location=no,menubar=no,directories=no,resizable=no,status=no,toolbar=no,scrollbars=no,left=10,top=10,width=720,height=360");
}




function valida_CGC(s)
{
	var i;
	s = limpa_string(s);
	var c = s.substr(0,12);
	var dv = s.substr(12,2);
	var d1 = 0;
	for (i = 0; i < 12; i++)
	{
		d1 += c.charAt(11-i)*(2+(i % 8));
	}

    if (d1 == 0) return false;
        d1 = 11 - (d1 % 11);
	if (d1 > 9) d1 = 0;
	if (dv.charAt(0) != d1)
	{
		return false;
	}

	d1 *= 2;
	for (i = 0; i < 12; i++)
	{
		d1 += c.charAt(11-i)*(2+((i+1) % 8));
	}
	d1 = 11 - (d1 % 11);
	if (d1 > 9) d1 = 0;
	if (dv.charAt(1) != d1)
	{
		return false;
	}
	return true;
}



function FormataCNPJ( el ) 
{ 
	var cnpjCpf = el.value;
	if (el.value != ""){
		if (el.value.search("-") < 0){
			cnpjCpf = cnpjCpf.substr(0, cnpjCpf.length - 2) + "-" + cnpjCpf.substr(cnpjCpf.length - 2, 2);
			el.value = cnpjCpf;
		}
	}
} 


function limpaCampo2(campo){
	var valor = campo.value;
	valor = valor.replace("-", "");
	campo.value = valor;
}

function validaCnpjCpf(valor){
	if (valor.length == 15){
		if(!(valida_CGC(valor))){
			alert("CNPJ inválido!")	
			return false;
		}
	}	
	else{
		if (valor.length == 12){
			if(!(valida_CPF(valor))){
				alert("CPF inválido!");
				return false;
			}
		}		
		else{
			alert("CNPJ ou CPF inválido!");
			return false;
		}
	}
	return true;
}

function popdate(obj,div,tam,ddd,evento)
{
	if (evento != undefined){
		var xpos = (evento.x - 100) + "px";
		var ypos = (evento.y - 100) + "px";
		document.getElementById(div).style.top = ypos;
		document.getElementById(div).style.left = xpos;
	}
		
    if (ddd) 
    {
        day = ""
        mmonth = ""
        ano = ""
        c = 1
        char = ""
        for (s=0;s<parseInt(ddd.length);s++)
        {
            char = ddd.substr(s,1)
            if (char == "/") 
            {
                c++; 
                s++; 
                char = ddd.substr(s,1);
            }
            if (c==1) day    += char
            if (c==2) mmonth += char
            if (c==3) ano    += char
        }
        ddd = mmonth + "/" + day + "/" + ano
    }
  
    if(!ddd) {today = new Date()} else {today = new Date(ddd)}
    date_Form = eval (obj)
    if (date_Form.value == "") { date_Form = new Date()} else {date_Form = new Date(date_Form.value)}
  
    ano = today.getFullYear();
    mmonth = today.getMonth ();
    day = today.toString ().substr (8,2)
  
    umonth = new Array ("Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro")
    days_Feb = (!(ano % 4) ? 29 : 28)
    days = new Array (31, days_Feb, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31)

    if ((mmonth < 0) || (mmonth > 11))  alert(mmonth)
    if ((mmonth - 1) == -1) {month_prior = 11; year_prior = ano - 1} else {month_prior = mmonth - 1; year_prior = ano}
    if ((mmonth + 1) == 12) {month_next  = 0;  year_next  = ano + 1} else {month_next  = mmonth + 1; year_next  = ano}
    txt  = "<table bgcolor='#ACA899' style='border:solid #ACA899; border-width:2' cellspacing='0' cellpadding='3' border='0' width='"+tam+"' height='"+tam*1.1 +"'>"
    txt += "<tr bgcolor='#FFFFFF'><td colspan='7' align='center'><table border='0' cellpadding='0' width='100%' bgcolor='#FFFFFF'><tr>"
    txt += "<td width=20% align=center><a href=\"javascript:popdate('"+obj+"','"+div+"','"+tam+"','"+((mmonth+1).toString() +"/01/"+(ano-1).toString())+"')\" class='Cabecalho_Calendario' title='Ano Anterior'><<</a></td>"
    txt += "<td width=20% align=center><a href=\"javascript:popdate('"+obj+"','"+div+"','"+tam+"','"+( "01/" + (month_prior+1).toString() + "/" + year_prior.toString())+"')\" class='Cabecalho_Calendario' title='Mês Anterior'><</a></td>"
    txt += "<td width=20% align=center><a href=\"javascript:popdate('"+obj+"','"+div+"','"+tam+"','"+( "01/" + (month_next+1).toString()  + "/" + year_next.toString())+"')\" class='Cabecalho_Calendario' title='Próximo Mês'>></a></td>"
    txt += "<td width=20% align=center><a href=\"javascript:popdate('"+obj+"','"+div+"','"+tam+"','"+((mmonth+1).toString() +"/01/"+(ano+1).toString())+"')\" class='Cabecalho_Calendario' title='Próximo Ano'>>></a></td>"
    txt += "<td width=20% align=right><a href=javascript:force_close('"+div+"') class='Cabecalho_Calendario' title='Fechar Calendário'><b><img src='imagem/btfecha.gif' align='absolutemiddle' border='0'></b></a></td></tr></table></td></tr>"
    txt += "<tr><td colspan='7' align='right' bgcolor='#ECE9D8' class='mes'><a href=javascript:pop_year('"+obj+"','"+div+"','"+tam+"','" + (mmonth+1) + "') class='mes'>" + ano.toString() + "&nbsp;/&nbsp;</a>"
    txt += " <a href=javascript:pop_month('"+obj+"','"+div+"','"+tam+"','" + ano + "') class='mes'>" + umonth[mmonth] + "</a> <div id='popd' style='position:absolute'></div></td></tr>"
    txt += "<tr bgcolor='#ACA899'><td width='14%' class='dia' align=center><b>Dom</b></td><td width='14%' class='dia' align=center><b>Seg</b></td><td width='14%' class='dia' align=center><b>Ter</b></td><td width='14%' class='dia' align=center><b>Qua</b></td><td width='14%' class='dia' align=center><b>Qui</b></td><td width='14%' class='dia' align=center><b>Sex<b></td><td width='14%' class='dia' align=center><b>Sab</b></td></tr>"
    today1 = new Date((mmonth+1).toString() +"/01/"+ano.toString());
    diainicio = today1.getDay () + 1;
    week = d = 1
    start = false;

    for (n=1;n<= 42;n++) 
    {
        if (week == 1)  txt += "<tr bgcolor='#FBFAF4' align=center>"
        if (week==diainicio) {start = true}
        if (d > days[mmonth]) {start=false}
        if (start) 
        {
            dat = new Date((mmonth+1).toString() + "/" + d + "/" + ano.toString())
            day_dat   = dat.toString().substr(0,10)
            day_today  = date_Form.toString().substr(0,10)
            year_dat  = dat.getFullYear ()
            year_today = date_Form.getFullYear ()
            colorcell = ((day_dat == day_today) && (year_dat == year_today) ? " bgcolor='#ACA899' " : "" )
			
			diaRetorno = d.toString()
			if (diaRetorno.length == 1)
				diaRetorno = "0" + diaRetorno
			mesRetorno = (mmonth + 1).toString()
			if (mesRetorno.length == 1)
				mesRetorno = "0" + mesRetorno

            txt += "<td"+colorcell+" align=center><a href=javascript:block('"+  diaRetorno + "/" + mesRetorno + "/" + ano.toString() +"','"+ obj +"','" + div +"') class='data'>"+ d.toString() + "</a></td>"			
	        //txt += "<td"+colorcell+" align=center><a href=javascript:block('"+  d + "/" + (mmonth+1).toString() + "/" + ano.toString() +"','"+ obj +"','" + div +"') class='data'>"+ d.toString() + "</a></td>"

            d ++ 
        } 
        else 
        { 
            txt += "<td class='data' align=center> </td>"
        }
        week ++
        if (week == 8) 
        { 
            week = 1; txt += "</tr>"} 
        }
        txt += "</table>"
        div2 = eval (div)
        div2.innerHTML = txt 
}
  
// função para exibir a janela com os meses
function pop_month(obj, div, tam, ano)
{
  txt  = "<table bgcolor='#CCCCFF' border='0' width=80>"
  for (n = 0; n < 12; n++) { txt += "<tr><td align=center><a href=\"#\" onclick=\"javascript:popdate('"+obj+"','"+div+"','"+tam+"','"+("01/" + (n+1).toString() + "/" + ano.toString())+"')\">" + umonth[n] +"</a></td></tr>" }
  txt += "</table>"
  popd.innerHTML = txt
}

// função para exibir a janela com os anos
function pop_year(obj, div, tam, umonth)
{
  txt  = "<table bgcolor='#CCCCFF' border='0' width=160>"
  l = 1
  for (n=1991; n<2012; n++)
  {  if (l == 1) txt += "<tr>"
     txt += "<td align=center><a href=\"#\" onclick=\"javascript:popdate('"+obj+"','"+div+"','"+tam+"','"+(umonth.toString () +"/01/" + n) +"')\">" + n + "</a></td>"
     l++
     if (l == 4) 
        {txt += "</tr>"; l = 1 } 
  }
  txt += "</tr></table>"
  popd.innerHTML = txt 
}

// função para fechar o calendário
function force_close(div) 
    { div2 = eval (div); div2.innerHTML = ''}
    
// função para fechar o calendário e setar a data no campo de data associado
function block(data, obj, div)
{ 
    force_close (div)
    obj2 = eval(obj)
    obj2.value = data 
}