/************************************
    Repositório de funções Javascript


*************************************/
function maxLength(qtde_char, nome_campo)
{

    if(document.getElementById(nome_campo))
        obj = document.getElementById(nome_campo);
    else
        return;
    if(obj.value.length >= qtde_char)
    {
        return false;
    }
}


/*************************************************************
    Função abreJanela
    Descrição: Função nomeada para abrir popups pré definidas.
    Parâmetros: url - Nome da url a ser aberta.
                parametros - Parametros opcionais. Já tem um padrão definido.

*************************************************************/
function abreJanela(url, parametros)
{
    if(parametros=="")
        parametros = "resizable=no,scrollbars=no,status=no,height=400,width=400";
    window.open(url,"_blank",parametros);

}


/*************************************************************
    Função formataDataBR
    Descrição: Função para preencher os campos de data corretamente.
                Colocando as barras automáticamente.
    Parâmetros: id_campo - Nome do campo de data.
                e - evento. Por padrão passar 'event'

*************************************************************/
function formataDataBR(id_campo,e)
{
    if(document.getElementById(id_campo))
        var obj = document.getElementById(id_campo);

    if(e.keyCode >=48 && e.keyCode <=57) //>
    {
        if(obj.value.length==2)
            obj.value +="/";
        if(obj.value.length==5)
            obj.value +="/";
        if(obj.value.length>=10)
            return false;
        return true;
    }
    else
        return false;
}


/*************************************************************
    Função setelectValor
    Descrição: Função para selecionar o campo SELECT. Possui um parametro para janelas filhas.
    Parametros: id_selnome : id o campo a ser selecionado.
                id_valor   : valor do campo a ser selecionado.
                parent     : nome da janela que abriu.
*************************************************************/
function setSelectValor(id_selnome, id_valor, parent)
{
    if(parent)parent = parent+".";else parent="";
    var objsel = eval(parent+"document.getElementById('"+id_selnome+"')");
    for(intContador=0;intContador<objsel.length;intContador++)//>
    {
        if(objsel[intContador].value == id_valor)
            objsel[intContador].selected=true;
    }


}
/*************************************************************
    Função setaSelect
    Descrição: Função para selecionar o campo SELECT.
    Parametros: id_campo : id o campo a ser selecionado.
                val_sel  : valor do campo a ser selecionado.
*************************************************************/
function setaSelect(id_campo, val_sel)
{
    if(!eval(document.getElementById(id_campo)))
    {
        alert("Atenção, campo "+ id_campo +" não existe. setaSelect()");
        return false;
    }
    var obj = document.getElementById(id_campo);
    for(intContador=0;intContador<obj.length;intContador++) //>
    {
        if(obj.options[intContador].value == val_sel)
            obj.options[intContador].selected = true;
    }
    return true;
}
/*************************************************************
    Função setaCheck
    Descrição: Função para selecionar o campo CHECKBOX.
    Parametros: id_campo : id o campo a ser marcado.

*************************************************************/
function setaCheck(id_campo, boolCheck)
{
    if(!boolCheck)
        return true;
    if(!eval(document.getElementById(id_campo)))
    {
        alert("Atenção, campo "+ id_campo +" não existe. setaCheck()");
        return false;
    }
    var obj = document.getElementById(id_campo);
    obj.checked=true;
    return true;
}

/*************************************************************
    Função setaRadio
    Descrição: Função para selecionar o campo SELECT.
    Parametros: nome_campo : id o campo a ser selecionado.
                val_sel  : valor do campo a ser selecionado.
*************************************************************/
function setaRadio(nome_campo, val_sel)
{   	
    if(!eval(document.getElementById(nome_campo)))
    {
        alert("Atenção, campo "+ nome_campo +" não existe. setaCheck()");
        return false;
    }
	for(i=0; i<document.getElementsByName(nome_campo).length; i++)
	{
    	if(document.getElementsByName(nome_campo)[i].value == val_sel)
        	document.getElementsByName(nome_campo)[i].checked = true;
			// ou document.getElementById(nome_campo+i).checked = true;
	}
    return true;
}
// SE O ID FOSSE O VALOR DO CAMPO
/*function setaRadio(val_sel)
{   	
	document.getElementById(val_sel).checked = true;	
    return true;
}*/

/*************************************************************
Função strtolowerjs
Descrição: Função para retornar uma string em letras minusculas
Parametros: string : string a ser trabalhada.
*************************************************************/
function strtolowerjs(string)
{
    return string.toLowerCase(string);
}

/*************************************************************
Função validaCampos
Descrição: Função para validar campos passados por array..
Parametros: arrayDados : Array com os dados a serem validados.
				[
				 [0]	- nome do campo
				 [1]	- descricao do campo
				]
*************************************************************/
function validaCampos(arrayDados){
	var mensagem = "";
	for(intContador=0;intContador<arrayDados.length;intContador++){
		var campo = document.getElementById(arrayDados[intContador][0]);
		if(campo == null) continue;
    	if((campo.type == "text" || campo.type =="textarea") && campo.value == "")
    	{
    		mensagem = mensagem +"\npreencher o campo "+arrayDados[intContador][1];
    	}
    	if(campo.type == "checkbox" && campo.checked == false)
    	{
    		mensagem = mensagem +"\nmarcar o campo "+arrayDados[intContador][1];
    	}    	
    }
	
    if(mensagem!="")
    {
        alert("Atenção:"+mensagem);
        return false;
    }
    return true;
}  
function validaEmail(campoEmail){
	var campo             = document.getElementById(campoEmail);	
	var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
	if(!emailPattern.test(campo.value))
        return false;
	return true;
}


