// JavaScript Document

	function liberaCotas(){
	 if (document.getElementById('cotas').disabled == true){
		document.getElementById('cotas').disabled = false;
	 }
	 else{
		document.getElementById('cotas').disabled = true;
		document.getElementById('cotas').value=0;
	 }
	}

	function mudaImagem(id,img){
		var obj = $(id);
		if (obj.src.indexOf("3.gif") == -1){
			obj.src=img;	
		}
	}

	function checkbox(obj,valor){
	 if (obj.checked == true){
		obj.value = valor;
	 }
	 else{
		obj.value="";
	 }
	}
	
	function showHidden(obj,valor,layer){
	
		if (obj.value==valor){
			layer.style.visibility='visible';
		}
		else{
			layer.style.visibility='hidden';	
		}	
	}	

	function showBlock(obj,valor,layer){
	
		if (obj.value==valor){
			layer.style.display='none';
		}
		else{
			layer.style.display='block';	
		}	
	}	


	function chkAll(frm, arr, mark) { // marca todas as caixas de um grupo, fonte: google.com em algum site muito, muito distante
	  for (i = 0; i <= frm.elements.length; i++) {
	   try{
		 if(frm.elements[i].name == arr) {
		   frm.elements[i].checked = mark;
		 }
	   } catch(er) {}
	  }
	}
	
	function setRegistro(reg){		
		if (reg == "Transformação de Sociedade Simples p/ Limitada"){
			document.getElementById('layer_cartorio').style.visibility="visible";
		}
		else{
			document.getElementById('layer_cartorio').style.visibility="hidden";
			document.getElementById('cartorio_registro').value="";
		}
		if (reg == "Constituição Por Trânsferência de Outra U.F. Para São Paulo"){
			document.getElementById('layer_nire').style.visibility="visible";
		}
		else{
			document.getElementById('layer_nire').style.visibility="hidden";
			document.getElementById('nire_junta_registro').value="";
		}


}
	
	function setdocto(){
		var obj = $("documento");
		var docto =obj.value;
		if ( (docto.length) == 11){
			obj.value =  docto.substring(0,3)+"."+docto.substring(3,6)+"."+docto.substring(6,9)+"-"+docto.substring(9,11);
		}
		else if ( ((docto.length) == 14) && ( docto.charAt(3) !=".") ){
			obj.value =  docto.substring(0,2)+"."+docto.substring(2,5)+"."+docto.substring(5,8)+"/"+docto.substring(8,12)+"-"+docto.substring(12,14);
		}
	}	
	
	function setTipoDocto(tipop){		
		var doc = $("doc");
		var tipo = $("tipo_nome");
		if (tipop =='Jurídica'){
			doc.innerHTML="CNPJ";
			tipo.innerHTML="Razão Social";
		}
		else{
			doc.innerHTML="CPF";
			tipo.innerHTML="Nome";
		}		
	}
	

	function mudarCorCampos(id,borda,corborda,fundo,x){
		var obj = $(id);
		obj.style.border = borda;
		obj.style.borderColor = corborda;
		obj.style.backgroundColor = fundo;		
		if (x == 1) {
			obj.innerHTML = '';
		}
	}
	
	function validar(tipo_form){// função para validar os formulários, fonte wsti, sei que pode melhorar, caso o façam me enviem por favor zanardi@waio.com.br
		 errog=0; // erro padrao menos q 5 caracs
		 errom=0; // email digitato errado
		 erroc=0; // erro cnpj
		 errof=0; // erro cpf	
		 erros=0;  // erro senha
		 erroid=0;
		 msg=""; // mensagem de erro
		 // validar todos campos input
		 dados = document.getElementsByTagName("input");		 
		 for (i=0;i<dados.length-1;i++){
			 if(tipo_form != "altera_endereco_empresa"){
				 if  ( document.getElementById('tp_pessoa').value == "juridica"){
					   if (dados[i].id == "nascimento"){ dados[i].value="01/01/2000";}
					   if (dados[i].id == "registro"){ dados[i].value=" ";}
					   if (dados[i].id == "uf_registro"){ dados[i].value=" ";}
					   if (dados[i].id == "nacionalidade"){ dados[i].value=" ";}
					   if (dados[i].id == "profissao"){ dados[i].value=" ";}
					   if (dados[i].id == "est_civil"){ dados[i].value=" ";}
				  }
			 }

			if (dados[i].value.length < 1){
				// campos de preenchimento obrigatorio 
//		        if ((dados[i].id=="razao_social") || (dados[i].id=="dominio") || (dados[i].id=="documento") || (dados[i].id=="responsavel") ||(dados[i].id=="telefone") || (dados[i].id =="nome") || (dados[i].id =="mensagem")){
		        if ( (dados[i].id != "complemento") && (dados[i].id != "nire_junta_registro") && (dados[i].id != "complementop") && (dados[i].id != "cartorio_registro") && (dados[i].id != "nome_2") && (dados[i].id != "nome_3") && (dados[i].id != "cargo1") && (dados[i].id != "cargo2") && (dados[i].id != "cargo3") && (dados[i].id != "cargo4") && (dados[i].id != "procurador") && (dados[i].id != "representante")){
						  dados[i].style.border = "1px solid";
						  dados[i].style.borderColor = "#FF0000";
						  dados[i].style.backgroundColor = "#FFDDDD";
						  msg += dados[i].id+" deve ser preenchido.\n";
						  errog=1;
			    } 
	/*		    else{// limpar cores e bordas se corrigidos
					dados[i].style.border = "1px solid";
					dados[i].style.backgroundColor = "#FFFFFF";
					dados[i].style.borderColor = "#AAAAAA";	
			   }*/
			}
        }//final da validacao dos inputs

		 // trecho somente necessario para validar campo de email
		 var email = $('email');
		 if (email){
		if ((email.value.indexOf("@")== -1) || (email.value.indexOf(".")== -1)){
			  mudarCorCampos('email','1px solid','#FF0000','#FFDDDD');
			  errom=1;
			  msg+="e-mail Inválido.\n";
		}
		 }
		 
		var s1 = $('senha');
		var s2 = $('repetir_senha');
		if (s1){
		if (s1.length < 6){
			erros = 1;
		    mudarCorCampos('senha','1px solid','#FF0000','#FFDDDD');			
			msg+="Senha deve ter pelo menos 6 digitos.";
		}
		}
		if (s2){
		if (s2.length < 6){
			erros = 1;
		    mudarCorCampos('repetir_senha','1px solid','#FF0000','#FFDDDD');			
			msg+="Senha deve ter pelo menos 6 digitos.";
		}		
		}
		if ((s1) && (s2)){		
		if (s1.value != s2.value){
			erros=1;
		    mudarCorCampos('senha','1px solid','#FF0000','#FFDDDD');						
		    mudarCorCampos('repetir_senha','1px solid','#FF0000','#FFDDDD');									
			msg+="Senhas não conferem";
		}
		}

		// fim valida email

	    if (tipo_form == "Jurídica"){
			var doc = $("documento");
			formProcessor="retorno_cadastro";
			if ( validaCNPJ(doc.value) == false){
				mudarCorCampos('documento','1px solid','#FF0000','#FFDDDD');
				erroc=1;	
				msg+="CNPJ Inválido.\n";
			}
		}			
	    else if (tipo_form == "Física"){
			var doc = $("documento");
		    formProcessor="retorno_cadastro";
			if (validarCPF (doc.id,doc.value) == false){
				mudarCorCampos('documento','1px solid','#FF0000','#FFDDDD');
				errof=1;
				msg+="CPF Inválido.\n";
			}
		 }
	    else if (tipo_form == "constitui_empresa"){
			
			
			var objsoc = $("descricao_objeto");
			if (objsoc.value.length == 0){
				$errof=1;
				msg +="Descrição do Objeto Social Obrigatório\n";
			}
			
			var cartorio_registro = $("cartorio_registro");
			var tipo_registro = $("tipo_registro");
				if ( (tipo_registro.value == "Transformação de Sociedade Simples p/ Limitada") && (cartorio_registro.value.length <1)){
					$errof=1;
					msg+="Nº. do Cartório é Obrigatório.";
					mudarCorCampos('cartorio_registro','1px solid','#FF0000','#FFDDDD');
				}
			var nire = $("nire_junta_registro");
			if ( (tipo_registro.value == "Constituição Por Trânsferência de Outra U.F. Para São Paulo") && (nire.value.length <1)){
					$errof=1;
					msg+="Nº. do NIRE e Junta que tinha registro obrigatório.";
					mudarCorCampos('nire_junta_registro','1px solid','#FF0000','#FFDDDD');
				}							
			
			
		    formProcessor="retorno_constitui";
		 }	 
		 
		 
		 else if (tipo_form == "constitui_individual"){
			var objsoc = $("descricao_objeto");
			if (objsoc.value.length == 0){
				$errof=1;
				msg +="Descrição do Objeto Social Obrigatório\n";
			}
			
			var hoje = new Date() ;
			var dia = hoje.getDate();
			var mes = hoje.getMonth();
			var ano = hoje.getYear()+1900;
			var atual = new Date (ano, mes, dia);

			var x= $("nascimento");
			
			dian = x.value.substring(0,2);
			mesn = x.value.substring(3,5) - 1;
			anon = x.value.substring(6,10);
		
			var nascimento = new Date(anon, mesn, dian);

			if ((((atual - nascimento)/(1000*60*60*24))/365) < 18){
					$errof=1;
					msg +="Idade precisa ser maior ou igual a 18 anos.";
			}
			
			
			var req = $("assinatura_contrato");
			var ass = $("inicio_atividades");
			
			var diareq = req.value.substring(0,2);
			var mesreq = req.value.substring(3,5);
			var anoreq = req.value.substring(6,10);			

			var diaass = ass.value.substring(0,2);
			var mesass = ass.value.substring(3,5);
			var anoass = ass.value.substring(6,10);			

			var requerimento = new Date(anoreq, mesreq, diareq);
			
			var assinatura = new Date(anoass, mesass, diaass);
			
			if (assinatura < requerimento){
				errof=1;	
				msg+="Data de requerimento deve ser maior ou igual a data de inicio das atividades.\n";
			}
			
			formProcessor="retorno_individual";
		 }

	    else if (tipo_form == "constitui_socios"){
			var doc = $("documento");
			var cargo1 = $("cargo1");
			var cargo2 = $("cargo2");
			var cargo3 = $("cargo3");
			var cargo4 = $("cargo4");		
			var representante = $("representante");
			var procurador = $("procurador");		

			var hoje = new Date() ;
			var dia = hoje.getDate();
			var mes = hoje.getMonth();
			var ano = hoje.getYear()+1900;
			var atual = new Date (ano, mes, dia);
			

			var x= $("nascimento");
			
			dian = x.value.substring(0,2);
			mesn = x.value.substring(3,5)-1;
			anon = x.value.substring(6,10);
		
			var nascimento = new Date(anon, mesn, dian);
			erroid=0;
			if ((((atual - nascimento)/(1000*60*60*24))/365) < 18){
					erroid=1;
					msg +="Idade Menor que 18, preencha o procurador, esse sócio não pode ser administrador.\n";
			}
			if (procurador.value !=''){
				erroid=0;	
			}

			if ( (cargo1.checked == false) && (cargo2.checked == false) && (cargo3.checked == false) && (cargo4.checked == false)){
				errof=1;
				msg +="selecione pelo menos um cargo.\n";
			}
			
			if ((cargo3.checked == true) && (representante.value =="") ){
				errof=1;
				msg+="Representante é obrigatório.\n";
			}

			if ((cargo4.checked == true) && (procurador.value =="") ){
				errof=1;
				msg+="Procurador é obrigatório.\n";
			}
			
			if ( (doc.value.length == 11) || (doc.value.length == 14)) {
				if (validarCPF (doc.id,doc.value) == false){
					mudarCorCampos('documento','1px solid','#FF0000','#FFDDDD');
					errof=1;
					msg+="CPF Inválido.\n";
				}
				
			}
			else{
			if ( validaCNPJ(doc.value) == false){
				mudarCorCampos('documento','1px solid','#FF0000','#FFDDDD');
				erroc=1;	
				msg+="CNPJ Inválido.\n";
			}
				
				
			}
		    formProcessor="retorno_socios";
		 }		 
		 
		 else if ( tipo_form == "constitui_cooperativa"){
			formProcessor="retorno_cooperativa";
		 }

		 else if ( tipo_form == "constitui_cooperados"){
			formProcessor="retorno_cooperados";
		 }
		 
		 // alteraçoes de dados //
		 
		 else if( tipo_form == "altera_endereco_empresa"){
			 formProcessor="retorno_altera_endereco";
		 }

		 else if( tipo_form == "altera_denominacao_empresa"){
			 formProcessor="retorno_altera_denominacao";
		 }



	     else if (tipo_form == "contato"){
			 var mensagem = $('mensagem');
			 if (mensagem.value ==""){
				 mudarCorCampos('mensagem','1px solid','#FF0000','#FFDDDD');
				 msg+="Mensagem deve ser preenchida.";
			 }			 
		    formProcessor="postContato";
		 }

		 // validar se as senhas conferem
/*		  if (document.getElementById("senha").value != document.getElementById("senha2").value ){
				mudarCorCampos('senha','1px solid','#FF0000','#FFDDDD');
				mudarCorCampos('senha2','1px solid','#FF0000','#FFDDDD');
				erros=1;
				msg+="As senhas Não conferem.\n";
		  }
		  if ( (document.getElementById("senha").value.length < 6) || (document.getElementById("senha2").value.length < 6)){
				erros=1;
				mudarCorCampos('senha','1px solid','#FF0000','#FFDDDD');
				msg+="A senha deve conter no mínimo 6 dígitos.\n";
		  } */
		  
		// enviando se não ocorrer erros
		 if ((errog != 1) && (errom !=1) && (erroc !=1) && (errof != 1) && (erros != 1) && (erroid != 1)){
			sendForm ("form","process/"+formProcessor);
		 }
		 else{
			alert("Erro! Por favor, verifique os erros encontrados:\n\n"+msg); 
		 }
		// fim enviando
	}
	
	
	
	function MM_preloadImages() { //v3.0
	  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
		var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
		if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
	}
	
function validaCNPJ(CNPJ) {// fonte imasters.com.br, modificações por wsti
	
	erro = new String;
	if (CNPJ.length < 18) //O número do CNPJ é Obrigatório.
	if ((CNPJ.charAt(2) != ".") || (CNPJ.charAt(6) != ".") || (CNPJ.charAt(10) != "/") || (CNPJ.charAt(15) != "-")){
	 if (erro.length == 0) erro +="1";//Preencha corretamente o CNPJ.
	}
	//substituir os caracteres que nao sao numeros
	if(document.layers && parseInt(navigator.appVersion) == 4){
	x = CNPJ.substring(0,2);
	x += CNPJ.substring(3,6);
	x += CNPJ.substring(7,10);
	x += CNPJ.substring(11,15);
	x += CNPJ.substring(16,18);
	CNPJ = x; 
	} else {
	CNPJ = CNPJ.replace(".","");
	CNPJ = CNPJ.replace(".","");
	CNPJ = CNPJ.replace("-","");
	CNPJ = CNPJ.replace("/","");
	}
	var nonNumbers = /\D/;
	if (nonNumbers.test(CNPJ)) erro+="1";;//A verificação de CNPJ suporta apenas números!
	var a = [];
	var b = new Number;
	var c = [6,5,4,3,2,9,8,7,6,5,4,3,2];
	for (i=0; i<12; i++){
	a[i] = CNPJ.charAt(i);
	b += a[i] * c[i+1];
	}
	if ((x = b % 11) < 2) { a[12] = 0 } else { a[12] = 11-x }
	b = 0;
	for (y=0; y<13; y++) {
	b += (a[y] * c[y]); 
	}
	if ((x = b % 11) < 2) { a[13] = 0; } else { a[13] = 11-x; }
	if ((CNPJ.charAt(12) != a[12]) || (CNPJ.charAt(13) != a[13])){
	//Digito verificador com problema!
	erro+="1";
	}
	if (erro.length > 0){
		 mudarCorCampos('documento','1px solid','#FF0000','#FFDDDD');
		//alert(erro);
		return false;
	} else {
		return true;
	}
		return true;
}

function validarCPF (campo,valor) { // fonte imasters.com.br, modifições por wsti
	strcpf = valor;
	str_aux = "";
	erro = new String;
	if (strcpf.length < 14) erro += "O número do CPF é Obrigatório.! \n\n";
	if ((strcpf.charAt(3) != ".") || (strcpf.charAt(7) != ".") || (strcpf.charAt(11) != "-")){
		if (erro.length == 0) return false;
	}
	//substituir os caracteres que nao sao numeros
	if(document.layers && parseInt(navigator.appVersion) == 4){
	x = strcpf.substring(0,3);
	x += strcpf.substring(4,7);
	x += strcpf.substring(8,10);
	x += strcpf.substring(12,14);
	strcpf = x; 
	} else {
	strcpf = strcpf.replace(".","");
	strcpf = strcpf.replace(".","");
	strcpf = strcpf.replace("-","");
	}
	 for (i = 0; i <= strcpf.length - 1; i++)
	   if ((strcpf.charAt(i)).match(/\d/)) 
		 str_aux += strcpf.charAt(i);
	   else if (!(strcpf.charAt(i)).match(/[\.\-]/)) {
		 //O campo CPF apresenta caracteres inválidos!
		 return false;
	   } 
	 if (str_aux.length != 11) {
	   //O campo CPF deve conter 11 dígitos!
	   return false;
	 } 
	 soma1 = soma2 = 0;
	 for (i = 0; i <= 8; i++) {
	   soma1 += str_aux.charAt(i) * (10-i);
	   soma2 += str_aux.charAt(i) * (11-i);
	 }
	 d1 = ((soma1 * 10) % 11) % 10;
	 d2 = (((soma2 + (d1 * 2)) * 10) % 11) % 10;
	 if ((d1 != str_aux.charAt(9)) || (d2 != str_aux.charAt(10))) {
	   //O CPF digitado é inválido!
	   return false;
	 }
	 return true;
}
