//$(document).ready(function(){
	//variáveis de controle
	var mail = false;
	var data = false;
	var cpf = false;
	var alertando = false;
	
	//variavéis de msg
	var msgPadrao = ' * Todos os campos são obrigatórios. ';
	
	var error_msg = {
		'str_nome'			:	' * Preencha o campo Nome ',
		'str_nasc'			:	' * Preencha o campo data ',
		'str_email'			:	' * Preencha o campo E-mail ',
		'str_telefone'		:	' * Preencha o campo Telefone ',
		'str_fax'			:	' * Preencha o campo FAX ',
		'str_cep'			:	' * Preencha o campo CEP ',
		'str_numero'		:	' * Preencha o campo numero ',
		'str_estado'		:	' * Selecione o Estado ',
		'str_cidade'		:	' * Selecione a Cidade ',
		'str_endereco'		:	' * Preencha o campo Endereço ',
		'str_bairro'		:	' * Preencha o campo Bairro ',
		'str_mensagem'		:	' * Preencha o campo Mensagem ',
		'str_rg'			:	' * Preencha o campo RG ',
		'str_cpf'			:	' * Preencha o campo CPF ',
		'cd_manifestacao'	:	' * Escolha o Assunto ',
		'str_curriculo'		:	' * Envie seu Curriculo '
	};
		
	//variáveis de mascara
	//campos para serem mascarados
	var maskered = new Array( 'str_telefone', 'str_fax', 'str_nasc', 'str_cep', 'str_numero', 'str_cpf');
	//mascaradas
	var masks = {
			'str_telefone'	:	'(99) 9999-9999',
			'str_fax'		:	'(99) 9999-9999',
			'str_nasc'		:	'99/99/9999',
			'str_cep'		:	'99999-999',
			'str_numero'	:	'99999',
			'str_cpf'		:	'999.999.999-99'
	}

	function alertAlerta(){
		alertando = !(cpf && mail && data);
		if(!alertando){
			$('#alerta').text(msgPadrao);  
		}
	}

 	function populaCidade(val){
		$('#str_cidade').html('<option value="0">Procurando</option>');
		$.post('../funcoes/buscacidades.php',
			{ estado : val }, // importante! seleciona a variavel.
			function(resposta){
				$('#str_cidade').html(resposta);
			}
		);
    }
   
    function populaEstado(){
		$('#str_estado').html('<option value="0">...</option>');
		$.post('../funcoes/buscaestados.php',
			function(resposta){
				$('#str_estado').html(resposta);
			}
		);
    } 
   
	function validaCPF(element) {  
		var value = element.val();
		value = value.replace('.','');  
	    value = value.replace('.','');  
		cpf = value.replace('-','');  
		
		while(cpf.length < 11) 
			cpf = "0"+ cpf;  
		    var expReg = /^0+$|^1+$|^2+$|^3+$|^4+$|^5+$|^6+$|^7+$|^8+$|^9+$/;  
		    var a = [];  
		    var b = new Number;  
		    var c = 11;  
		    for (i=0; i<11; i++){  
		    	a[i] = cpf.charAt(i);  
				if (i < 9) 
					b += (a[i] * --c);  
		    }  
			if ((x = b % 11) < 2){ 
				a[9] = 0 
			} else { 
				a[9] = 11-x 
			}  
		    b = 0;  
		    c = 11;  
		    for (y=0; y<10; y++) 
				b += (a[y] * c--);  
			
			if ((x = b % 11) < 2) { 
				a[10] = 0;
			} else { 
				a[10] = 11-x; 
			}  
			if ((cpf.charAt(9) != a[9]) || (cpf.charAt(10) != a[10]) || cpf.match(expReg)){ 
				cpf = false;
				$('#alerta').text(' * Preencha o Campo CPF 999.999.999-99 ');
				$('#alerta').animate( {className:'aviso_alerta'},100 );
				alertAlerta();
				return false;  
				alertando = true;
			}
			cpf = true;
			alertando = false;
			return true;
		  //$('#alerta').text(msgPadrao);  
	 }
	 
	
	
	function validaData(Ncampo){
		var er = /^(([0-2]\d|[3][0-1])\/([0]\d|[1][0-2])\/[1-2][0-9]\d{2})$/;
		b = Ncampo.val();
		var msg = $('#alerta').text();
		data = false;
		if(b!=""){
			if(er.test(b)){
				var dia = b.substring(0,2);
				var mes = b.substring(3,5);
				var ano = b.substring(6,10);
				if(ano < 1910){
					msg = ' * Data inválida. ';
					data = false;
				}
				if((mes==04 || mes==06 || mes==09 || mes==11) && (dia > 30)){
					msg = ' * Mês com 30 dias. ';
					data = false;
				} else{
					if(ano%4 != 0 && mes == 02 && dia > 28){
						msg = ' * Mês com 28/29 dias. ';
						data = false;
					}else{
						if(ano%4==0 && mes==02 && dia>29){
							msg = ' * Mês com 28/29 dias. ';
							data = false;
						} else{ 
							//msg = msgPadrao;
							data = true;
						}
					}
				}
			}else{
				msg = ' * Data inválida. ';
				data = false;
			}
		}else{
			msg = ' * Preencha o campo Data de Nascimento no formato 99/99/9999 ';
			data = false;
		}
		//alert(msg);
		$('#alerta').text(msg);
		$('#alerta').animate( {className:'aviso_alerta'},100 );
		alertando = !data;
		return data;
	}
	
	function validaMail(campo){
		//alert(campo);
		var email = campo.val();
		//alert(email);
		var reg = /^[\w!#$%&'*+\/=?^`{|}~-]+(\.[\w!#$%&'*+\/=?^`{|}~-]+)*@(([\w-]+\.)+[A-Za-z]{2,6}|\[\d{1,3}(\.\d{1,3}){3}\])$/;
		//alert(email);
		if (!( reg.test(email))){
			//alert('fail');
			mail = false;//alert(mail);
			$('#alerta').text(' * Formato de e-mail inválido ');
			$('#alerta').animate( {className:'aviso_alerta'},100 );
			alertando = true;
			return false;
		}else{
			$('#alerta').text(msgPadrao);
			$('#alerta').animate( {className:'aviso'},100 );
			//alert('foi');
			mail = true;//alert(mail);
			alertando = false;
			return true;		
		}
		
	}
	
	function validaCampos(input,comp){
		var t = input.val();
		var iname = input.attr("name");
		var mask_camp = masks[iname];
		var x = t.replace("(","").replace(")","").replace("-","").replace(" ","").replace("/","");					
		if( ( x == "" || x == null || ( (t.length < mask_camp.length) && comp ) ) && iname != 'str_numero'){
			input.val("");
			$('#alerta').text(error_msg[iname]+" "+mask_camp);
			alertando = false;
		}
	}
	
	function mascarar(){
		var campo = "";
		var mascara = "";
		for(var i = 0;i<maskered.length;i++){
			campo = maskered[i];
			mascara = masks[campo];
			$('#'+campo).mask(mascara);
			$('#'+campo).blur( function(){ validaCampos($(this),true ) });
		}
	}
	
	function valida(){

		var camp_vazio = $('.obrig').get();//.reverse();
		var vazio = 0;
		var temp = "";
		var msg = "";
		var name = ""
		var check = false;
		for(var i=0; i < camp_vazio.length; i++){
			temp = camp_vazio[i].value;
			name = camp_vazio[i].name;
			//alert(name);
			if(name == 'str_email'){
				check = validaMail($('#str_email')); if(!check){/* alert('mail'); */break; }
			}else if(name == 'str_nasc'){
				check = validaData($('#str_nasc'));if(!check){ /*alert('data');*/break; }
			}else if(name == 'str_cpf'){
				check = validaCPF($('#str_cpf'));if(!check){ /*alert('cpf');*/ break; }
			}else if(temp == "" || temp == null || temp == 0){
				msg = name;
				vazio++;
				break;
			}
		}
		//alert(vazio);
		if( vazio > 0 || alertando){ 
			if(!alertando){
				//alert("oi");
		    	$('#alerta').text(error_msg[msg]);
				$('#alerta').animate( {className:'aviso_alerta'},100 ); 
			}
			return false;
		}else{
			return true;
		}
	}
	
	
	
	
	
//});