//Função usada para recuperar os dados dos formulário. Sem precisar repetir toda vez o comando
function $m(elemento)
{
	return document.getElementById(elemento);
}

function RefreshAll()
{
    var nome = $m("nombre");
    
    window.location.href=window.location.href;
    nome.focus();
    return false;
}
//Função que valida se o e-mail informado está no formato válido ou não.
function checkMail(mail)
{
	var er = new RegExp(/^[\w-]+(\.[\w-]+)*@(([A-Za-z\d][A-Za-z\d-]{0,61}[A-Za-z\d]\.)+[A-Za-z]{2,6}|\[\d{1,3}(\.\d{1,3}){3}\])$/);
	if(typeof(mail) == "string")
	{
		if(er.test(mail))
		{
			return true;
		}
    }
	else if(typeof(mail) == "object")
	{
    	if(er.test(mail.value))
		{ 
        	return true; 
		}
    }
	else
	{
		return false;
	}
}

//Função para validar URL
function checkURL(url){
    var RegExp = /^(([\w]+:)?\/\/)?(([\d\w]|%[a-fA-f\d]{2,2})+(:([\d\w]|%[a-fA-f\d]{2,2})+)?@)?([\d\w][-\d\w]{0,253}[\d\w]\.)+[\w]{2,4}(:[\d]+)?(\/([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)*(\?(&?([-+_~.\d\w]|%[a-fA-f\d]{2,2})=?)*)?(#([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)?$/;
    if(RegExp.test(url)){
        return true;
    }else{
        return false;
    }
}

//Função que só vai permitir ser digitado números, para chamar essa função: onKeyUp="soNumeros(this);"
function soNumeros(campo)
{
    var digits="0123456789"
    var campo_temp 
    for (var i=0;i<campo.value.length;i++)
	{
    	campo_temp=campo.value.substring(i,i+1)    
		if (digits.indexOf(campo_temp)==-1)
		{
			campo.value = campo.value.substring(0,i);
            break;
		}
	}
}

function cntTexto(campo,num)
{
	descricao		= campo;
	cntExbTxt		= $m("cntExbTxt");
	total			= new Number(campo.value.length);
	num				= new Number(num);
	cntExbTxt.value	= num - total;
	if(total >= num)
	{
		campo.value = campo.value.substring(0,num);
		cntExbTxt.value	= 0;
	}
}

function cntTexto2(campo,num,cnt)
{
	descricao		= campo;
	cntExbTxt		= $m(cnt);
	total			= new Number(campo.value.length);
	num				= new Number(num);
	cntExbTxt.value	= num - total;
	if(total >= num)
	{
		campo.value = campo.value.substring(0,num);
		cntExbTxt.value	= 0;
	}
}

//Função usada para vericar se todos os campos da data doselecionados
/*
    msg é a mensagem a ser concatenada na exibição
    tipo é para verificar como será a validação, se todos a data é obrigatorio (ob)) ou opcial (op)
*/
function checkData(dia_c,mes_c,ano_c,msg,tipo)
{
    if(msg != "")
        msg = " "+msg+".";
    else
        msg = ".";
    
    if(tipo == "ob")
    {
        if(!chkData(dia_c,mes_c,ano_c,msg))
            return false;
        else
            return true;
    }
    else if(tipo == "op")
    {
        if(dia_c.value != "" || mes_c.value != "" || ano_c.value != "")
        {
            if(!chkData(dia_c,mes_c,ano_c,msg))
                return false;
            else
                return true;
        }
    }
}
function chkData(dia_v,mes_v,ano_v,msg_v)
{
    if(dia_v.value == "")
    {
        alert("Selecione o Dia "+msg_v);
        dia_v.focus();
        return false;
    }
    else if(mes_v.value == "")
    {
        alert("Selecione o Mês "+msg_v);
        mes_v.focus();
        return false;
    }
    else if(ano_v.value == "")
    {
        alert("Selecione o Ano "+msg_v);
        ano_v.focus();
        return false;
    }
    return true;
}
//Função usada para vericar se o telefone foi preenchido corretamente
/*
    msg é a mensagem a ser concatenada na exibição
    tipo é para verificar como será a validação, se todos a data é obrigatorio (ob)) ou opcial (op)
*/
function checkTel(ddd,ntelefone,msg,tipo)
{
    if(tipo == "ob")
    {
        if(chkTel(ddd,ntelefone,msg))
            return true;
        else
            return false;
    }
    else if(tipo == "op")
    {
        if(ddd.value != "" || ntelefone.value != "")
        {
            if(chkTel(ddd,ntelefone,msg))
                return true;
            else
                return false;
        }
    }
}
function chkTel(ddd_v,ntelefone_v,msg_v)
{
    if(ddd_v.value == "")
    {
        alert("Informe o DDD " + msg_v);
        ddd_v.focus();
        return false;
    }
    else if(ddd_v.value.length < 2)
    {
        alert("DDD do " + msg_v + " deve ter 2 (dois) dígitos.");
        ddd_v.focus();
        return false;
    }
    else if(ntelefone_v.value == "")
    {
        alert("Informe o Número do " + msg_v);
        ntelefone_v.focus();
        return false;
    }
    else if(ntelefone_v.value.length < 8)
    {
        alert("Número do " + msg_v + " deve ter 8 (oito) dígitos.");
        ntelefone_v.focus();
        return false;
    }
    return true;
}

//Função para validar preenchimento da localização
function checkEndereco(cep,logradouro,numero,bairro,uf,municipio)
{
    if(cep.value == "")
    {
        alert("O campo CEP é obrigatório.");
        cep.focus();
        return false;
    }
    if(cep.value.length < 8)
    {
        alert("CEP deve ter 8 (oito) dígitos.");
        cep.focus();
        return false;
    }
    if(logradouro.value == "")
    {
        alert("O campo Logradouro é obrigatório.");
        logradouro.focus();
        return false;
    }
    if(numero.value == "")
    {
        alert("O campo Número (Nº) é obrigatório.");
        numero.focus();
        return false;
    }
    if(bairro.value == "")
    {
        alert("O campo Bairro é obrigatório.");
        bairro.focus();
        return false;
    }
    if(uf.value == "")
    {
        alert("Selecione a UF.");
        uf.focus();
        return false;
    }
    if(municipio.value == "")
    {
        alert("O campo Município é obrigatório.");
        municipio.focus();
        return false;
    }
    return true;
}

//Função para não permitir acentos
function semAcento(obj)
{
    var str         = new String(obj.value);
    var acentos     = new String('àâêôûãõáéíóúçüÀÂÊÔÛÃÕÁÉÍÓÚÇÜ {}[]');
    var SemAcento   = new String('aaeouaoaeioucuAAEOUAOAEIOUCU_');
    var c           = new String();
    var i           = new Number();
    var x           = new Number();
    var res         = '';
    
    for (i = 0; i<str.length; i++)
    {
        c = str.substring(i,i+1);
        for (x=0; x< acentos.length; x++)
        {
            if(checkString(c))
            {
                if (acentos.substring(x,x+1) == c)
                {
                    c = SemAcento.substring(x,x+1);
                }
            }
            else
            {
                c = acentos.substring(x,x-1)
            }
        }
        res += c;
    }
    obj.value = res;
}

//Função para checar caracteres
function checkString(str)
{
	var re;
	re = /[\\/:*?"<>|!@#$%&()¨¬+=§ªº°;,'¹²³]/gi;
	if (re.test(str))
		return false;	
	else 
		return true;
}



function limparCampo(campo)
{
    if (campo.value == campo.defaultValue)
    {
        campo.value = "";
    }
} 
function escreverCampo(campo)
{
    if (campo.value == "")
    {
        campo.value = campo.defaultValue;
    }
}

function consultaCep()
{
    var cep         = $m("cep").value;
    var uf          = $m('uf');
    var municipio   = $m("municipio");
    var logradouro  = $m("logradouro");
    var bairro      = $m("bairro");
    var complemento = $m("complemento");
    var txtResultado    = $m("txtResultado");
    
    var ajax	= ajaxInit();
	var url		= "consulta_cep.php?cep="+cep;
	
	if(ajax)
	{
		//alert(url);
		ajax.onreadystatechange = contCads;
		ajax.open('GET',url,false);
		ajax.send(null);
	}
    function contCads()
    {
        if(ajax.readyState == 1)
            txtResultado.innerHTML  = '<img src="imagens/loading.gif" border="0" /> Carregando';
        if(ajax.readyState == 4)
        {
            if(ajax.status == 200)
            {
                var resultado           = ajax.responseText;
                var resultado           = resultado.split("|")  
                var resUF               = resultado[0];
                var resMunicipio        = resultado[1];
                var resBairro           = resultado[2];
                var resComplemento      = resultado[3];
                var resLogradouro       = resultado[4];
                var resResultado        = resultado[5];
                var resTxtRes           = resultado[6]; 
                uf.value                = resUF;
                municipio.value         = resMunicipio;
                logradouro.value        = resLogradouro;
                bairro.value            = resBairro;
                complemento.value       = resComplemento;
                txtResultado.innerHTML  = resTxtRes;
            }
            else
            {
                alert("Pagina não encontrada");
            }
        }
    }
}

//Alterar os dados do tipo de pessoa
function verTipoPessoa()
{
    
    var tipo_pessoa     = $m("tipo_pessoa");
    var cnpj_cpf        = $m("cnpj_cpf");
    var ie_rg           = $m("ie_rg");
    var tr_razao_social = $j("#tr_razao_social");
    var txtNome         = $j("#txtNome");
    var txtCnpjCpf      = $j("#txtCnpjCpf");
    var txtIeRg         = $j("#txtIeRg");
    var tr_responsavel  = $j("#tr_responsavel");
    
    if(tipo_pessoa.value == "2")
    {
        tr_razao_social.hide();
        txtNome.html("Nome:");
        txtCnpjCpf.html("CPF:");
        txtIeRg.html("RG:");
        tr_responsavel.hide();
        
        cnpj_cpf.value      = "";
        cnpj_cpf.size       = "12";
        cnpj_cpf.maxLength  = "11";
        ie_rg.value         = "";
        ie_rg.size          = "10";
        ie_rg.maxLength     = "9";
    }
    else
    {
        tipo_pessoa.value = "1";
        tr_razao_social.show();
        txtNome.html("Nome Fantasia:");
        txtCnpjCpf.html("CNPJ:");
        txtIeRg.html("IE:");
        tr_responsavel.show();
        
        cnpj_cpf.value      = "";
        cnpj_cpf.size       = "14";
        cnpj_cpf.maxLength  = "14";
        ie_rg.value         = "";
        ie_rg.size          = "15";
        ie_rg.maxLength     = "15";
    }
}

function cadNewsletter()
{
    $j(document).ready(function(){
        var nome     = $m("nome");
        var email    = $m("email");
        if(valNewsletter())
        {
            //Iniciando requisição ajax
            $j('#txtResultado').ajaxStart(function(){
    			$j(this).show().html('<img src="imagenes/loading.gif" border="0" width="10" /> Enviando');
    		});
            
            $j.post("val_cad_newsletter.php",{
                        nome: nome.value,
                        email:email.value
                    },function(data){
                        $j('#txtResultado').html(data);
                    }
            );
            // Esconde Loading
            
    		/*$j("#msg_loading").ajaxSuccess(function(){
    			$j(this).hide();
    		});*/
        }    
    });
}
