// FUNÇÃO PADRÃO PARA CAPTURA DO ENTER
function f1(e) {
	if( ((document.layers && e.which == 13) || (document.all && window.event.keyCode == 13)) && (!(document.activeElement.name=="mensagem")) && (!(document.activeElement.name=="descricao")) && (!(document.activeElement.name=="objetivos")) && (!(document.activeElement.name=="forma_aproveitamento")) && (!(document.activeElement.name=="resposta"))  ) { 
		execEnter();
		return false;
	}
}
if (document.layers) {
	document.captureEvents(Event.KEYPRESS); 
} 
if (document.layers || document.all) document.onkeypress = f1; 

// FUNÇÃO PADRÃO PARA JANELAS
function openWindow(url,janela,larg,alt,scroll){
	if (!scroll) {
		scroll='auto'
	}
	var posx = (screen.width - larg) / 2;
	var posy = (screen.height - alt) / 2;
	janelaNova = window.open(url,janela,"toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars="+scroll+",resizable=no,copyhistory=no,width="+larg+",height="+alt+",left="+posx+",top="+posy+"");
	janelaNova.focus();
}

// FUNÇÃO LOGIN HOME
function lostKey(what){
	if(what == 'open'){
		document.getElementById('camposLogin').style.display = 'none';
		document.getElementById('requestKey').style.display = '';
	}
	if(what == 'close'){
		document.getElementById('camposLogin').style.display = '';
		document.getElementById('requestKey').style.display = 'none';
	}	
}

// VALIDA LOGIN
function doLogin(){
	
	str = '';
	obj = document.login;

	if ((!reEmail.test(obj.email.value)) || (obj.email.value == null) || (obj.email.value == '')) {
		str += 'E-mail incorreto\n';
	}
	if (obj.senha.value == '') {
		str += 'A senha é obrigatória\n';
	}
				
	if(str != ''){
		alert(str);
	}else{
		obj.acao.value = 'submit';
		obj.submit();	
	}
}

// VALIDA PERDA DE SENHA
function doLostKey(){

	str = '';
	obj = document.recuperarSenha;
	
	if ((!reEmail.test(obj.emailLost.value)) || (obj.emailLost.value == null) || (obj.emailLost.value == '')) {
		str += 'E-mail incorreto\n';
	}

	if(str != ''){
		alert(str);
	}else{
		obj.recuperar.value = 'submit';
		obj.submit();	
	}
}

// VALIDA CADASTRO DE SOLICITAÇÕES
function enviar_solicitacao() {
				
	str = '';
	obj = document.campos;
	
	// VALIDA NOME TEM ALGUM PREENCHIMENTO
	if ((!stringCode.test(obj.nome.value)) || (obj.nome.value == null) || (obj.nome.value == '')) {
		str += 'Nome Obrigatório\n';
	}
	// VALIDA TELEFONE TEM ALGUM PREENCHIMENTO
	if ((!stringCode.test(obj.telefone.value)) || (obj.telefone.value == null) || (obj.telefone.value == '')) {
		str += 'Telefone Obrigatório\n';
	}
	// VALIDA EMAIL TEM ALGUM PREENCHIMENTO ou ESTÁ CORRETO
	if ((!reEmail.test(obj.email.value)) || (obj.email.value == null) || (obj.email.value == '')) {
		str += 'E-mail Obrigatório\n';
	}
	// VALIDA CPF ou CNPJ TEM ALGUM PREENCHIMENTO
	if ((!stringCode.test(obj.cpf_cnpj.value)) ||(obj.cpf_cnpj.value == "")){
		str += 'CNPJ/CPF Obrigatório\n';
		obj.cpf_cnpj.value = "";
	}else{
		// TIRA FORMATAÇÃO PARA TESTAR
		obj.cpf_cnpj.value = unformatNumber(obj.cpf_cnpj.value);
		// VALIDA SE É CPF ou CNPJ
		if (obj.cpf_cnpj.value.length >= 14){
			if(!isCnpj(obj.cpf_cnpj.value)){
				str += 'CNPJ Inválido\n';
			}else{
				// COLOCA FORMATAÇÃO
				obj.cpf_cnpj.value = formatCpfCnpj(obj.cpf_cnpj.value, true, true)
			}
		}else{
			if(!isCpf(obj.cpf_cnpj.value)){
				str += 'CPF Inválido\n';
			}else{
				// COLOCA FORMATAÇÃO
				obj.cpf_cnpj.value = formatCpfCnpj(obj.cpf_cnpj.value, true);
			}
		}	
	}
	// VALIDA NOME do EVENTO TEM ALGUM PREENCHIMENTO
	if ((!stringCode.test(obj.nome_evento.value)) || (obj.nome_evento.value == null) || (obj.nome_evento.value == '')) {
		str += 'Telefone Obrigatório\n';
	}
	// VALIDA CIDADE TEM ALGUM PREENCHIMENTO
	if((obj.cidade.value == '0') || (obj.cidade.value == null)){
		str += 'Cidade Obrigatório\n';
	}
	// VALIDA CLASSIFICAÇÃO DO EVENTO TEM ALGUM PREENCHIMENTO
	if((obj.classificacao_evento.value == '0') || (obj.classificacao_evento.value == null)){
		str += 'Classificação do Evento Obrigatório\n';
	}
	// VALIDA DESCRÇÃO TEM ALGUM PREENCHIMENTO
	if ((!stringCode.test(obj.descricao.value)) || (obj.descricao.value == null) || (obj.descricao.value == '')) {
		str += 'Descrição Obrigatório\n';
	}
	// VALIDA DESCRÇÃO TEM O MÁXIMO DE CARACTERES
	if (obj.descricao.value.length > 7000) {
		str += 'Máximo de 7000 caracteres na descrição.\n';
	}
	// VALIDA OBJETIVOS TEM ALGUM PREENCHIMENTO
	if ((!stringCode.test(obj.objetivos.value)) || (obj.objetivos.value == null) || (obj.objetivos.value == '')) {
		str += 'Objetivos Obrigatório\n';
	}
	// VALIDA OBJETIVOS TEM O MÁXIMO DE CARACTERES
	if (obj.objetivos.value.length > 7000) {
		str += 'Máximo de 7000 caracteres no objetivo.\n';
	}
	// VALIDA FORMA DE APROVEITAMENTO TEM ALGUM PREENCHIMENTO
	if ((!stringCode.test(obj.forma_aproveitamento.value)) || (obj.forma_aproveitamento.value == null) || (obj.forma_aproveitamento.value == '')) {
		str += 'Forma de Aproveitamento Obrigatório\n';
	}
	// VALIDA FORMA DE APROVEITAMENTO TEM O MÁXIMO DE CARACTERES
	if (obj.forma_aproveitamento.value.length > 7000) {
		str += 'Máximo de 7000 caracteres na forma de aproveitamento.\n';
	}
	// VALIDA ENQUADRAMENTO TEM ALGUM PREENCHIMENTO
	if ((!stringCode.test(obj.leis_incentivo.value)) || (obj.leis_incentivo.value == null) || (obj.leis_incentivo.value == '')) {
		str += 'Enquadramento em Leis de Incentivo Obrigatório\n';
	}
	// VALIDA DATA INICIAL TEM ALGUM PREENCHIMENTO
	if ((!reDate.test(obj.data_inicial.value)) || (obj.data_inicial.value == null) || (obj.data_inicial.value == '')) {
		str += 'Data Inicial Obrigatório\n';
	}
	// VALIDA DATA FINAL TEM ALGUM PREENCHIMENTO
	if ((!reDate.test(obj.data_final.value)) || (obj.data_final.value == null) || (obj.data_final.value == '')) {
		str += 'Data Final Obrigatório\n';
	}
	// VERIFICA SE dataF É MAIOR QUE dataI
	var dataI = obj.data_inicial.value;
	var dataF = obj.data_final.value;
	if(dataI != '' && dataF != ''){
		if (!( parseInt( dataF.split( "/" )[2].toString() + dataF.split( "/" )[1].toString() + dataF.split( "/" )[0].toString() ) >= parseInt( dataI.split( "/" )[2].toString() + dataI.split( "/" )[1].toString() + dataI.split( "/" )[0].toString() ) )){
			str += 'Data Final precisa ser maior ou igual que a Data Inicial\n';
		}
	}
	// VALIDA PÚBLICO ALVO TEM ALGUM PREENCHIMENTO
	if ((!stringCode.test(obj.publico_alvo.value)) || (obj.publico_alvo.value == null) || (obj.publico_alvo.value == '')) {
		str += 'Público Alvo Obrigatório\n';
	}
	// VALIDA PÚBLICO ESPERADO TEM ALGUM PREENCHIMENTO
	if ((!stringCode.test(obj.publico_esperado.value)) || (obj.publico_esperado.value == null) || (obj.publico_esperado.value == '')) {
		str += 'Público Esperado Obrigatório\n';
	}
	// VALIDA ABRANGÊNCIA TEM ALGUM PREENCHIMENTO
	if ((!stringCode.test(obj.abrangencia.value)) || (obj.abrangencia.value == null) || (obj.abrangencia.value == '')) {
		str += 'Abrangência Obrigatório\n';
	}

	if(str != ''){
		alert('\n' + str);
	}else{
		obj.prop_produtos.value = Limpar(obj.prop_produtos.value,"0123456789");
		obj.prop_financeira.value = Limpar(obj.prop_financeira.value,"0123456789");
		obj.aprovado_financeiro.value = Limpar(obj.aprovado_financeiro.value,"0123456789");
		obj.aprovado_produtos.value = Limpar(obj.aprovado_produtos.value,"0123456789");

		obj.prop_produtos.value = colocaCasasDecimais(obj.prop_produtos.value);
		obj.prop_financeira.value = colocaCasasDecimais(obj.prop_financeira.value);
		obj.aprovado_financeiro.value = colocaCasasDecimais(obj.aprovado_financeiro.value);
		obj.aprovado_produtos.value = colocaCasasDecimais(obj.aprovado_produtos.value);

		obj.submit();	
	}
}

// CONTROLA PREENCHIMENTO DOS TEXT AREAS
function controle(field, maxLen, maximoChars, outPut) {
	fieldLen = field.value.length;
	if (fieldLen >= maxLen) {
		field.value = field.value.substring(0, maxLen);
		charsLeft = maxLen;
	}else{
		charsLeft = fieldLen;
	}
	document.getElementById(outPut).innerHTML = '( Máx ' + (maximoChars - charsLeft) + ' caracteres)'
}

// DEIXA ESCREVER SÓ NÚMEROS
function soNum(e) {
	if(window.event) {
		// for IE, e.keyCode or window.event.keyCode can be used
		key = e.keyCode;
	} else if(e.which) {
		// netscape
		key = e.which;
	}
	if (key!=8 || key < 48 || key > 57) return (((key > 47) && (key < 58)) || (key==8)); {
	    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;
}
// onKeydown="Formata(this,20,event,2)"
//Formata número tipo moeda usando o evento onKeyDown
function Formata(campo,tammax,teclapres,decimal) {
	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 colocaCasasDecimais(valor) {
		comprimento = valor.length;
		valorMilhagem = valor.substring(0,comprimento-2);
		valorDecimais = valor.substring(comprimento-2,comprimento);
		valor = valorMilhagem + '.' + valorDecimais
		return valor;
}