﻿var actionAnt = "";

function $(nome_comp) {
  return document.getElementById(nome_comp);
}

//  Quando o componente é renderizado estando dentro de uma MasterPage, seu ID é
//substituído por ctl00$cphMaster$ + ID do componente. Por isso foi criado essa função.
function resolverIdComp(id) {
  return "ctl00_cphConteudo_" + id;
}

function pegarComp(id) {
  return document.getElementById(resolverIdComp(id));
}

function pegarCompParent(id) {
  return window.opener.document.getElementById(resolverIdComp(id));
}

function FazerPostBack(eventtarget,eventargument) {
    __doPostBack(eventtarget, eventargument);
}

//  Faz uma chamada ao ajax especificando o panel, para no caso de ter um
//panel dentro do outro ou ter vários panels
function FazerPostBackAjax(idpanelajax,eventtarget,eventargument) {
  __doPostBack(idpanelajax,eventtarget + "$" +  eventargument);
}

function Paginar(NomeComp,NomePanelAjax,Pagina) {
  FazerPostBackAjax(resolverIdComp(NomePanelAjax),'paginacao',NomeComp + "-" + Pagina);
}

function AbrirPopUp(Titulo,Link,largura,altura) {
    window.open(Link,Titulo,'status=no,scrollbar=yes,width=' + largura + ',height=' + altura,'');
}

function MostrarProgresso() {
  var comp = document.getElementById("carregando");
  comp.style.display = "block";
  /*if (navigator.appName == "Netscape") {
    comp.style.top = window.pageYOffset;
    comp.style.left = 0;
  }
  else {
    comp.style.top = document.body.scrollTop;
    comp.style.left = 0;
  } */
}

function EsconderProgresso() {
  var comp = document.getElementById("carregando");
  comp.style.display = "none";
}

function formataCep(campo,tammax,teclapres) {
	//var tecla = teclapres.keyCode;
	var tecla = teclapres.keyCode ? teclapres.keyCode : teclapres.which ? teclapres.which : teclapres.charCode;
	vr = campo.value;
	vr = vr.replace( "/", "" );
	vr = vr.replace( "/", "" );
	vr = vr.replace( ",", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );
	tam = vr.length;
	if (tam == tammax && tecla != 8){
	return false
	}
if (valida_numeros(vr) == false ) {
vr = vr.substr( 0,tam-1 );
campo.value = vr 
}
		tam = vr.length;
	if (tam < tammax && tecla != 8){ tam = vr.length + 1 ; }
	if (tecla == 8 ){	tam = tam - 1 ; }
	if ( tecla == 8 || tecla >= 48 && tecla <= 57 || tecla >= 96 && tecla <= 105 ){
		if ( tam <= 2 ){ 
	 		campo.value = vr ; }
	 	if ( (tam > 3) ){
	 		campo.value = vr.substr( 0, tam - 3 ) + '-' + vr.substr( tam - 3, tam ) ; }
	}
		//PERMITE APENAS NUMERICOS funciona apenas com return e onkeypress
      if (tecla != 8) { // backspace       
          return ((tecla > 47) && (tecla < 58));  // números de 0 a 9
        } else { return true;  }		
}

function formataTelefone(campo,tammax,teclapres) {
	var tecla = teclapres.keyCode ? teclapres.keyCode : teclapres.which ? teclapres.which : teclapres.charCode;
	vr = campo.value;
	vr = vr.replace( "/", "" );
	vr = vr.replace( "/", "" );
	vr = vr.replace( ",", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );
	vr = vr.replace( "-", "" );
	tam = vr.length;
if (valida_numeros(vr) == false ) {
vr = vr.substr( 0,tam-1 );
campo.value = vr 
}
		tam = vr.length;
	if (tam < tammax && tecla != 8){ tam = vr.length + 1 ; }

	if (tecla == 8 ){	tam = tam - 1 ; }
		
	if ( tecla == 8 || tecla >= 48 && tecla <= 57 || tecla >= 96 && tecla <= 105 ){
		if ( tam <= 2 ){ 
	 		campo.value = vr ; }
	 	if ( (tam > 4) ){
	 		campo.value = vr.substr( 0, tam - 4 ) + '-' + vr.substr( tam - 4, tam ) ; }
	}	
	
		//PERMITE APENAS NUMERICOS funciona apenas com return e onkeypress
      if (tecla != 8) { // backspace       
          return ((tecla > 47) && (tecla < 58));  // números de 0 a 9
        } else { return true;  }	
}

function limpa_string(S){
// Deixa somente os digitos no numero
var Digitos = "0123456789";
var temp = "";
var digito = "";
    for (var i=0; i<S.length; i++){
      digito = S.charAt(i);
      if (Digitos.indexOf(digito)>=0){temp=temp+digito}
    }
    return temp
}

function valida_cnpj(cnpj)
{
	var i;
	var tb = cnpj
	var s = limpa_string(tb.value);
	var c = s.substr(0,12);
	var dv = s.substr(12,2);
	var d1 = 0;
	for (i = 0; i < 12; i++)
	{
		d1 += c.charAt(11-i)*(2+(i % 8));
	}
        if (d1 == 0)  {
		tb.IsValid = false 
		return false; }
        d1 = 11 - (d1 % 11);
	if (d1 > 9) d1 = 0;
	if (dv.charAt(0) != d1)
	{
		  tb.IsValid = false;
           return false;
	}

	d1 *= 2;
	for (i = 0; i < 12; i++)
	{
		d1 += c.charAt(11-i)*(2+((i+1) % 8));
	}
	d1 = 11 - (d1 % 11);
	if (d1 > 9) d1 = 0;
	if (dv.charAt(1) != d1)
	{
		  tb.IsValid = false;
           return false;
	}
       tb.IsValid = true;
       return true; 
}

function valida_cpf(CPF)
{
	var i;
	var tb = CPF;
	var s = limpa_string(tb.value);
	var c = s.substr(0,9);
	var dv = s.substr(9,2);
	var d1 = 0;
	for (i = 0; i < 9; i++)
	{
		d1 += c.charAt(i)*(10-i);
	}
        if (d1 == 0) { tb.IsValid = false ;
		return false;}
	d1 = 11 - (d1 % 11);
	if (d1 > 9) d1 = 0;
	if (dv.charAt(0) != d1)
	{
		tb.IsValid = false ;
		return false;
	}

	d1 *= 2;
	for (i = 0; i < 9; i++)
	{
		d1 += c.charAt(i)*(11-i);
	}
	d1 = 11 - (d1 % 11);
	if (d1 > 9) d1 = 0;
	if (dv.charAt(1) != d1)
	{
		tb.IsValid = false ;
		return false;
	}
      tb.IsValid = true ;
		return true;
}

function formataCpfCgc(campo,teclapres) {
    var tpPessoa = pegarComp("rdTpPessoa1")
    if (tpPessoa.checked) {
       formataCpf(campo,14,teclapres)
    }
    else {
      formataCnpj(campo,18,teclapres)
    }
    
}
function formataCnpj(campo,tammax,teclapres) {
	var tecla = teclapres.keyCode ? teclapres.keyCode : teclapres.which ? teclapres.which : teclapres.charCode;
	vr = campo.value;
	if (tecla == 8 || vr.length < tammax) {
	   vr = vr.replace( "/", "" );
	   vr = vr.replace( "/", "" );
	   vr = vr.replace( "/", "" );
	   vr = vr.replace( ",", "" );
	   vr = vr.replace( ".", "" );
	   vr = vr.replace( ".", "" );
	   vr = vr.replace( ".", "" );
	   vr = vr.replace( ".", "" );
	   vr = vr.replace( ".", "" );
	   vr = vr.replace( ".", "" );
	   vr = vr.replace( ".", "" );
	   vr = vr.replace( "-", "" );
	   vr = vr.replace( "-", "" );
	   vr = vr.replace( "-", "" );
	   vr = vr.replace( "-", "" );
	   vr = vr.replace( "-", "" );
	   tam = vr.length + 1;
	
	   if (valida_numeros(vr) == false ) {
          vr = vr.substr( 0,vr.length -1 );
          campo.value = vr 	
   }
		tam = vr.length + 1;

	   if (tam < tammax && tecla != 8){ tam = vr.length + 1 ; }
	
	   if (tecla == 8 ){	tam = tam - 1 ; }
		
	   if ( tecla == 8 || tecla >= 48 && tecla <= 57 || tecla >= 96 && tecla <= 105 ){
		   if ( tam <= 2 ){ 
	 		   campo.value = vr ; }
	 	   if ( (tam > 2) && (tam <= 6) ){
	 		   campo.value = vr.substr( 0, tam - 2 ) + '-' + vr.substr( tam - 2, tam ) ; }
	 	   if ( (tam >= 7) && (tam <= 9) ){
	 		   campo.value = vr.substr( 0, tam - 6 ) + '/' + vr.substr( tam - 6, 4 ) + '-' + vr.substr( tam - 2, tam ) ; }
	 	   if ( (tam >= 10) && (tam <= 12) ){
	 		   campo.value = vr.substr( 0, tam - 9 ) + '.' + vr.substr( tam - 9, 3 ) + '/' + vr.substr( tam - 6, 4 ) + '-' + vr.substr( tam - 2, tam ) ; }
	 	   if ( (tam >= 13) && (tam <= 14) ){
	 		   campo.value = vr.substr( 0, tam - 12 ) + '.' + vr.substr( tam - 12, 3 ) + '.' + vr.substr( tam - 9, 3 ) + '/' + vr.substr( tam - 6, 4 ) + '-' + vr.substr( tam - 2, tam ) ; }
	 	   if ( (tam >= 15) && (tam <= 17) ){
	 		   campo.value = vr.substr( 0, tam - 14 ) + '.' + vr.substr( tam - 14, 3 ) + '.' + vr.substr( tam - 11, 3 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + '-' + vr.substr( tam - 2, tam ) ;}
	   }		
	   //PERMITE APENAS NUMERICOS funciona apenas com return e onkeypress
         if (tecla != 8) { // backspace       
             return ((tecla > 47) && (tecla < 58));  // números de 0 a 9
           } else { return true;  }
    }
}

function valida_numeros(s)
{
	var i; 
	var dif = 0;
	for (i = 0; i < s.length; i++)
	{
		var c = s.charAt(i);
		if (!((c >= "0") && (c <= "9")||(c == ".")||(c == ",")||(c == "-")))
		{
			dif = 1;
		}
	}
	if (dif == 1)
	{
		return false;
	}
	return true;
}  

function formataCpf(campo,tammax,teclapres) {
	var tecla = teclapres.keyCode ? teclapres.keyCode : teclapres.which ? teclapres.which : teclapres.charCode;
	
	vr = campo.value;
	
	if (tecla == 8 || vr.length < tammax) {
	   vr = vr.replace( "/", "" );
	   vr = vr.replace( "/", "" );
	   vr = vr.replace( ",", "" );
	   vr = vr.replace( ".", "" );
	   vr = vr.replace( ".", "" );
	   vr = vr.replace( ".", "" );
	   vr = vr.replace( ".", "" );
	   vr = vr.replace( "-", "" );
	   vr = vr.replace( "-", "" );
	   vr = vr.replace( "-", "" );
	   vr = vr.replace( "-", "" );
	   vr = vr.replace( "-", "" );
	   tam = vr.length;

	   if (tam < tammax && tecla != 8){ tam = vr.length + 1 ; }

	   if (tecla == 8 ){	tam = tam - 1 ; }
		
	   if ( tecla == 8 || tecla >= 48 && tecla <= 57 || tecla >= 96 && tecla <= 105 ){
		   if ( tam <= 2 ){ 
	 		   campo.value = vr ; }
	 	   if ( (tam > 2) && (tam <= 5) ){
	 		   campo.value = vr.substr( 0, tam - 2 ) + '-' + vr.substr( tam - 2, tam ) ; }
	 	   if ( (tam >= 6) && (tam <= 8) ){
	 		   campo.value = vr.substr( 0, tam - 5 ) + '.' + vr.substr( tam - 5, 3 ) + '-' + vr.substr( tam - 2, tam ) ; }
	 	   if ( (tam >= 9) && (tam <= 11) ){
	 	   	   campo.value = vr.substr( 0, tam - 8 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + '-' + vr.substr( tam - 2, tam ) ; }
	 	   if ( (tam >= 12) && (tam <= 14) ){
	 		   campo.value = vr.substr( 0, tam - 11 ) + '.' + vr.substr( tam - 11, 3 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + '-' + vr.substr( tam - 2, tam ) ; }
	 	   if ( (tam >= 15) && (tam <= 17) ){
	 		   campo.value = vr.substr( 0, tam - 14 ) + '.' + vr.substr( tam - 14, 3 ) + '.' + vr.substr( tam - 11, 3 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + '-' + vr.substr( tam - 2, tam ) ;}
	   }	
	   //PERMITE APENAS NUMERICOS funciona apenas com return e onkeypress
         if (tecla != 8) { // backspace       
             return ((tecla > 47) && (tecla < 58));  // números de 0 a 9
           } else { return true;  }
    }
}

/**
 * Adiciona método trim() à classe String.
 * Elimina brancos no início e fim da String.
 */
String.prototype.trim = function()
{
	return this.replace(/^\s*/, "").replace(/\s*$/, "");
} //String.trim
