function ValidaEmail(email) {
	if (!email) return false;
	var  BadChars = "*|,\":<>[]{}`\';()&$#% ";
	var  GoodChars = "@.";   
	for (var i = 0; i < email.length; i++) {
		if (BadChars.indexOf(email.charAt(i)) != -1) {
			return false;
		}
	}
	for (var i = 0; i < GoodChars.length; i++) {
		if (email.indexOf(GoodChars.charAt(i)) == -1) {
			return false;
		}
	}
 	if (email.indexOf ('@.',0) != -1) {
		return false;
	}
   return true;
} 


function fSomenteNumeros()
{
    var tecla = window.event.keyCode;
    tecla     = String.fromCharCode(tecla);
    if(!((tecla >= "0") && (tecla <= "9")))
    {
        window.event.keyCode = 0;
    }
}        

function fTxtMascara(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;
    }
}



function fValidarData(digData, sMensagem)
{
    var bissexto = 0;
    var data = digData; 
    var tam = data.length;
    if (tam == 10) 
    {
        var dia = data.substr(0,2)
        var mes = data.substr(3,2)
        var ano = data.substr(6,4)
        if ((ano > 1900)||(ano < 2100))
        {
            switch (mes) 
            {
                case '01':
                case '03':
                case '05':
                case '07':
                case '08':
                case '10':
                case '12':

                    if  (dia <= 31) 
                    {
                        return true;
                    }

                    break                        

                case '04':
                case '06':
                case '09':
                case '11':

                    if  (dia <= 30) 
                    {
                        return true;
                    }
                    break

                case '02':

                    /* Validando ano Bissexto / fevereiro / dia */ 
                    if ((ano % 4 == 0) || (ano % 100 == 0) || (ano % 400 == 0)) 
                    { 
                        bissexto = 1; 
                    } 
                    if ((bissexto == 1) && (dia <= 29)) 
                    { 
                        return true;                 
                    } 
                    if ((bissexto != 1) && (dia <= 28)) 
                    { 
                        return true; 
                    }            
                    break                       
            }
        }
    }    

    alert(sMensagem + " ( " + data + " )");
    return false;
}

var css_browser_selector = function() {
	var 
		ua=navigator.userAgent.toLowerCase(),
		is=function(t){ return ua.indexOf(t) != -1; },
		h=document.getElementsByTagName('html')[0],
		b=(!(/opera|webtv/i.test(ua))&&/msie (\d)/.test(ua))?('ie ie'+RegExp.$1):is('gecko/')? 'gecko':is('opera/9')?'opera opera9':/opera (\d)/.test(ua)?'opera opera'+RegExp.$1:is('konqueror')?'konqueror':is('applewebkit/')?'webkit safari':is('mozilla/')?'gecko':'',
		os=(is('x11')||is('linux'))?' linux':is('mac')?' mac':is('win')?' win':'';
	var c=b+os+' js';
	h.className += h.className?' '+c:c;
}();