function fctEstrelas(_case, oObj, _class){	
	switch(_case)
	{
		case "1":
			$(oObj).parent().css({backgroundPosition:'-44px 0'});
			break;
		case "2":
			$(oObj).parent().css({backgroundPosition:'-33px 0'});
			break;
		case "3":
			$(oObj).parent().css({backgroundPosition:'-22px 0'});
			break;
		case "4":
			$(oObj).parent().css({backgroundPosition:'-11px 0'});
			break;
		case "5":
			$(oObj).parent().css({backgroundPosition:'-00px 0'});
			break;
		case "6":
			$(oObj).parent().removeAttr('class');
			$(oObj).parent().addClass("f_l estrelas " + _class);
			break;
		default:
			$(oObj).parent().removeAttr('style');
			break;
	}
}


function fctPopAvaliacao()
{
    $("#msg_avaliacao").css({opacity:1}).fadeTo(1000,0);
}


function fctAssine(_case){
	switch(_case)
	{
		case '1':
			$('#selo_assine').removeClass("selo_assine").addClass('selo_assine_on');
			document.getElementById("selo_assine")['onclick'] = null;
			break;
		case '2':
			$('#selo_assine').removeClass("selo_assine_on").addClass('selo_assine');
			break;
	}
}

function CriaArray (n) 
{
    this.length = n 
}

function addFav()
{
    var URLSite = window.location.href;
    var TituloSite = document.title;
    
    if(window.sidebar)
        window.sidebar.addPanel(TituloSite,URLSite,"");
    else
    {
        if (window.external) 
            window.external.AddFavorite(URLSite,TituloSite);
    }        
}

function ValidarEmail()
{
    if(document.getElementById('txtNome').value == "")
    {
        alert('Por favor, informe seu nome');
        document.getElementById('txtNome').focus();
        return false;
    }
    
    if(document.getElementById('txtEmail').value == "")
    {
        alert('Por favor, informe seu e-mail')
        document.getElementById('txtEmail').focus();
        return false;
    }
    else
    {
        if(!document.getElementById('txtEmail').value.isValidEmail())
        {
            alert('Por favor, informe um e-mail válido')
            document.getElementById('txtEmail').select();
            return false;
        }
    }
    if(document.getElementById('txtNomeDest1').value == "")
    {
        alert('Por favor, informe o nome do destinatário');
        document.getElementById('txtNomeDest1').focus();
        return false;
    }
    
    if(document.getElementById('txtEmailDes1').value == "")
    {
        alert('Por favor, informe o e-mail do destinatário');
        document.getElementById('txtEmailDes1').focus();
        return false;
    }
    else
    {
        if(!document.getElementById('txtEmailDes1').value.isValidEmail())
        {
            alert('Por favor, informe um e-mail válido')
            document.getElementById('txtEmailDes1').select();
            return false;
        }
    }
   if(document.getElementById('txtNomeDest2').value != "" && document.getElementById('txtEmailDes2').value=="")
    {
        alert('Por favor, informe o e-mail do segundo destinatário');
        document.getElementById('txtEmailDes2').focus();
        return false;
    }
    else
    {
        if(document.getElementById('txtNomeDest2').value == "" && document.getElementById('txtEmailDes2').value!="")
        {
            alert('Por favor, informe o nome do segundo destinatário');
            document.getElementById('txtNomeDest2').focus();
            return false;
        }
        else
        {
             if(document.getElementById('txtNomeDest2').value != "" && document.getElementById('txtEmailDes2').value!="")
            {
                if(!document.getElementById('txtEmailDes2').value.isValidEmail())
                {
                    alert('Por favor, informe um e-mail válido')
                    document.getElementById('txtEmailDes2').select();
                    return false;
                }
            }
        }
    } 
    if(document.getElementById('txtNomeDest3').value != "" && document.getElementById('txtEmailDes3').value=="")
    {
        alert('Por favor, informe o e-mail do terceiro destinatário');
        document.getElementById('txtEmailDes3').focus();
        return false;
    }
    else
    {
        if(document.getElementById('txtNomeDest3').value == "" && document.getElementById('txtEmailDes3').value!="")
        {
            alert('Por favor, informe o nome do terceiro destinatário');
            document.getElementById('txtNomeDest3').focus();
            return false;
        }
        else
        {
             if(document.getElementById('txtNomeDest3').value != "" && document.getElementById('txtEmailDes3').value!="")
            {
                
                if(!document.getElementById('txtEmailDes3').value.isValidEmail())
                {
                    alert('Por favor, informe um e-mail válido')
                    document.getElementById('txtEmailDes3').select();
                    return false;
                }
            }
        }
    }
    if(document.getElementById('txtComentario').value.isEmpty())
    {
        alert('Por favor, insira o seu comentario!');
        document.getElementById('txtComentario').focus();
        return false;
    }
}


String.prototype.isValidEmail = function(){
	pattern = new RegExp("^([0-9,a-z,A-Z]+)([.,_,-]([0-9,a-z,A-Z]+))*[@]([0-9,a-z,A-Z]+)([.,_,-]([0-9,a-z,A-Z]+))*[.]([a-z,A-Z]){2,3}([0-9,a-z,A-Z])?$");
	if(this.search(pattern) == -1)
		return false;
	else
		return true;
}

// isEmpty() //
String.prototype.isEmpty = function(){
	var iCount, sChar;
	if(this==null || this.length<=0)
		return true;
	for(iCount=0; iCount<this.length; iCount++){
		sChar = this.charAt(iCount);
		if(const_WhiteChars.indexOf(sChar)==-1) return false;
	}
	return true;
}

function fctTrocaAba(numeroTab, classeAdd1, classeAdd2, classeAdd3){
    if(numeroTab == 1){
        $("#divAba ul > li:eq(0)").removeClass('aba_sel_cred');
        $("#divAba ul > li:eq(2)").removeClass('aba_sel_prof');
        $("#divAba ul > li:eq(3)").removeClass('aba_sel_parc');
        
        $("#divAba h2").addClass(classeAdd1);
        $("#divAba ul > li:eq(1)").addClass('aba_sel_visao');
    }
    if(numeroTab == 2){
        $("#divAba ul > li:eq(0)").removeClass('aba_sel_cred');
	    $("#divAba ul > li:eq(1)").removeClass('aba_sel_visao');
	    $("#divAba ul > li:eq(3)").removeClass('aba_sel_parc');
	    
	    $("#divAba h2").addClass(classeAdd2);
	    $("#divAba ul > li:eq(2)").addClass('aba_sel_prof');
	}
	if(numeroTab == 3){
        $("#divAba ul > li:eq(0)").removeClass('aba_sel_cred');
	    $("#divAba ul > li:eq(1)").removeClass('aba_sel_visao');
	    $("#divAba ul > li:eq(2)").removeClass('aba_sel_prof');
	    
	    $("#divAba h2").addClass(classeAdd3);
	    $("#divAba ul > li:eq(3)").addClass('aba_sel_parc');
	}
	$("#divAba ul > li:eq("+numeroTab+")").addClass('aba_sel_cred');   
};

//Controle de Login
function fctLogin(){
    if (document.getElementById('divLogin').style.display == 'none'){
        $("#divBottom ul > li:eq(2) #aLogin").addClass('lnk_clientes_sel');
        document.getElementById('divLogin').style.display = 'block';
    }
    else{
        $("#divBottom ul > li:eq(2) #aLogin").removeClass('lnk_clientes_sel');
        document.getElementById('divLogin').style.display = 'none';  
    }
}

function fctEsqueceuSenha(){
    for(index=0; index<3; index++)
        $("#divLogin ul > li:eq("+index+")")[0].style.display = 'none';
        
    $("#divLogin ul > li:eq(3)")[0].style.display = 'block';
}

function fctCancelar(){
    for(index=0; index<3; index++)
        $("#divLogin ul > li:eq("+index+")")[0].style.display = 'block';
        
    $("#divLogin ul > li:eq(3)")[0].style.display = 'none';
}
//Fim do Controle de Login


function FormataMascara(mascara, oCampo, oEvent)
{
    var tecla_codigo;
    var tecla_char;
    var caracter;
    var valor = oCampo.value;
    var valor_aux;
    var valor_tamanho = 0;
    var colocar_separador = false;
    
    if (oEvent.keyCode)
        tecla_codigo = oEvent.keyCode;
    else if (oEvent.which)
        tecla_codigo = oEvent.which;
    
    tecla_char = String.fromCharCode(tecla_codigo);
    
    //Permite algumas teclas
    if (tecla_codigo == 8 || tecla_codigo == 9 || (tecla_codigo == 35 && oEvent.shiftKey) || (tecla_codigo == 36 && oEvent.shiftKey) || (tecla_codigo == 37 && oEvent.shiftKey) || (tecla_codigo == 39 && tecla_char != "'") || (tecla_codigo == 46 && tecla_char != '.'))
        return true;
    
    if (!OnlyNumbers(oEvent))
        return false;
        
    if(oCampo.value.length == mascara.length)
        return false;
    
    valor_aux = valor + tecla_char;
    
    if (valor == "")
        valor = tecla_char;
    
    caracter = mascara.substr(valor_aux.length-1, 1);
    
    valor_tamanho = valor_aux.length;
    switch (caracter)
    {
        case '.':
        case '/':
        case ',':
        case '-':
        case ':':
        case '_':
        case '(':
        case ')':
            valor_tamanho = valor_tamanho - 1;
            colocar_separador = true;
            break;
    }
    
    oCampo.value = '';
    for (var i = 0; i < valor_tamanho; i++)
    {
        oCampo.value += valor_aux.charAt(i);
    }
    
    if (colocar_separador)
    {
        oCampo.value += caracter;
        oCampo.value += valor_aux.charAt(valor_aux.length-1);
    }
    
    return false;
}

function OnlyNumbers(oEvent)
{
    var oRegExp = /[0-9]/;
    var tecla_codigo;
    var tecla_char;
    
    if (oEvent.keyCode)
        tecla_codigo = oEvent.keyCode;
    else if (oEvent.which)
        tecla_codigo = oEvent.which;
    
    tecla_char = String.fromCharCode(tecla_codigo);
    
    //Permite algumas teclas
    if (tecla_codigo == 8 || tecla_codigo == 9 || (tecla_codigo == 35 && oEvent.shiftKey) || (tecla_codigo == 36 && oEvent.shiftKey) || (tecla_codigo == 37 && (oEvent.shiftKey || tecla_char != '%')) || (tecla_codigo == 39 && tecla_char != "'") || (tecla_codigo == 46 && tecla_char != '.'))
        return true;
    //Se for número
    else if (!oRegExp.test(tecla_char))
        return false;
    //Se não for número
    else
        return true;
}

var btnClicked = new Array();
function SubmitForm(validationGroup)
{
    btnClicked[validationGroup] = true;
}

function ValidarFormulario(sender, args)
{
    alert('passou');
    
    var fadeIn = function(el){
        el.setStyles({opacity: 0,display:'block'});
        el.fade(1);
    };
    var fadeOut = function(el){
        el.fade(0).get('tween').chain(function(){
            el.setStyles({display:'none'});
        }); 
    };
    var sendError = function(){
        if(vlTarget)
            vlTarget.addClass(errInputClass);  
        if (btnClicked[sender.validationGroup])  
        {
            fadeIn(vlSum);
            fadeOut.delay(15000, vlSum, vlSum);
        }
        if (vlCtrl.className != '')
        {
            if ($$('#' + sender.id + ' span').length == 0)
                vlCtrl.appendChild(document.createElement('span'));
        
            fadeIn(vlCtrl);
            fadeOut.delay(12000, vlCtrl, vlCtrl);
        }
        args.IsValid = false;
    };

    var vlSum;
    var vlCtrl = $(sender.id);
    var vlTarget = $(sender.controltovalidate);
    var errInputClass = 'border_error';
    var patternEmail = new RegExp("^([0-9,a-z,A-Z]+)([.,_,-]([0-9,a-z,A-Z]+))*[@]([0-9,a-z,A-Z]+)([.,_,-]([0-9,a-z,A-Z]+))*[.]([a-z,A-Z]){2,3}([0-9,a-z,A-Z])?$");
    var patternNumeric = new RegExp("^[0-9]*$");
    var patternDecimal = new RegExp("^[0-9]{1,6}(,[0-9][0-9])?$");
    
    for (i = 0; i < Page_ValidationSummaries.length; i++)
        if (Page_ValidationSummaries[i].validationGroup == sender.validationGroup)
            vlSum = $(Page_ValidationSummaries[i].id);
          
    vlSum.setStyles({opacity: 0,background:'#fff',display:'none'});
    vlCtrl.setStyles({opacity: 0,background:'#fff',display:'none'});

    if (vlTarget && vlTarget.hasClass(errInputClass))
        vlTarget.removeClass(errInputClass);

    args.IsValid = true;

    if (sender.id.indexOf('_Required') != -1 && args.Value == '')
        sendError();
    if (sender.id.indexOf('_Email') != -1 && args.Value != '' && args.Value.search(patternEmail) == -1)
        sendError();
    if (sender.id.indexOf('_CadastradoEmailNewsl') != -1 && args.Value != '' && args.Value.search(patternEmail) != -1)
        UBV.Site.Utils.EmailCadastradoNewsl(args.Value, requestResult);        
    if (sender.id.indexOf('_Numeric') != -1 && args.Value != '' && args.Value.search(patternNumeric) == -1)
        sendError();
    if (sender.id.indexOf('_Decimal') != -1 && args.Value != '' && args.Value.search(patternDecimal) == -1)
        sendError();
    if (sender.id.indexOf('_CNPJ') != -1 && args.Value != '' && !validaCNPJ(args.Value))
        sendError();
    if (sender.id.indexOf('_CadastradoCNPJPontoVenda') != -1 && validaCNPJ(args.Value))
        UBV.Site.Utils.CNPJCadastradoPontoVenda(args.Value, requestResult);
    if (sender.id.indexOf('_Select') != -1 && args.Value == '0')
        sendError();
    if (sender.id.indexOf('_Compare_') != -1)
    {
        var txtBox = sender.id.substr(sender.id.lastIndexOf('_'),sender.id.length);
        txtBox = sender.controltovalidate.substr(0, sender.controltovalidate.lastIndexOf('_')) + txtBox;
        if ($(txtBox).value != args.Value)
        {
            $(txtBox).addClass(errInputClass);
            sendError();
        }
        else
            $(txtBox).removeClass(errInputClass);
    }
    if (sender.id.indexOf('_ReqOtherField_') != -1 && args.Value != '')
    {
        var txtBox = sender.id.substr(sender.id.lastIndexOf('_'),sender.id.length);
        txtBox = sender.controltovalidate.substr(0, sender.controltovalidate.lastIndexOf('_')) + txtBox;
        if ($(txtBox).value == '')
        {
            $(txtBox).addClass(errInputClass);
            sendError();
        }
        else
            $(txtBox).removeClass(errInputClass);
    }
    if (sender.id.indexOf('_Radio') != -1)
    {
        var radio = $$('#' + sender.controltovalidate + ' input');
        var selected = false;
        
        for (i = 0; i < radio.length; i++)
            if (radio[i].checked)
                selected = true;

        if (!selected)
        {
            vlCtrl.parentNode.className = errInputClass;
            sendError();
        }
        else
            vlCtrl.parentNode.className = '';
    }
    if (sender.id.indexOf('_MaxLength_') != -1)
    {
        var length = sender.id.substr(sender.id.lastIndexOf('_') + 1,sender.id.length);
        if (args.Value != '' && args.Value.length > length)
            sendError();
    }
    
    function requestResult(result){
        if (!result)
            sendError();
    };
}


function validaCNPJ(cnpj)
{
    var oRegExp = /\d{2}\.?\d{3}\.?\d{3}\/?\d{4}\-?\d{2}/;
    var soma1 = 0;
    var soma2 = 0;
    var resto;
    var digito;
    var digito1;
    var digito2;
    var digito_tmp = "";
    
    //Verifica se o CNPJ está em um formato válido
    if (oRegExp.test(cnpj))
    {
        //Retira os pontos (.), as barra (/) e o traço (-)
        cnpj = cnpj.replace(/\.|\/|\-/gi, "");
        digito_tmp = cnpj.substring(cnpj.length-2, cnpj.length);
        
        //Calculando o 1º dígito verificador
        soma1 += parseInt(cnpj.charAt(0), 10) * 5;
        soma1 += parseInt(cnpj.charAt(1), 10) * 4;
        soma1 += parseInt(cnpj.charAt(2), 10) * 3;
        soma1 += parseInt(cnpj.charAt(3), 10) * 2;
        soma1 += parseInt(cnpj.charAt(4), 10) * 9;
        soma1 += parseInt(cnpj.charAt(5), 10) * 8;
        soma1 += parseInt(cnpj.charAt(6), 10) * 7;
        soma1 += parseInt(cnpj.charAt(7), 10) * 6;
        soma1 += parseInt(cnpj.charAt(8), 10) * 5;
        soma1 += parseInt(cnpj.charAt(9), 10) * 4;
        soma1 += parseInt(cnpj.charAt(10), 10) * 3;
        soma1 += parseInt(cnpj.charAt(11), 10) * 2;
        
        resto = soma1 % 11;
        digito1 = (resto < 2) ? 0 : 11 - resto;
        
        //Calculando o 2º dígito verificador
        soma2 += parseInt(cnpj.charAt(0), 10) * 6;
        soma2 += parseInt(cnpj.charAt(1), 10) * 5;
        soma2 += parseInt(cnpj.charAt(2), 10) * 4;
        soma2 += parseInt(cnpj.charAt(3), 10) * 3;
        soma2 += parseInt(cnpj.charAt(4), 10) * 2;
        soma2 += parseInt(cnpj.charAt(5), 10) * 9;
        soma2 += parseInt(cnpj.charAt(6), 10) * 8;
        soma2 += parseInt(cnpj.charAt(7), 10) * 7;
        soma2 += parseInt(cnpj.charAt(8), 10) * 6;
        soma2 += parseInt(cnpj.charAt(9), 10) * 5;
        soma2 += parseInt(cnpj.charAt(10), 10) * 4;
        soma2 += parseInt(cnpj.charAt(11), 10) * 3;
        soma2 += parseInt(digito1, 10) * 2;
        
        resto = soma2 % 11;
        digito2 = (resto < 2) ? 0 : 11 - resto;
        
        //Calculando o dígito verificador
        digito = (digito1 * 10) + digito2;
        
        //Verificando se os dígitos são diferentes aos digitados.
        if (digito != digito_tmp)
            return false;
    }
    else
    {
        return false;
    }
    return true;
}


/*
|----------------------------------------------------------------------------------------------------|
|           Função: VerificaEntradaAlfa()                                                         |
|        Descrição: Filtra os caracteres digitados.                                                  |
|                   Pode aceitar letras de a-z e A-Z, espaço e caracteres especiais.                 |
|  ================================================================================================  |
|       Parâmetros: caixaAlta   = Se for true converte as lestras para caixa alta.                   |
|                   outrosCarac = Se for true permite a digitação de caractéres especiais (-, /, etc)|
|                   espaco      = Se for true permite a digitação de espaços.                        |
|                   oEvent      = Objeto event, necessário para funcionar Cross-Browser.             |
|           Evento: onkeypress                                                                       |
|  Tipo de Retorno: void                                                                             |
|  ================================================================================================  |
|           Criado: ??/??/???? | Por: ?????????????                                                  |
|       Modificado: __/__/____ | Por:                                                                |
|----------------------------------------------------------------------------------------------------|
*/

function VerificaEntradaAlfa(caixaAlta, outrosCarac, espaco, oEvent) {
    var tecla_codigo;
    alert(oEvent.keyCode);
    
    if (oEvent.keyCode)
        tecla_codigo = oEvent.keyCode;
    else if (oEvent.which)
        tecla_codigo = oEvent.which;
    
    if (tecla_codigo == 13) //ENTER
        return;
    if (espaco && tecla_codigo == 32) //ESPAÇO
        return;
    if (tecla_codigo >= 65 && tecla_codigo <= 90) //A-Z
        return;
    if (tecla_codigo >= 192 && tecla_codigo <= 254) //À-þ
        return;
    if (tecla_codigo >= 97 && tecla_codigo <= 122) //a-z
    {
        if (caixaAlta) //Converte para maiúscula
        {
            if (oEvent.keyCode)
                oEvent.keyCode -= 32;
            else if (oEvent.which)
                oEvent.which -= 32;
        }
        return;
    }
    
    if (outrosCarac)
    {
        switch(tecla_codigo)
        {
            case 44:  // ','
            case 45:  // '-'
            case 46:  // '.'
            case 47:  // '/'
            case 58:  // ':'
                return;
            default:
        }
    }
    
    if (oEvent.keyCode)
        oEvent.keyCode = 0;
    else if (oEvent.which)
        oEvent.which = 0;
    
    return;
}

/*
|----------------------------------------------------------------------------------------------------|
|           Função: VerificaEntradaAlfaNum()                                                      |
|        Description: Filtra os caracteres digitados.                                                  |
|                   Pode aceitar letras de a-z e A-Z, espaço, números (0-9) e caracteres especiais.  |
|  ================================================================================================  |
|       Parâmetros: caixaAlta   = Se for true converte as letras para caixa alta.                    |
|                   outrosCarac = Se for true permite a digitação de caractéres especiais (-, /, etc)|
|                   espaco      = Se for true permite a digitação de espaços.                        |
|                   oCampo      = Objeto do campo que será contado.                                  |
|                   oEvent      = Objeto event, necessário para funcionar Cross-Browser.             |
|           Evento: onkeypress                                                                       |
|  Tipo de Retorno: void                                                                             |
|  ================================================================================================  |
|           Criado: ??/??/???? | Por: ?????????????                                                  |
|       Modificado: 17/11/2008 | Por: Arquimedes Durvale                                             |
|----------------------------------------------------------------------------------------------------|
*/
function VerificaEntradaAlfaNum(caixaAlta, outrosCarac, espaco, oCampo, oEvent)
{
    var oRegExp;
    
    
     
    oEvent = window.event || oEvent;
    
    
    var tecla_char = oEvent.charCode || oEvent.keyCode;
    
    //if (!oEvent.keyCode || oEvent.charCode == null)
    //    tecla_char = String.fromCharCode(tecla_char);
      
    if (tecla_char == 60 || tecla_char == 62)
        return false;
    else     
        return true;
}