﻿// JScript File
// Função para digitar somente numero
function SoNumero(vObjeto)
{
    var texto,a;
    keyPress = event;
    
    texto = vObjeto.value;
   
    a = texto.substr(texto.length-1,1);
  
   if ((a.charCodeAt(0) >= 58 || a.charCodeAt(0) <= 46)  )
   {
      texto=texto.substr(0,texto.length-1)
      
   }  
  
    vObjeto.value = texto;
}

//Libera uso apenas de números
function SoNumero1(e) {
    var tecla;
    
    if(window.event)
        tecla = window.event.keyCode;
    else if(e.KeyCode)
        tecla = e.KeyCode;

    if (tecla > 47 && tecla < 58) // numeros de 0 a 9
    return true;
    else
    {
        if (tecla != 8) // backspace
        event.keyCode = 0;
    //return false;
        else
        return true;
    }
}

function SoNumero2(evtKeyPress) {
    var nTecla;
    nTecla = (evtKeyPress.which) ? evtKeyPress.which : evtKeyPress.keyCode;

    if(nTecla > 47 && nTecla < 58)
        return true;
    else
        return false;
}


// JavaScript Document

//adiciona mascara de cnpj
function MascaraCNPJ(cnpj){	
	if(mascaraInteiro(cnpj)==false)
	{		
		event.returnValue = false;		
	}		
	
	return formataCampo(cnpj, '00.000.000/0000-00', event);
}

//adiciona mascara de cep
function MascaraCep(cep){		
	if(mascaraInteiro(cep)==false)
    {
		event.returnValue = false;
	}

	return formataCampo(cep, '00.000-000', event);
}

//adiciona mascara de data
function MascaraData(data){	
	if(mascaraInteiro(data)==false)
	{
			event.returnValue = false;
	}		
	
	return formataCampo(data, '00/00/0000', event);
}

//adiciona mascara ao telefone
function MascaraTelefone(tel){
		if(mascaraInteiro(tel)==false)
		{		
	        event.returnValue = false;
	   	}
	   	return formataCampo(tel, '(00) 0000-0000', event);
}

//adiciona mascara ao CPF
function MascaraCPF(cpf){
	if(mascaraInteiro(cpf)==false)
	{
	    event.returnValue = false;	
	}
	return formataCampo(cpf, '000.000.000-00', event);
}

//adiciona mascara ao Ano/Modelo do veículo
function MascaraAnoModelo(ano){
	if(mascaraInteiro(ano)==false)
	{
	    event.returnValue = false;	
	}
	return formataCampo(ano, '0000/0000', event);
}

//valida telefone
function ValidaTelefone(tel){	
    exp = /\(\d{2}\)\ \d{4}\-\d{4}/	
    if(!exp.test(tel.value))		
    alert('Numero de Telefone Invalido!');
}

//valida CEP
function ValidaCep(cep){	
    exp = /\d{2}\.\d{3}\-\d{3}/	
    if(!exp.test(cep.value))		
    alert('Numero de Cep Invalido!');
}

//valida data
function ValidaData(data){
	exp = /\d{2}\/\d{2}\/\d{4}/	
	if(!exp.test(data.value))
	alert('Data Invalida!');			
}

//valida o CPF digitado
function ValidarCPF(Objcpf){
	var cpf = Objcpf.value;	
	exp = /\.|\-/g	
	cpf = cpf.toString().replace( exp, "" ); 
	var digitoDigitado = eval(cpf.charAt(9)+cpf.charAt(10));
	var soma1=0, soma2=0;
	var vlr =11;
	for(i=0;i<9;i++)
	{
	    soma1+=eval(cpf.charAt(i)*(vlr-1));        
	    soma2+=eval(cpf.charAt(i)*vlr);        
	    vlr--;    
	}
	soma1 = (((soma1*10)%11)==10 ? 0:((soma1*10)%11));    
	soma2=(((soma2+(2*soma1))*10)%11);	    
	var digitoGerado=(soma1*10)+soma2;	
	if(digitoGerado!=digitoDigitado)			
	alert('CPF Invalido!');		
}

//valida numero inteiro com mascara
function mascaraInteiro(){	
    if (event.keyCode < 48 || event.keyCode > 57)
    {		
        event.returnValue = false;		
        return false;	
    }	
    return true;
}

//valida o CNPJ digitado
function ValidarCNPJ(ObjCnpj){	
    var cnpj = ObjCnpj.value;	
    var valida = new Array(6,5,4,3,2,9,8,7,6,5,4,3,2);	
    var dig1= new Number;	
    var dig2= new Number;		
    exp = /\.|\-|\ /g	
    cnpj = cnpj.toString().replace( exp, "" ); 	
    var digito = new Number(eval(cnpj.charAt(12)+cnpj.charAt(13)));			
    for(i = 0; i<valida.length; i++)
    {		
        dig1 += (i>0? (cnpj.charAt(i-1)*valida[i]):0);			
        dig2 += cnpj.charAt(i)*valida[i];		
    }
    dig1 = (((dig1%11)<2)? 0:(11-(dig1%11)));	
    dig2 = (((dig2%11)<2)? 0:(11-(dig2%11)));		
    if(((dig1*10)+dig2) != digito)			
    alert('CNPJ Invalido!');	
}


//formata de forma generica os campos
function formataCampo(campo, Mascara, evento) { 
    var boleanoMascara; 
    
    var Digitato = evento.keyCode;
    exp = /\-|\.|\/|\(|\)| /g
    campoSoNumeros = campo.value.toString().replace( exp, "" ); 
   
    var posicaoCampo = 0;     
    var NovoValorCampo="";
    var TamanhoMascara = campoSoNumeros.length;; 
    
    if (Digitato != 8) { // backspace 
        for(i=0; i<= TamanhoMascara; i++) { 
            boleanoMascara  = ((Mascara.charAt(i) == "-") || (Mascara.charAt(i) == ".")
                                || (Mascara.charAt(i) == "/")) 
            boleanoMascara  = boleanoMascara || ((Mascara.charAt(i) == "(") 
                                || (Mascara.charAt(i) == ")") || (Mascara.charAt(i) == " ")) 
            if (boleanoMascara) { 
                NovoValorCampo += Mascara.charAt(i); 
                  TamanhoMascara++;
            }else { 
                NovoValorCampo += campoSoNumeros.charAt(posicaoCampo); 
                posicaoCampo++; 
              }            
          }     
        campo.value = NovoValorCampo;
          return true; 
    }else { 
        return true; 
    }
}


function mask(campo,formato,conteudo)
{
      var i, j;
      auxPonto    = formato;
      auxBarra    = formato;
      auxHifen    = formato;
      auxDblPonto = formato;
      tamanho     = formato.length;
      posPonto    = new Array(tamanho);
      posBarra    = new Array(tamanho);
      posHifen    = new Array(tamanho);
      posDblPonto = new Array(tamanho);
      keyPress    = event;
      campo.maxLength = tamanho;
      switch (conteudo)
      {
            case 1: // Verifica se soh podem ser entrados valores numericos
                  if (!(keycode(keyPress)>=48 && keycode(keyPress)<=57))
                        event.keyCode=0;
                  break;
            case 2: // Somente Letras
                  if (!( (keycode(keyPress)>= 97 && keycode(keyPress) <= 122) || (keycode(keyPress)>= 65 && keycode(keyPress) <= 90) ))
                        event.keyCode=0;
                  break;
            case 3: // Letras e numeros
                  if (!( (keycode(keyPress)>=48 && keycode(keyPress)<=57) || (keycode(keyPress)>= 97 && keycode(keyPress) <= 122) || (keycode(keyPress)>= 65 && keycode(keyPress) <= 90) ))
                        event.keyCode=0;
                  break;
      }
 // ---------------------------------------- PEGA A FORMATACAO DA MASCARA -----------------------------------
      for (i=0;i<tamanho;i++)
      {
            posPonto[i]       = auxPonto.indexOf('.');
            posBarra[i]       = auxBarra.indexOf('/');
            posHifen[i]       = auxHifen.indexOf('-');
            posDblPonto[i]    = auxDblPonto.indexOf(':');
            auxPonto    = auxPonto.substring(posPonto[i]+1,tamanho);
            auxBarra    = auxBarra.substring(posBarra[i]+1,tamanho);
            auxHifen    = auxHifen.substring(posHifen[i]+1,tamanho);
            auxDblPonto = auxDblPonto.substring(posDblPonto[i]+1,tamanho);
            if (i > 0)
            {
                  posPonto[i]       = posPonto[i] + posPonto[i-1];
                  posBarra[i]       = posBarra[i] + posBarra[i-1];
                  posHifen[i]       = posHifen[i] + posHifen[i-1];
                  posDblPonto[i]    = posDblPonto[i] + posDblPonto[i-1];
                  posPonto[i]       = posPonto[i] + 1;
                  posBarra[i]       = posBarra[i] + 1;
                  posHifen[i]       = posHifen[i] + 1;
                  posDblPonto[i]    = posDblPonto[i] +1;
            }
// ---------------------------------------- APLICA A FORMATACAO DA MASCARA -----------------------------------

            if ( posPonto[i] != 0 &&  posBarra[i] != 0 && posHifen[i] != 0 && posDblPonto[i] != 0 ) //Caracteres diferentes de - . / :
            {
                  tecla = keycode(keyPress);
                  if (tecla != 8 && tecla != 45 && tecla != 46 && tecla != 47 && tecla != 58)
                  {
                        if (campo.value.length == posPonto[i])
                        {
                             campo.value = campo.value + ".";
                             campo.focus();
                        }
                        if (campo.value.length == posBarra[i])
                        {
                             campo.value = campo.value + "/";
                             campo.focus();
                        }

                        if (campo.value.length == posHifen[i])
                        {
                             campo.value = campo.value + "-";
                             campo.focus();
                        }
                        
                        if (campo.value.length == posDblPonto[i])
                        {
                             campo.value = campo.value + ":";
                             campo.focus();
                        }
                  }
            }
      }
}

function keycode(keyPress)
{
      return keyPress.keyCode;
}


function imprimir(){
    window.divBotoes.style.display="none";
    window.print();
    window.divBotoes.style.display="";
}

function CallPrint(strid)
{
 var prtContent = document.getElementById(strid);
 var WinPrint = window.open('','','letf=0,top=0,width=1,height=1,toolbar=0,scrollbars=0,status=0');
 WinPrint.document.write(prtContent.innerHTML);
 WinPrint.document.close();
 WinPrint.focus();
 WinPrint.print();
 WinPrint.close();
 prtContent.innerHTML=strOldOne;
}


function Maiuscula(campo)
{
   var texto,a,btn;
   //eval("btn=document.all."+campo);
   //texto=document.all.txtSegurado.value;
   texto = campo.value;
   a = texto.substr(texto.length-1,1);
   a = a.toUpperCase();
   if ((a.charCodeAt(0) >= 150 && a.charCodeAt(0) <= 220) || (a.charCodeAt(0) == 39) )
   {
      texto=texto.substr(0,texto.length-1)
   }   
   campo.value = texto.toUpperCase();
}

function textCounter(field, lblContador ,maxlimit) 
{
    if (field.value.length > maxlimit)
        field.value = field.value.substring(0, maxlimit);
    else 
        document.getElementById(lblContador).innerHTML = maxlimit - field.value.length;
}

function mostrarConteudo(vEsse)
        {       
            vPai = vEsse.parentNode;
            vIrmao = vPai.nextSibling;
            imagem = document.getElementById("imgEsconder");
            
            while (vIrmao.nodeType==3) {
                vIrmao = vIrmao.nextSibling;
            };
               
            if(vIrmao.style.display == "none")
            {
                imagem.src="images/Geral/Contrair.png";
                imagem.alt = "Esconder";
                 $('#lblEsconder').text("esconder");
                
            } else {
                          
                imagem.src="images/Geral/Expandir.png";
                vEsse.alt = "Mostrar";
                $('#lblEsconder').text("mostrar");
            }
            $(vIrmao).slideToggle();
            return;
        }

// JavaScript Document
$(document).ready(function(){
	$_btnSelProd = null;

	IntBanPos();
	
	$('.Menu li.MnItem').hover(function(){
		$('#' + $(this).attr('id') + ' span').animate({ height: $(this).height() + 'px', paddingTop: '8px'},200);				
		$('#' + $(this).attr('app')).animate({height:$(this).attr('xheight')+'px'},0);
		$('#' + $(this).attr('id')).children(' .SubMenu').slideToggle(200);
		
		
	}, function(){
		$('#' + $(this).attr('id') + ' span, #' + $(this).attr('app')).stop(); // Parar antes do menu estar completamente aberto
		$('#' + $(this).attr('id')).children(' .SubMenu').slideToggle(200);
		$('#' + $(this).attr('id') + ' span, #' + $(this).attr('app')).animate({ height: '0px'},0);
		$('#' + $(this).attr('id') + ' span').animate({ paddingTop: '0px'},200);
		
	});
	
	/* ShowHide */
	$('.jsShowHide .SHstarter').click(function(){
		$("." + $(this).attr('hide')).slideUp(300);
		$("#" + $(this).attr('show')).slideDown(300);

		/*if($.browser.msie && (jQuery.browser.version - 7.0)){ // Corrige o posicionamento do Login InternetBanking no IE6
			setTimeout("IntBanPos()",300);
		}*/

	});

	var UsarCookie = false;  // Define se deve-se criar ou nao o Cookie, Modifique pra true caso queira utilizar um Cookie
	
	$('.mod_text').css({fontSize:$('.mod_text').css("font-size")}); // Guarda o font-size atual

	if(UsarCookie == false) { //Se nao usar o Cookie

		$(".btn_menos").click(function(){ 										// aciona no evento click
			var FontSz = parseInt($('.mod_text').css("font-size")); 			// Guarda o valor do font-size num int
			if(FontSz > 9) $('.mod_text').css({fontSize:(FontSz - 1) + "px"}); 	// Verifica o tamanho atual da fonte e altera se necessario
			FontSz = $('.mod_text').css("font-size"); 							// Guarda o novo valor
			//setTimeout("IntBanPos()",50); 									// Corrige o posicionamento do LoginInternet Banking no IE6
		});
		
		$(".btn_mais").click(function(){ 										// aciona no evento click
			var FontSz = parseInt($('.mod_text').css("font-size")); 			// Guarda o valor do font-size num int
			if(FontSz < 16)$('.mod_text').css({fontSize:(FontSz + 1) + "px"}); 	// Verifica o tamanho atual da fonte e altera se necessario
			FontSz = $('.mod_text').css("font-size");							// Guarda o novo valor
			//setTimeout("IntBanPos()",50); 									// Corrige o posicionamento do LoginInternet Banking no IE6
		});

	} else if (UsarCookie == true) { // Se usar Cookie

	
		if(readCookie('FontSize') == null) { 								// se o Cookie não existe, tenta criar
			createCookie('FontSize', $('.mod_text').css("font-size"), 0); 	// Cria um Cookie com o valor atual da fonte q expire assim q o usuario fechar a janela do Navegador
		}
		
		if(readCookie('FontSize') == null) { // Caso os Cookies estejam desabilitados
	
			$(".btn_menos").click(function(){
				var FontSz = parseInt($('.mod_text').css("font-size")); 			// Lendo o valor atual da fonte
				if(FontSz > 9)$('.mod_text').css({fontSize:(FontSz - 1) + "px"}); 	// Subtraindo 1px
				FontSz = $('.mod_text').css("font-size"); 							// Salvando o novo valor
				//setTimeout("IntBanPos()",50); 									// Corrige o posicionamento do LoginInternet Banking no IE6
			});
			
			$(".btn_mais").click(function(){
				var FontSz = parseInt($('.mod_text').css("font-size")); 			// Lendo o valor atual da fonte
				if(FontSz < 16) $('.mod_text').css({fontSize:(FontSz + 1) + "px"});	// Adcionando 1px
				FontSz = $('.mod_text').css("font-size"); 							// Salvando o novo valor
				//setTimeout("IntBanPos()",50); 									// Corrige o posicionamento do LoginInternet Banking no IE6
			});
	
		} else { // Caso os Cookies estejam habilitados e o Cookie tenha sido criado corretamente
			$('.mod_text').css({fontSize:readCookie('FontSize')}); // Defini o tamanho da fonte com o valor do Cookie
		
			$(".btn_menos").click(function(){
				var FontSz = readCookie('FontSize'); 					// Lendo o valor do Cookie
				FontSz = parseInt(FontSz); 								// Transforma em inteiro
				if(FontSz > 9) { 										// Verifica o tamanho atual da fonte
					$('.mod_text').css({fontSize:(FontSz - 1) + "px"});	// Defini o valor ao objeto subtraindo 1px
					eraseCookie('FontSize'); 							// Apaga o Cookie com o valor anterior
					FontSz = $('.mod_text').css("font-size"); 			// Redefine a variável com o Novo valor da fonte
					createCookie('FontSize', FontSz, 0); 				// Cria um Novo Cookie com o novo Valor
					//setTimeout("IntBanPos()",50); 					// Corrige o posicionamento do LoginInternet Banking no IE6
				}
			});
	
			$(".btn_mais").click(function(){          
				var FontSz = readCookie('FontSize'); 					// Lendo o valor do Cookie
				FontSz = parseInt(FontSz); 								// Transforma em inteiro
				if(FontSz < 16) { 										// Verifica o tamanho atual da fonte
					$('.mod_text').css({fontSize:(FontSz + 1) + "px"});	// Defini o valor ao objeto adicionando 1px
					eraseCookie('FontSize'); 							// Apaga o Cookie com o valor anterior
					FontSz = $('.mod_text').css("font-size"); 			// Redefine a variável com o Novo valor da fonte
					createCookie('FontSize', FontSz, 0); 				// Cria um Novo Cookie com o novo Valor
					//setTimeout("IntBanPos()",50); 					// Corrige o posicionamento do LoginInternet Banking no IE6
				}
			});
		}
	}
	
});

function IntBanPos(){ /* Corrige erro de posicionamento da Barra do Internet Bankink no IE6 */
	if($.browser.msie && (jQuery.browser.version - 7.0)){
		
		var intervalo = setInterval(function(){var h = $(".MainBar").height();
		$(".Footer").css({top:(h - 24) + "px"});},300);
		//setTimeout(function(){clearInterval(intervalo);}, 2500);
		//alert("teste");
	}
}



var yqlURL = 'http://query.yahooapis.com/v1/public/yql?q=';
var formato = '&format=json&env=http://datatables.org/alltables.env&callback=?';
	
function yqlCambio(){
	var yql = yqlURL + encodeURIComponent('select * from yahoo.finance.xchange where pair in ("EURBRL","USDBRL")') + formato;
	jQuery.getJSON(yql,function(data){

              var s = data.query.results.rate; 	                                  

              for(var r in s){

		jQuery("#" + s[r].id + "-name").html(s[r].Name.split(" ")[0]);
		jQuery("#" + s[r].id + "-ask").html(s[r].Ask);
		jQuery("#" + s[r].id + "-bid").html(s[r].Bid);


              }

        });
}

function yqlAcoes(){
	var yql = yqlURL + encodeURIComponent('select * from yahoo.finance.quotes where symbol in ("AAPL","GOOG")') + formato;
	jQuery.getJSON(yql,function(data) {
		var s = data.query.results.quote;
		for(var r in s){
			jQuery("#" + s[r].symbol + "-name").html(s[r].Name);

                		jQuery("#" + s[r].symbol + "-ask").html(s[r].Ask);

                		jQuery("#" + s[r].symbol + "-bid").html(s[r].Bid);

                		jQuery("#" + s[r].symbol + "-change").html(s[r].Change);

		}  
	});

}


function yqlBolsas(){
	var yql = yqlURL + encodeURIComponent('select * from yahoo.finance.quotes where symbol in ("^GDAXI","^BVSP","^N225","^IXIC")') + formato;
	jQuery.getJSON(yql,function(data) {
		var s = data.query.results.quote;
		for(var r in s){
			
			jQuery("#" + s[r].symbol.replace("^","") + "-name").html(s[r].Name.replace("-","").replace(/^\s+|\s+$/g,""));

                		jQuery("#" + s[r].symbol.replace("^","") + "-lasttradepriceonly").html(s[r].LastTradePriceOnly);

                		jQuery("#" + s[r].symbol.replace("^","") + "-change").html(s[r].Change);
		}  
	});

}











