function promo_menorIdade(dia,mes,ano) {
	dtMinima = new Date();
	dtMinima.setFullYear(dtMinima.getFullYear()-18);

	dtNascimento = new Date();
	dtNascimento.setFullYear(ano,mes-1,dia);
	return (dtMinima < dtNascimento);
}

function promo_limitarCaracteres(obj,max,event) {
	if (navigator.appName.toLowerCase().indexOf("netscape") > -1)
		ntecla=event.which;
	else
		ntecla=event.keyCode;

	check = false;
	total = obj.value.length + 1;
	if ((ntecla == 8) || (ntecla == 0)) check = true;
	else {
		if (total < max) check = true;
		else {
			obj.value = obj.value.substr(0,max);
			check = false;
		}
	}

	obj = document.getElementById('contcaracters');
	if (obj) {
		obj.innerHTML = (max - total);
	}
	return check;
}

function assinante_validarTelefonesPromocao(form, arrPrefIds) {
	cont = 0;
	for (var i = 0;i < arrPrefIds.length;i++) {

		obj1 = form[arrPrefIds[i]+'_ddd'];
		obj2 = form[arrPrefIds[i]+'_numero'];

		if (obj1 && obj2) {
			if ((obj1.value != '') && (obj2.value != '')) cont++;
		}
	}
	return cont;
}

function promo_validarCamposBasicos(form) {
	if (form) {
		tmp = form.data_nascimento.value.split('/');
		tmpNome = form.nome_completo.value.split(' ');
		if (tmp.length == 3) {
			menor = promo_menorIdade(tmp[0],tmp[1],tmp[2]);
			if (tmpNome.length > 1) {
				if (validaCPF(form.cpf.value) || menor) {
					if ((form.sexo.value != '') && (form.sexo.value != '0')) {
						if (menor) {
							if(form.nome_completo_responsavel){
								ok = false;
								tmpNomeResponsavel = form.nome_completo_responsavel.value.split(' ');
								if (tmpNomeResponsavel.length > 1) {
									if (validaCPF(form.cpf_responsavel.value)) {
										ok = true;
									} else emitirAlerta('O CPF do responsável é obrigatório, para menores de idade',alerta.TIPO_ERRO,null,form.cpf_responsavel);
								} else emitirAlerta('O nome completo do responsável é obrigatório para menores de idade',alerta.TIPO_ERRO,null,form.nome_completo_responsavel);

								if (!ok) {
									return false;
								}
							}
						}

						if (validarEmail(form.email.value)) {
							if (form.rua.value != '') {
								if (form.numero.value != '') {
									if (form.bairro.value != '') {
										if (form.cidade.value != '') {
											if (assinante_validarTelefonesPromocao(form,new Array('telefone_residencial','telefone_comercial','telefone_celular'))) {
												if ((!form.mensagem) || (form.mensagem.value != '')) {
													if (form.concordo.checked) {
														return true;
													} else emitirAlerta('Para participar da promoção, será necessário ler e concordar com o regulamento',alerta.TIPO_ERRO,null,form.concordo);
												} else emitirAlerta('Preencha o campo da mensagem',alerta.TIPO_ERRO,null,form.mensagem);
											} else emitirAlerta('Preencha um dos telefones',alerta.TIPO_ERRO,null,form.telefone_residencial_ddd);
										} else emitirAlerta('Preencha a cidade',alerta.TIPO_ERRO,null,form.cidade);
									} else emitirAlerta('Preencha o bairro',alerta.TIPO_ERRO,null,form.bairro);
								} else emitirAlerta('Preencha o campo do número',alerta.TIPO_ERRO,null,form.numero);
							} else emitirAlerta('Preencha o campo da rua',alerta.TIPO_ERRO,null,form.rua);
						} else emitirAlerta('Por favor, informe um e-mail válido',alerta.TIPO_ERRO,null,form.email);
					} else emitirAlerta('Selecione o sexo do participante',alerta.TIPO_ERRO);
				} else emitirAlerta('O CPF do participante é inválido',alerta.TIPO_ERRO,null,form.cpf);
			} else emitirAlerta('Preencha o nome completo do participante',alerta.TIPO_ERRO,null,form.nome_completo);
		} else emitirAlerta('Preencha a data de nascimento do participante adequadamente',alerta.TIPO_ERRO,null,form.data_nascimento);
	}
	return false;
}

function promo_validarCamposBasicos2(form) {
	if (form) {
		tmp = form.data_nascimento.value.split('/');
		tmpNome = form.nome_completo.value.split(' ');
		if (tmp.length == 3) {
			menor = promo_menorIdade(tmp[0],tmp[1],tmp[2]);
			if (tmpNome.length > 1) {
				if (validaCPF(form.cpf.value) || menor || validaCNPJ(form.cnpj.value)) {
					if ((form.sexo.value != '') && (form.sexo.value != '0')) {
						if (menor) {
							if(form.nome_completo_responsavel){
								ok = false;
								tmpNomeResponsavel = form.nome_completo_responsavel.value.split(' ');
								if (tmpNomeResponsavel.length > 1) {
									if (validaCPF(form.cpf_responsavel.value)) {
										ok = true;
									} else emitirAlerta('O CPF do responsável é obrigatório, para menores de idade',alerta.TIPO_ERRO,null,form.cpf_responsavel);
								} else emitirAlerta('O nome completo do responsável é obrigatório para menores de idade',alerta.TIPO_ERRO,null,form.nome_completo_responsavel);

								if (!ok) {
									return false;
								}
							}
						}

						if (validarEmail(form.email.value)) {
							if (form.rua.value != '') {
								if (form.numero.value != '') {
									if (form.bairro.value != '') {
										if (form.cidade.value != '') {
											if (assinante_validarTelefones(new Array('telefone_residencial','telefone_comercial','telefone_celular'))) {
												if ((!form.mensagem) || (form.mensagem.value != '')) {
													if (form.concordo.checked) {
														return true;
													} else emitirAlerta('Para participar da promoção, será necessário ler e concordar com o regulamento',alerta.TIPO_ERRO,null,form.concordo);
												} else emitirAlerta('Preencha o campo da mensagem',alerta.TIPO_ERRO,null,form.mensagem);
											} else emitirAlerta('Preencha um dos telefones',alerta.TIPO_ERRO,null,form.telefone_residencial_ddd);
										} else emitirAlerta('Preencha a cidade',alerta.TIPO_ERRO,null,form.cidade);
									} else emitirAlerta('Preencha o bairro',alerta.TIPO_ERRO,null,form.bairro);
								} else emitirAlerta('Preencha o campo do número',alerta.TIPO_ERRO,null,form.numero);
							} else emitirAlerta('Preencha o campo da rua',alerta.TIPO_ERRO,null,form.rua);
						} else emitirAlerta('Por favor, informe um e-mail válido',alerta.TIPO_ERRO,null,form.email);
					} else emitirAlerta('Selecione o sexo do participante',alerta.TIPO_ERRO);
				} else emitirAlerta('O CPF/CNPJ do participante é inválido',alerta.TIPO_ERRO,null,form.cpf?form.cpf:form.cnpj);
			} else emitirAlerta('Preencha o nome completo do participante',alerta.TIPO_ERRO,null,form.nome_completo);
		} else emitirAlerta('Preencha a data de nascimento do participante adequadamente',alerta.TIPO_ERRO,null,form.data_nascimento);
	}
	return false;
}
