// Função de consistência do formulário de Dica
function ConsisteFrmDica() {
	if (document.frmDica.cd_noticia.selectedIndex == 0) {
		alert("Favor selecionar uma dica");
		document.frmDica.cd_noticia.focus();
		return false;
	}

	return true;
}

// Função de consistência do formulário de Conjuntos
function ConsisteFrmProduto (pFormulario) {
	if (pFormulario.cd_cor.selectedIndex == 0) {
		alert("Favor selecionar uma cor");
		pFormulario.cd_cor.focus();
		return;
	}

	if (pFormulario.cd_tamanho.selectedIndex == 0) {
		alert("Favor selecionar um tamanho");
		pFormulario.cd_tamanho.focus();
		return;
	}

	if (IsSpace(pFormulario.qt_produto_cesta.value)) {
		alert("Favor informar uma quantidade");
		pFormulario.qt_produto_cesta.focus();
		return;
	}

	if (parseInt(pFormulario.qt_produto_cesta.value) <= 0 || !ValidaNumeroInteiro(pFormulario.qt_produto_cesta.value)) {
		alert("Quantidade inválida");
		pFormulario.qt_produto_cesta.focus();
		return;
	}

	pFormulario.submit();
}

// Função auxiliar para a exclusão de produtos da Cesta
function ExcluirProdutoCesta(pCodigoProduto, pCodigoConjunto, pCodigoCor, pCodigoTamanho) {
	document.frmCesta.cd_produto.value = pCodigoProduto;
	document.frmCesta.cd_conjunto.value = pCodigoConjunto;
	document.frmCesta.cd_cor.value = pCodigoCor;
	document.frmCesta.cd_tamanho.value = pCodigoTamanho;
	document.frmCesta.acao.value = "excluir";

	document.frmCesta.submit();
}

// Função para consistência do formulário da Cesta
function ConsisteFrmCesta(pAcao, pCodigoConjunto) {
	bValido = true;

	for (iElemento = 0;iElemento < document.frmCesta.elements.length;iElemento++) {
		if (document.frmCesta.elements[iElemento].name.indexOf("qt_produto_cesta") != -1) {
			if (IsSpace(document.frmCesta.elements[iElemento].value)) {
				alert("Favor informar uma quantidade");
				document.frmCesta.elements[iElemento].focus();
				bValido = false;
				break;
			}

			if (parseInt(document.frmCesta.elements[iElemento].value) <= 0 || !ValidaNumeroInteiro(document.frmCesta.elements[iElemento].value)) {
				alert("Quantidade inválida");
				document.frmCesta.elements[iElemento].focus();
				bValido = false;
				break;
			}
		}
	}

	if (!bValido)
		return;

	document.frmCesta.acao.value = pAcao;
	document.frmCesta.cd_conjunto.value = pCodigoConjunto;
	document.frmCesta.submit();
}

// Função de consistência do formulário de Clientes
function ConsisteFrmCliente() {
	if (IsSpace(document.frmCliente.nm_cliente.value)) {
		alert("Favor informar o nome");
		document.frmCliente.nm_cliente.focus();
		return false;
	}
	
	if (document.frmCliente.cd_logradouro_residencial_cliente.selectedIndex == 0) {
		alert("Favor selecionar o logradouro");
		document.frmCliente.cd_logradouro_residencial_cliente.focus();
		return false;
	}

	if (IsSpace(document.frmCliente.nm_endereco_residencial_cliente.value)) {
		alert("Favor informar o endereço");
		document.frmCliente.nm_endereco_residencial_cliente.focus();
		return false;
	}

	if (IsSpace(document.frmCliente.cd_endereco_residencial_cliente.value)) {
		alert("Favor informar o número");
		document.frmCliente.cd_endereco_residencial_cliente.focus();
		return false;
	}

	if (IsSpace(document.frmCliente.nm_bairro_residencial_cliente.value)) {
		alert("Favor informar o bairro");
		document.frmCliente.nm_bairro_residencial_cliente.focus();
		return false;
	}

	if (IsSpace(document.frmCliente.nm_cidade_residencial_cliente.value)) {
		alert("Favor informar a cidade");
		document.frmCliente.nm_cidade_residencial_cliente.focus();
		return false;
	}

	if (document.frmCliente.sg_estado_residencial_cliente.selectedIndex == 0) {
		alert("Favor selecionar o estado");
		document.frmCliente.sg_estado_residencial_cliente.focus();
		return false;
	}

	sCep = document.frmCliente.cd_cep_residencial_cliente1.value + "-" + document.frmCliente.cd_cep_residencial_cliente2.value
	if (!IsBraZipCode(sCep)) {
		alert("CEP inválido");
		return false;
	}

	if (!IsBraAreaCode(document.frmCliente.cd_ddd_telefone_residencial_cliente.value)) {
		alert("DDD inválido. Favor informar somente números e com dois dígitos obrigatórios");
		document.frmCliente.cd_ddd_telefone_residencial_cliente.focus();
		return false;
	}

	if (!IsBraPhoneNumber(document.frmCliente.cd_telefone_residencial_cliente.value)) {
		alert("Telefone inválido. Favor informá-lo nos formatos 999-9999 OU 9999-9999. NÃO utilize ESPAÇOS e LETRAS");
		document.frmCliente.cd_telefone_residencial_cliente.focus();
		return false;
	}

	if (!IsSpace(document.frmCliente.cd_ddd_celular_cliente.value) || !IsSpace(document.frmCliente.cd_celular_cliente.value)) {
		if (!IsBraAreaCode(document.frmCliente.cd_ddd_celular_cliente.value)) {
			alert("DDD inválido. Favor informar somente números e com dois dígitos obrigatórios");
			document.frmCliente.cd_ddd_celular_cliente.focus();
			return false;
		}
	
		if (!IsBraPhoneNumber(document.frmCliente.cd_celular_cliente.value)) {
			alert("Telefone inválido. Favor informá-lo nos formatos 999-9999 OU 9999-9999. NÃO utilize ESPAÇOS e LETRAS");
			document.frmCliente.cd_celular_cliente.focus();
			return false;
		}
	}

	if (!IsDateDDMMAAAA(document.frmCliente.dt_nascimento_cliente.value)) {
		alert("Data inválida");
		document.frmCliente.dt_nascimento_cliente.focus();
		return false;
	}

	if (!document.frmCliente.ic_sexo_cliente[0].checked && !document.frmCliente.ic_sexo_cliente[1].checked) {
		alert("Favor selecionar o sexo");
		return false;
	}

	if (document.frmCliente.acao.value == "alterar") {
		if (document.frmCliente.ic_endereco_comercial.value == "S") {
			if (IsSpace(document.frmCliente.nm_empresa_cliente.value)) {
				alert("Favor informar a empresa");
				document.frmCliente.nm_empresa_cliente.focus();
				return false;
			}
			
			if (document.frmCliente.cd_logradouro_comercial_cliente.selectedIndex == 0) {
				alert("Favor selecionar o logradouro");
				document.frmCliente.cd_logradouro_comercial_cliente.focus();
				return false;
			}
		
			if (IsSpace(document.frmCliente.nm_endereco_comercial_cliente.value)) {
				alert("Favor informar o endereço");
				document.frmCliente.nm_endereco_comercial_cliente.focus();
				return false;
			}
		
			if (IsSpace(document.frmCliente.cd_endereco_comercial_cliente.value)) {
				alert("Favor informar o número");
				document.frmCliente.cd_endereco_comercial_cliente.focus();
				return false;
			}
		
			if (IsSpace(document.frmCliente.nm_bairro_comercial_cliente.value)) {
				alert("Favor informar o bairro");
				document.frmCliente.nm_bairro_comercial_cliente.focus();
				return false;
			}
		
			if (IsSpace(document.frmCliente.nm_cidade_comercial_cliente.value)) {
				alert("Favor informar a cidade");
				document.frmCliente.nm_cidade_comercial_cliente.focus();
				return false;
			}
		
			if (document.frmCliente.sg_estado_comercial_cliente.selectedIndex == 0) {
				alert("Favor selecionar o estado");
				document.frmCliente.sg_estado_comercial_cliente.focus();
				return false;
			}
		
			sCep = document.frmCliente.cd_cep_comercial_cliente1.value + "-" + document.frmCliente.cd_cep_comercial_cliente2.value
			if (!IsBraZipCode(sCep)) {
				alert("CEP inválido");
				return false;
			}
		
			if (!IsBraAreaCode(document.frmCliente.cd_ddd_telefone_comercial_cliente.value)) {
				alert("DDD inválido. Favor informar somente números e com dois dígitos obrigatórios");
				document.frmCliente.cd_ddd_telefone_comercial_cliente.focus();
				return false;
			}
		
			if (!IsBraPhoneNumber(document.frmCliente.cd_telefone_comercial_cliente.value)) {
				alert("Telefone inválido. Favor informá-lo nos formatos 999-9999 OU 9999-9999. NÃO utilize ESPAÇOS e LETRAS");
				document.frmCliente.cd_telefone_comercial_cliente.focus();
				return false;
			}
		
			if (!IsSpace(document.frmCliente.cd_ddd_fax_comercial_cliente.value) || !IsSpace(document.frmCliente.cd_fax_comercial_cliente.value)) {
				if (!IsBraAreaCode(document.frmCliente.cd_ddd_fax_comercial_cliente.value)) {
					alert("DDD inválido. Favor informar somente números e com dois dígitos obrigatórios");
					document.frmCliente.cd_ddd_fax_comercial_cliente.focus();
					return false;
				}
			
				if (!IsBraPhoneNumber(document.frmCliente.cd_fax_comercial_cliente.value)) {
					alert("Telefone inválido. Favor informá-lo nos formatos 999-9999 OU 9999-9999. NÃO utilize ESPAÇOS e LETRAS");
					document.frmCliente.cd_fax_comercial_cliente.focus();
					return false;
				}
			}
		}
	}

	if (!IsSpace(document.frmCliente.nm_empresa_cliente.value)					||
		document.frmCliente.cd_logradouro_comercial_cliente.selectedIndex != 0	||
		!IsSpace(document.frmCliente.nm_endereco_comercial_cliente.value)		||
		!IsSpace(document.frmCliente.cd_endereco_comercial_cliente.value)		||
		!IsSpace(document.frmCliente.nm_complemento_comercial_cliente.value)	||
		!IsSpace(document.frmCliente.nm_bairro_comercial_cliente.value)			||
		!IsSpace(document.frmCliente.nm_cidade_comercial_cliente.value)			||
		document.frmCliente.sg_estado_comercial_cliente.selectedIndex != 0		||
		!IsSpace(document.frmCliente.cd_cep_comercial_cliente1.value)			||
		!IsSpace(document.frmCliente.cd_cep_comercial_cliente2.value)			||
		!IsSpace(document.frmCliente.cd_ddd_telefone_comercial_cliente.value)	||
		!IsSpace(document.frmCliente.cd_telefone_comercial_cliente.value)		||
		!IsSpace(document.frmCliente.cd_ddd_fax_comercial_cliente.value)		||
		!IsSpace(document.frmCliente.cd_fax_comercial_cliente.value)) {

		if (IsSpace(document.frmCliente.nm_empresa_cliente.value)) {
			alert("Favor informar a empresa");
			document.frmCliente.nm_empresa_cliente.focus();
			return false;
		}
		
		if (document.frmCliente.cd_logradouro_comercial_cliente.selectedIndex == 0) {
			alert("Favor selecionar o logradouro");
			document.frmCliente.cd_logradouro_comercial_cliente.focus();
			return false;
		}
	
		if (IsSpace(document.frmCliente.nm_endereco_comercial_cliente.value)) {
			alert("Favor informar o endereço");
			document.frmCliente.nm_endereco_comercial_cliente.focus();
			return false;
		}
	
		if (IsSpace(document.frmCliente.cd_endereco_comercial_cliente.value)) {
			alert("Favor informar o número");
			document.frmCliente.cd_endereco_comercial_cliente.focus();
			return false;
		}
	
		if (IsSpace(document.frmCliente.nm_bairro_comercial_cliente.value)) {
			alert("Favor informar o bairro");
			document.frmCliente.nm_bairro_comercial_cliente.focus();
			return false;
		}
	
		if (IsSpace(document.frmCliente.nm_cidade_comercial_cliente.value)) {
			alert("Favor informar a cidade");
			document.frmCliente.nm_cidade_comercial_cliente.focus();
			return false;
		}
	
		if (document.frmCliente.sg_estado_comercial_cliente.selectedIndex == 0) {
			alert("Favor selecionar o estado");
			document.frmCliente.sg_estado_comercial_cliente.focus();
			return false;
		}
	
		sCep = document.frmCliente.cd_cep_comercial_cliente1.value + "-" + document.frmCliente.cd_cep_comercial_cliente2.value
		if (!IsBraZipCode(sCep)) {
			alert("CEP inválido");
			return false;
		}
	
		if (!IsBraAreaCode(document.frmCliente.cd_ddd_telefone_comercial_cliente.value)) {
			alert("DDD inválido. Favor informar somente números e com dois dígitos obrigatórios");
			document.frmCliente.cd_ddd_telefone_comercial_cliente.focus();
			return false;
		}
	
		if (!IsBraPhoneNumber(document.frmCliente.cd_telefone_comercial_cliente.value)) {
			alert("Telefone inválido. Favor informá-lo nos formatos 999-9999 OU 9999-9999. NÃO utilize ESPAÇOS e LETRAS");
			document.frmCliente.cd_telefone_comercial_cliente.focus();
			return false;
		}
	
		if (!IsSpace(document.frmCliente.cd_ddd_fax_comercial_cliente.value) || !IsSpace(document.frmCliente.cd_fax_comercial_cliente.value)) {
			if (!IsBraAreaCode(document.frmCliente.cd_ddd_fax_comercial_cliente.value)) {
				alert("DDD inválido. Favor informar somente números e com dois dígitos obrigatórios");
				document.frmCliente.cd_ddd_fax_comercial_cliente.focus();
				return false;
			}
		
			if (!IsBraPhoneNumber(document.frmCliente.cd_fax_comercial_cliente.value)) {
				alert("Telefone inválido. Favor informá-lo nos formatos 999-9999 OU 9999-9999. NÃO utilize ESPAÇOS e LETRAS");
				document.frmCliente.cd_fax_comercial_cliente.focus();
				return false;
			}
		}
	}

	if (IsSpace(document.frmCliente.nm_email_cliente.value)) {
		alert("Favor informar o e-mail");
		document.frmCliente.nm_email_cliente.focus();
		return false;
	}

	if (!IsEmail(document.frmCliente.nm_email_cliente.value)) {
		alert("E-mail inválido");
		document.frmCliente.nm_email_cliente.focus();
		return false;
	}

	if (IsSpace(document.frmCliente.nm_senha_cliente.value)) {
		alert("Favor informar a senha");
		document.frmCliente.nm_senha_cliente.focus();
		return false;
	}

	if (document.frmCliente.nm_senha_cliente.value.length < 6) {
		alert("A senha deve ter no mínimo 6 dígitos");
		document.frmCliente.nm_senha_cliente.focus();
		return false;
	}

	bEspaco = false
	for (iPos = 0;iPos < document.frmCliente.nm_senha_cliente.value.length;iPos ++) {
		if (document.frmCliente.nm_senha_cliente.value.charAt(iPos) == ' ') {
			bEspaco = true;
		}
	}

	if (bEspaco) {
		alert("A senha não pode conter espaço em branco");
		document.frmCliente.nm_senha_cliente.focus();
		return false;
	}

	if (IsSpace(document.frmCliente.nm_senha_cliente_confirmacao.value)) {
		alert("Favor informar a confirmação de senha");
		document.frmCliente.nm_senha_cliente_confirmacao.focus();
		return false;
	}

	if (document.frmCliente.nm_senha_cliente.value != document.frmCliente.nm_senha_cliente_confirmacao.value) {
		alert("A senha e a confirmação de senha devem ser iguais");
		document.frmCliente.nm_senha_cliente_confirmacao.focus();
		return false;
	}

	if (IsSpace(document.frmCliente.nm_lembrete_senha_cliente.value)) {
		alert("Favor informar o lembrete de senha");
		document.frmCliente.nm_lembrete_senha_cliente.focus();
		return false;
	}

	return true;
}

// Função de consistência do formulário de Login
function ConsisteFrmLogin() {
	if (IsSpace(document.frmLogin.nm_email_cliente.value)) {
		alert("Favor informar o e-mail");
		document.frmLogin.nm_email_cliente.focus();
		return false;
	}

	return true;
}

// Função de consistência do formulário de MailList
function ChecaFrmMailList() {
	if (IsSpace(document.frmMailList.nm_cliente_maillist.value)) {
		alert("Favor informar o nome");
		document.frmMailList.nm_cliente_maillist.focus();
		return false;
	}

	if (IsSpace(document.frmMailList.nm_email_cliente_maillist.value)) {
		alert("Favor informar o e-mail");
		document.frmMailList.nm_email_cliente_maillist.focus();
		return false;
	}

	if (!IsEmail(document.frmMailList.nm_email_cliente_maillist.value)) {
		alert("E-mail inválido");
		document.frmMailList.nm_email_cliente_maillist.focus();
		return false;
	}

	return true;
}

// Função de consistência do formulário de Login no momento do "Esqueci minha senha"
function ChecaFrmEsqueciSenha() {
	if (IsSpace(document.frmLogin.nm_email_cliente.value)) {
		alert("Favor informar o e-mail");
		document.frmLogin.nm_email_cliente.focus();
		return false;
	}

	return true;
}

// Função de consistência do formulário de Login no momento do "Esqueci minha senha"
function ChecaFrmFinalizaCompra() {
	var cd_empresa = document.frmFinalizaCompra.cd_empresa.options[document.frmFinalizaCompra.cd_empresa.selectedIndex].value;

	if (!document.frmFinalizaCompra.cd_tipo_pedido[0].checked && !document.frmFinalizaCompra.cd_tipo_pedido[1].checked) {
		alert("Favor informar se você quer fazer uma RESERVA ou uma INTENÇÃO DE COMPRA");
		return false;
	}

	if (document.frmFinalizaCompra.cd_tipo_pedido[0].checked) {
		if (cd_empresa == "") {
			alert("Favor selecionar uma loja");
			document.frmFinalizaCompra.cd_empresa.focus();
			return false;
		}
	}

	if (document.frmFinalizaCompra.cd_tipo_pedido[1].checked) {
		if (document.frmFinalizaCompra.ic_endereco_comercial.value == 'S') {
			if (!document.frmFinalizaCompra.cd_tipo_endereco_entrega[0].checked && !document.frmFinalizaCompra.cd_tipo_endereco_entrega[1].checked) {
				alert("Favor selecionar se o pedido será enviado para o seu ENDEREÇO RESIDENCIAL ou COMERCIAL");
				return false;
			}
		}
	}

	return true;
}

// Habilita ou não a opção de escolha do endereço comercial, baseado no cadastro do cliente
function ChecaTipoPedido() {
	if (document.frmFinalizaCompra.cd_tipo_pedido[0].checked) {
		document.frmFinalizaCompra.cd_tipo_endereco_entrega[0].checked = false;
		document.frmFinalizaCompra.cd_tipo_endereco_entrega[1].checked = false;

		if (navigator.appName == "Microsoft Internet Explorer") {
			document.frmFinalizaCompra.cd_tipo_endereco_entrega[1].disabled = false;
		}
	}

	if (document.frmFinalizaCompra.cd_tipo_pedido[1].checked) {
		if (document.frmFinalizaCompra.ic_endereco_comercial.value == 'N') {
			document.frmFinalizaCompra.cd_tipo_endereco_entrega[0].checked = true;

			if (navigator.appName == "Microsoft Internet Explorer") {
				document.frmFinalizaCompra.cd_tipo_endereco_entrega[1].disabled = true;
			}
		}
	}
}

//Função de consistência do tipo de endereço de entrega
function ChecaTipoEnderecoEntrega () {
	if (navigator.appName == "Netscape") {
		if (document.frmFinalizaCompra.ic_endereco_comercial.value == 'N') {
			if (document.frmFinalizaCompra.cd_tipo_endereco_entrega[1].checked) {
				alert("Seu endereço comercial não consta no cadastro.\nFavor atualize seus dados clicando na opção \"Meu Cadastro\" caso queira informá-lo");
				document.frmFinalizaCompra.cd_tipo_endereco_entrega[0].checked = true;
				document.frmFinalizaCompra.cd_tipo_endereco_entrega[1].checked = false;
			}
		}
	}
}

// Função de consistência do formulário de Desfile
function ChecaFrmDesfile() {
	if (document.frmDesfile.cd_evento.selectedIndex == 0) {
		alert("Favor selecionar o desfile");
		document.frmDesfile.cd_evento.focus();
		return false;
	}

	return true;
}

//Função de consistência do formulário de Fale Conosco
function ConsisteFrmFaleConosco() {
	if (IsSpace(document.frmFaleConosco.txtNome.value)) {
		alert("Favor informar o nome");
		document.frmFaleConosco.txtNome.focus();
		return false;
	}

	if (IsSpace(document.frmFaleConosco.txtEmail.value)) {
		alert("Favor informar o e-mail");
		document.frmFaleConosco.txtEmail.focus();
		return false;
	}

	if (!IsEmail(document.frmFaleConosco.txtEmail.value)) {
		alert("E-mail inválido")
		document.frmFaleConosco.txtEmail.focus();
		return false
	}

	if (!IsSpace(document.frmFaleConosco.txtDDDTelefone.value) ||
	    !IsSpace(document.frmFaleConosco.txtTelefone.value)) {

		if (!IsBraAreaCode(document.frmFaleConosco.txtDDDTelefone.value)) {
			alert("DDD inválido. Favor informar somente números e com dois dígitos obrigatórios");
			document.frmFaleConosco.txtDDDTelefone.focus();
			return false;
		}
	
		if (!IsBraPhoneNumber(document.frmFaleConosco.txtTelefone.value)) {
			alert("Telefone inválido. Favor informá-lo nos formatos 999-9999 OU 9999-9999. NÃO utilize ESPAÇOS e LETRAS");
			document.frmFaleConosco.txtTelefone.focus();
			return false;
		}
	}

	if (!IsSpace(document.frmFaleConosco.txtCep1.value) ||
	    !IsSpace(document.frmFaleConosco.txtCep2.value)) {

		sCep = document.frmFaleConosco.txtCep1.value + '-' + document.frmFaleConosco.txtCep2.value;
		if (!IsBraZipCode(sCep)) {
			alert("CEP inválido");
			return false;
		}
	}

	if (IsSpace(document.frmFaleConosco.txtMensagem.value)) {
		alert("Favor informar a mensagem");
		document.frmFaleConosco.txtMensagem.focus();
		return false;
	}

	return true;
}