﻿function fctCortina(display){
    var cortina = $$('.cortina');
    cortina.setStyle('height', getPageSize().pageHeight);   
    if (display == 'block')
    {
        cortina.setStyles({opacity: 0,display:'block'});
        cortina.fade(0.6);
    }
    else
    {
        cortina.fade(0);
        /*
        cortina.fade(0).chain(function(){
            cortina.setStyles({display:'none'});
        });
        */
    }
}
function fctEnviarPagina(display){
	fctCortina(display);
}
function fctSubMenuOver(display, id_over, posicao){
    fctBlockNone(display, id_over);
    $(id_over).setStyle("left", posicao);
}

function fctBlockNone(display, id_over){
    $(id_over).setStyle("display", display);
}

function fctLogin(display){
    fctCortina("block");
    fctBlockNone(display, "login");
    $("login").setStyle("top", (getPageSize().pageHeight/2)-183);
    $("login").setStyle("left", (window.getWidth()/2)-160);
}
/*
function fctLoginFechar(display){
    fctCortina("none");
    fctBlockNone(display, "login");
    $("login").setStyle("top", (getPageSize().pageHeight/2)-183);
    $("login").setStyle("left", (window.getWidth()/2)-160);
}
*/
function fctRecursoFonte(int_case){
    switch (int_case)
    {
        case "1":
            $('iNormal').checked = 'checked';
            $$('._texto').setStyle('fontSize','100%');
            break;
        case "2":
            $('iMedio').checked = 'checked';
            $$('._texto').setStyle('fontSize','115%');
            break;
        case "3":
            $('iGrande').checked = 'checked';
            $$('._texto').setStyle('fontSize','125%');
            break;
        case "4":
            $('iNormalContraste').checked = 'checked';
            $$('._texto').setStyle('color','#666666');
            break;
        case "5":
            $('iAltoContraste').checked = 'checked';
            $$('._texto').setStyle('color','#323131');
            break;
    }
}

//----------------------------------------------------------------//
// fctFonte() 				  //
// Fun�o que controle a fonte                              //
// Criado por: Victor Leonardo Data: 14/07/2008  //
// Modificado por: Karl Douglas Nordfelt  Em: 05/08/2008    //
//----------------------------------------------------------------//
function fctFonte()
{
	if($$('.recurso_fonte') != "")
	{
		$$('.btn_fonte').addEvent("click", function(){
			$$('.recurso_fonte').setStyle('display', 'block');
		});

		$$('.tamanho_normal').addEvent("click", function(){
			$$('.texto_integra').setStyle('font-size','100%');
		});

		$$('.tamanho_medio').addEvent("click", function(){
			$$('.texto_integra').setStyle('font-size','110%');
		});

		$$('.tamanho_grande').addEvent("click", function(){
			$$('.texto_integra').setStyle('font-size','120%');
		});

		$$('.contraste_normal').addEvent("click", function(){
			$$('.texto_integra').setStyle('color', '#666666');
			for ( i = 0; i < $$('.texto_integra').getChildren().length; i++)
                $$('.texto_integra').getChildren()[i].setStyle('color', '#666666');	
		});

		$$('.contraste_alto').addEvent("click", function(){
			$$('.texto_integra').setStyle('color','#274157');
			for ( i = 0; i < $$('.texto_integra').getChildren().length; i++)
			    $$('.texto_integra').getChildren()[i].setStyle('color', '#274157');			
		});

		$$('.btn_fechar_fonte').addEvent("click", function(){
			$$('.recurso_fonte').setStyle('display', 'none');
		});
	}
}


/* --------------------------------------------------------------------------------------
Get Page size
-----------------------------------------------------------------------------------------*/

function getPageSize(){
    var xScroll, yScroll;

    if(window.innerHeight && window.scrollMaxY){
        xScroll = document.body.scrollWidth;
        yScroll = window.innerHeight + window.scrollMaxY;
    }else if(document.body.scrollHeight > document.body.offsetHeight){
        xScroll = document.body.scrollWidth;
        yScroll = document.body.scrollHeight;
    }else{
        xScroll = document.body.offsetWidth;
        yScroll = document.body.offsetHeight;
    }

    var windowWidth, windowHeight;

    if(self.innerHeight){
        windowWidth = self.innerWidth;
        windowHeight = self.innerHeight;
    }else if(document.documentElement && document.documentElement.clientHeight){
        windowWidth = document.documentElement.clientWidth;
        windowHeight = document.documentElement.clientHeight;
    }else if(document.body){
        windowWidth = document.body.clientWidth;
        windowHeight = document.body.clientHeight;
    }	

    if(yScroll < windowHeight)
        pageHeight = windowHeight;
    else
        pageHeight = yScroll;

    if(xScroll < windowWidth)
        pageWidth = windowWidth;
    else
        pageWidth = xScroll;

    arrayPageSize = {pageWidth:pageWidth,pageHeight:pageHeight,windowWidth:windowWidth,windowHeight:windowHeight};

    return arrayPageSize;
}

function getPageScroll(){
    var yScroll;
    if(self.pageYOffset)
        yScroll = self.pageYOffset;
    else if(document.documentElement && document.documentElement.scrollTop)
        yScroll = document.documentElement.scrollTop;
    else if(document.body)
        yScroll = document.body.scrollTop;
    
    arrayPageScroll = {yScroll:yScroll};
    return arrayPageScroll;
}

/*-------------------------------------
	WINDOW ADD EVENT
----------------------------------------*/
function DomReady()
{
    //fctPopUpWindow();
    //fctPopUpWindowSenha(); 
    //fctPopUpWindowContent(); 
    //fctAba();
    //fctAcordionWidget();
    //fctOverMenu();
    //fctFonte(); 
}

window.addEvent("domready", DomReady);

function isNumberKey(evt)
{
    var charCode = (evt.which) ? evt.which : event.keyCode;
    return !(charCode > 31 && (charCode < 48 || charCode > 57))
}

function isDecimalKey(evt)
{
    var charCode = (evt.which) ? evt.which : event.keyCode;
    return charCode == 44 || !(charCode > 31 && (charCode < 48 || charCode > 57))
}

function alterNacional()
{
    if($('idShowNacional').style.display == 'block')    
   { 
        $('idShowNacional').setStyle('display', 'none');         
        $('imgNacionalShow').setStyle('display','block');
        $('imgNacionalHide').setStyle('display','none'); 
        
    } 
    
   else   
   {
        $('idShowNacional').setStyle('display', 'block'); 
        $('imgNacionalShow').setStyle('display','none');
        $('imgNacionalHide').setStyle('display','block'); 
    }
}

function alterInternacional()
{
    if($('idShowInternacional').style.display == 'block')
   {
   
        $('idShowInternacional').setStyle('display', 'none');         
        $('imgInternacionalShow').setStyle('display','block');
        $('imgInternacionalHide').setStyle('display','none'); 
        
    }     
   else   
   {
        $('idShowInternacional').setStyle('display', 'block'); 
        $('imgInternacionalShow').setStyle('display','none');
        $('imgInternacionalHide').setStyle('display','block'); 
    }
}
/*
function fctBloquear()
{
	var wpagina = window.getWidth();
	var hpagina = window.getScrollHeight();

	$$('.mask_geral').set({
				'styles':{
					'width' : wpagina+'px',
					'height' : hpagina+'px',
					'display' : 'block',
					'z-index' : 50
				}
			});
}
*/



//----------------------------------------------------------------------------------------------//
// ImageHover(el)                                                                                                   //
// Função para ter um efeito hover dos imagens. Passa o id do <ul>.                             //
// Criado por: Karl Douglas Nordfelt                 Data: 24/09/2008                                 //
// Modificado por:                                               Em: __/__/____                                          //
//----------------------------------------------------------------------------------------------//
function ImageHover(el)
{
    var el = $$('#' + el + ' li');
    el.each(function(element)
    {
        element.setStyles({opacity: 0.4});
        var fx = new Fx.Morph(element, {duration:200, wait:false});

        element.addEvent('mouseenter', function(){
            fx.start({opacity: 1, background: 'transparent'});
        });

        element.addEvent('mouseleave', function(){
            fx.start({opacity: 0.4, background: '#000'});
        });
    });
}

function ImageHoverAplicacao(el)
{
    var el = $$('#' + el + ' li');
    var selectedEl;
    var selectedElClass;
    var cssClass = 'li_sel_1';
    var cssClassFirst = 'li_sel_0';
    var cssClassLast = 'li_sel_2';
    var elFirst = el[0].id;
    var elLast = el[el.length -1].id;

    el.each(function(element)
    {
        if(element.className.indexOf("sel") != -1)
        {
            selectedEl = $(element.id);
            selectedElClass = selectedEl.className;
        }
    });

    el.each(function(element)
    {
        if(element.id != selectedEl.id)
        {
            element.addEvent('mouseenter', function(){
                if (element.id == elFirst)
                    element.className = cssClassFirst;
                else if (element.id == elLast)
                    element.className = cssClassLast;
                else
                    element.className = cssClass;

                if (selectedEl)
                    selectedEl.className = '';
            });

            element.addEvent('mouseleave', function(){
              element.className = '';
              if (selectedEl)
                selectedEl.className = selectedElClass;
            });
        }
    });

    if (selectedEl)
    selectedEl.className = selectedElClass;
}

//----------------------------------------------------------------------------------------------//
// SubmitForm() & ValidarFormulario()					    					                //
// Função para validar os dados do formulario                                                   //
// Criado por: Karl Douglas Nordfelt			Data: 03/10/2008	            	            //
// Modificado por:								Em: __/__/____				                    //
//----------------------------------------------------------------------------------------------//
var btnClicked = new Array();
function SubmitForm(validationGroup)
{  
    btnClicked[validationGroup] = true;

    if (validationGroup == 'PontoVendaForm')
    {
        SendLatLng();
        
        var contacts = $$('#ctl00_cphConteudo_updPontoVendaContato ul');
        
        for (var i = 0; i < contacts.length; i++)
        {
            var telDDD = contacts[i].getElement('li .cmp_tel_ddd'); 
            var tel = contacts[i].getElement('li .cmp_tel');
            var celDDD = contacts[i].getElement('li.cmp_mail .cmp_tel_ddd');   
            var cel = contacts[i].getElement('li.cmp_mail .cmp_tel');
            
            var valTelDDD = FindValidator('ctl00_cphConteudo_rptPontoVendaContato_ctl0' + i + '_txtCelularDDD');
            var valTel = FindValidator('ctl00_cphConteudo_rptPontoVendaContato_ctl0' + i + '_txtCelularNumero');
            var valCelDDD = FindValidator('ctl00_cphConteudo_rptPontoVendaContato_ctl0' + i + '_txtTelefoneDDD');
            var valCel = FindValidator('ctl00_cphConteudo_rptPontoVendaContato_ctl0' + i + '_txtTelefoneNumero');
            
            if (telDDD.value != '' && tel.value != '')
            {
                if (valTelDDD)
                    ValidatorEnable(valTelDDD, false);
                if (valTel)
                    ValidatorEnable(valTel, false);
                
                celDDD.removeClass('box_errro_input');
                cel.removeClass('box_errro_input');
            }
            else if (celDDD.value != '' && cel.value != '')
            {
                if (valCelDDD)
                    ValidatorEnable(valCelDDD, false);
                if (valCel)
                    ValidatorEnable(valCel, false);
                
                telDDD.removeClass('box_errro_input');
                tel.removeClass('box_errro_input');
            }
            else
            {
                if (valTel)
                    ValidatorEnable(valTel, true);
                if (valTelDDD)
                    ValidatorEnable(valTelDDD, true);
                if (valCel)
                    ValidatorEnable(valCel, true);
                if (valCelDDD)
                    ValidatorEnable(valCelDDD, true);
            }
        }
    }
    else
    {
        return Page_ClientValidate(validationGroup);
    }
}
function FindValidator(elToFind)
{
    for (var i = 0; i < Page_Validators.length; i++)
    {
        if (Page_Validators[i].controltovalidate == elToFind)
            return Page_Validators[i];
    }
    
    return null;
}

var gettingLocation = false;

function SendLatLng()
{
    var street = $('ctl00_cphConteudo_txtLogradouro');
    var number = $('ctl00_cphConteudo_txtNumero');
    var neighborhood = $('ctl00_cphConteudo_txtBairro');
    var city = $('ctl00_cphConteudo_ddlCidade');
    var state = $('ctl00_cphConteudo_ddlEstado');
    
    if (street && street.value != '' && number && number.value != '' && city && city.value != '0' && state && state.value != '0')
    {
        if (gettingLocation)
            return;
        else
            gettingLocation = true;
            
        var oGClientGeocoder = new GClientGeocoder();

        var address = street.value + ' ' + number.value + ', ' + city.options[city.selectedIndex].text + ', ' + state.options[state.selectedIndex].text;
        
        
        oGClientGeocoder.getLatLng(address, function(point)
        {
            //alert(point);
            if(point != null)
            {
               $('ctl00_cphConteudo_txtLatitude').value = point.lat();
               $('ctl00_cphConteudo_txtLongitude').value = point.lng();
            }
            
            gettingLocation = false;
        });
    }
}

function ValidarFormulario(sender, args)
{
    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 = 'box_errro_input';
    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 ValidarDistribuidor(sender, args)
{
    var checkboxes = $$('#ctl00_cphConteudo_chkTipo input');
    var isValid = false;
    
    if (checkboxes != null && checkboxes.length > 0)
    {
        for (i = 0; i < checkboxes.length; i++)
            if (checkboxes[i].checked)
                isValid = true;
        
        if (!isValid)
            $('ctl00_cphConteudo_chkTipo').parentNode.parentNode.className = 'tipo_distribuidor box_errro_input';
        else
            $('ctl00_cphConteudo_chkTipo').parentNode.parentNode.className = 'tipo_distribuidor';
    }
    else
        isValid = true;
    
    return isValid;
}

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;
}

Array.prototype.getUniqueObject = function()
{
    var retArr = new Array();
    var unique, i, j;
    for (i = 0; i < this.length; i++)
    {
        unique = true;
        for (j = i + 1; j < this.length; j++)
            if (this[i].id == this[j].id)
                unique = false;
        
        if(unique)
            retArr.push(this[i]);
    }
    
    return retArr;
};
function updatePanelFix(){
    if (typeof( window[ 'Page_ValidationSummaries' ] ) != "undefined")
        Page_ValidationSummaries = Page_ValidationSummaries.getUniqueObject();
    if (typeof( window[ 'Page_Validators' ] ) != "undefined")
        Page_Validators = Page_Validators.getUniqueObject();
}
function pageLoad()
{      
    var i, el;

    if (typeof( window[ 'Page_ValidationSummaries' ] ) != "undefined")
        for (i = 0; i < Page_ValidationSummaries.length; i++)
        {
            el = $(Page_ValidationSummaries[i].id);
            if (el)
            {
                el.onclick = function(){ this.fade(0); };
                el.setStyles({cursor:'pointer'});
            }
        }

    if (typeof( window[ 'Page_Validators' ] ) != "undefined")
        for (i = 0; i < Page_Validators.length; i++)
        {
            el = $(Page_Validators[i].id);
            if (el)
            {
                el.onclick = function(){ this.fade(0); };
                el.setStyles({cursor:'pointer'});
            }
        }
 
    el = $$('input');
    for (i = 0; i < el.length; i++)
    {
        el[i].onfocus = function(){ this.style.backgroundColor = '#fefcee'; };
        el[i].onblur = function(){ this.style.backgroundColor = ''; };
    }
    el = $$('textarea');
    for (i = 0; i < el.length; i++)
    {
        el[i].onfocus = function(){ this.style.backgroundColor = '#fefcee'; };
        el[i].onblur = function(){ this.style.backgroundColor = ''; };
    }
    el = $$('select');
    for (i = 0; i < el.length; i++)
    {
        el[i].onfocus = function(){ this.style.backgroundColor = '#fefcee'; };
        el[i].onblur = function(){ this.style.backgroundColor = ''; };
    }
}

/*
|----------------------------------------------------------------------------------------------------|
|           Função: OnlyNumbers()                                                                    |
|        Descrição: Permite somente números entre 0 e 9.                                             |
|  ================================================================================================  |
|       Parâmetros: oEvent = Objeto event, necessário para funcionar Cross-Browser                   |
|           Evento: onkeypress                                                                       |
|  Tipo de Retorno: void                                                                             |
|  ================================================================================================  |
|           Criado: ??/??/???? | Por: ?????????????                                                  |
|       Modificado: __/__/____ | Por:                                                                |
|----------------------------------------------------------------------------------------------------|
*/
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;
}

//-----------------------------------------------------//
// Script show_map - UBV                               //
// Criado por: Carlos Adriano Portes Data: 02/10/2008  //
// Modificado por:             Em: __/__/____          //
//-----------------------------------------------------//
function show_just_map()
{
	 if (GBrowserIsCompatible()) {
        var map = new GMap2($("contain_map"));
        //Centraliza o mapa de acordo com essas coordenadas. Aproximadamente perto do Distrito Federal - Brasil.
        map.setCenter(new GLatLng(-14.349548, -50.361328), 4);

		 //Adiciona controles do mapa
        map.addControl(new GLargeMapControl());
        map.addControl(new GMapTypeControl());
	}
}

//-----------------------------------------------------//
// Script show_map - UBV                             //
// Criado por: Carlos Adriano Portes Data: 02/10/2008  //
// Modificado por:             Em: __/__/____          //
//-----------------------------------------------------//
function show_map(nomeFantasia, site, tipo, logradouro, numero, complemento, bairro, cidade, estado, cep, endereco_referencia, latitude, longitude)
{          
     if (GBrowserIsCompatible()) {
        var map = new GMap2($("contain_map"));
        map.setCenter(new GLatLng(-14.349548, -50.361328), 4);
        map.setZoom(5);
		var oGClientGeocoder = new GClientGeocoder();

		oGClientGeocoder.getLatLng(endereco_referencia, function(point)
		{
			map.setCenter(point);
		});

        nomesFanatasia = nomeFantasia.split("[#$%]");
        sites = site.split("[#$%]");
        tipos = tipo.split("[#$%]");
        logradouros = logradouro.split("[#$%]");
        numeros = numero.split("[#$%]");
        complementos = complemento.split("[#$%]");
        bairros = bairro.split("[#$%]");
        cidades = cidade.split("[#$%]");
        estados = estado.split("[#$%]");
        ceps = cep.split("[#$%]");
        latitudes = latitude.split("[#$%]");
        longitudes = longitude.split("[#$%]");
        
		for(i = 0; i < latitudes.length; i++)
		{
			var point = new GLatLng(latitudes[i], longitudes[i], true);
			var text_info = "<div style='font-family: Trebuchet MS;'/>";
				text_info += "<strong><h2>" + nomesFanatasia[i] + "</h2></strong><br />";
				text_info += "<strong><a href=\"site\">" + sites[i] + "</a></strong><br />";
				text_info += "<strong>" + logradouros[i] + ", " + numeros[i] + " - " + complementos[i] + " - CEP: " + ceps[i] + "</strong><br />";
				text_info += "<strong>" + bairros[i] + " - " + cidades[i] + "/" + estados[i] + "</strong>";
				text_info += "</div>";
				
			function createMarker(point)
			{
				var tabs = new CriaArray(1);
					tabs[0] = new GInfoWindowTab("TESTE",  text_info);
					
				var redIcon = new GIcon(G_DEFAULT_ICON);
					redIcon.image = "http://gmaps-samples.googlecode.com/svn/trunk/markers/red/blank.png";
					
				var orangeIcon = new GIcon(G_DEFAULT_ICON);
					orangeIcon.image = "http://gmaps-samples.googlecode.com/svn/trunk/markers/orange/blank.png";
				
				if(tipos[i] == '1')
					var markerOptions = { icon: orangeIcon };
				else if(tipos[i] == '2')
					var markerOptions = { icon: redIcon };				
					
				var marker = new GMarker(point, markerOptions);
					GEvent.addListener(marker, "click", function()
					{
						map.openInfoWindowTabs(point, tabs);
					});
					return marker;
			}
			map.addOverlay(createMarker(point));
		}
        map.addControl(new GLargeMapControl());
        map.addControl(new GMapTypeControl());
	}
}

//-----------------------------------------------------//
// Script show_map - UBV                             //
// Criado por: Carlos Adriano Portes Data: 02/10/2008  //
// Modificado por:             Em: __/__/____          //
//-----------------------------------------------------//
function CriaArray(n)
{
	this.length = n;
	for(var i=0; i <= n - 1; i++)
	{
		this[i] = null;
	}
}



function ExibeMensagem()
{
    alert('Nenhuma foto de aplicação associada ao produto!');
}

//-----------------------------------------------------//
// Script show_msg - UBV                               //
// Criado por: Marcos Vinicius       Data: 18/12/2008  //
// Modificado por:             Em: __/__/____          //
//-----------------------------------------------------//
function UBVMessage(titulo,msg)
{
    var divWidth, divHeight;
    
    divWidth = $("message").getStyle("width");
    divHeight = $("message").getStyle("height");
    
    divWidth = divWidth.replace("px","");
    divHeight = divHeight.replace("px","");
    
    document.getElementById("lblTitulo").innerHTML = titulo;
    document.getElementById("lblMsg").innerHTML = msg;

    fctCortina("block");
    $("message").style.display = "block";
    $("message").setStyle("top", (window.getHeight()/2)-(divHeight/2));
    $("message").setStyle("left", (window.getWidth()/2)-(divWidth/2));
}
//GALERIA DE IMAGENS//
var index = 0;
var click = 0;

//-----------------------------------------------------//
// Script UBVGaleriaImagem - UBV                       //
// Criado por: Marcos Vinicius       Data: 14/08/2009  //
// Modificado por:             Em: __/__/____          //
//-----------------------------------------------------//
function UBVGaleriaImagem(par_index)
{
    index = par_index;
    
    fctCortina("block");    
    $("GaleriaImagem").style.display = "block";
    fctAtualizaSlide();        
}

//-----------------------------------------------------//
// Script UBVResizeGaleriaImagem - UBV                 //
// Criado por: Marcos Vinicius       Data: 18/08/2009  //
// Modificado por:             Em: __/__/____          //
//-----------------------------------------------------//
function UBVLoadGaleriaImagem()
{
    UBVResizeGaleriaImagem();
    setTimeout("UBVShowGaleriaImage()",500);
}

//-----------------------------------------------------//
// Script UBVResizeGaleriaImagem - UBV                 //
// Criado por: Marcos Vinicius       Data: 17/08/2009  //
// Modificado por:             Em: __/__/____          //
//-----------------------------------------------------//
function UBVResizeGaleriaImagem()
{
    var divWidth, divHeight;
    var divPadTop, divPadBottom;
    var imgNavHeight, imgFecharHeight;
    var navTop;

    var spanHeight;

    divWidth = $("imgFoto").getStyle("width");
    divHeight = $("imgFoto").getStyle("height");    
    divPadTop = $("GaleriaImagem").getStyle("padding-top");
    divPadBottom = $("GaleriaImagem").getStyle("padding-bottom");
    imgNavHeight = $("lnkFAnterior").getStyle("height");
    spanHeight = $("genDescricao").getStyle("height");    
    imgFecharHeight = $("ulFechar").getStyle("height");
    
    divWidth = parseInt(divWidth.replace("px",""));
    divHeight = parseInt(divHeight.replace("px",""));          
    divPadTop = parseInt(divPadTop.replace("px",""));    
    divPadBottom = parseInt(divPadBottom.replace("px",""));
    imgNavHeight = parseInt(imgNavHeight.replace("px",""));
    spanHeight = parseInt(spanHeight.replace("px",""));
    imgFecharHeight = parseInt(imgFecharHeight.replace("px",""));

    divHeight = divHeight + spanHeight + imgFecharHeight;

    navTop = ((divHeight + divPadTop + divPadBottom)- imgNavHeight) / 2;
    
    (new Fx.Morph('GaleriaImagem',{ duration: 500, wait: true })).start({
            "top": (window.getHeight()/2)-(divHeight/2),
            "left": (window.getWidth()/2)-(divWidth/2),
            "height": divHeight,
            "width": divWidth
            });
        
    (new Fx.Morph('spanFoto',{ duration: 500, wait: true })).start({
            "height": divHeight - spanHeight - imgFecharHeight,
            "width": divWidth
            });
        
    (new Fx.Morph('lnkFAnterior',{ duration: 500, wait: true })).start({
            "top": navTop
            });
            
    (new Fx.Morph('lnkFProximo',{ duration: 500, wait: true })).start({
            "top": navTop
            });
}

function UBVShowGaleriaImage(i)
{
    UBVResizeGaleriaImagem();
    $("imgFoto").fade(1);
    $("genDescricao").fade(1);
    setTimeout("click = 0",500);
}


//-----------------------------------------------------//
// Script UBVCloseGaleriaImagem - UBV                  //
// Criado por: Marcos Vinicius       Data: 14/08/2009  //
// Modificado por:             Em: __/__/____          //
//-----------------------------------------------------//
function UBVCloseGaleriaImagem()
{
    fctCortina('none');
    $('GaleriaImagem').style.display = 'none';
}

//-----------------------------------------------------//
// Script fctSlideFotos - UBV                          //
// Criado por: Marcos Vinicius       Data: 14/08/2009  //
// Modificado por:             Em: __/__/____          //
//-----------------------------------------------------//
function fctSlideFotos(tipo)
{        
    if(click == 0)
    {        
        var qtd = $$(".imgCount").get("value");
        
        if(!tipo)
        {
            if(index > 0)
            {
                index--;
                fctAtualizaSlide();
            }
        }
        else
        {
            if(index < qtd-1)
            {
                index++;
                fctAtualizaSlide();
		    }
        }
    }
}

//-----------------------------------------------------//
// Script fctAtualizaSlide - UBV                       //
// Criado por: Marcos Vinicius       Data: 14/08/2009  //
// Modificado por:             Em: __/__/____          //
//-----------------------------------------------------//
function fctAtualizaSlide()
{
    click = 1;
    var qtd = $$(".imgCount").get("value");
    var img = $("img_"+index).get("value");
    var descricao = $("descricao_"+index).get("value");
                   
    $("genDescricao").setOpacity(0);
    $("imgFoto").setOpacity(0);
                   
    $("genDescricao").set('html',descricao);
    $("imgFoto").setAttribute("src",img);    
    
    if(index <= 0)
        $$('.lnkImagemAnterior').fade(0);//.removeClass("on").addClass("off");
    else
        $$('.lnkImagemAnterior').fade(1);//.removeClass("off").addClass("on");
        
    if(index >= qtd-1)
        $$('.lnkImagemProximo').fade(0);//.removeClass("on").addClass("off");
    else
        $$('.lnkImagemProximo').fade(1);//.removeClass("off").addClass("on");
        
    //UBVResizeGaleriaImagem();
}