function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}



/*==========================================================================================*/
/*==========================================================================================*/
function Imprimir()
{ 
	var x;
	var win;
			x = window.ToPrint.innerHTML;
			win = window.open('Print.asp','Print','directories=no,fullscreen=no,top=1,left=1,height=0,width=0,location=no,menubar=no,resizable=yes,scrollbars=no,border=no,status=no,titlebar=no,toolbar=no', false);
			document.focus()
}

function Voltar()
{
	history.go(-1)
}

// retira virgulas  desnecessárias da formatação do nome de cada produto

function ValidaFormatacao(Formatacao)
{
			var x = Formatacao.length;
			if(Formatacao.substring(x,x-2) == ", ") {Formatacao = Formatacao.substring(0,x-2);}
			if(Formatacao.substring(0,1) == ",")    {Formatacao = Formatacao.substring(1,x);  }
			if(Formatacao.substring(0,1) == " ")    {Formatacao = Formatacao.substring(1,x);  }
			return Formatacao;
}

/*==========================================================================================

==========================================================================================*/
function Modal(strWindow,strParam,largura,altura)
{
	return window.showModalDialog(strWindow, strParam, "dialogWidth:" + largura + "px; dialogHeight:" + altura + "px;center:yes; status:no;")
}

/*==========================================================================================
Permite que seje digitado somente números.
Esse função deve ser chamada no evento OnKeyPress do objeto TEXT do HTML
Ex: <Input Type="Text" name="txtNumero" OnKeyPress="Numero()">
==========================================================================================*/
function Numero()
{
	if (event.keyCode == 45 || event.keyCode == 43){event.keyCode = 0;}
	if (event.keyCode <  48 || event.keyCode >  57){event.keyCode = 0;}
}

//==========================================================================================
//Retorna Data e Hora do sistema, separados por virgula.
//Obs: A data retornada estará no formato "dd/mm/aaaa" 
//     e a Hora no formato "hh:mm:ss"
//==========================================================================================

function Hoje() 
{ 
   var Hr;
   var dd,mm,aa;
   var hh,min,seg;
    
Hr = new Date() 
dd = Hr.getDate() 
mm = Hr.getMonth() + 1 
aa = Hr.getYear() 

hh  = Hr.getHours() 
min = Hr.getMinutes() 
seg = Hr.getSeconds() 

DataAtual = ((dd < 10) ? "0" + dd + "/" : dd + "/") 
DataAtual += ((mm < 10) ? "0" + mm + "/" + aa : mm + "/" + aa) 


HoraAtual = ((hh < 10) ? "0" + hh + ":" : hh + ":") 
HoraAtual += ((min < 10) ? "0" + min + ":" : min + ":") 
HoraAtual += ((seg < 10) ? "0" + seg : seg) 

return DataAtual + "," + HoraAtual;

}

//==========================================================================================
//Verifica se a hora informada é valida.
//Retorna FALSE caso hora não válida.
//Retorna TRUE caso hora válida.
//Obs: A hora informada deverá ser passada no formato "hh:mm" 
//==========================================================================================

function ValidaHora(Data,Obrigatorio)
{
	var strHora  = new String();
	var strSplit = Array();
		  strHora = Data.value;
	var hora;
	var minuto;	
	
	hora = "";
	minuto = "";
	
	
	//Permite que seja digitado somente os o valor da hora sem : e os minutos
	
	vntHora = strHora.split(":");
	strSplit= strHora.split(":");
	
	if(String(strSplit[1]) == "undefined")
	{
	  strHora = strSplit[0] + ":00";
	  vntHora = strHora.split(":");
	  strSplit= strHora.split(":");
	}  
	
	
	if (Vazio(strHora)) 
	   {if (Obrigatorio) {return true;}}
	else 
		{
				if (Vazio(String(strSplit[0])) || Vazio(String(strSplit[1]))) 
				{
					if (Obrigatorio) {return true;}
				}
               hora = parseInt(vntHora[0]);
    			 if (hora == 0)
					{   
					  hora = 1;
					}

                if (!hora)
                {
                  return false;
                }  
				
				if	(((hora > 23) && (hora != 99))  || (String(vntHora[0]) == "undefined"))
						{return false;}
				else 
						{
						 minuto = parseInt(vntHora[1]);
						 
						 if (minuto == 0)
						 {   
						   minuto = 1;
						 }
						 if (!minuto)
						  {
						     return false;
						  }  
						if( ((minuto > 59) && (minuto != 99)) || (String(vntHora[1]) == "undefined") )
							{return false;}
						else
							{return true;} 
				    }
		}	    
}

/*==========================================================================
Compara duas datas, retornando true, caso o primerio parametro seja o maior
e false caso contrário, as datas devem estar no formato dd/mm/aaaa.
===========================================================================*/

function ComparaDatas(pdata1, pdata2)
{
 var dtini, dtfim;
 
   pdata1 = pdata1;
   pdata2 = pdata2;
  // alert('Data1:' + pdata1 + '\n' + 'Data2:' + pdata2);
   pdtini = pdata1.substring(6,10) + pdata1.substring(3,5) + pdata1.substring(0,2) ;
   pdtfim = pdata2.substring(6,10) + pdata2.substring(3,5) + pdata2.substring(0,2) ;
        
  // alert(pdtini>pdtfim)  
   if (pdtini > pdtfim) 
    {
     return true; 
    } 
   return false;
}

/*==========================================================================
Compara duas datas, retornando true, caso o primerio parametro seja o maior ou 
iqual ou false caso contrário, as datas devem estar no formato dd/mm/aaaa.
===========================================================================*/
function ComparaDatasMaiorIgual(pdata1, pdata2)
{
 var dtini, dtfim;
 
   pdata1 = pdata1;
   pdata2 = pdata2;
  // alert('Data1:' + pdata1 + '\n' + 'Data2:' + pdata2);
   pdtini = pdata1.substring(6,10) + pdata1.substring(3,5) + pdata1.substring(0,2) ;
   pdtfim = pdata2.substring(6,10) + pdata2.substring(3,5) + pdata2.substring(0,2) ;
        
  // alert(pdtini>pdtfim)  
   if (pdtini >= pdtfim) 
    {
     return true; 
    } 
   return false;
}

/*==========================================================================
Formata hora para HH:MM, utilizado no evento OnBlur do campo do 
formulário
===========================================================================*/

function FormataHora(Hora,Posicao)
{
	var strHora  = new String();
	var strSplit = Array();
		strHora = Hora.value;
	var hora;
	var minuto;	
	
	hora = "";
	minuto = "";
	
	
	//Permite que seja digitado somente os o valor da hora sem : e os minutos
	//Parametro Posição, especifica se o campo é De ou Até 0 ou 1 respectivamente 
	
	vntHora = strHora.split(":");
	strSplit= strHora.split(":");
	
	if(Vazio0(Hora.value))
	{
	  switch (Posicao)
	   {
	    case 0:
	    {  
	     Hora.value = "00:00";
	     break;
  	     }
  	    
  	    case 1:
	     {
	     Hora.value = "23:59";
	     break;
	     }
  	    
  	    default:
  	     {
  	      return true;
  	     }
  	    
  	    }
	  
	  strHora = Hora.value;

	  vntHora = strHora.split(":");
	  strSplit= strHora.split(":");
	  
	}  
	var aux;
	var aux2;
			aux = strSplit[0];
			aux2= strSplit[1]; 
			
	if (aux.length<=1) {strSplit[0]="0" + aux;}
	
	
	if(String(strSplit[1]) == "undefined")
	{
	  
	  strHora = strSplit[0] + ":00";
	  vntHora = strHora.split(":");
	  strSplit= strHora.split(":");
	  Hora.value = strHora;
	}  
  else
  {
		if (aux2.length<=1) {strSplit[1]=aux2 + "0";}
		strHora = strSplit[0] + ":" + strSplit[1];
		Hora.value = strHora;
  }

}


/*=======================================================================
Substitui o sinal de + pelo trema, nas telas modais
========================================================================*/

function Trema(itens)
{

		var tam=itens.length
		var i;
		var StrChar;
		var itens1 = "";
		for (i=0;i<tam;i++)
			{
			 StrChar = itens.substring(i,i+1);
				 if(StrChar=="+") 
						{
							itens1 = itens1 + '¨';
						}
				 else	
						{
							itens1 = itens1 + StrChar;
						}
			}

		return itens1;

}

/*==========================================================================================
Verifica se a data informada é valida.
Retorna FALSE caso data não válida.
Retorna TRUE caso data válida.
Obs: A data informada deverá ser passada no formato "D/M/AAAA" ou "DD/M/AAAA" ou "D/MM/AAAA"
ou "DD/MM/AAAA".
==========================================================================================*/
function ValidaData(Data)
{
	var strData = new String();
	strData = Data;
	if(strData.length < 10)
	{
		return false;
	}
	vntData = strData.split("/");
		
	if(vntData[2].length < 4 || parseInt(vntData[2]) < 1900)
	{
		return false;
	}
	if(parseInt(vntData[1]) > 12)
	{
		return false;
	}
	if(parseInt(vntData[1]) == 1 ||	parseInt(vntData[1]) == 3 || parseInt(vntData[1]) == 5 || parseInt(vntData[1]) == 7 || parseInt(vntData[1]) == 8 || parseInt(vntData[1]) == 10 || parseInt(vntData[1]) == 12)
	{
		if(parseInt(vntData[0]) > 31)
		{
			return false;
		}
	}
	if(parseInt(vntData[1]) == 4 || parseInt(vntData[1]) == 6 || parseInt(vntData[1]) == 9 || parseInt(vntData[1]) == 11)
	{
		if(parseInt(vntData[0]) > 30)
		{
			return false;
		}
	}
			
	if(parseInt(vntData[1]) == 2)
	{
		if(parseInt(vntData[2]) % 4 == 0)
		{
			if(parseInt(vntData[0]) > 29)
			{
				return false;
			}
		}
		else
		{
			if(parseInt(vntData[0]) > 28)
			{
				return false;
			}
		}
	}
	return true;
}

/*==========================================================================================
Tem	quase a mesma funcionalidade da função TRIM do ASP, porém só tem a funcionalidade de 
verificar se texto informado é composto de somente espaços ou é vazio ...
Retorna TRUE caso o texto informado seja diferente de	VAZIO (TEXTO != "")
Retorna FALSE caso o texto informado seja VAZIO (TEXTO = "")
==========================================================================================*/
function Trim(Texto)
{
	var strTexto = Texto;
	if(strTexto.length == 0)
	{
		return false;
	}
	else
	{
		for(var i = 0; i < strTexto.length; i++)
		{
			if(strTexto.charAt(i) != " ")
			{
				return true;
			}
		}
	}
	return false;
}

/*==========================================================================================
De acordo com os parâmetros informados, verifica se o objeto informado (tem que ser um 
CHECKBOX ou um RADIO) está "CHECADO" e caso esteja, o layer informado passará a ser VISÍVEL,
caso contrário o layer informado passará a ser INVISÍVEL.
==========================================================================================*/
function lyrGenerica(Objeto,Layer)
{
	if(Objeto.checked == true)
	{
		Layer.style.visibility = "visible";
	}
	else
	{
		Layer.style.visibility = "hidden";		
	}
}

/*==========================================================================================
Função utilizada para formatação de moeda
Ex: <INPUT type="text" name="txtValor" onkeyup="txt_onkeyup(this)" onkeypress="txt_OnKeyPress(this)" onblur="txt_OnBlur(this)" style="text-align: right">
==========================================================================================*/
function txt_OnKeyPress(objeto)
{
	if(event.keyCode == 44)
	{
		VerificaVirgula(objeto);
	}	
	else
	{
		if(event.keyCode < 48 || event.keyCode > 57) 
		{
			event.keyCode = 0;
		}
	}
}

/*==========================================================================================
Função utilizada para formatação de moeda
Ex: <INPUT type="text" name="txtValor" onkeyup="txt_onkeyup(this)" onkeypress="txt_OnKeyPress(this)" onblur="txt_OnBlur(this)" style="text-align: right">
==========================================================================================*/
function txt_OnBlur(objeto)
{
	var sTexto = objeto.value;
	
	if(sTexto != "")
	{
		virgula = false;
		for(var i = 0; i < sTexto.length; i++)
		{
			if(sTexto.substring(i, i+1) == ",")
			{
				virgula = true;
			}
		} 
		if(virgula == false)
		{
			objeto.value = sTexto + ",00";
		}
		else
		{
			if (sTexto.substring((sTexto.length - 1), sTexto.length) == ",")
			{
				objeto.value = sTexto + "00";		
			}
		}
	}
}

/*==========================================================================================
Função auxiliar utilizada para formatação de moeda
Ex: <INPUT type="text" name="txtValor" onkeyup="txt_onkeyup(this)" onkeypress="txt_OnKeyPress(this)" onblur="txt_OnBlur(this)" style="text-align: right">
==========================================================================================*/
function VerificaVirgula(objeto)
{
	var sTexto = objeto.value;
	
	for(var i = 0; i < sTexto.length; i++)
	{
		if (sTexto.substring(i, i+1) == ",")
		{
			event.keyCode = 0;
		}
	} 
}

/*==========================================================================================
Função utilizada para formatação de moeda
Ex: <INPUT type="text" name="txtValor" onkeyup="txt_onkeyup(this)" onkeypress="txt_OnKeyPress(this)" onblur="txt_OnBlur(this)" style="text-align: right">
==========================================================================================*/
function txt_onkeyup(objeto)
{
	var sTexto = objeto.value;
	var sValor = "";
	var vVirgula = "";
		
	for(var i = 0; i < sTexto.length; i++)
	{
		if (sTexto.substring(i, i+1) == ",")
		{
			vVirgula = sTexto.substring(i, sTexto.length);
			break;
		}
		if (sTexto.substring(i, i+1) != ".")
		{
			sValor = sValor + sTexto.substring(i, i+1);
		}
	} 
	
	sTexto = "";
	vPonto = false;
	if (sValor.length > 3)
	{
		if((sValor.length % 3) == 0)
		{
			for(var i = 0; i < sValor.length; i = i + 3)
			{
				if (vPonto == false)
				{
					sTexto = sTexto + sValor.substring(i, i +3);
					vPonto = true;
				}
				else
				{
					sTexto = sTexto + "." + sValor.substring(i, i +3);
				}
			}
		}
		else
		{
			for(var i = sValor.length; i > 0; i = i - 3)
			{
				if (vPonto == false)
				{
					sTexto = sValor.substring(i, i - 3) + sTexto;
					vPonto = true;
				}
				else
				{
					sTexto =  sValor.substring(i, i - 3) + "." + sTexto;
				}
			}
		}
		objeto.value = sTexto + vVirgula;	
	}
	else
	{
		objeto.value = sValor + vVirgula;
	}
}

/*==========================================================================================
Efeito de botão nas imagens
==========================================================================================*/
function ItemClicked(item)
{
	if(this.sliding)
		return;
	item.style.border="2 inset #ffffff";
}

/*==========================================================================================
Efeito de botão nas imagens
==========================================================================================*/
function OverItems(item)
{
	if(this.sliding)
		return;
	item.style.border="2 outset #ffffff";
}

/*==========================================================================================
Efeito de botão nas imagens
==========================================================================================*/
function OutItems(item)
{
	if(this.sliding)
		return;
	item.style.border="0 none black";
}

/*==========================================================================================
Efeito de botão nas imagens
==========================================================================================*/
function ItemSelected(item)
{
	if(this.sliding)
		return;		
	item.style.border="1 outset #ffffff";
}

/*==========================================================================================
Coloca todo o texto digitado em "maiúsculo".
Ex:
<input type="text" name="txtNome" onkeypress="UCase()">
==========================================================================================*/
function UCase()
{
	var x = new String();
	
	x = String.fromCharCode(event.keyCode)
	x = x.toUpperCase();
	event.keyCode = x.charCodeAt(0);
}

/*==========================================================================================
Coloca todo o texto digitado em "minúsculo"
Ex:
<input type="text" name="txtNome" onkeypress="LCase()">
==========================================================================================*/
function LCase()
{
	var x = new String();
	
	x = String.fromCharCode(event.keyCode)
	x = x.toLowerCase();
	event.keyCode = x.charCodeAt(0);
}

/*==========================================================================================

==========================================================================================*/
function validadata(dateString, flagObrigatorio, Campo) {
        
        var strData = new String();
	    strData = dateString;
        vntData = strData.split("/");
        
        erro=0
        
        if (flagObrigatorio) {
            if (dateString.length==0) {
                alert('O campo "' + Campo + '" é obrigatório.');
                return false;
                }
        }        
        else {
           if (dateString.length==0) {
               return true;
               }
        }

        if (vntData[2] < 4) {
           // if (!mask(dateString,"##/##/##")) {erro=2}
		   alert('No campo "' + Campo + '" informar ano com quatro dígitos.');
           return (false);
           }
        else {
           if ( !(mask(dateString,"##/##/####") || mask(dateString,"#/#/####") || mask(dateString,"##/#/####") || mask(dateString,"#/##/####") )  ) {erro=3}
           }
           
        
        if (erro!=0) 
           {
             alert('O campo "' + Campo + '" não está no formato data.');
             return (false);
           }
                
                
        Ano=vntData[2];
        
        Mes=vntData[1];
        
        Dia=vntData[0];
        
        
        var dateVar = new Date(vntData[2], vntData[1]-1,vntData[0]);
        
        if (Dia!=dateVar.getDate()) {erro=4};
        if (Mes!=dateVar.getMonth()+1) {erro=5};

        
        if ((dateVar.getYear()!= Ano) && (Ano!="1900"))
        {
           {
					 if (Ano > 100) // 4 digitos
					 	{
					 	 if ((dateVar.getYear()<10))
                {if (Ano-2000!=dateVar.getYear()) {erro=6}}
             else
                {if (Ano-1900!=dateVar.getYear()) {erro=7}}
             }
           }  
        } 
        if (erro!=0) {
                alert('O campo "' + Campo + '" não está no formato data.');
                return false;
                };
        return true;
}
function mask (InString, Mask) {

        LenStr = InString.length;
        LenMsk = Mask.length;
        if ((LenStr==0) || (LenMsk==0))
                return(false);
        if (LenStr!=LenMsk)
                return(false);
        TempString=""
        for (Count=0; Count<=InString.length; Count++) {
                StrChar = InString.substring(Count, Count+1);
                MskChar = Mask.substring(Count, Count+1);
                if (MskChar=='#') {
                        if(!isNumberChar(StrChar))
                                return(false);
                }
                else if (MskChar=='?') {
                        if(!isAlphabeticChar(StrChar))
                                return(false);
                }
                else if (MskChar=='!') {
                        if(!isNumOrChar(StrChar))
                                return(false);
                }
                else if (MskChar=='*') {
                }
                else {
                        if (MskChar!=StrChar)
                                return(false);
                }
        }
        return (true);
}

function isAlphabeticChar (InString) {

        if (InString.length!=1)
                return (false);
        InString=InString.toLowerCase();
        RefString="abcdefghijklmnopqrstuvwxyz";
        if (RefString.indexOf (InString.toLowerCase(), 0)==-1)
                return (false);
        return (true);
}

function isNumberChar (InString) {

        if (InString.length!=1)
                return (false);
        RefString="1234567890,";
        if (RefString.indexOf (InString, 0)==-1)
                return (false);
        return (true);
}

function isNumOrChar (InString) {

        if (InString.length!=1) 
				return (false);
        InString=InString.toLowerCase();
        RefString="1234567890abcdefghijklmnopqrstuvwxyz";
        if (RefString.indexOf (InString, 0)==-1)
                return (false);
        return (true);
}


function Vazio0(v)
{
	if (v.length == 0) return true;
	
	for (i=0; i<v.length; i++) if ((v.charAt(i) != ' ') && (v.charAt(i) != '0')) return false;
	return true;
}

function Vazio(sAux)
{
var v = new String(sAux);
	
	if (v.length == 0) return true;
	
	for (i=0; i<v.length; i++) if ((v.charAt(i) != ' ')) return false;
	return true;
}


function validanumero(InString, flObrigatorio, Tamanho, Campo) {
	if (Vazio0(InString)) {
	   if (flObrigatorio) {	
		   alert('O campo "' + Campo + '" é obrigatório.');
		   return false;
		   }
	   else
	       {return true}
	   }
	StrMask = "";
	if (Tamanho==0) {
		for (Count=1; Count<=InString.length; Count++)
			{ StrMask = StrMask + "#"; }
		}
	else
		{
		for (Count=1; Count<=Tamanho; Count++)
			{ StrMask = StrMask + "#"; }
		}
	if (!mask(InString, StrMask)) {
		if (Tamanho==0) 
			alert('O campo "' + Campo + '" deve ser numérico e inteiro.');
		else
			alert('O campo "' + Campo + '" deve ser numérico, inteiro e ter até ' + Tamanho + ' caracteres.');
		return false;
		}
	return true;
}


function ContaItem(Item,Tamanho)
{
var x;

  Tamanho = Tamanho + 1;
  
 	x=Item.value;
 	if (x.length>Tamanho-1) 
	{
	Item.value = Item.value.substring(0,Tamanho);
	}
}

 function mascData(obj,evento) {  
                    var strObj = new String(obj.value)  
                    var tamanho = strObj.length  
                    if(evento.keyCode==9) return(true)  
                    if(evento.keyCode==13) return(true)  
                    if(tamanho>5)return;  
                    if((evento.keyCode > 95 && evento.keyCode < 106) || (evento.keyCode > 47 && evento.keyCode < 58)) {  
                         if( (evento.keyCode != 193) && (evento.keyCode != 111) && (evento.keyCode != 191)) {  
                              var strObj = new String(obj.value)  
                              var tamanho = strObj.length  
                              if(evento.keyCode != 37 && evento.keyCode !=8 ) {  
                                   if (tamanho==2) strObj = strObj + "/"  
                                   if (tamanho==5) strObj = strObj + "/"  
                                   obj.value = strObj  
                                   return(true)  
                              }  
                         } else return(false)  
                    } else if(evento.keyCode==8 || evento.keyCode==46) {   
                         return(true)   
                    } else return(false)  
               }





function validaemail(emailString, flagObrigatorio) {
if (emailString.length==0) {
   if (flagObrigatorio) { 
   		//alert('O campo "e-mail" deve ser informado.')
   		return false; 
		}
   else { return true; }
   }
tmpContaArroba=0
tmpContaPonto=0
for (Count=0; Count<=emailString.length; Count++) {
	StrChar = emailString.substring(Count, Count+1);
	if (StrChar=="@") { tmpContaArroba++; }
	if (StrChar==".") { tmpContaPonto++; }
    }
tmpErro=false;
if (tmpContaArroba!=1) tmpErro=true;
if (tmpContaPonto==0) tmpErro=true;
if (tmpErro) {
   //alert('O e-mail digitado não é válido.')
   return false
   }
return true;
}

//Função para Cálculo do Digito do CPF/CNPJ
function DigitoCPFCNPJ(numCIC) {
var numDois = numCIC.substring(numCIC.length-2, numCIC.length);
var novoCIC = numCIC.substring(0, numCIC.length-2);
if (numCIC.length!=14) {return false;}
switch (numCIC.length)
{
 case 11 :
  numLim = 11;
  break;
 case 14 :
  numLim = 9;
  break;
 default : return false;
}
//
var numSoma = 0;
var Fator = 1;
for (var i=novoCIC.length-1; i>=0; i--) {
 Fator = Fator + 1;
 if (Fator > numLim) {
  Fator = 2;
 }
 numSoma = numSoma + (Fator * Number(novoCIC.substring(i, i+1)));
}
numSoma = numSoma/11;
var numResto = Math.round( 11 * (numSoma - Math.floor(numSoma)));
   if (numResto > 1) {
 numResto = 11 - numResto;
   }
   else {
 numResto = 0;
   }
   //-- Primeiro dígito calculado.  Fará parte do novo cálculo.
   //--
   var numDigito = String(numResto);
   novoCIC = novoCIC.concat(numResto);
   //--
numSoma = 0;
Fator = 1;
for (var i=novoCIC.length-1; i>=0; i--)
{
 Fator = Fator + 1;
 if (Fator > numLim) {Fator = 2;}
 numSoma = numSoma + (Fator * Number(novoCIC.substring(i, i+1)));
}
	numSoma = numSoma/11;
	numResto = numResto = Math.round( 11 * (numSoma - Math.floor(numSoma)));
   if (numResto > 1)
   {numResto = 11 - numResto;}
   else
   {numResto = 0;}
//-- Segundo dígito calculado.
numDigito = numDigito.concat(numResto);
//
if (numDigito == numDois)
{return true;}
else
{return false;}
}
//--< Fim da Função >--

function LoadCity(obj,strValue)
{
	window.execScript("KillObjects(" + obj + ",true)","Javascript");
	window.frameAux.location = "LoadCity.asp?UF=" + strValue + "&Obj=" + obj;
}

function LoadCityFromID(obj,strUF,strId)
{
	window.execScript("KillObjects(" + obj + ",true)","Javascript");
	window.frameAux.location = "LoadCityFromID.asp?UF=" + strUF + "&Obj=" + obj + "&id=" + strId;
}

function KillObjects(Obj,blnKillHeader)
{
var i;
var x;
var z = 1;
		if (blnKillHeader==true) {z = 0;}
    x = Obj.length;
    for(i=x;i>z;i--)
    {Obj.options[i-1] = (null,null);}
}

function ValidaTelefone(objDD, objTel, blnObrigatorio)
{
var strDD  = new String(objDD.value);
var strTel = new String(objTel.value);

	if (blnObrigatorio)
	{
		if ((Vazio(objDD.value)) || (Vazio(objTel.value)))
		{
			alert("Os Campos DDD e nº. do Telefone são obrigatórios...");
			objDD.focus();
			return false;
		}
	}
	if ((!Vazio(objDD.value) && (strDD.length!=2)))
	{
		alert("O Campo DDD é obrigatório(2 dígitos)...");
		objDD.focus();
		return false;
	}

	if ((!Vazio(objDD.value)) && (!Vazio(objTel.value) && (strTel.length<8)))
	{
		alert("O nº do Telefone é obrigatório(8 dígitos)...");
		objTel.focus();
		return false;
	}

	if ((Vazio(objDD.value)) && (!Vazio(objTel.value)))
	{
		alert("Informe nº DDD do Telefone...");
		objDD.focus();
		return false;
	}

	if ((!Vazio(objDD.value)) && (Vazio(objTel.value)))
	{
		alert("Informe nº do Telefone...");
		objTel.focus();
		return false;
	}
	return true;
}

function Preview(strUrl)
{
var win;
	if (!Vazio(strUrl)){win = window.open(strUrl,"janPreview","directories=no,fullscreen=no,top=0,left=0,height=550,width=790,location=no,menubar=no,resizable=no,scrollbars=yes,border=no,status=no,titlebar=no,toolbar=no", false);}
	return win;
}

function toHTML(strText)
{
   var r, re;
   var ss = strText;
   re = /¥/g;							     //Create regular expression pattern.
   r = ss.replace(re, "<br>"); //Replace "A" with "The".
   return(r);                  //Return string with replacement made.
}

function toTEXT(strText)
{
   var r, re;
   var ss = strText;
   re = /¥/g;							     //Create regular expression pattern.
   r = ss.replace(re, "\n");   //Replace "A" with "The".
   return(r);                  //Return string with replacement made.
}

function mascHora(obj,evento)
{ 
var entra = true;
     if(evento.keyCode==9)  return(true);
     if(evento.keyCode==13) return(true);
     if((evento.keyCode > 95 && evento.keyCode < 106) || (evento.keyCode > 47 && evento.keyCode < 58))
     { 
          if(evento.keyCode == 191 && evento.shiftKey) entra=false; 
          if(entra)
          { 
               var strObj = new String(obj.value) 
               var tamanho = strObj.length;
               if(tamanho==5) obj.value = "" 
               if(evento.keyCode != 37 && evento.keyCode !=8  && tamanho==2)
               { 
                    if (tamanho==2) strObj = strObj + ":" 
                    obj.value = strObj 
                    return(true) 
               } 
          } 
          else return(false)
     } else 
			if(evento.keyCode==8 || evento.keyCode==46 || evento.keyCode==9)
			{return(true);} 
			else 
				return(false);
}

function mascNum(obj,evento,podeNegativo,casasDecimais) {

//	alert(evento.keyCode);
 if(String(obj.isSelected).toString() == "undefined") obj.isSelected = false;
 if(String(obj.contDecimal).toString() == "undefined") obj.contDecimal = 0
 if(String(obj.isPosVirgula).toString() == "undefined") obj.isPosVirgula = "N"
 
 var isDecimal = false
 if(String(obj.value).indexOf(',') == -1) {
  obj.contDecimal = 0
  obj.isPosVirgula = "N"
 }
 if(evento.keyCode==13) return(true)
 
 casasDecimais = new String(casasDecimais)
 if(casasDecimais != "undefined") {
  if(!isNaN(casasDecimais)) {
   if(parseFloat(casasDecimais) > 0) {
    isDecimal = true
    casasDecimais = parseFloat(casasDecimais)
   }
  } else isDecimal = false
 } else isDecimal = false
 
 if(isDecimal && (evento.keyCode == 188 || evento.keyCode == 110)) {
  obj.isPosVirgula = "S"
  return(true)
 }
 
 if(isDecimal && obj.isPosVirgula == "S") {
  if(evento.keyCode == 8) {
   obj.contDecimal--
   return(true)
  }
  if(obj.contDecimal > casasDecimais-1) {
   if(obj.isSelected && (evento.keyCode==46 || evento.keyCode==8)) { obj.isSelected=false;obj.contDecimal=0;obj.isPosVirgula = "N";obj.value="";obj.focus();return(false);}
   if(evento.keyCode==36) { obj.select();obj.isSelected=true;return(false) }
   else if(evento.keyCode==37) { obj.select();obj.isSelected=true;return(false) }
   else return(false)
  } else obj.contDecimal++
 }
 
 if((evento.keyCode > 95 && evento.keyCode < 106) || (evento.keyCode > 47 && evento.keyCode < 58) || (evento.keyCode == 8) || (evento.keyCode == 35) || (evento.keyCode == 36) || (evento.keyCode == 46) || (evento.keyCode == 9) || (podeNegativo && evento.keyCode==189)){
  return(true)
 }else{
  return(false)
 }
}
 
function mascValor(obj,evento) {
 if(evento.keyCode==13) return(true)
 if((evento.keyCode > 95 && evento.keyCode < 106) || (evento.keyCode > 47 && evento.keyCode < 58) || (evento.keyCode == 8) || (evento.keyCode == 35) || (evento.keyCode == 36) || (evento.keyCode == 46) || (evento.keyCode == 9) || (evento.keyCode == 110) || (evento.keyCode == 188)){
  return(true)
 }else{
  return(false)
 }
}

function KillOptions(Obj)
{
var i;
var x;
    
    x = Obj.length;
    for(i=x;i>0;i--)
    {Obj.options[i-1]= (null,null);}
}

function Go(oObj, sUrl)
{
	if ((document.frmCadastro.lstLoja.value!="") || (oObj.id=="0"))
	{
	 document.frmCadastro.hdAcao.value	= "";
	 document.frmCadastro.action		= sUrl;
	 document.frmCadastro.submit();
	}
	else
	{
		alert("Selecione uma loja...");
		document.frmCadastro.lstLoja.focus();
		
	}
}

function AddOption(sObj, strValue, strText)
{
var		myOption;
					myOption=document.createElement('OPTION');
					myOption.text  = strText;
					myOption.value = strValue;
					sObj.add(myOption);
}

function Maximize() 
{
try{
	window.resizeTo(screen.availWidth,screen.availHeight);
	window.moveTo(0,0);
   }
catch(e)
   {}
}
  