
function validaEmail(objEmail){

      var emailStr = objEmail.value


        //remove espaços antes da verificação
        var emailStr = trim(emailStr)
        /* Critica de e-mail */
        var emailPat=/^(.+)@(.+)$/
        var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"
        var validChars="\[^\\s" + specialChars + "\]"
        var quotedUser="(\"[^\"]*\")"
        var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/
        var atom=validChars + '+'
        var word="(" + atom + "|" + quotedUser + ")"
        var userPat=new RegExp("^" + word + "(\\." + word + ")*$")
        var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")


        var matchArray=emailStr.match(emailPat)
        if (matchArray==null) {
                alert("O endere\u00E7o de e-mail est\u00E1 incorreto (verifique @ e .'s)");
            objEmail.select();
            objEmail.focus();
                return false;
        }
        var user=matchArray[1]
        var domain=matchArray[2]

        if (user.match(userPat)==null) {
            alert("O endere\u00E7o de e-mail est\u00E1 inv\u00E1lido.");
         objEmail.select();
         objEmail.focus();
            return false;
        }

        var IPArray=domain.match(ipDomainPat)
        if (IPArray!=null) {
                  for (var i=1;i<=4;i++) {
                    if (IPArray[i]>255) {
                        alert("O endere\u00E7o de e-mail est\u00E1 inv\u00E1lido.");
                  objEmail.select();
                  objEmail.focus();
                        return false;
                    }
            }
            return true
        }

        var domainArray=domain.match(domainPat)
        if (domainArray==null) {
            alert("O endere\u00E7o de e-mail est\u00E1 inv\u00E1lido.");
         objEmail.select();
         objEmail.focus();
            return false;
        }

        var atomPat=new RegExp(atom,"g")
        var domArr=domain.match(atomPat)
        var len=domArr.length
        if (domArr[domArr.length-1].length<2 ||
            domArr[domArr.length-1].length>3) {
            alert("O endere\u00E7o de e-mail est\u00E1 inv\u00E1lido.");
         objEmail.select();
         objEmail.focus();
            return false;
        }

        if (len<2) {
           var errStr="O endere\u00E7o de e-mail est\u00E1 inv\u00E1lido.";
           alert(errStr);
          objEmail.select();
         objEmail.focus();
           return false;
        }

        return true;
}


function aceitaNumero(e)
{
	if (document.all) // Internet Explorer
		var tecla = event.keyCode;
	else if(document.layers) // Nestcape
		var tecla = e.which;
	//BACKSPACE - TAB - IDLE)
	if (tecla==8 || tecla==9 || tecla==16) {
		return;
	}else if (tecla>=35 && tecla<=40){
		return;
	}
	
	if (tecla > 47 && tecla < 58) // numeros de 0 a 9
		return true;
	else{
		if (tecla != 8) // backspace
			event.keyCode = 0;
		else
			return true;
		}
}

function formataIm(Campo, teclapres){
	var tecla = teclapres.keyCode;
	
	if (tecla==8 || tecla==9 || tecla==16 || tecla==46) {
		return;
	}else if (tecla>=35 && tecla<=40){
		return;
	}
	
	var vr = new String(Campo.value);
	vr = vr.replace("-", "");

	tam = vr.length + 1;
	
	if (tecla != 9 && tecla != 8){
		if (tam > 8 && tam < 11)
			Campo.value = vr.substr(0, 8) + '-' + vr.substr(8, tam);
	}
}

function abrePopUp(url, largura, altura, barraRolagem){    
	if (barraRolagem == true)
        barraRolagem = "yes"
    else
        barraRolagem = "no"
    window.open(url,"","toolbar=no,location=no,status=no,menubar=no,scrollbars=" + barraRolagem + ",resizable=no,directories=no,width=" + largura + ",height=" + altura);
}

function eVazio(Valor) {
	if (Valor=="" || Valor==null){
		return (true);
	}
	return (false);
}

function validaCampo(Campo, NomeCampo) {
		
	if (!eVazio(Campo.value) && Campo.value != NomeCampo)
		return true;
	if (Campo.tagName.toLowerCase() == "select")
		if (!Campo.value == "0")
			return true;
	
	if (NomeCampo!=null){ 
		mens="Informe o Campo '" + NomeCampo + "'";
	}else{
		mens="Campos obrigatórios estão faltando";
	}
	
	alert(mens);
	Campo.focus();
	return false;	
}