function validaForumlario(campos)
{
	conf = "";
	var formulario = document.getElementById('formulario');
	for(aux=1; aux<=campos; aux++)
	{
		if((formulario.elements['campos['+aux+']'].value=="") || (formulario.elements['campos['+aux+']'].value.substring(0,1)==" "))
		{
			nome = formulario.elements['nomes['+aux+']'].value;
			conf+="\n- O campo "+nome+"deve ser preenchido !";
		}
		
	}
			
	if (conf != "") 
	{
		alert(conf);
		conf="";
		return false;
	}
	else 
	{
		return true;
	}
}
function verificar_campo_vazio(formulario, campos, erro)
{
	if (erro==undefined)
	    erro = 'O(s) seguinte(s) campo(s) deve(m) ser preenchido(s):';
	
	var erros = "";
	
	
	if (campos==undefined)
	{
	    
		for(i=0; i<formulario.elements.length; i++)
		{
			var erro_tmp = 0;
			
			with (formulario.elements[i])
			{
				switch(type)
				{
				    case "text":
					case "select-one":					
					case "hidden":
					case "password":
					case "file":
					    if (value=="" && value.substring(0,1)==" ")
						    erro_tmp = 1;
					    break;
					case "textarea":
					    if (value.length==0 && value.substring(0,1)==" ")
						    erro_tmp = 1;					
					    break;
					case "checkbox":
					    if (checked==false)
						    erro_tmp = 1;
					    break;

				}
				
				switch(value)
				{
				    case      "00:00":
					case   "00:00:00":
					case "00/00/0000":
					    erro_tmp = 1;
					    break;
				}
				
				if (erro_tmp==1)
				{
				   
				   if (title!="")
					   tmp = title;
				   else
				   {
				       tmp = id;
					   tmp = tmp.toUpperCase();
				   }
				   tmp = new String(tmp);
				   tmp = tmp.replace("_", " ");
				   tmp = tmp.replace("_", " ");
				   tmp = tmp.replace("_", " ");
				   tmp = tmp.replace("_", " ");
				   erros += "- "+tmp+"\n";
				}
			}
		}
		
		if (erros!="")
		{
		    alert(erro+"\n\n"+erros);
			return false;
		}
		else
		    return true;
	}    
	else
	{
	    for (i=0;i<campos.length;i++)
		{
			var erro_tmp = 0;		
		    
			with (eval('formulario.'+campos[i]))
			{
				switch(type)
				{
					case "text":
					case "select-one":
					case "hidden":
					case "password":
					case "file":
					    if (value=="")
						    erro_tmp = 1;
					    break;
					case "textarea":
					    if (value.length==0)
						    erro_tmp = 1;					
					    break;
					case "checkbox":
					    if (checked==false)
						    erro_tmp = 1;
					    break;
				}
				
				switch(value)
				{
				    case      "00:00":
					case   "00:00:00":
					case "00/00/0000":
					    erro_tmp = 1;
					    break;
				}
				
				if (erro_tmp==1)
				{
				   
				   if (title!="")
					   tmp = title;
				   else
				   {
				       tmp = id;
					   tmp = tmp.toUpperCase();
				   }
				   tmp = new String(tmp);
				   tmp = tmp.replace("_", " ");
				   tmp = tmp.replace("_", " ");
				   tmp = tmp.replace("_", " ");
				   tmp = tmp.replace("_", " ");
				   erros += "- "+tmp+"\n";
				}			
			}			
		}
		
		if (erros!="")
		{
		    alert(erro+"\n\n"+erros);
			return false;
		}
		else
		    return true;		
	}
}
function mascara_email_onkeypress(campo,event)
{
	
	var caracteres = ["34","39","35","36","37","168","38","40","41","43","61","92","124","44","60","62","58","59","63","47","225","180","96","94","126","123","91","93","125","225","224","233","232","237","236","243","242","250","249","33","42"];

	
	for(i=0;i<caracteres.length;i++) 
	{
	    if (event.keyCode==caracteres[i])
		{
		    event.returnValue = false;
			break;
		}	
	}
}


function mascara_email_onblur(campo, erro)
{
    if (erro==undefined)
	    erro = "Informe um e-mail correto.";
	
	valor = new String(campo.value);
	if (valor.length>0)
	{
		if (valor.search(/^[a-zA-Z0-9_\-\.]+@[a-zA-Z0-9_\-\.]+\.[a-zA-Z0-9_\-\.]+$/)>-1)
			return true;
		else
		{
			alert(erro);
			campo.focus();
			return false;
		}	
	}

}


function mascara_email_onfocus(campo)
{
	    campo.select(); 
}
//MÁSCARA DE VALORES

function txtBoxFormat(objeto, sMask, evtKeyPress) {
    var i, nCount, sValue, fldLen, mskLen,bolMask, sCod, nTecla;


if(document.all) { // Internet Explorer
    nTecla = evtKeyPress.keyCode;
} else if(document.layers) { // Nestcape
    nTecla = evtKeyPress.which;
} else {
    nTecla = evtKeyPress.which;
    if (nTecla == 8) {
        return true;
    }
}

    sValue = objeto.value;

    // Limpa todos os caracteres de formatação que
    // já estiverem no campo.
    sValue = sValue.toString().replace( "-", "" );
    sValue = sValue.toString().replace( "-", "" );
    sValue = sValue.toString().replace( ".", "" );
    sValue = sValue.toString().replace( ".", "" );
    sValue = sValue.toString().replace( "/", "" );
    sValue = sValue.toString().replace( "/", "" );
    sValue = sValue.toString().replace( ":", "" );
    sValue = sValue.toString().replace( ":", "" );
    sValue = sValue.toString().replace( "(", "" );
    sValue = sValue.toString().replace( "(", "" );
    sValue = sValue.toString().replace( ")", "" );
    sValue = sValue.toString().replace( ")", "" );
    sValue = sValue.toString().replace( " ", "" );
    sValue = sValue.toString().replace( " ", "" );
    fldLen = sValue.length;
    mskLen = sMask.length;

    i = 0;
    nCount = 0;
    sCod = "";
    mskLen = fldLen;

    while (i <= mskLen) {
      bolMask = ((sMask.charAt(i) == "-") || (sMask.charAt(i) == ".") || (sMask.charAt(i) == "/") || (sMask.charAt(i) == ":"))
      bolMask = bolMask || ((sMask.charAt(i) == "(") || (sMask.charAt(i) == ")") || (sMask.charAt(i) == " "))

      if (bolMask) {
        sCod += sMask.charAt(i);
        mskLen++; }
      else {
        sCod += sValue.charAt(nCount);
        nCount++;
      }

      i++;
    }

    objeto.value = sCod;

    if (nTecla != 8) { // backspace
      if (sMask.charAt(i-1) == "9") { // apenas números...
        return ((nTecla > 47) && (nTecla < 58)); }
      else { // qualquer caracter...
        return true;
      }
    }
    else {
      return true;
    }
  }
// Data:<input type="text" size="20" onkeypress="return txtBoxFormat(this, '99/99/9999', event);">
// RG:<input type="text" size="20" onkeypress="return txtBoxFormat(this, '99.999.999-9', event);">
// Telefone:<input type="text" size="20" onkeypress="return txtBoxFormat(this, '(99)9999-9999', event);">
// Código:<input type="text" size="20" onkeypress="return txtBoxFormat(this, '99-999', event);">	

function campo_inteiro_onkeypress(event)
{
	clientNavigator = navigator.appName;  
	if (clientNavigator.indexOf('Microsoft') != -1)
	{
		tecla = new String(event.keyCode);
	}else
	{
		tecla = new String(event.which);
	}
	
	if (tecla.search(/^(4[89]|5[0-7])$/)==-1)
		return false;   
}



function campo_inteiro_onblur(campo, erro) 
{
	
	if (erro==undefined)
	    erro = "Esse campo só aceita números.";
	
	valor = new String(campo.value);
    if (valor.length!=0)
	{
		
		if (valor.search(/^[0-9]+$/)>-1)
			return true;
		else
		{
			alert(erro);
			campo.focus();
			return false;
		}		
	}
}

//--->Função para a formatação dos campos...<---
function Mascara(tipo, campo, teclaPress) {
        if (window.event)
        {
                var tecla = teclaPress.keyCode;
        } else {
                tecla = teclaPress.which;
        }
 
        var s = new String(campo.value);
        // Remove todos os caracteres à seguir: ( ) / - . e espaço, para tratar a string denovo.
        s = s.replace(/(\.|\(|\)|\/|\-| )+/g,'');
 
        tam = s.length + 1;
 
        if ( tecla != 9 && tecla != 8 ) {
                switch (tipo)
                {
                case 'CPF' :
                        if (tam > 3 && tam < 7)
                                campo.value = s.substr(0,3) + '.' + s.substr(3, tam);
                        if (tam >= 7 && tam < 10)
                                campo.value = s.substr(0,3) + '.' + s.substr(3,3) + '.' + s.substr(6,tam-6);
                        if (tam >= 10 && tam < 12)
                                campo.value = s.substr(0,3) + '.' + s.substr(3,3) + '.' + s.substr(6,3) + '-' + s.substr(9,tam-9);
                break;
 
                case 'CNPJ' :
 
                        if (tam > 2 && tam < 6)
                                campo.value = s.substr(0,2) + '.' + s.substr(2, tam);
                        if (tam >= 6 && tam < 9)
                                campo.value = s.substr(0,2) + '.' + s.substr(2,3) + '.' + s.substr(5,tam-5);
                        if (tam >= 9 && tam < 13)
                                campo.value = s.substr(0,2) + '.' + s.substr(2,3) + '.' + s.substr(5,3) + '/' + s.substr(8,tam-8);
                        if (tam >= 13 && tam < 15)
                                campo.value = s.substr(0,2) + '.' + s.substr(2,3) + '.' + s.substr(5,3) + '/' + s.substr(8,4)+ '-' + s.substr(12,tam-12);
                break;
 
                case 'TEL' :
                        if (tam > 2 && tam < 4)
                                campo.value = '(' + s.substr(0,2) + ') ' + s.substr(2,tam);
                        if (tam >= 7 && tam < 11)
                                campo.value = '(' + s.substr(0,2) + ') ' + s.substr(2,4) + '-' + s.substr(6,tam-6);
                break;
 
                case 'DATA' :
                        if (tam > 2 && tam < 4)
                                campo.value = s.substr(0,2) + '/' + s.substr(2, tam);
                        if (tam > 4 && tam < 11)
                                campo.value = s.substr(0,2) + '/' + s.substr(2,2) + '/' + s.substr(4,tam-4);
                break;
                
                case 'CEP' :
                        if (tam > 5 && tam < 7)
                                campo.value = s.substr(0,5) + '-' + s.substr(5, tam);
                break;
                }
        }
}

//--->Função para verificar se o valor digitado é número...<---
function digitos(event){
        if (window.event) {
                // IE
                key = event.keyCode;
        } else if ( event.which ) {
                // netscape
                key = event.which;
        }
        if ( key != 8 || key != 13 || key < 48 || key > 57 )
                return ( ( ( key > 47 ) && ( key < 58 ) ) || ( key == 8 ) || ( key == 13 ) );
        return true;
}

