function abreDiv(div) {
	var div_mesmo= document.getElementById(div);
	div_mesmo.style.display="block";
}

function fechaDiv(div) {
	var div_mesmo= document.getElementById(div);
	div_mesmo.style.display="none";
}

function emoticon(text) {
	var txtarea= document.getElementById("mensagem");;
	text= ' ' + text + ' ';
	
	if (txtarea.createTextRange && txtarea.caretPos) {
		var caretPos = txtarea.caretPos;
		caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? text + ' ' : text;
		txtarea.focus();
	}
	else {
		txtarea.value += text;
		txtarea.focus();
	}
}

function carregaFlash(arquivo, width, height, name) {
	document.write('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="'+width+'" height="'+height+'" id="flash'+name+'" name="'+name+'" align="middle">');
	document.write('<param name="allowScriptAccess" value="sameDomain" /><PARAM NAME=wmode VALUE=transparent /><param name="scale" value="noscale" />');
	document.write('<param name="movie" value="'+arquivo+'" /><param name="quality" value="high" /><param name="bgcolor" value="#ffffff" /><embed src="'+arquivo+'" quality="high" wmode="transparent" bgcolor="#ffffff" width="'+width+'" height="'+height+'" name="'+name+'" id="flash'+name+'" align="middle" scale="noscale"  allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />');
	document.write('</object>');
}

function atribuiValor(id_elemento, valor) {
	var elemento= document.getElementById(id_elemento);
	elemento.value= valor;
}

function atribuiClasse(id_elemento, classe) {
	var elemento= document.getElementById(id_elemento);
	elemento.className= classe;
}

function alteraCidade() {
	var id_uf = document.getElementById("id_uf");
	
	ajaxLink("id_cidade_atualiza", "alteraCidade/"+id_uf.value);
}

function setaClasse(campo, classe) {
	if(classe != undefined) {
		if (campo.lastClass == undefined){
			campo.lastClass = null;
		}
		campo.lastClass = campo.className || "";
		campo.className = classe;
	}
	else
		campo.className = campo.lastClass;
}

function alertaCampo(campo) {
	campo.className= "campo_erro";
}

function verificaLogin() {
	var usuario= document.getElementById("usuario");
	var usuario_atualiza= document.getElementById("usuario_atualiza");
	
	alphaRegExp = /^[a-z]+[0-9a-z_]+$/i
	
	if (usuario.value!="") {
		if (alphaRegExp.test(usuario.value))
			ajaxLink("usuario_atualiza", "verificaUsuarioDisponibilidade/"+usuario.value);
		else {
			var campo= Array();
			
			campo[0]= "<input type=\"hidden\" name=\"passa_login\" id=\"passa_usuario\" class=\"escondido\" value=\"\" />";
			campo[1]= "<input type=\"hidden\" name=\"passa_login\" id=\"passa_usuario\" class=\"escondido\" value=\"1\" />";
			
			usuario_atualiza.className= "vermelho";
			usuario_atualiza.innerHTML= campo[0]+"Preencha corretamente o campo login!";
			
			alert("Caracteres inválidos!\nInicie o login com letra e não use pontuação!\n");
			
			usuario.focus();
		}
	}
}

function validaEmail(email) {
	var retorno= true;
	
	if (email=="")
		retorno= false;
	if (email.indexOf("@") < 2)
		retorno= false;
	if (email.indexOf(".") < 1)
		retorno= false;
	
	return(retorno);
}

function daFoco(id_elemento) {
	var elemento = document.getElementById(id_elemento);
	elemento.focus();
}

function validaData(data_nasc, periodo) {
	var erros = "";
	if (data_nasc=="")
		erros = "Entre com a data!\n";
	else {
		var dia= data_nasc.substring(0, 2);
		var mes= data_nasc.substring(3, 5);
		var ano= data_nasc.substring(6, 10);
		
		var barra1= data_nasc.substring(2, 3);
		var barra2= data_nasc.substring(5, 6);
		
		if ((barra1=="/") && (barra2=="/")) {
			var nonNumbers = /\D/;
						
			if ( (dia<=0) || (dia>31)  || (nonNumbers.test(dia)) )
				if (erros=="") erros = "Dia inválido\n";
			else {
				if ( ((mes=="02") || (mes=="04") || (mes=="06") || (mes=="09") || (mes=="11")) && (dia=="31") )
					if (erros=="") erros = "O mes informado não possui o dia 31!\n";
			}
			if ( (mes<=0) || (mes>12)  || (nonNumbers.test(mes)) )
				if (erros=="") erros = "Mês invalido\n";
			
			if (periodo=="n") {
				var dataAtual= new Date();
				var anoAtual= dataAtual.getFullYear();
				
				if ( (ano<=0) || (ano>anoAtual) || (nonNumbers.test(ano)) )
					if (erros=="") erros = "Ano inválido!\n";
			}
			//ano bissexto
			if ((ano%4!=0) && (mes==2) && (dia>28))
				if (erros=="") erros = "Dia inválido! \n";
		}
		else
			if (erros=="") erros = "Preencha a data no formato dd/mm/AAAA\n";
	}
	return(erros);
}

function validaForm(id_form) {
	
	var area_erro= "div_erro";
	var erro_alerta= "";
	var avisar=true;
	var botao= document.getElementById("enviar");
	
	switch (id_form) {
		case 'formCoberturaInserir':
			var galeria= document.getElementById("galeria");
			var local= document.getElementById("local");
			var data= document.getElementById("data");
			
			if (galeria.value=="") {
				if (foco==null) foco= galeria;
				if (erro_alerta=="") erro_alerta= "Campo galeria não pode ser vazio!";
				setaClasse(galeria, "campo_erro");
				erro= 1;
			}
			if (local.value=="") {
				if (foco==null) foco= local;
				if (erro_alerta=="") erro_alerta= "Campo local não pode ser vazio!";
				setaClasse(local, "campo_erro");
				erro= 1;
			}
			var erro_data= validaData(data.value, "");
			if (erro_data.length>0) {
				if (foco==null) foco= data;
				if (erro_alerta=="") erro_alerta= erro_data;
				setaClasse(data, "campo_erro espaco_dir");
				erro= 1;
			}			
			break;
		case 'formAgendaInserir':
			var evento= document.getElementById("evento");
			var local= document.getElementById("local");
			var data= document.getElementById("data");
			
			if (evento.value=="") {
				if (foco==null) foco= evento;
				if (erro_alerta=="") erro_alerta= "Campo evento não pode ser vazio!";
				setaClasse(evento, "campo_erro");
				erro= 1;
			}
			if (local.value=="") {
				if (foco==null) foco= local;
				if (erro_alerta=="") erro_alerta= "Campo local não pode ser vazio!";
				setaClasse(local, "campo_erro");
				erro= 1;
			}
			var erro_data= validaData(data.value, "");
			if (erro_data.length>0) {
				if (foco==null) foco= data;
				if (erro_alerta=="") erro_alerta= erro_data;
				setaClasse(data, "campo_erro espaco_dir");
				erro= 1;
			}
			
			break;
		case 'formRecado':
			var mensagem= document.getElementById("mensagem");
			
			if (mensagem.value=="") {
				if (foco==null) foco= mensagem;
				if (erro_alerta=="") erro_alerta= "Entre com a mensagem!";
				setaClasse(mensagem, "campo_erro tamanho180");
				erro= 1;
			}
			break;
		case 'formContato':
		case 'formRevelacao':
		
			var nome= document.getElementById("nome");
			var email= document.getElementById("email");
			var telefone= document.getElementById("telefone");
			var mensagem= document.getElementById("mensagem");
			
			var erro= null;
			var foco= null;
			
			if (nome.value=="") {
				if (foco==null) foco= nome;
				if (erro_alerta=="") erro_alerta= "Campo nome não pode ser vazio!";
				setaClasse(nome, "campo_erro");
				erro= 1;
			}
			if (!validaEmail(email.value))  {
				if (foco==null) foco= email;
				if (erro_alerta=="") erro_alerta= "E-mail inválido!";
				setaClasse(email, "campo_erro");
				erro= 1;
			}
			if (telefone.value=="") {
				if (foco==null) foco= telefone;
				if (erro_alerta=="") erro_alerta= "Campo telefone não pode ser vazio!";
				setaClasse(telefone, "campo_erro");
				erro= 1;
			}
			//soh validar a msg qdo for contato
			if (id_form=="formContato") {
				if (mensagem.value=="") {
					if (foco==null) foco= mensagem;
					if (erro_alerta=="") erro_alerta= "Campo mensagem não pode ser vazio!";
					setaClasse(mensagem, "campo_erro");
					erro= 1;
				}
			}
			break;
		
		case 'formLogin':
			avisar= false;
			
			var login= document.getElementById("login_usuario");
			var senha= document.getElementById("login_senha");
			var botao= document.getElementById("login_enviar");
			var erro= null;
			var foco= null;
			
			if (login.value=="")  {
				if (foco==null) foco= login;
				setaClasse(login, "tamanho90 campo_erro espaco_dir");
				erro= 1;
			}
			if (senha.value=="") {
				if (foco==null) foco= senha;
				setaClasse(senha, "tamanho90 campo_erro espaco_dir");
				erro= 1;
			}
			break;
		
		case 'formCadastroPre':
			avisar= false;
			var email= document.getElementById("cadastropre_email");
			var erro= null;
			var foco= null;
			var botao= document.getElementById("cadastropre_enviar");
			
			if (!validaEmail(email.value))  {
				if (foco==null) foco= email;
				setaClasse(email, "campo_erro espaco_dir");
				erro= 1;
			}
	
			break;
		case 'formEsqueci':
			var email= document.getElementById("esqueci_email");
			var erro= null;
			var foco= null;
			
			if (!validaEmail(email.value))  {
				if (foco==null) foco= email;
				if (erro_alerta=="") erro_alerta= "E-mail inválido!";
				setaClasse(email, "campo_erro espaco_dir");
				erro= 1;
			}
	
			break;
			
		case 'formCadastro':
			var nome= document.getElementById("nome");
			var sexo= document.formCadastro.sexo;
			var usuario= document.getElementById("usuario");
			var passa_usuario= document.getElementById("passa_usuario");
			var data_nasc= document.getElementById("data_nasc");
			var id_cidade= document.getElementById("id_cidade");
			var senha= document.getElementById("senha");
			var senha2= document.getElementById("senha2");
			
			var erro= null;
			var foco= null;
			
			if (nome.value=="") {
				if (foco==null) foco= nome;
				if (erro_alerta=="") erro_alerta= "Campo nome não pode ser vazio!";
				setaClasse(nome, "campo_erro");
				erro= 1;
			}
			if (!sexo[0].checked && !sexo[1].checked) {
				if (erro_alerta=="") erro_alerta= "Selecione o sexo!";
				erro= 1;
			}
			if (data_nasc.value!="") {
				var erro_data_nasc= validaData(data_nasc.value, "n");
				if (erro_data_nasc.length>0) {
					if (foco==null) foco= data_nasc;
					if (erro_alerta=="") erro_alerta= erro_data_nasc;
					setaClasse(data_nasc, "campo_erro");
					erro= 1;
				}
			}
				
			if (passa_usuario.value=="") {
				if (foco==null) foco= usuario;
				if (erro_alerta=="") erro_alerta= "Escolha um login disponível e válido!";
				setaClasse(usuario, "campo_erro espaco_dir");
				erro= 1;
			}

			if (id_cidade.value=="") {
				if (foco==null) foco= id_cidade;
				if (erro_alerta=="") erro_alerta= "Selecione a cidade!";
				setaClasse(id_cidade, "campo_erro");
				erro= 1;
			}
			if (senha.value=="") {
				if (foco==null) foco= senha;
				if (erro_alerta=="") erro_alerta= "Campo senha não pode ser vazio!";
				setaClasse(senha, "campo_erro");
				erro= 1;
			}
			if (senha.value!=senha2.value) {
				if (foco==null) foco= senha2;
				if (erro_alerta=="") erro_alerta= "Campo confirmação de senha está errado!";
				setaClasse(senha2, "campo_erro");
				erro= 1;
			}
			break;
		case 'formCadastroEditar':
			var nome= document.getElementById("nome");
			var email= document.getElementById("email");
			var data_nasc= document.getElementById("data_nasc");
			var id_cidade= document.getElementById("id_cidade");
			var senha_atual= document.getElementById("senha_atual");
			var senha= document.getElementById("senha");
			var senha2= document.getElementById("senha2");
			var erro= null;
			var foco= null;
			
			if (nome.value=="") {
				if (foco==null) foco= nome;
				if (erro_alerta=="") erro_alerta= "Campo nome não pode ser vazio!";
				setaClasse(nome, "campo_erro");
				erro= 1;
			}
			
			if (!validaEmail(email.value))  {
				if (foco==null) foco= email;
				if (erro_alerta=="") erro_alerta= "E-mail inválido!";
				setaClasse(email, "campo_erro");
				erro= 1;
			}
			if (data_nasc.value!="") {
				var erro_data_nasc= validaData(data_nasc.value, "n");
				if (erro_data_nasc.length>0) {
					if (foco==null) foco= data_nasc;
					if (erro_alerta=="") erro_alerta= erro_data_nasc;
					setaClasse(data_nasc, "campo_erro");
					erro= 1;
				}
			}
			if (id_cidade.value=="") {
				if (foco==null) foco= id_cidade;
				if (erro_alerta=="") erro_alerta= "Selecione a cidade!";
				setaClasse(id_cidade, "campo_erro");
				erro= 1;
			}
			if (senha_atual.value=="") {
				if (foco==null) foco= senha_atual;
				if (erro_alerta=="") erro_alerta= "Entre com a senha atual para editar os dados!";
				setaClasse(senha_atual, "campo_erro espaco_dir");
				erro= 1;
			}
			if (senha.value!="") {
				if (senha.value!=senha2.value) {
					if (foco==null) foco= senha2;
					if (erro_alerta=="") erro_alerta= "Campo confirmação de senha está errado!";
					setaClasse(senha2, "campo_erro espaco_dir");
					erro= 1;
				}
			}
			break;
		case 'formRecupera':
			var email= document.formRecupera.email;
			var senha= document.formRecupera.senha;
			var senha2= document.formRecupera.senha2;
			var erro= null;
			var foco= null;
			
			if (!validaEmail(email.value))  {
				if (foco==null) foco= email;
				if (erro_alerta=="") erro_alerta= "E-mail inválido!";
				setaClasse(email, "campo_erro");
				erro= 1;
			}
			if (senha.value=="") {
				if (foco==null) foco= senha;
				if (erro_alerta=="") erro_alerta= "Entre com a senha!";
				setaClasse(senha, "campo_erro");
				erro= 1;
			}
			if (senha.value!=senha2.value) {
				if (foco==null) foco= senha2;
				if (erro_alerta=="") erro_alerta= "Campo confirmação de senha está errado!";
				setaClasse(senha2, "campo_erro");
				erro= 1;
			}
			break;
	}
	
	if (erro) {
		if (avisar) {
			//var form_erro= document.getElementById(area_erro);
			//form_erro.innerHTML= erro_alerta;
			alert(erro_alerta);
			foco.focus();
		}
		
		return false;
	}
	else {
		botao.disabled= true;
		botao.innerHTML= "...";
		//alert("merda");
		return true;
	}
}

function Limpar(valor, validos) {
	var result = "";
	var aux;
	for (var i=0; i < valor.length; i++) {
		aux = validos.indexOf(valor.substring(i, i+1));
		if (aux>=0) {
			result += aux;
		}
	}
	return result;
}

function formataValor(campo,teclapres) {
	var tammax = 200;
	var decimal = 2;
	var tecla = teclapres.keyCode;
	vr = Limpar(campo.value,"0123456789");
	tam = vr.length;
	dec=decimal
	
	if (tam < tammax && tecla != 8){ tam = vr.length + 1 ; }
	
	if (tecla == 8 )
	{ tam = tam - 1 ; }
	
	if ( tecla == 8 || tecla >= 48 && tecla <= 57 || tecla >= 96 && tecla <= 105 )
	{
	
	if ( tam <= dec )
	{ campo.value = vr ; }
	
	if ( (tam > dec) && (tam <= 5) ){
	campo.value = vr.substr( 0, tam - 2 ) + "," + vr.substr( tam - dec, tam ) ; }
	if ( (tam >= 6) && (tam <= 8) ){
	campo.value = vr.substr( 0, tam - 5 ) + "." + vr.substr( tam - 5, 3 ) + "," + vr.substr( tam - dec, tam ) ;
	}
	if ( (tam >= 9) && (tam <= 11) ){
	campo.value = vr.substr( 0, tam - 8 ) + "." + vr.substr( tam - 8, 3 ) + "." + vr.substr( tam - 5, 3 ) + "," + vr.substr( tam - dec, tam ) ; }
	if ( (tam >= 12) && (tam <= 14) ){
	campo.value = vr.substr( 0, tam - 11 ) + "." + vr.substr( tam - 11, 3 ) + "." + vr.substr( tam - 8, 3 ) + "." + vr.substr( tam - 5, 3 ) + "," + vr.substr( tam - dec, tam ) ; }
	if ( (tam >= 15) && (tam <= 17) ){
	campo.value = vr.substr( 0, tam - 14 ) + "." + vr.substr( tam - 14, 3 ) + "." + vr.substr( tam - 11, 3 ) + "." + vr.substr( tam - 8, 3 ) + "." + vr.substr( tam - 5, 3 ) + "," + vr.substr( tam - 2, tam ) ;}
	}
} 

function formataData(val) {
	// onkeyup="formataData(this);"
   	var pass = val.value;
	var expr = /[0123456789]/;
		
	for(i=0; i<pass.length; i++){
		var lchar = val.value.charAt(i);
		var nchar = val.value.charAt(i+1);
	
		if(i==0) {
		   if ((lchar.search(expr) != 0) || (lchar>3)){
			  val.value = "";
		   }
		   
		}
		else if(i==1){
			   if(lchar.search(expr) != 0){
				  var tst1 = val.value.substring(0,(i));
				  val.value = tst1;				
 				  continue;			
			   }
			   
			   if ((nchar != '/') && (nchar != '')){
				 	var tst1 = val.value.substring(0, (i)+1);
				
					if(nchar.search(expr) != 0) 
						var tst2 = val.value.substring(i+2, pass.length);
					else
						var tst2 = val.value.substring(i+1, pass.length);
	
					val.value = tst1 + '/' + tst2;
			   }

		 }else if(i==4){
			
				if(lchar.search(expr) != 0){
					var tst1 = val.value.substring(0, (i));
					val.value = tst1;
					continue;			
				}
		
				if	((nchar != '/') && (nchar != '')){
					var tst1 = val.value.substring(0, (i)+1);

					if(nchar.search(expr) != 0) 
						var tst2 = val.value.substring(i+2, pass.length);
					else
						var tst2 = val.value.substring(i+1, pass.length);
	
					val.value = tst1 + '/' + tst2;
				}
   		  }
		
		  if(i>=6){
			  if(lchar.search(expr) != 0) {
					var tst1 = val.value.substring(0, (i));
					val.value = tst1;			
			  }
		  }
	 }
	
     if (pass.length>10)
		val.value = val.value.substring(0, 10);
	 	return true;
}


