

//  Funcao dos Combo Box (Altera Classe)


function alteraClasse(id, modulo){ 		
if(modulo.checked)
	document.getElementById(id).className = "modalidadeInfoT";
else
	document.getElementById(id).className = "modalidadeInfo";
	} 


//Funcao de Formatacao 

function formatar(objeto, sMask, evtKeyPress) {  // Funcao de Formatacao

	var i, nCount, sValue, fldLen, mskLen,bolMask, sCod, nTecla;

	//funcao para formatar campo CPF, DATA, TEL, CEP, COD

 
	if(document.all) { // Internet Explorer
		nTecla = evtKeyPress.keyCode;

	} else if(document.layers) { // Nestcape
		nTecla = evtKeyPress.which;

	} else {
		nTecla = evtKeyPress.which;

		if (nTecla == 8) {
			return true;

		}
	}


	sValue = objeto.value;

	// Limpa todos os caracteres de formata‡ão que

	// j  estiverem no campo.

	sValue = sValue.toString().replace( "-", "" );
	sValue = sValue.toString().replace( "-", "" );
	sValue = sValue.toString().replace( ".", "" );
	sValue = sValue.toString().replace( ".", "" );
	sValue = sValue.toString().replace( "/", "" );
	sValue = sValue.toString().replace( "/", "" );
	sValue = sValue.toString().replace( ":", "" );
	sValue = sValue.toString().replace( ":", "" );
	sValue = sValue.toString().replace( "(", "" );
	sValue = sValue.toString().replace( "(", "" );
	sValue = sValue.toString().replace( ")", "" );
	sValue = sValue.toString().replace( ")", "" );
	sValue = sValue.toString().replace( " ", "" );
	sValue = sValue.toString().replace( " ", "" );
	
	fldLen = sValue.length;
	mskLen = sMask.length;

	i = 0;

	nCount = 0;

	sCod = "";

	mskLen = fldLen;

	while (i <= mskLen) {
		bolMask = ((sMask.charAt(i) == "-") || (sMask.charAt(i) == ".") || (sMask.charAt(i) == "/") || (sMask.charAt(i) == ":"))
		bolMask = bolMask || ((sMask.charAt(i) == "(") || (sMask.charAt(i) == ")") || (sMask.charAt(i) == " "))

		if (bolMask) {
			sCod += sMask.charAt(i);
			mskLen++; 			
		}

		else {
				
			sCod += sValue.charAt(nCount);
			nCount++;

		}

		i++;

	}
	objeto.value = sCod;

	if (nTecla != 8) { // backspace

		if (sMask.charAt(i-1) == "9") { // apenas n£meros...

			return ((nTecla > 47) && (nTecla < 58)); 
		}

		else { // qualquer caracter...

			return true;

		}

	}

	else {

		return true;

	}

} 


// Funcao validaData - Para validar Data

function validaData(campo){
	erro=0;
	hoje = new Date();
	anoAtual = hoje.getFullYear();
	barras = campo.value.split("/");
	if (barras.length == 3){
		dia = barras[0];
		mes = barras[1];
		ano = barras[2];
		resultado = (!isNaN(dia) && (dia > 0) && (dia < 32)) && (!isNaN(mes) && (mes > 0) && (mes < 13)) && (!isNaN(ano) && (ano.length == 4) && (ano >= 1200));
		if (!resultado) {
			alert("Formato de data invalido!");
			campo.focus();
			return false;
		}else{
			return true;
		}
	} else {
		alert("Formato de data invalido!");
		campo.focus();
		return false;
	}
} 



// Funcao validaEmail - Para validar o email

function validaEmail(campo){
	if (campo.value == ""){
		alert("O e-mail da sede deve ser preenchido!");
		campo.focus();
		return false;
	}else{
		
		parte1 = campo.value.indexOf("@");
		parte2 = campo.value.indexOf(".");
		parte3 = campo.value.length;
		if (!(parte1 >= 1 && parte2 >= 1 && parte3 >= 5)) {
			alert("O campo e-mail deve conter um endereco eletronico!");
			campo.focus();
			return false;
		}else{
			return true;
		}
	}
} 


//Funcao valida Campo vazio

function validaCampo(campo,msg,minimo){
	if (campo.value == ""){
		alert(msg +" deve ser preenchido!");
		campo.focus();
		return false;
	}else{
		if(campo.value.length < minimo){
			alert(msg + " deve ter no minimo "+ minimo + " caracteres!");
			campo.focus();
			return false;
		}
			return true;
	}
} 


//Funcao valida quantidade de caracteres

function validaChar(campo,nomeCampo,char){
	if(campo.value.length < char){
		alert (nomeCampo + " deve ter no minimo "+ char + " caracteres!");
		campo.focus();
		return false;
	}
	return true;
}


// Funcao valida Pesquisa

function validaPesquisa(campoRadio,msg){
	controlePesquisa = false;
	for(i=0; i<campoRadio.length; i++){
		if(campoRadio[i].checked){
			controlePesquisa = true;
			break;
		}
	}
	if(!controlePesquisa){
		alert(msg + " devem ser preenchidos!");
		//campoRadio.focus();
		return false;
	}
} 

		
//Funcao principal
function validaForm(){
	d = document.cadastro;
	
	
	//Valida os campos de Clube
	
	camposClube=new Array(d.IncluiSocioNome, d.IncluiSocioApelido, d.IncluiSocioDtNascim, d.IncluiSocioCPF, d.IncluiSocioEndResi, d.IncluiSocioNrResi, d.IncluiSocioBaiResi, d.IncluiSocioCEPResi, d.IncluiSocioCidResi, d.IncluiSocioUFResi, d.IncluiSocioTelResi, d.IncluiSocioFaxResi, d.IncluiSocioEmail);
	msgClube=new Array("O nome do clube", "O nome fantasia do clube", "Data de Fundacao", "O CNPJ do clube", "O endereco do clube", "O numero do clube", "O bairro do clube", "O CEP do clube", "O municipio do clube", "O estado do clube", "O telefone do clube", "O fax do clube", "O e-mail do clube");
	
	totalCampos = camposClube.length;
	
	for(i=0; i<totalCampos; i++ ){
		if(i == 3){
			if(!validaCampo(camposClube[i],msgClube[i],11)) return false;
		}
		else{
			if(!validaCampo(camposClube[i],msgClube[i],0)) return false;
		}
	}
	
	//Valida quant. caracteres
	if(!validaChar(d.IncluiSocioCEPResi,"CEP",8)) return false;


	//validar DATA DE FUNDAÇÃO
	if(!validaData(d.IncluiSocioDtNascim)) return false;
	
	
	if(!validaEmail(d.IncluiSocioEmail)) return false;
	
	
/*	//Valida Login e Senha 
	if(!validaCampo(d.IncluiSocioLogin,"Login",8)) return  false;

	campoSenha = d.IncluiSocioSenha;
	
	if(!validaCampo(campoSenha,"O campo Senha",6)) {
		return false;
	}else{
		if(campoSenha.value != d.IncluiSocioSenhaConfirma.value){
			alert("A confirmacao da senha e diferente da senha digitada!");
			d.IncluiSocioSenhaConfirma.focus();
			return false;
		}
	}*/



	//validar NÚMERO DE SEDES
	
	camposSede = new Array(d.IncluiSocioSedes, d.IncluiSociosPag, d.IncluiSociosTotal, d.IncluiSocioFuncProprios, d.IncluiSocioFuncsTerc);
	msgSede = new Array("O numero de sedes", "O numero de socios pagantes", "O numero total de socios", "O numero de funcionarios","O numero de funcionarios terceirizados")
	
	totalCamposSede  = camposSede.length;
	
	for(i=0; i<totalCamposSede; i++){

		if(!validaCampo(camposSede[i], msgSede[i], 0)) return false;
	
	}
	
	
	// Validacao dos campos referentes a presidente
	
	camposPresidente =  new Array(d.IncluiContatoPresidenteNome, d.IncluiContatoPresidenteEndereco, d.IncluiContatoPresidenteNumero, d.IncluiContatoPresidenteBairro, d.IncluiContatoPresidenteCEP, d.IncluiContatoPresidenteCidade, d.IncluiContatoPresidenteUF, d.IncluiContatoPresidenteTelefone, d.IncluiContatoPresidenteEmail, d.IncluiContatoPresidenteMandatoI, d.IncluiContatoPresidenteMandatoF);
	
	msgPresidente =  new Array("O nome do Presidente", "O endereco do Presidente", "O numero do Presidente", "O bairro", "O CEP", "O municipio", "o estado do presidente", "O telefone do Presidente", "O e-mail do presidente", "Inicio do mandato", "Fim do mandato");
	
	totalCampos = camposPresidente.length;
	
	for(i=0; i<totalCampos; i++ ){
		if(!validaCampo(camposPresidente[i],msgPresidente[i ])) return false;
	}
	
	//Valida Cep Presidente
	if(!validaChar(d.IncluiContatoPresidenteCEP,"CEP",8)) return false;
	
	//validar EMAIL PRESIDENTE
	
	if(!validaEmail(d.IncluiContatoPresidenteEmail)) return false;
	
	
	//validar DATA INICIO MANDATO PRESIDENTE
	
	if(!validaData(d.IncluiContatoPresidenteMandatoI)) return false;
	
	
	//validar DATA FIM MANDATO PRESIDENTE
	
	if(!validaData(d.IncluiContatoPresidenteMandatoF)) return false;



	// Validacao referente aos campos do Gerente Geral ou Responsavel Administrativo
	
	
	//validar CAMPOS
	
	camposAdm = new Array(d.IncluiContatoGerenteGeralNome, d.IncluiContatoGerenteGeralEndereco, d.IncluiContatoGerenteGeralNumero, d.IncluiContatoGerenteGeralBairro, d.IncluiContatoGerenteGeralCEP, d.IncluiContatoGerenteGeralCidade, d.IncluiContatoGerenteGeralUF, d.IncluiContatoGerenteGeralTelefone, d.IncluiContatoGerenteGeralEmail, d.IncluiContatoAdmCargo, d.IncluiContatoAdmDepartamen);
	
	msgAdm = new Array("O nome do contato administrativo", "O endereco do contato administrativo", "O numero do contato administrativo", "O bairro do contato administrativo", "O CEP do contato administrativo", "O municipio do contato administrativo", "O estado do contato administrativo","O telefone do contato administrativo" , "O e-mail do contato administrativo", "O cargo do contato administrativo", "O departamento do contato administrativo");
	
	totalCampos = camposAdm.length;
	
	for(i=0; i<totalCampos; i++ ){
		if(!validaCampo(camposAdm[i],msgAdm[i])) return false;
	}
	
	
	//Valida quant. caracteres
	if(!validaChar(d.IncluiContatoGerenteGeralCEP,"CEP",8)) return false;
	
	//validar EMAIL ADMINISTRATIVO
	
	if(!validaEmail(d.IncluiContatoGerenteGeralEmail)) return false;
	
	
	// Validacao dos campos referentes a Gerente Esportivo Adminisitrativo
	
		camposEsp = new Array(d.IncluiContatoGerenteEsportivoNome, d.IncluiContatoGerenteEsportivoEndereco, d.IncluiContatoGerenteEsportivoNumero, d.IncluiContatoGerenteEsportivoBairro, d.IncluiContatoGerenteEsportivoCEP, d.IncluiContatoGerenteEsportivoCidade, d.IncluiContatoGerenteEsportivoUF, d.IncluiContatoGerenteEsportivoTelefone, d.IncluiContatoGerenteEsportivoEmail, d.IncluiContatoEspCargo, d.IncluiContatoEspDepartamen);
	
	msgEsp = new Array("O nome do contato esportivo", "O endereco do contato esportivo", "O numero do contato esportivo", "O bairro do contato esportivo", "O CEP do contato esportivo", "O municipio do contato esportivo", "O estado do contato esportivo","O telefone do contato esportivo" , "O e-mail do contato esportivo", "O cargo do contato esportivo", "O departamento do contato esportivo");
	
	totalCampos = camposEsp.length;
	
	for(i=0; i<totalCampos; i++ ){
		if(!validaCampo(camposEsp[i],msgEsp[i])) return false;
	}

	
	//Valida quant. caracteres
	if(!validaChar(d.IncluiContatoGerenteEsportivoCEP,"CEP",8)) return false;
	
	
	if(!validaEmail(d.IncluiContatoGerenteEsportivoEmail)) return false;
	
	
	
	//validar PELO MENOS UMA MODALIDADE

	totalMod = 40; 																
	
	
	controleMod = false;
	
	for(i=0; i<totalMod; i++){
		
		controleAtv = false;				
		campoNome = 'IncluiModalidade'+i; 									
		campoMod = document.getElementById(campoNome); 							
				
		if(campoMod.checked){
			
			if(i>34){
				
				nomeModalidade = 'Inclui_Modalidade'+i;
				campoNomeMod = document.getElementById(nomeModalidade);
			
				if(campoNomeMod.value == ""){
					alert("Preencha o nome da modalidade escolhida");
					campoNomeMod.focus();
					return false;
				}else{
					if(!validaChar(campoNomeMod,8)) return false;
				}
			}
			
			atvMod = new Array(4);
			atvMod[0] = 'IncluiModalidadeRecreativa' + i;					
			atvMod[1] = 'IncluiModalidadeMunicipal' + i;					
			atvMod[2] = 'IncluiModalidadeEstadual' + i;						
			atvMod[3] = 'IncluiModalidadeNacional' + i;						
			
			
			for(j=0 ; j<4 ; j++){
				
				atvModCheca = document.getElementById(atvMod[j]);				
				
				if(atvModCheca.checked){
					controleAtv = true;
					break;
				}	
			} // Fecha o for
			
			
			if(controleAtv){
				modInstala = 'IncluiModalidadeInstala' + i;					
				instalaCampo = document.getElementById(modInstala);				
                    
               	if(instalaCampo.value != ""){
					controleMod = true;
				}	
				else{	
					alert("Quantidade de instalacoes deve ser preenchido!");
					instalaCampo.focus();
					return false;
				}
			}
			else{
				alert("Assinale de que forma e praticada a modalidade selecionada!");
				campoMod.focus();
				return false;
			}
		}
		else{
			if(!controleMod){
				if(i >= totalMod-1){
					alert("Selecione pelo menos uma modalidade!");
					d.IncluiModalidade0.focus();
					return false;
				}
			}
		}
	}
	
	
	
	//Valida campos de pesquisa

	pesquisaCampos = new Array (d.CdtPesquisa,d.CdtPesquisaMeio);
	
	
	//Valida Pesquisa SIM e NAO
	
	controleP = false;
	for(i=0; i<d.CdtPesquisa.length; i++){
		if(d.CdtPesquisa[i].checked){
			controleP = true;
			break;
		}
	}
	
	
	if(!controleP){
		alert("Todos os campos de pesquisa devem ser preenchidos!");
		d.CdtPesquisaRespons.focus();
		return false;
	}
	
	
	// Valida pesquisa COMO CONHECEU
	
	controleP = false;
	for(i=0; i<d.CdtPesquisaMeio.length; i++){
		if(d.CdtPesquisaMeio[i].checked){
			controleP = true;
			break;
		}
	}
	if(!controleP){
		alert("Todos os campos de pesquisa devem ser preenchidos!");
		d.CdtPesquisaRespons.focus();
		return false;
	}
	
	
	//Valida responsavel e cargo
	
	respCampos = new Array(d.CdtPesquisaRespons, d.IncluiContatoRespCargo);
	msgResp = new Array("O nome do responsavel", "O cargo do responsavel");
	
	for(i=0; i<2; i++){
		if(!validaCampo(respCampos[i],msgResp[i])) return false;
	}
}
