var excluir = false;
var reDate = /^((0[1-9]|[12]\d)\/(0[1-9]|1[0-2])|30\/(0[13-9]|1[0-2])|31\/(0[13578]|1[02]))\/\d{4}$/;
function doDate(data_formulario){
	if (!reDate.test(data_formulario)) {
		return false;
	}else{
		return true;
	}
} 
function FormataData(objeto,tecla){
    if (objeto.value.length == 2 || objeto.value.length == 5 ){
    	//verifica o o delete (46), o backspace (8)
		if ((tecla.keyCode != 46) && (tecla.keyCode != 8)){
        	objeto.value = objeto.value+"/";			
		}
    }
}

function FormataCpf(campo,tammax,teclapres){
	var tecla = teclapres.keyCode;
	vr = campo.value;
	vr = vr.replace( "-", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	tam = vr.length;
	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 <= 3 ){ 
	 		campo.value = vr ; }
	 	if ( (tam > 3) && (tam <= 6) ){
	 		campo.value = vr.substr(0,3) + '.' + vr.substr(3, tam ) ; }
	 	if ( (tam > 6) && (tam <= 9) ){
	 		campo.value = vr.substr(0,3) + '.' + vr.substr(3,3) + '.' + vr.substr(6,tam) ; }
	 	if (tam > 9){
	 		campo.value = vr.substr(0,3) + '.' + vr.substr(3,3) + '.' + vr.substr(6,3) + '-' + vr.substr(9,tam ) ; }
	}		
}	

function verificaCPF(campo){ 
	vr = campo;
	while (vr.indexOf(".")!=-1){
		vr=vr.replace(".","");
	}
	while (vr.indexOf("-")!=-1){
		vr=vr.replace("-","");
	}
	var i; 
	s = vr; 
	var c = s.substr(0,9); 
	var dv = s.substr(9,2); 
	var d1 = 0; 
	for (i = 0; i < 9; i++) { 
		d1 += c.charAt(i)*(10-i); 
	} 
	if (d1 == 0){ 
		return false; 
	}  
	d1 = 11 - (d1 % 11); 
	if (d1 > 9) d1 = 0; 
	if (dv.charAt(0) != d1) return false; 
	d1 *= 2; 
	for (i = 0; i < 9; i++) { 
		d1 += c.charAt(i)*(11-i); 
	} 
	d1 = 11 - (d1 % 11); 
	if (d1 > 9) d1 = 0; 
	if (dv.charAt(1) != d1) return false; 
	return true; 
} 

function sonumeros(numero){
	//verifica o enter (13), o delete (46), o backspace (8), o end (35), o home (36) e as setas (37,38,39,40)
	if ((numero.keyCode >= 35 && numero.keyCode <= 40) || (numero.keyCode == 46) ||
		(numero.keyCode == 8) || (numero.keyCode == 13) || (numero.keyCode == 9) ||
		(numero.keyCode >= 48 && numero.keyCode <= 57) || (numero.keyCode >= 96 && numero.keyCode <= 105)){
		return true;
	}else{
		return false;
	}
}

function tiraEspaco(texto){
	while(texto.indexOf(" ") != -1){
		texto = texto.replace(" ","");
	}
    return texto;}

function submeterCadastro(caminho,pagina){
	if(document.getElementById('cliente_nome').value == 0){	
		alert("Informe o seu nome.");
		document.getElementById('cliente_nome').focus();
		return;
	}
		if( tiraEspaco(document.getElementById('cliente_sobrenome').value) == "" ){		alert("Informe o seu sobrenome.");		document.getElementById('cliente_sobrenome').focus();		return;	}
    if(tiraEspaco(document.getElementById('cliente_dt_nasc').value) != ""){	
		if (!doDate(document.getElementById('cliente_dt_nasc').value)){
			alert("Data de Nascimento inválida.")
			document.getElementById('cliente_dt_nasc').focus();
			return;	
		}
	}else{
	    alert("Informe a Data de Nascimento.")
		document.getElementById('cliente_dt_nasc').focus();
		return;	
	}
	if(tiraEspaco(document.getElementById('cliente_cpf').value) == ""){	
		alert("Informe o CPF.");
		document.getElementById('cliente_cpf').focus();
		return;
	}else{
		if (!verificaCPF(document.getElementById('cliente_cpf').value)){
			alert("CPF inválido.");
			document.getElementById('cliente_cpf').focus();
			return;
		}
	}	
	if(tiraEspaco(document.getElementById('cliente_rg').value) == ""){	
		alert("Informe o RG.");
		document.getElementById('cliente_rg').focus();
		return;
	}
	if(tiraEspaco(document.getElementById('cliente_telefone').value) == ""){	
		alert("Informe o Telefone.");
		document.getElementById('cliente_telefone').focus();
		return;
	}
	if (!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(document.getElementById('cliente_email').value))){ 
       	alert("Email inválido.") 
        document.getElementById('cliente_email').focus() 
   	    return;
    }
	if(tiraEspaco(document.getElementById('cliente_senha').value) == ""){	
		alert("Informe a Senha.");
		document.getElementById('cliente_senha').focus();
		return;
	}
	if(document.getElementById('cliente_senha').value != document.getElementById('cliente_conf_senha').value){	
		alert("Senha diferente da Confirmação da Senha.");
		document.getElementById('cliente_senha').focus();
		return;
	}
	if(document.getElementById('cliente_conheceu_id').value == 0){
		alert("Você deve responder onde conheceu a Central do Delivery.");
		document.getElementById('cliente_conheceu_id').focus();
		return;
	}
	if(parseInt(document.getElementById('totalEnderecos').value) == 0){	
		alert("Você deve informar ao menos um endereço");
		return;
	}
	setarCampos();
	enviarForm(caminho+pagina,campos,'formularioUsuario','Enviando dados...',caminho);
}

function submeterCadastroCarrinho(caminho,pagina){
	if(document.getElementById('cliente_nome').value == 0){	
		alert("Informe o seu nome.");
		document.getElementById('cliente_nome').focus();
		return;
	}	
	if( tiraEspaco(document.getElementById('cliente_sobrenome').value) == "" ){
		alert("Informe o seu sobrenome.");
		document.getElementById('cliente_sobrenome').focus();
		return;
	}
	
	if (!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(document.getElementById('cliente_email').value))){ 
       	alert("Email inválido.") 
        document.getElementById('cliente_email').focus() 
   	    return;
    }
	if(tiraEspaco(document.getElementById('cliente_cpf').value) == ""){	
		alert("Informe o CPF.");
		document.getElementById('cliente_cpf').focus();
		return;
	}else{
		if (!verificaCPF(document.getElementById('cliente_cpf').value)){
			alert("CPF inválido.");
			document.getElementById('cliente_cpf').focus();
			return;
		}
	}	
	if(tiraEspaco(document.getElementById('cliente_rg').value) == ""){	
		alert("Informe o RG.");
		document.getElementById('cliente_rg').focus();
		return;
	}
    if(tiraEspaco(document.getElementById('cliente_dt_nasc').value) != ""){	
		if (!doDate(document.getElementById('cliente_dt_nasc').value)){
			alert("Data de Nascimento inválida.")
			document.getElementById('cliente_dt_nasc').focus();
			return;	
		}
	}else{
	    alert("Informe a Data de Nascimento.")
		document.getElementById('cliente_dt_nasc').focus();
		return;	
	}
	if(tiraEspaco(document.getElementById('cliente_telefone').value) == ""){	
		alert("Informe o Telefone.");
		document.getElementById('cliente_telefone').focus();
		return;
	}
	if(tiraEspaco(document.getElementById('cliente_senha').value) == ""){	
		alert("Informe a Senha.");
		document.getElementById('cliente_senha').focus();
		return;
	}
	if(document.getElementById('cliente_senha').value != document.getElementById('cliente_conf_senha').value){	
		alert("Senha diferente da Confirmação da Senha.");
		document.getElementById('cliente_senha').focus();
		return;
	}
	if(document.getElementById('cliente_conheceu_id').value == 0){
		alert("Você deve responder onde conheceu a Central do Delivery.");
		document.getElementById('cliente_conheceu_id').focus();
		return;
	}
	if(document.getElementById('totalEnderecos').value == 0){	
		alert("Você deve informar ao menos um endereço");
		return;
	}
	setarCampos();
	enviarForm(caminho+pagina,campos,'erroCadastroCarrinho','',caminho);
}

function setarCampos(){
	campos = "enviouCadastro=true&cliente_nome="+encodeURI(document.getElementById('cliente_nome').value);
	campos += "&cliente_sobrenome="+encodeURI(document.getElementById('cliente_sobrenome').value);
	campos +="&cadastroOrigem="+document.getElementById('cadastroOrigem').value;
	campos +="&cadastroClienteId="+document.getElementById('cadastroClienteId').value;
	campos +="&numAleatorioId="+document.getElementById('numAleatorioId').value;
	campos +="&cliente_dt_nasc="+encodeURI(document.getElementById('cliente_dt_nasc').value);
	campos +="&cliente_cpf="+encodeURI(document.getElementById('cliente_cpf').value);
	campos +="&cliente_rg="+encodeURI(document.getElementById('cliente_rg').value);
	campos +="&cliente_telefone="+encodeURI(document.getElementById('cliente_telefone').value);
	campos +="&cliente_conheceu_id="+encodeURI(document.getElementById('cliente_conheceu_id').value);
	if (tiraEspaco(document.getElementById('cliente_celular').value) != ''){
		campos +="&cliente_celular="+encodeURI(document.getElementById('cliente_celular').value);
	}else{
		campos +="&cliente_celular=''";
	}
	campos +="&cliente_email="+encodeURI(document.getElementById('cliente_email').value);
	campos +="&cliente_senha="+encodeURI(document.getElementById('cliente_senha').value);
	campos +="&cliente_conf_senha="+encodeURI(document.getElementById('cliente_conf_senha').value);
}
function cadastroClienteVoltar(nomeDiv,caminho){
	enviaRequisicao(nomeDiv, caminho+'scripts/cliente/cad_01.php');
}
function setarCamposEnderecoEntrega(){
	campos ="tipoEnderecoEntrega=2&cliente_endereco="+encodeURI(document.getElementById('cliente_endereco_entrega').value);
	campos +="&cliente_bairro="+encodeURI(document.getElementById('cliente_bairro_entrega').value);
	campos +="&cliente_cidade="+encodeURI(document.getElementById('cliente_cidade_entrega').value);
	
	if (tiraEspaco(document.getElementById('cliente_end_compl_entrega').value) != ''){
		campos +="&cliente_end_compl="+encodeURI(document.getElementById('cliente_end_compl_entrega').value);
	}else{
		campos +="&cliente_end_compl=''";
	}
	campos +="&cliente_estado="+encodeURI(document.getElementById('cliente_estado_entrega').value);
	campos +="&cliente_cep="+encodeURI(document.getElementById('cliente_cep_entrega').value);
	
	if (tiraEspaco(document.getElementById('cliente_ref_entrega').value) != ''){
		campos +="&cliente_ref="+encodeURI(document.getElementById('cliente_ref_entrega').value);
	}else{
		campos +="&cliente_ref=''";
	}
	if (tiraEspaco(document.getElementById('observacao').value) != ''){
		campos +="&observacao="+encodeURI(document.getElementById('observacao').value);
	}else{
		campos +="&observacao=''";
	}
	campos += "&cliente_telefone_entrega="+encodeURI(document.getElementById('cliente_telefone_entrega_entrega').value);
}
function submeterEnderecoEntregaAtual(caminho){
	campos ="tipoEnderecoEntrega=1";
	enviarForm(caminho+'scripts/carrinho/cad_endereco_entrega.php',campos,'enderecoClienteDiv','',caminho);
}
function submeterEnderecoEntrega(caminho,caminhoAtual){
	if(tiraEspaco(document.getElementById('cliente_telefone_entrega_entrega').value) == ""){	
		alert("Informe o Telefone do local que será entregue o pedido.");
		document.getElementById('cliente_telefone_entrega_entrega').focus();
		return;
	}
	if(tiraEspaco(document.getElementById('cliente_endereco_entrega').value) == ""){	
		alert("Informe o Endereço.");
		document.getElementById('cliente_endereco_entrega').focus();
		return;
	}
	if(tiraEspaco(document.getElementById('cliente_bairro_entrega').value) == ""){	
		alert("Informe o Bairro.");
		document.getElementById('cliente_bairro_entrega').focus();
		return;
	}
	if(tiraEspaco(document.getElementById('cliente_cidade_entrega').value) == ""){	
		alert("Informe a Cidade.");
		document.getElementById('cliente_cidade_entrega').focus();
		return;
	}
	if(document.getElementById('cliente_estado_entrega').value == ''){	
		alert("Informe o Estado.");
		document.getElementById('cliente_estado_entrega').focus();
		return;
	}
	if(tiraEspaco(document.getElementById('cliente_cep_entrega').value) == ""){	
		alert("Informe o CEP.");
		document.getElementById('cliente_cep_entrega').focus();
		return;
	}
	var faixa_cep1_ini = parseInt(document.getElementById('faixa_cep1_ini').value);
	var faixa_cep1_fim = parseInt(document.getElementById('faixa_cep1_fim').value);
	var faixa_cep2_ini = parseInt(document.getElementById('faixa_cep2_ini').value);
	var faixa_cep2_fim = parseInt(document.getElementById('faixa_cep2_fim').value);
	var cep_usuario = document.getElementById('cliente_cep_entrega').value;
	cep_usuario = parseInt(cep_usuario.replace("-",""));
	if((cep_usuario >= faixa_cep1_ini && cep_usuario <= faixa_cep1_fim) || (cep_usuario >= faixa_cep2_ini && cep_usuario <= faixa_cep2_fim)){
		if(cep_usuario == 0){
			alert("CEP não encontrado na cidade informada.");
			document.getElementById('cliente_cep_entrega').focus();
			return;
		}
	}else{
		alert("CEP não encontrado na cidade informada.");
		document.getElementById('cliente_cep_entrega').focus();
		return;
	}
	if(tiraEspaco(document.getElementById('cliente_ref_entrega').value) == ""){	
		alert("Informe o Ponto de Referência.");
		document.getElementById('cliente_ref_entrega').focus();
		return;
	}
	setarCamposEnderecoEntrega();
	enviarForm(caminho,campos,'enderecoClienteDiv','Enviando dados...',caminhoAtual);
}
function submeterEnderecos(caminho,caminhoAtual){			
	if(tiraEspaco(document.getElementById('cliente_titulo').value) == ""){	
		alert("Informe o Título.");
		document.getElementById('cliente_titulo').focus();
		return;
	}
	if(tiraEspaco(document.getElementById('cliente_telefone_entrega').value) == ""){
		alert("Informe o Telefone do local que será entregue o pedido.");
		document.getElementById('cliente_telefone_entrega').focus();
		return;
	}
	if(tiraEspaco(document.getElementById('cliente_endereco').value) == ""){	
		alert("Informe o Endereço.");
		document.getElementById('cliente_endereco').focus();
		return;
	}
	if(document.getElementById('cliente_end_compl_opcao2').checked){
		if(tiraEspaco(document.getElementById('cliente_end_compl').value) == ""){
			alert("Informe o nome do edifício no campo complemento.");
			document.getElementById('cliente_end_compl').focus();
			return;
		}
	}
	if(tiraEspaco(document.getElementById('cliente_bairro').value) == ""){	
		alert("Informe o Bairro.");
		document.getElementById('cliente_bairro').focus();
		return;
	}
	if(tiraEspaco(document.getElementById('cliente_cidade').value) == ""){	
		alert("Informe a Cidade.");
		document.getElementById('cliente_cidade').focus();
		return;
	}
	if(document.getElementById('cliente_estado').value == ''){	
		alert("Informe o Estado.");
		document.getElementById('cliente_estado').focus();
		return;
	}
	if(tiraEspaco(document.getElementById('cliente_cep').value) == ""){	
		alert("Informe o CEP.");
		document.getElementById('cliente_cep').focus();
		return;
	}
	if(tiraEspaco(document.getElementById('cliente_ref').value) == ""){	
		alert("Informe o Ponto de Referência.");
		document.getElementById('cliente_ref').focus();
		return;
	}
	setarCamposEnderecos();
	enviarForm(caminho+caminhoAtual,campos,'enderecosCliente','Registrando endereço...',caminho);
}
function setarCamposEnderecos(){
	campos ="inclui=1&cliente_endereco="+encodeURI(document.getElementById('cliente_endereco').value);
	campos +="&carrega="+document.getElementById('carrega').value;
	campos +="&opcaoExclui="+document.getElementById('opcaoExclui').value;
	campos +="&numAleatorioId="+document.getElementById('numAleatorioId').value;
	campos +="&cliente_titulo="+encodeURI(document.getElementById('cliente_titulo').value);
	campos +="&cliente_bairro="+encodeURI(document.getElementById('cliente_bairro').value);
	campos +="&cliente_cidade="+encodeURI(document.getElementById('cliente_cidade').value);
	if (tiraEspaco(document.getElementById('cliente_end_compl').value) != ''){
		campos +="&cliente_end_compl="+encodeURI(document.getElementById('cliente_end_compl').value);
	}else{
		campos +="&cliente_end_compl=''";
	}
	campos +="&cliente_estado="+encodeURI(document.getElementById('cliente_estado').value);
	campos +="&cliente_cep="+encodeURI(document.getElementById('cliente_cep').value);
	if (tiraEspaco(document.getElementById('cliente_ref').value) != ''){
		campos +="&cliente_ref="+encodeURI(document.getElementById('cliente_ref').value);
	}else{
		campos +="&cliente_ref=''";
	}
	campos += "&cliente_telefone_entrega="+encodeURI(document.getElementById('cliente_telefone_entrega').value);
}
function limpaCamposEnd(){
	document.getElementById('cliente_endereco').value='';
	document.getElementById('cliente_bairro').value ='';
	document.getElementById('cliente_titulo').value ='';
	document.getElementById('cliente_cidade').value='';
	document.getElementById('cliente_end_compl').value='';
	document.getElementById('cliente_estado').value='';
	document.getElementById('cliente_cep').value='';
	document.getElementById('cliente_ref').value='';
	document.getElementById('cliente_telefone_entrega').value = '';
}
function excluiEndereco(endereco,cliente,caminho,caminhoAtual){
	campos ="excluir=1&cliente="+cliente+"&endereco="+endereco;
	enviarForm(caminho+caminhoAtual,campos,'enderecosCliente','Excluindo endereço...',caminho);	
}

function alteraEndereco(div,caminho,id){
	caminho += "?alteraEnderecoId="+id+"&voltouCliente=true";
	enviaRequisicao(div,caminho,'Carregando...');
}
function cancelaAlteraEndereco(div,caminho){
	caminho += "?voltouCliente=true";
	enviaRequisicao(div,caminho,'Carregando...');
}
function salvaDadosEndereco(div,caminho){
	var cliente_id = document.getElementById('cadastroClienteId').value;
	var id = document.getElementById('cliente_endereco_id').value;
	var titulo = encodeURI(document.getElementById('cliente_titulo').value);
	var telefone = document.getElementById('cliente_telefone_entrega').value;
	var endereco = encodeURI(document.getElementById('cliente_endereco').value);
	var complemento = encodeURI(document.getElementById('cliente_end_compl').value);
	var bairro = encodeURI(document.getElementById('cliente_bairro').value);
	var cidade = encodeURI(document.getElementById('cliente_cidade').value);
	var estado = document.getElementById('cliente_estado').value;
	var referencia = encodeURI(document.getElementById('cliente_ref').value);
	var cep = document.getElementById('cliente_cep').value;
	if(titulo == ""){	
		alert("Informe o Título.");
		document.getElementById('cliente_titulo').focus();
		return;
	}
	if(telefone == ""){
		alert("Informe o Telefone do local que será entregue o pedido.");
		document.getElementById('cliente_telefone_entrega').focus();
		return;
	}
	if(endereco == ""){	
		alert("Informe o Endereço.");
		document.getElementById('cliente_endereco').focus();
		return;
	}
	if(document.getElementById('cliente_end_compl_opcao2').checked){
		if(tiraEspaco(document.getElementById('cliente_end_compl').value) == ""){
			alert("Informe o nome do edifício no campo complemento.");
			document.getElementById('cliente_end_compl').focus();
			return;
		}
	}
	if(bairro == ""){	
		alert("Informe o Bairro.");
		document.getElementById('cliente_bairro').focus();
		return;
	}
	if(cidade == ""){	
		alert("Informe a Cidade.");
		document.getElementById('cliente_cidade').focus();
		return;
	}
	if(estado == ''){	
		alert("Informe o Estado.");
		document.getElementById('cliente_estado').focus();
		return;
	}
	if(cep == ""){	
		alert("Informe o CEP.");
		document.getElementById('cliente_cep').focus();
		return;
	}
	if(referencia == ""){	
		alert("Informe o Ponto de Referência.");
		document.getElementById('cliente_ref').focus();
		return;
	}
	caminho += "?salvaEndereco=true&cliente_id="+cliente_id+"&endereco_id="+id+"&endereco_titulo="+titulo+"&endereco_telefone="+telefone
			+"&endereco_end="+endereco+"&endereco_compl="+complemento+"&endereco_bairro="+bairro
			+"&endereco_cidade="+cidade+"&endereco_estado="+estado+"&endereco_referencia="+referencia+"&endereco_cep="+cep+"&voltouCliente=true";
	enviaRequisicao(div,caminho,'Carregando...');
}