function contextoIfs(){
  args = arguments[0];

  excluir=document.getElementById('excluir');
  confirmar=document.getElementById('confirmar');
  
  permissao=document.getElementById('permissao_ifs').value;
  objRef= args[0];

  if (permissao.match(args[1]) == null){
    objRef.style.display="none";
  }
  if (permissao.match(/d/) == null){
    excluir.style.display="none";
  }
  
  if (permissao.match(/w/) == null){
    confirmar.style.display="none";
  }
}

function registerEventHandler(){
  if (window.event == null) {
    var args = new Array(arguments.length);
    var fname = arguments[0];
    args[0] = Function.prototype.ref;
    for(var i=1; i<arguments.length; i++) {
        args[i] = arguments[i]; 
    }    
    return window[fname](args);  
  }
  return true;
}

function callBackHandler(ref,operation) {
  Function.prototype.ref=ref;
  var func = new Function(operation);
  this.run = func;
}

function fireEventHandlers(){
  buttons = document.getElementsByTagName('button');
  
  for (var i = 0, l = buttons.length; i < l; i++) {
    operacoes = buttons[i].onclick + "";
    operacoes = operacoes.replace(/\n/g, "");
    operacoes = operacoes.replace(/function anonymous\(\)\{/gi, "");
    operacoes = operacoes.replace(/\}/gi, "");  
    
    funcoes = operacoes.split(';');

    for (var z=0; z<funcoes.length; z++) {
      funcao = funcoes[z];
      if (funcao.match(/registerEventHandler/) != null) {
        
        var callHandler = new callBackHandler(buttons[i],funcao);
        callHandler.run();
        
      }
        
    }   
 
  }

}

//Desabilitar os campos do formulário de manutenção de atividades
function desabilita_campos_manutencao_atividade(){
    //document.frmatividade.abertura.disabled = true;
    document.frmatividade.atividade.disabled = true;
    //document.frmatividade.matricula.disabled = true;
    document.frmatividade.quantidade.disabled = true;
    document.frmatividade.valor.disabled = true;
    document.frmatividade.formapagamento.disabled = true;
}


  function ajaxRequest(link,divName,params){
    
    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP")

    xmlhttp.open('POST',link,false)
    xmlhttp.onreadystatechange=function() {
      if (xmlhttp.readyState==4) {
          translate();
      }
    }        
    xmlhttp.setrequestheader("Content-Type", "application/x-www-form-urlencoded");   
    xmlhttp.send(params)

    function translate(){
      resultado = xmlhttp.responseBody;
      
      resultado = BinaryToString(resultado);      
      if(typeof divName == 'string'){             
        objdiv=document.getElementById(divName);
      } else {                
          objdiv = divName;
      }

      if (typeof resultado != 'undefined') {
          objdiv.innerHTML = resultado;
      } else {
          objdiv.innerHTML = '';
      }
  }

}
function openSearchFilter(aspName,divName){
    showHideDiv('document.all[\'' + divName + '\']');    

    link=getBaseHref() + aspName;    
    
    iframe = document.getElementById(divName).childNodes(0);
    if (iframe.src == "") {
        iframe.src = link;
    }
    
    Esconde('document.all[\'progresso\']');
}

function ajaxRequestWidget(obj,divName,aspName){
    link=getBaseHref() + aspName;
    parametros='param=' + obj.value;
    ajaxRequest(link,divName,parametros);
}

function editDocument(file)	{
/*
    try {
        EditDocumentButton = new ActiveXObject("SharePoint.OpenDocuments.1");
        EditDocumentButton.EditDocument(file);
    } catch(e){
        try {
            objWord = new ActiveXObject("Word.Application");
            objWord.Visible = true;
            objWord.Documents.Open(file);
        } catch(x) {
            return "abrir";
            //location.href(file);
        }
    }
*/
  try {
    objWord = new ActiveXObject("Word.Application");
    objWord.Visible = true;
    objWord.Documents.Open(file);
  } catch(x) {
     return "abrir";
     //location.href(file);
  }
  return "";
}

/*
  01.03.2006 - Carla
  Ex: queryString=xxx.asp?codigo=10&descricao=thema&ano=2006
      param=getParameter(queryString,"descricao") 
      resultado da variavel param = thema
*/
function getParameter ( queryString, parameterName ) {
  var parametro = parameterName + "=";
  if ( queryString.length > 0 ) {
    begin = queryString.indexOf ( parametro );
    if ( begin != -1 ) {
      begin += parametro.length;
      end = queryString.indexOf ( "&" , begin );
      if ( end == -1 ) {
        end = queryString.length
      }
      return unescape ( queryString.substring ( begin, end ) );
    }
    return "null";
  }
  return "null";
} 
/*
  20.01.06 - eduardo
  apresenta qualquer erro de javascript na aplicacao 
*/
/*
var arrErrors = new Array();
window.onerror = function ( strErr, strURL, strLineNumber ) {
  strMess =  strErr +
             "\n\nNº linha: " + strLineNumber +
             "\nURL: " + strURL;
  arrErrors.push(strMess);
  alert(arrErrors.join("\n__________\n\n"));
  //link = getBaseHref() + "/inc/onerror.asp" 
  //parametros = "msg=" + strErr + " - " + strURL + " linha: " + strLineNumber;
  //link = getBaseHref() + "/inc/onerror.asp?" + parametros;
  
  //ajaxIso(link,parametros);
  return true;
}
*/
/* -------------------------------------------------------------------
// TabNext()
// Function to auto-tab phone field
// Arguments:
//   obj :  The input object (this)
//   event: Either 'up' or 'down' depending on the keypress event
//   len  : Max length of field - tab when input reaches this length
//   next_field: input object to get focus after this one
// -------------------------------------------------------------------*/
function TabNext(obj,event,len,next_field) {
	if (event == "down") {
		field_length=obj.value.length;
		}
	else if (event == "up") {
		if (obj.value.length != field_length) {
			field_length=obj.value.length;
			if (field_length == len) {
				next_field.focus();
			}
		}
	}
}

function validaIdentidade(categoria,validacao){
    if (getCertificateId() != "") {      
     document.forms[0].submit();   
    }    
}    
function getCertificateId(){
    try {    
        var Settings = new ActiveXObject("CAPICOM.Settings");
        var SignedData = new ActiveXObject("CAPICOM.SignedData");
        var Signer = new ActiveXObject("CAPICOM.Signer");
     } catch(e){        
        alert("Componente necessário para assinatura digital não está instalado no sistema!\nA instalação automática do Jasix será iniciada a seguir.");
        location.href(getBaseHref() + 'jzx$/jasix-1.0.exe');
        return "";
    } 
    try {
        Settings.EnablePromptForCertificateUI = true;
        
        //dummy data just to show the certificate store
        SignedData.Content = "xx";
        
        SignedData.Sign(Signer, true, 0);
        
        //retrieve the signer certificate
        Certificates = SignedData.Certificates
        Signers = SignedData.Signers
        
        Signer = Signers.Item(1)
        Certificate = Signer.Certificate
        
        //IssuerName + SerialNumber = unique certification id
        issuerName = Certificate.IssuerName;
        serialNumber = Certificate.SerialNumber;
        id = issuerName + serialNumber;
        document.write("<input type=hidden name=jzx$_conteudo value='"+ id + "'>");
        document.write("<input type=hidden name=jzx$_issuerName value='"+ issuerName + "'>");
        document.write("<input type=hidden name=jzx$_serialNumber value='"+ serialNumber + "'>");
        return id; 
    } catch(e){        
        Esconde('document.all[\'progresso\']');
        //alert("Operação cancelada! " + e);
        alert("Operação cancelada!");
        return "";
    }
}
function valida_CPF(obj){
  s = obj.value;
  if ( null == s || "" == s ) { 
	return true; 
  }
  if (s.trim().length != 11) {
	alert('CPF deve ter 11 dígitos.');
	obj.focus();
	return false;
  }
  if (isNaN(s)) {
  alert('Digite o campo somente com números. CPF contém 11 dígitos.');
  obj.focus();
  return false;
 }
 var i;
 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){
  alert('CPF inválido.');
  obj.focus();
  return false;
 }         
    d1 = 11 - (d1 % 11);
    if (d1 > 9) d1 = 0;         
 if (dv.charAt(0) != d1) {
  alert('CPF inválido.'); 
  obj.focus();
  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) {
     alert('CPF inválido.');
	 obj.focus();
     return false;
    }
    return true;    
}

function valida_CGC(obj){
   s = obj.value;
   if ( null == s || "" == s ) { 
	return true; 
  }
  if (s.trim().length != 14) {
	alert('CNPJ deve ter 14 dígitos.');
	obj.focus();
	return false;
  }
 if (isNaN(s)) {
  alert('Digite o campo somente com números. CNPJ contém 14 dígitos.');
  obj.focus();
  return false;
 }
 var i;
 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) {
  alert('CNPJ inválido.'); 
  obj.focus();
  return false;
 }
 d1 = 11 - (d1 % 11);
 if (d1 > 9) d1 = 0;
 if (dv.charAt(0) != d1){
  alert('CNPJ inválido.');
  obj.focus();
  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){
  alert('CNPJ inválido.'); 
  obj.focus();
  return false;
 }
 return true;
}

function Valida_CgcCpf_Submit(field,valor) {	
  info = field.value;
  if ( info.length > 0 ) {
    field.focus();
    if ( info.length == 11 || info.length == 14 ){
      if (info.length == 11) {
        if (valida_CPF(field) == false) {
          //alert('Cpf Inválido');
          return false;
        }
      }
    else {
      if (valida_CGC(field) == false) {
        //alert('CNPJ Inválido');                                                                        
        return false;
        }
      }
    }
  else {
    alert('Digite o campo somente com números. CPF contém 11 dígitos e CNPJ contém 14 dígitos.');
    return false;
    };
    SubmitToolbar(valor,'N','');
  }
  return true;
}


function Valida_CgcCpf(field) {	
        info = field.value;
		
//        field.focus();
  
        if ( info.length == 11 || info.length == 14 ){
		    
                if (info.length == 11) {
                        if (valida_CPF(field) == false) {
                                //alert('Cpf Inválido');
                                return false;
                        }
                }
                else {
                        if (valida_CGC(field) == false) {
                                //alert('CNPJ Inválido [function]');                        
                                return false;
                        }
               }
        }else if(info.length != 0){
                alert('Digite o campo somente com números. CPF contém 11 dígitos e CNPJ contém 14 dígitos.');
				field.focus();
                return false;
			
        }
        
        return true;
}



function doLogin(){
    switch (get_FormatoJanela()) {
        case 'FRAMES': {
            parent.Frame_Header.SubmitToolbar('login','N','');
            break;
        }
        case 'MDI': {
            window.close();
            Sair_Sistema('Sim');
            break;
        }
        case 'MODAL': {
            window.close();
        }
    }
}
function getBaseHref(){
    if (typeof document.forms[0] != 'undefined' &&
        typeof document.forms[0].baseHref != 'undefined') {
		return document.forms[0].baseHref.value;
    }
}

function ajax(link,parametros,id_div) {
    var resultado ="";
    var url = link
    if (link == "") {
        window.close();
    } else {

       //Criar o objeto xmlHTTP
        try{
            xmlhttp = new XMLHttpRequest();
        }catch(ee){
            try{
               xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
            }catch(e){
               try{
                  xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
               }catch(E){
                  xmlhttp = false;
               }
            }
        }
       //xmlhttp = new ActiveXObject("Msxml2.XMLHTTP")
       
       xmlhttp.open('POST',link,false)
        xmlhttp.onreadystatechange=function() {
            if (xmlhttp.readyState==4) {
                translate();
            }
        }
        //xmlhttp.setrequestheader("Accept","image/gif, image/jpeg, image/pjpeg, text/plain, text/html, */*");
        xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
        //xmlhttp.setRequestHeader("charset","ISO-8859-1"); 
        //xmlhttp.setrequestheader('Content-Type', 'text/html');
        //alert(link);
        //alert(parametros);
        xmlhttp.send(parametros)
        function translate(){
            resultado = xmlhttp.responseText;
            //var obj = document.getElementById('T'+id_div);
            //obj.innerHTML = resultado;
        }
        document.open();
        document.write(resultado);
    }
}

function ajaxIso(link,parametros) {
    var resultado ="";
    if (link == "") {
        window.close();
    } else {
        xmlhttp = new ActiveXObject("Msxml2.XMLHTTP")
        xmlhttp.open('GET',link,true)        
        xmlhttp.onreadystatechange=function() {
            if (xmlhttp.readyState==4) {
                translate();
            }
        }
        //xmlhttp.setrequestheader("Accept","image/gif, image/jpeg, image/pjpeg, text/plain, text/html, */*");
        xmlhttp.setrequestheader("Content-Type", "text/html;charset=iso-8859-1");
        //xmlhttp.setRequestHeader("charset","ISO-8859-1"); 
        //xmlhttp.setrequestheader('Content-Type', 'text/html');
        //alert(link);
        //alert(parametros);
        xmlhttp.send(parametros)
        function translate(){
            resultado = xmlhttp.responseText;
        }
        document.open();
        document.write(resultado);
    }
}


/*
 * sobrescreve o location.replace para incluir o indice_atual na url
 * sem a necessidade de alteracao de todos os arquivos asp...
*/
//redirecionar = location.replace;

//versaoIE = navigator.userAgent.substring(46,49);
//alert(versaoIE);
location.replace = function (url) {
  ia = document.getElementsByName('indice_atual').item(0);
  
  if (ia != null && ia.value != "" && url.indexOf("indice_atual") == -1) {
	//alert(ia.value);
	url = url + "&indice_atual=" + ia.value;
	url = url + "&contexto_pai=" + getContexto(); 
  }
  
  /*
	if (typeof document.forms[0] != 'undefined' &&
		typeof document.forms[0].indice_atual != 'undefined' && 
		document.forms[0].indice_atual.value != "" && 
		url.indexOf("indice_atual") == -1) {   
		url = url + "&indice_atual=" + document.forms[0].indice_atual.value;
		url = url + "&contexto_pai=" + getContexto(); 
	}
  */
	//redirecionar(url);
	// alterado por Ricardo em 17/02/2010
	//location.href=url
	window.location.href=url;
}

function setIndiceListaLink(link){
    //showHideDiv('document.all[\'progresso\']');
    if (link.indexOf("mostra_doc") >= 0 || link.indexOf("selecao_termo") >= 0
        || link.indexOf("codigo_ifs") >= 0) {
        Nova_Janela_Externa(link,null,0,0,'','N');
    } else {
        //var url = link.split("?");
        //alert(url[1]);        
        location.replace(link);
        //ajax(url[0],url[1]);
    }        
}

function retornaPagina() {
	switch (get_FormatoJanela()) {
				case 'FRAMES': {
					history.back();
				}
				case 'MDI': {
					window.close();
				}
	}
}
function FiltroIncluiLocal(link){
	//recebe um link e o quebra para pegar as informações necessárias

	string = link.substring(link.indexOf("cdlocalfisico"),link.length);
	cdlocalfisico = string.substring(string.indexOf("=")+ 1,string.indexOf("&"));
	
	//alert(cdlocalfisico);
	//string = link.substring(link.indexOf("unidade"),link.length);
	//unidade = string.substring(string.indexOf("=")+ 1,string.indexOf("&"));
	
	//string = link.substring(link.indexOf("descricao"),link.length);
	//descricao = string.substring(string.indexOf("=")+ 1,string.indexOf("&"));
		
	parent.document.forms[0].cdlocalfisico.value = cdlocalfisico;
	parent.document.forms[0].AcaoToolbar.value   = "IncluiLocal";
		
	//Fecha o Div ao recuperar o cadastro
	Divisao('parent.document.all[\'FiltroIncluiLocal\']');		
		
	parent.document.forms[0].submit();
}

function mostrar(link,nome_janela,altura,largura,propriedades) {
	propriedades = 'resizable=yes,' + propriedades;
	
	if ((get_FormatoJanela() == 'FRAMES' && 
	   ((window.name.toUpperCase() != 'MENU') && (nome_janela.toUpperCase() != 'MENU')) &&
	   (window.name.toUpperCase() != 'AJUDA') && (nome_janela.toUpperCase() != 'AJUDA')))
	{
		//parent.Frame_Dados.location.replace(link);
		parent.Frame_Dados.location.href = link;
		//alert(link);
	}else {
		if (altura==0 && largura==0){
			propriedades = propriedades + ' height='+screen.availHeight+',width='+screen.availWidth+',top=0,left=0'
		} else {
			var winl = (screen.width - largura) / 2;
			var wint = (screen.height - altura) / 2;			
			propriedades = propriedades + 'height='+altura+',width='+largura+',top='+wint+',left='+winl			
		
			window.open(link,nome_janela,propriedades)
		} 
	}
}

function abrir(endereco){
	window.open(endereco)
}

//Realiza o controle de cookies com JavaScript
//10/06/02
//-----------------------------------------------------------------------------

String.prototype.trim = function(){return this.replace(/(^\s*)|(\s*$)/g, "")}
function parseCookie(name) {
  var str = ""
  var a = document.cookie.split(";")
  for (var i=0; i<a.length; i++) {
    a[i] = a[i].trim()
    if (a[i].substring(0,name.length) == name)
      str = a[i].substring(name.length+1)
  }
  var a = str.split("&")
  var obj = new Object()
  if (str.length)
    for (i=0; i<a.length; i++) {
      temp = a[i].split("=")
      obj[temp[0]] = temp[1]
    } return obj
}

function addToCookie(cookieName,key,value) {
  var cookies = parseCookie(cookieName)
  cookies[key] = value
  var d = new Date()
  d.setFullYear(d.getFullYear()+1)
  var cookieStr = cookieName + "="
  for (var item in cookies)
    cookieStr += item + "=" + cookies[item] + "&"

  cookieStr = cookieStr.substring(0,cookieStr.length-1)
  cookieStr = cookieStr + "; expires=" + d.toUTCString()
  cookieStr = cookieStr + "; path=/"
  document.cookie = cookieStr
}

function getCookie(name,key) {
  var cookies = parseCookie(name)
  return cookies[key]
}

//-----------------------------------------------------------------------------

//Grava no cookie utilizado no sistema as informacoes referentes a altura e largura da
//janela central do frame redimensiondo o menu e o frame de cabecalho 12/06/02
function controle_frames(){
	if (typeof parent.document.getElementById("Frame_Menu") != 'undefined'){		
		
		largura_window = screen.availWidth;
		altura_window = screen.availHeight;
		
		resolucao_help = screen.availHeight;
					
		altura = parent.Frame_Header.document.body.clientHeight+2;
		largura = parent.Frame_Menu.document.body.clientWidth+2;
		
		altura_help = parent.Frame_Help.document.body.clientHeight+2;

		addToCookie('PolisPW','alturaframe' + altura_window ,altura);
		
		if (parent.document.getElementById("Frame_Central").cols!='0.1%,*') addToCookie('PolisPW','larguraframe'+ largura_window ,largura);
		
		if (parent.document.getElementById("Frame_Dados_Help").rows != '*,0.1%') addToCookie('PolisPW','framehelp'+ resolucao_help ,altura_help);
		
		set_LarguraMenuPadrao();
	}
}

//Busca do cookie as informacoes referentes a altura e largura do menu e do cabecalho
//para redimensionar a tela... 12/06/02
function set_PosFrames(){
	if (typeof parent.Frame_Menu != 'undefined'){
	
		largura_window = screen.availWidth;
		altura_window = screen.availHeight;
		
		//resolucao_help = screen.availHeight;
		
		largura = getCookie('PolisPW','larguraframe' + largura_window);
		altura = getCookie('PolisPW','alturaframe' + altura_window);
		//altura_help = getCookie('PolisPW','framehelp' + resolucao_help);
				
		if (typeof largura != 'undefined') parent.document.getElementById("Frame_Central").cols=largura +',*';
		if (typeof altura != 'undefined')  parent.document.getElementById("Frame_Principal").rows=altura +',*';
		//if (typeof altura_help != 'undefined')  parent.Frame_Dados_Help.rows='*,'+ altura_help;
	}
}


//centraliza na tela um layer mesmo fazendo resize da tela.
//deve ser utilizado no evento onResize da tag Body
function centraliza_div(nome_div,nome_iframe) {

	objDivAux = document.getElementById(nome_div);
	objiFrame= document.getElementById(nome_iframe);
    
	if ((typeof objDivAux != 'undefined') && (typeof objiFrame != 'undefined')) {        
		switch (get_FormatoJanela()) {
			case 'FRAMES': {
				objDivAux.style.left = (parent.Frame_Dados.document.body.offsetWidth  - parseInt(objiFrame.offsetWidth))/2;                
			}
			case 'MDI': {                
				objDivAux.style.left = (document.body.offsetWidth  - parseInt(objiFrame.offsetWidth))/2;
			}
		}
	}
 }


//Funcao que faz com que o cabecalho de uma tabela acompanhe
//o scroll dado pelo usuario... utilizado no arquivo lista_tabela.xsl
function organiza_cabecalho_tabela(){
    //alert('sem arg ' +objDiv.obj);
	objDiv.obj = headerTR;
	objDiv.obj.style.top = objDiv.scrollTop-2 + "px";
}
/*
  atualizado 19.04.04
  permite que em uma mesma janela possam existir mais de uma
  lista_tabela... evitando problemas de scroll
*/
function organiza_cabecalho_tabela(objDiv,header){
    //objDiv.obj = header;
    //alert(header.style);
	//objDiv.obj.style.top = objDiv.scrollTop-2 + "px";
    if (typeof header.style != 'undefined') {
        header.style.top = objDiv.scrollTop-2 + "px";
    }        
    
}	

function teste_div(ObjDiv){ 
//	alert(body.clientHeight);


}
//Funcoes para definir o controle do menu para ganhar mais area util na tela...
//Data: 04/06/2002
//------------------------------------------------------------------------------------------------

function set_LarguraMenuPadrao(){
  if (typeof parent.document.getElementById("Frame_Menu") != 'undefined'){
    if (parent.document.getElementById("Frame_Central").cols!='0.1%,*') {
      parent.Frame_Menu.document.forms[0].LarguraMenuPadrao.value = parent.Frame_Menu.document.body.clientWidth+2;
    }
  }
  return true;
}

 
function get_LarguraMenuPadrao(){
  if (typeof parent.document.getElementById("Frame_Menu") != 'undefined'){
	return parent.Frame_Menu.document.getElementById("LarguraMenuPadrao").value;
  }
  return true;
}

function showHideMenu() {
  if (parent.document.getElementById("Frame_Central").cols=='0.1%,*') {
    parent.document.getElementById("Frame_Central").cols=get_LarguraMenuPadrao() + ',*';
  }
  else {
    parent.document.getElementById("Frame_Central").cols='0.1%,*';
  }
  return true;
}

function showHideHelp(BaseHref,linkTitulo,linkHelp,linkImagem,maximizar) {
	switch (get_FormatoJanela()) {
		case 'MDI': {
			Nova_Janela_Externa(BaseHref+ linkHelp + '?titulo='+ linkTitulo +'&conteudo='+ linkHelp +'&imagem='+linkImagem,'Ajuda',0,0,'scrollbars=Yes','N')
            return;
		}
        case 'MODAL': {
			Nova_Janela(BaseHref+ linkHelp + '?titulo='+ linkTitulo +'&conteudo='+ linkHelp +'&imagem='+linkImagem,'Ajuda',0,0,'scrollbars=Yes','N')
			break;
		}
        case 'DIV':{
            Frame_Dados_Help = parent.parent.Frame_Dados_Help;
            Frame_Help = parent.parent.Frame_Help;
            break;
        }
		case 'FRAMES': {
            if (typeof parent.Frame_Dados_Help == 'undefined') {
                Nova_Janela(BaseHref+ linkHelp + '?titulo='+ linkTitulo +'&conteudo='+ linkHelp +'&imagem='+linkImagem,'Ajuda',0,0,'scrollbars=Yes','N')
                return;
            } else {
                Frame_Dados_Help = parent.Frame_Dados_Help;
                Frame_Help = parent.Frame_Help;
            }
        }            
	}    
    if (get_FormatoJanela() != 'MDI' & get_FormatoJanela() != 'MODAL') {
        if (maximizar == 'Sim') {
            Frame_Dados_Help.rows='*,100%';
            Frame_Help.location.href = BaseHref+ linkHelp + '?titulo='+ linkTitulo +'&conteudo='+ linkHelp +'&imagem='+linkImagem;
        } 
        else {              
            if (Frame_Dados_Help.rows == '*,0.1%') {
                resolucao_help = screen.availHeight;
                altura_help = getCookie('PolisPW','framehelp' + resolucao_help);
                if (typeof altura_help == 'undefined') { altura_help='25%' };
    
                Frame_Dados_Help.rows = '*,' + altura_help;
                //parent.Frame_Help.location.href = BaseHref+ 'help.asp?titulo='+ linkTitulo +'&amp;conteudo='+ linkHelp +'&amp;imagem='+linkImagem;
                Frame_Help.location.href = BaseHref+ linkHelp + '?titulo='+ linkTitulo +'&conteudo='+ linkHelp +'&imagem='+linkImagem;
            }
            else {
                Frame_Dados_Help.rows='*,0.1%';
            }
        }
           
    }
}

function showHideHelpOnLoad(BaseHref,linkTitulo,linkHelp,linkImagem,maximizar) {
	switch (get_FormatoJanela()) {
		case 'MDI': {
			break;
		}
        case 'MODAL' : {
            break;
        }
		case 'FRAMES': {
            if (typeof parent.Frame_Dados_Help != 'undefined'){
                if (parent.Frame_Dados_Help.rows != '*,0.1%') {
					resolucao_help = screen.availHeight;
					altura_help = getCookie('PolisPW','framehelp' + resolucao_help);

					if (typeof altura_help == 'undefined') altura_help='25%';

					parent.Frame_Dados_Help.rows = '*,' + altura_help;
					//parent.Frame_Help.location.href = BaseHref+ 'help.asp?titulo='+ linkTitulo +'&amp;conteudo='+ linkHelp +'&amp;imagem='+linkImagem;
					parent.Frame_Help.location.href = BaseHref+ linkHelp + '?titulo='+ linkTitulo +'&amp;conteudo='+ linkHelp +'&amp;imagem='+linkImagem;
				}
				else {
					parent.Frame_Dados_Help.rows='*,0.1%';
				}
			}
		}	
	}
}


//------------------------------------------------------------------------------------------------

function get_FormatoJanela(){    
	/*
    if (typeof parent.window.opener != 'undefined'){
        return 'MDI';
    } else if (window.parent.name != ''){
        return 'DIV';
    } else if (typeof window.returnValue != 'undefined'){
        return 'MODAL';
    } else {
	return 'FRAMES';
    }
    */
    
    //alert(window.name);
    //if (typeof parent.window.opener != 'undefined'){
    //alert('aqui ' + window.opener.name);
    //}
    
    //alert(window.opener.top.name)

	return 'FRAMES';

	aux = 'unknown';

    if (typeof top.opener != 'undefined'){
        aux = typeof top.opener.parent.name;
        //aux = typeof top.frames[0].name
    }

    if ((window.name != "" && window.name.toUpperCase() == 'MENU') || (typeof window.opener != 'undefined' && typeof window.opener != 'object' && typeof window.opener.name != 'unknown' && window.opener.name.toUpperCase() == 'MENU')){
        return 'MDI';
    } else if (window.parent.name != '' && (aux != 'unknown')){
        //alert(parent.top.opener);
        return 'DIV';
    } else if (typeof window.returnValue != 'undefined'){
        return 'MODAL';
	}else {
		return 'FRAMES';
	}

}

/*
function get_FormatoJanela(){
    if (typeof parent.document.frames['ifrm_portal'] !='undefined'){
        return 'PORTAL';
    }
    else if (typeof parent.Frame_Menu == 'undefined'){
        return 'MDI';	}
    else {
		switch (parent.Frame_Menu.document.forms[0].FormatoJanela.value) {	 
			case 'FRAMES': 
			{	
				return 'FRAMES';
			};
		}		
	}
}
*/

//Limpa todos os campos visiveis na tela...
function limpa_campos(){
	for (i = 0; i < document.forms[0].elements.length; i++) {		
		if ((document.forms[0].elements[i].type == "text") ||
			(document.forms[0].elements[i].type == "checkbox") ||
			(document.forms[0].elements[i].type == "radio") ||
			(document.forms[0].elements[i].type == "select-one") ||
			(document.forms[0].elements[i].type == "textarea"))	{

			if (document.forms[0].elements[i].type == "radio") {
				document.forms[0].elements[i].checked = false;	
			} 
			else if (document.forms[0].elements[i].type =="select-one"){
				document.forms[0].elements[i].options[0].selected = true;			
			}
			else {
				document.forms[0].elements[i].value = "";
			}
		}
	}		

}

// se "campo" está vazio, limpa "campo_codigo"
function verifica_preenchimento(campo, campo_codigo) {

  inputfield = document.getElementById(campo);
  hiddenfield = document.getElementById(campo_codigo);
  
var fLength = inputfield.value.length;
if ( fLength == 0 ) {
   hiddenfield.value = "";
}

}
// Pega os valores dos campos de tela e monta a expressao no sql...
// A chamada para esta funcao se encontra na declaracao do botao localizar da Toolbar.
// Suporte para TIPOS
//    numerico
//    numero
//    numeros
//    data
//    texto
function monta_stringSQL() {
var
  condicao,info,tipo,delimiter,operador,expressao,campo,aux;

  expressao = '';
  condicao = ' where ';
  aux='';  
  
  document.forms[0].StringSQL.value = '';
  
  for (i = 0; i < document.forms[0].elements.length; i++) {
    if (((document.forms[0].elements[i].type == "text") ||
         (document.forms[0].elements[i].type =="radio") ||
	   (document.forms[0].elements[i].type =="select-one")||
	   (document.forms[0].elements[i].type =="select-multiple")
	   ) &&
	   (document.forms[0].elements[i].value != "")){
	   
	   
	   
	   if (((document.forms[0].elements[i].type != "radio") ||
	        (document.forms[0].elements[i].checked)) &&
		  (document.forms[0].elements[i].value != "null")) {
		 
		  
		  //delimitador p/aspas simples
		  delimiter = String.fromCharCode(39);
		  operador = '=';
		  tipo = document.forms[0].elements[i].title;
		  if (tipo.toLowerCase() == '') {
		    tipo = 'texto';
		  }
		  campo = document.forms[0].elements[i].name;
		  info = document.forms[0].elements[i].value;
		 // alert('tipo ='+tipo);
          if (tipo.toLowerCase() == 'criterio') {
              continue;
          }
		  
		  if(document.forms[0].elements[i].type =="select-multiple"){
	   		    
		   var opcoes = document.forms[0].elements[i].options;
		   var valores_select, virgula;
		   valores_select= '';
		   virgula= '';
		   for (var x = 0; x < opcoes.length; x++) {
				if (opcoes[x].selected) {
				   valores_select = valores_select+virgula+opcoes[x].value;
				   virgula=',';
				}	   
		   }
		   info =valores_select;
	       //alert(document.forms[0].elements[i].name+' in ('+valores_select+')');
		}
		

		  aux = campo.substr(campo.length-2,2).toLowerCase();
		
		  if (info.indexOf("%") >= 0 ) {
		    operador=' like   ';
		  }

		  if ((campo.indexOf("CGC") >= 0 )||(campo.indexOf("CPF") >= 0 )) {
		    if (info.length == '#############'.length )
		    { campo = ' CPF'; }
		    else if (info.length == '@@@@@@@@@@@@@@@@'.length )
		    { campo = ' CGC'; }
		    else {
		      alert(info.length +'!ttt='+ '@@@@@@@@@@@@@@@@'.length +'!='+ '#############'.length);
			break;
		    }
		  }
		  
		  if ((aux == '_i') && (document.forms[0].elements[i+1].value !="")){
		    operador=' between ';
            if (tipo.toLowerCase() == 'data') {
                info = info + ' 00:00:00';
            }
		  }
		  
		  if ((aux == '_i') || (aux == '_f')) {
		    campo = campo.substr(0,campo.length-2);            
		  }
		   
		  if ((aux == '_f') && (document.forms[0].elements[i-1].value !="")) {
		    operador = '';
		    campo = '';
            if (tipo.toLowerCase() == 'data') {
                info = info + ' 23:59:59';
            }
		  }
          //alert (tipo.toLowerCase());
          //se o tipo do campo nao for numero coloca aspas simples na string          
		  if (tipo.toLowerCase() != 'numero' && tipo.toLowerCase() != 'data' && tipo.toLowerCase() != 'numeros') {
		    info = delimiter + info + delimiter;
		  }

		   if (aux == '_x') {
		    campo = campo.substr(0,campo.length-2);
		    operador = ' contains( ' + campo + ',' + info + ') > 0 ';
		    info = '';
			tipo = 'contextual';
		    campo = '';
		  }
		  
		  //se eh data verifica se o proximo campo esta preenchido para fazer
		  //um between. obs - campos de intervalo devem ficar um ao lado do
		  //outro.
	 if (tipo.toLowerCase() == 'data') {
               info_aux = info;
               
               info = delimiter + info + delimiter;
               info = 'to_date(' + info + ',' + delimiter + 'dd/mm/rrrr hh24:mi:ss' + delimiter + ')';
               
               info_ant = document.forms[0].elements[i-1].value;
               campo_ant = document.forms[0].elements[i-1].name;           
               aux_ant = campo_ant.substr(campo_ant.length-2,2).toLowerCase();
               if ((operador.trim() !='between' && aux != '_f') ||(aux_ant == '_i' && info_ant == '')) {
                   info_i = delimiter + info_aux + ' 00:00:00' + delimiter;                   
                   info_i = 'to_date(' + info_i + ',' + delimiter + 'dd/mm/rrrr hh24:mi:ss' + delimiter + ')';
                   
                   info_f = delimiter + info_aux + ' 23:59:59' + delimiter;
                   info_f = 'to_date(' + info_f + ',' + delimiter + 'dd/mm/rrrr hh24:mi:ss' + delimiter + ')';
                   
                   operador =  operador=' between ';
                   info = info_i + ' and ' + info_f;
               }
		  }		  
		  if (tipo.toLowerCase() == 'numeros') {
		     info = ' ('+info+') ';
			 operador = ' IN ';
		  }
		  //Clausula da consulta
          //alert(' Campo ['+ campo +'] Tipo ['+ tipo +']');

		  		  
		  if (( tipo.toLowerCase() == 'texto' ) && (aux != '_f')) {
		    campo = 'UPPER('+campo+')';			
			info = info.toUpperCase();
			//alert (tipo.toLowerCase());
		  }
		  else {
		   campo = campo;
	      }
		 
		 expressao = expressao + condicao + campo + operador + info;
   		 condicao = ' and ';
		// alert ('2 '+expressao);
		  
	   }
	  
	   document.forms[0].StringSQL.value = expressao;
    }
  }
  //alert('expressão ['+ expressao + ']');
}


//Habilita todos os campos da tela... util para passagem de parametros no submit
//pois se o campo esta desabilitado seu valor nao eh passado pra url no submit.
function habilita_campos(){
    for (i = 0; i < document.forms[0].elements.length; i++) {		
        document.forms[0].elements[i].disabled=false;
    }
}

// desabilita todos os campos da tela
function desabilita_campos(){
	for (i = 0; i < document.forms[0].elements.length; i++) {		
		if (document.forms[0].elements[i].type != 'button') {
            document.forms[0].elements[i].disabled=true;
        }            
	}		
}


//funcao generica para habilitar a inclusao de registros em formularios
function Submit_Incluir(){
  Contexto('Nao');
  ContextoToolbar('Incluir');
  limpa_campos();
  SubmitToolbar('Incluir','N','');
  return true;	
}
function Valida_Intervalo_Data(DtIni,DtFim) {
  data_inicial = DtIni.value
  data_fim = DtFim.value
  if (data_inicial == "" || data_fim =="") {
    return false;
  }
  var data_inicial = new Date(data_inicial.substring(6,10),
                              data_inicial.substring(3,5)-1,
                              data_inicial.substring(0,2));
  var data_fim = new Date(data_fim.substring(6,10),
                          data_fim.substring(3,5)-1,
                          data_fim.substring(0,2));
  if (Date.parse(data_inicial) > Date.parse(data_fim)) {
	alert('Intervalo de Datas Inválido.');
	//DtIni.select();
	//DtIni.focus();
    DtFim.select();
    DtFim.focus();
	return false;
  }
  return true;
}

function Valida_Intervalo_Hora(DtIni, DtFim, HoraIni, HoraFim,campo) {
  data_inicial = DtIni.value;
  data_final = DtFim.value;
		
  hora_inicial = HoraIni.value.substring(0, 2)+ '' +  HoraIni.value.substring(3,5);
  hora_final = HoraFim.value.substring(0,2)  +  '' + HoraFim.value.substring(3,5);
		
  if (data_inicial == '' || data_final == '' ) {
    return false;	
  }
  if (hora_inicial == '' || hora_final == '' ) {
    return false;	
  }
  if (Date.parse(data_inicial) == Date.parse(data_final)) {
    if (hora_final < hora_inicial) {
      alert('Hora Inicial não pode ser maior que hora final nesta data');
    //HoraIni.select();
    //HoraIni.focus();
    //$(campo).select();
      $(campo).focus();
      $(campo).value='';      
      return false;
    }
  }
  return true;
}

//Função que controla o numero maximo de caracteres que o usuario pode digitar em um campo
//especialmente um textArea que nao possui controle de tamanho
//A função recebe um tamanho maximo e o campo(this)
function tamMax(max, campo) { 	
  numCaracteres = campo.value.length;
  if (numCaracteres > (max-1)) {
    event.keyCode = 8;
  }
}

function Valida_Numero(field) {
	var valid = "0123456789"
	var ok = "yes";
	var temp;
	for (var i=0; i<field.value.length; i++) {
		temp = "" + field.value.substring(i, i+1);
		if (valid.indexOf(temp) == "-1") ok = "no";
	}	
	if (ok == "no"){
		alert('Valor informado inválido.');
		field.select();
		field.focus();
		return false;
   }
   else return true;
}

function validaMoedaRegExp(field) {
if (field.value=='') {
  return true;
}
var NumericRegExp =/^\d+\,([\d]{2})?$/;
var regex = new RegExp(NumericRegExp);
if (!regex.test(field.value)){
  alert('Valor informado inválido.');
  field.select();
  field.focus();
  return false;
}
else {
  return true;
}
}

function Valida_Moeda(field) {
	var valid = "0123456789,"
	var ok = "yes";
	var temp;
	for (var i=0; i<field.value.length; i++) {
		temp = "" + field.value.substring(i, i+1);
		if (valid.indexOf(temp) == "-1") ok = "no";
	}
	if (ok == "no") {
		alert('Valor informado inválido.');
		field.focus();
		field.select();
		return false;
   }
   else return true;
}

function Valida_Quantidade(field) {
	var valid = "0123456789."
	var ok = "yes";
	var temp;
	for (var i=0; i<field.value.length; i++) {
		temp = "" + field.value.substring(i, i+1);
		if (valid.indexOf(temp) == "-1") ok = "no";
	}
	if (ok == "no") {
		alert('Quantidade informada inválida.');
		field.focus();
		return false;
   }
   else return true;
}

function Valida_Formulario_Aviso(){
	if (document.forms[0].elements[i].type != "select-one"){
		document.forms[0].elements[i].select();
	}
	
	if (typeof ObjDiv != 'undefined'){
		 	ObjDiv.style.visibility ='hidden' ;} 
	
	document.forms[0].elements[i].focus();
	return false;
}

function Valida_Formulario(){
	var info;
	//alert('Valida_Formulario');
	if (document.forms[0] != null){
		for (i = 0; i < document.forms[0].elements.length; i++) {		
			if ((document.forms[0].elements[i].type == "text") || 
				(document.forms[0].elements[i].type == "password") ||
				(document.forms[0].elements[i].type == "textarea") ||
				(document.forms[0].elements[i].type == "select-one")){
			
				nome_campo=document.forms[0].elements[i].alt
				
				switch (document.forms[0].elements[i].title) {
					case 'Data': 
						{
							if (document.forms[0].elements[i].value == '') {
								alert('Data obrigatória.');
								return Valida_Formulario_Aviso();
							} else {
								if (!convert_date(document.forms[0].elements[i])){
									return Valida_Formulario_Aviso();
								};								
							}							
						};
					break;
					case 'Texto': 
						{
							if (document.forms[0].elements[i].value == '') {
								if (nome_campo!='')
									alert('O campo ' + nome_campo + ' é obrigatório.');
								else
									alert('Texto obrigatório.');
								return Valida_Formulario_Aviso();
							}						
						};
					break;
					case 'Select': 
						{
							if (document.forms[0].elements[i].value == 'null') {
								alert('Seleção na lista obrigatória.');
								return Valida_Formulario_Aviso();
							}						
						};
					break;
					case 'Numero': 
						{
							if (document.forms[0].elements[i].value == '') {
								if (nome_campo!='')
									alert('O campo ' + nome_campo + ' é obrigatório.');
								else
									alert('Número obrigatório.');
								return Valida_Formulario_Aviso();
							} else {
								if (!Valida_Numero(document.forms[0].elements[i])){
									return Valida_Formulario_Aviso();
								}
							}								
						};
					break;
					case 'Numerico': 
						{
							if (document.forms[0].elements[i].value == '') {
								if (nome_campo!='')
									alert('O campo ' + nome_campo + ' é obrigatório.');
								else
									alert('Informação numérica obrigatória.');
								return Valida_Formulario_Aviso();
							} else {
								if (!Valida_Numero(document.forms[0].elements[i])){
									return Valida_Formulario_Aviso();
								}
							}								
						};
					break;					
					case 'Moeda':  
						{
							if (document.forms[0].elements[i].value == '') {
								alert('Valor obrigatório.');
								return Valida_Formulario_Aviso();
							} else {
								if (!Valida_Moeda(document.forms[0].elements[i])){
									return Valida_Formulario_Aviso();
								}
							}								
						};
					break;
					case 'Quantidade':  
						{
							if (document.forms[0].elements[i].value == '') {
								alert('Quantidade obrigatória.');
								return Valida_Formulario_Aviso();
							} else {
								if (!Valida_Quantidade(document.forms[0].elements[i])){
									return Valida_Formulario_Aviso();
								}
							}								
						};
					break;
					case 'CGC_CPF_OBRIGATORIO':  
					case 'CNPJ_CPF_OBRIGATORIO':  
						{ 
						info = document.forms[0].elements[i];
                                                if ( Valida_CgcCpf(info) == false) {
                                                        return Valida_Formulario_Aviso();
							}	
						};
					break;
					case 'CGC_CPF':  
					case 'CNPJ_CPF':  
						{ 
						info = document.forms[0].elements[i];
                        valor = document.forms[0].elements[i].value;
						if ( valor.length > 0){
                          if ( Valida_CgcCpf(info) == false) {
                            return Valida_Formulario_Aviso();
                            }
                          }
						};
					break;
				}			
			}
		} 	
	}
	return true;
}

function Controla_Menu(){	
	switch (get_FormatoJanela()) {
		case 'MDI': {
			location.replace('menu.asp?Acao=EncerrarSessao');
			Fecha_Janela();
		}	
	}
}

//Mostra ou esconde um item Div... utilizado no arquivo erros.asp
function showHideDiv() {
	var i, visStr, args, theObj;
	args = showHideDiv.arguments;
	ObjDiv = eval(args[0]);
	
    if (typeof ObjDiv == 'object' && typeof ObjDiv.style != 'undefined') {
        if (ObjDiv.style.visibility == 'hidden') visStr='visible'
        else visStr='hidden'    
        ObjDiv.style.visibility = visStr;
    }   
}

//Mostra ou esconde um item Div... utilizado no arquivo erros.asp
function posiciona_div() {
	var i, visStr, posStr, args, theObj;
	args = posiciona_div.arguments;
	ObjDiv = eval(args[0]);
    if (typeof ObjDiv == 'object') {
        if (ObjDiv.style.position == 'absolute') {
		visStr='visible';
		posStr='static';
    	}
        else { 
		visStr='hidden';
		posStr='absolute';
	}
        ObjDiv.style.visibility = visStr;
	ObjDiv.style.position = posStr;
    }
}

function Divisao() {
	//nao mostrar a barra de progresso quando for chamado por DIV com Iframe
	showHideDiv('document.all[\'progresso\']');
	var args;
	args = Divisao.arguments;
    var x;
    x = args[0];
    //se for algo como document.all entrar, mantem a compatibilidade
    //com chamadas antigas
    if (args[0].indexOf(".all") > 0) {
        ObjDiv = eval(args[0]);    
    }
    else {
        ObjDiv = document.getElementById(args[0]); 
    }        
		
	if (ObjDiv.style.visibility == 'hidden') 
		ObjDiv.style.visibility='visible';
	else  ObjDiv.style.visibility='hidden'
}

function Esconde() {
	var args;
	args = Esconde.arguments;
	ObjDiv = eval(args[0]);
	if (typeof ObjDiv != 'undefined') {
		ObjDiv.style.visibility='hidden'
	}
}

function Mostra() {
	var args;
	args = Mostra.arguments;
	ObjDiv = eval(args[0]);

	if (typeof ObjDiv != 'undefined') {
		ObjDiv.style.visibility='visible'
	}
}



//--------------------------------------------------------------------------------------//

function ColocaFocus() {
	var indiceatual;
	var indicetab;
	var indicecampo;
	var indiceinicial;
	indicetab = 99999;
	indiceinicial = 99999;
	
	indicecampo = document.forms[0].IndiceCampo.value;
	if (indicecampo == ""){				
		indicecampo=0
	}
	
	if (document.forms.length > 0) {
		var field = document.forms[0];
		for (i = 0; i < field.length; i++) {
			if ((field.elements[i].type == "text") || (field.elements[i].type == "textarea") || (field.elements[i].type.toString().charAt(0) == "s")) {
				if ((document.forms[0].elements[i].tabIndex > indicecampo) && 
				   (document.forms[0].elements[i].tabIndex < indicetab)){			 
					
					indicetab = document.forms[0].elements[i].tabIndex  
					indiceatual = i;
					document.forms[0].elements[indiceatual].focus();
					document.forms[0].IndiceCampo.value = indicetab;
				}
				if (document.forms[0].elements[i].tabIndex ==10) {
					indiceinicial = i;
				}
         	}         	
	    }
	    if (indicetab == 99999){
			document.forms[0].IndiceCampo.value=10;
			document.forms[0].elements[indiceinicial].focus();			
			}
   	}
}

//Fecha todas as janelas do sistema, em qualquer tela do sistema...
function Sair_Sistema(Confirmar){
  if (typeof window.returnValue != 'undefined') {
    top.window.close();
    return true;
  }
  switch (get_FormatoJanela()) {
	case 'MDI': {
	  if (Confirmar== "Sim"){
		if (!confirm('Confirma saída do Sistema? Todas as janelas serão fechadas!')){
		  return false;
		}
		if (window.name.toUpperCase() != 'MENU') {
  		  window.opener.Sair_Sistema('Nao');			
		}
	  }			
	  Fecha_Janela();
  	  window.close();
	}
	case 'FRAMES': {
      //top.window.opener = top;
      //top.window.open('','_parent');
      //top.window.close();
	  top.window.close();
	}
  }	
  return true;		
}

// Desabilita o bota direito do mouse
function click(e) {
	if (document.all) {
		if (event.button == 2) {
			alert('Desabilitado');
			return false;
		}
	}
	return true;
}

// Array que recebe todas as janelas criadas para depois conseguir fecha-las...
var janelas = new Array();
var nome_janelas = new Array();


// Abre uma nova janela... e coloca cada nova janela sendo um elemento do array assim, 
// pode-se ter o controle sobre todas as janelas abertas...
function Nova_Janela(link,nome_janela,altura,largura,propriedades,valida) {
    if (nome_janela=='FiltroLeis') {
    //testes eduardo - web2 30.03
    /*
        win2 = new Window(nome_janela, {className: "dialog", title: "e-governo", 
								  bottom:50, left:0, width:300, height:500, 
								  resizable: true, url: link, showEffectOptions: {duration:3}})
        */
    }
	if (get_FormatoJanela() ==  'MDI') {
		Nova_Janela_Externa(link, nome_janela,altura,largura,propriedades,valida);
        return true;	
	}
    // adiciona o indice_atual para controle de historico se nao existir no link
	//alert('funcoes.js  Nova_janela ANTES link['+link+']');
    if (typeof document.forms[0] != 'undefined' &&
        typeof document.forms[0].indice_atual != 'undefined' && 
        document.forms[0].indice_atual.value != "" && 
        link.indexOf("indice_atual") == -1) {            
            link = link + "&indice_atual=" + document.forms[0].indice_atual.value;
            link = link + "&contexto_pai=" + getContexto();
    }
	//alert('funcoes.js  Nova_janela DEPOIS link['+link+']');	
	propriedades = 'resizable=yes,' + propriedades;
	if (valida.toUpperCase() == "S"){
		if (!Valida_Formulario()) {
			return false;
		} 
	}
  /*
    nova janela pensa que esta em contexto mdi, mas ele na real eh um div que eh
    aberto como filtro por uma transacao, tipo filtro de cadastro geral na abertura
    de protocolo, essa logica eh util para controle de bread crumb...
    */    
    //if (typeof parent.window.opener == 'undefined' && get_FormatoJanela() == 'MDI' && nome_janela.toUpperCase() != 'MENU'){
        //alert(get_FormatoJanela());
      if (get_FormatoJanela() == 'DIV' || (get_FormatoJanela() == 'MODAL' && nome_janela.toUpperCase() != 'AJUDA')){
        location.replace(link);        
        return false;
      }    
	 if ((get_FormatoJanela() == 'FRAMES' && 
	   ((window.name.toUpperCase() != 'MENU') && (nome_janela.toUpperCase() != 'MENU')) &&
	   (window.name.toUpperCase() != 'AJUDA') && (nome_janela.toUpperCase() != 'AJUDA')))
	{
		//parent.Frame_Dados.location.replace(link);
		if (typeof parent.Frame_Dados == 'undefined') {
            location.href = link;
        }
        else {
            parent.Frame_Dados.location.href = link;
        }
		//alert(link);
	} else {
		if (altura==0 && largura==0){
            largura = screen.availWidth * 0.9;
            altura = screen.availHeight * 0.9;
            
			//propriedades = propriedades + ' height='+screen.availHeight+',width='+screen.availWidth+',top=0,left=0'
		}// else {
			var winl = (screen.width - largura) / 2;
			var wint = (screen.height - altura) / 2;
			propriedades = propriedades + ' height='+altura+',width='+largura+',top='+wint+',left='+winl	
		//}		
		//Controla a forma de abertura de janela para todas as situacoes no sistema.
		//Como regra geral todas as janelas sao filhas do Menu possibilitando o 
		//fechamento das janelas em cascata
		if ((window.parent) && (window.parent.name != '') &&
		   ((window.name.toUpperCase() != 'MENU') && (nome_janela.toUpperCase() != 'MENU'))){
						
            parent.window.opener.janelas[parent.window.opener.janelas.length] = 
			parent.window.opener.open(link,nome_janela,propriedades);
			
			parent.window.opener.nome_janelas[parent.window.opener.nome_janelas.length] = 
			nome_janela;
            
            parent.window.Esconde('document.all[\'progresso\']');
		} 
		else {
			janelas[janelas.length] = window.open(link,nome_janela,propriedades); 
            nome_janelas[nome_janelas.length] = nome_janela;				
		}
	}
  return;
}

function Nova_Janela_Externa(link,nome_janela,altura,largura,propriedades,valida) {
    if (altura==0 && largura==0){
        largura = screen.availWidth * 0.9;
        altura = screen.availHeight * 0.9;
    }        
    var winl = (screen.width - largura) / 2;
    var wint = (screen.height - altura) / 2;
    
    propriedades = 'resizable=yes,' + propriedades;
    propriedades = propriedades + ' height='+altura+',width='+largura+',top='+wint+',left='+winl	

    Esconde('document.all[\'progresso\']');
    janelas[janelas.length] = window.open(link,getTimeMillis(),propriedades); 
    nome_janelas[nome_janelas.length] = nome_janela;
}
function Nova_Janela_Independente(link,nome_janela,altura,largura,propriedades,valida) {
    if (altura==0 && largura==0){
        largura = screen.availWidth;
        altura = screen.availHeight;
    }        
	propriedades = 'scrollbars=no, status=no, location=no, menubar=no, titlebar=no, directories=no, fullscreen=yes,' + propriedades;
    // propriedades = 'resizable=yes,' + propriedades;
    //           propriedades = propriedades + ' height='+altura+',width='+largura+',top='+wint+',left='+winl	
	propriedades = 'channelmode=yes, fullscreen=yes, scrollbars=no, status=no'
	window.open(link,nome_janela,propriedades); 
}


/*
function Nova_Janela(link,nome_janela,altura,largura,propriedades,valida) {
	propriedades = 'resizable=yes,' + propriedades;
	if (valida.toUpperCase() == "S"){
		if (!Valida_Formulario()) {
			return false;
		} 
	}
	
    if (get_FormatoJanela() == 'PORTAL'){
        location.href = link;        
    }	
	else if ((get_FormatoJanela() == 'FRAMES' && 
	   ((window.name.toUpperCase() != 'MENU') && (nome_janela.toUpperCase() != 'MENU')) &&
	   (window.name.toUpperCase() != 'AJUDA') && (nome_janela.toUpperCase() != 'AJUDA')))
	{
		//parent.Frame_Dados.location.replace(link);
		parent.Frame_Dados.location.href = link;
		//alert(link);
	}else {
		if (altura==0 && largura==0){
			propriedades = propriedades + ' height='+screen.availHeight+',width='+screen.availWidth+',top=0,left=0'
		} else {
			var winl = (screen.width - largura) / 2;
			var wint = (screen.height - altura) / 2;			
			propriedades = propriedades + 'height='+altura+',width='+largura+',top='+wint+',left='+winl	
		}		
		//Controla a forma de abertura de janela para todas as situacoes no sistema.
		//Como regra geral todas as janelas sao filhas do Menu possibilitando o 
		//fechamento das janelas em cascata
		if ((window.parent) && (window.parent.name != '') &&
		   ((window.name.toUpperCase() != 'MENU') && (nome_janela.toUpperCase() != 'MENU'))){
			
			parent.window.opener.janelas[parent.window.opener.janelas.length] = 
			parent.window.opener.open(link,nome_janela,propriedades);
			
			parent.window.opener.nome_janelas[parent.window.opener.nome_janelas.length] = 
			nome_janela
		} 
		else {
			janelas[janelas.length] = window.open(link,nome_janela,propriedades); 
					nome_janelas[nome_janelas.length] = nome_janela;				
		}
	}
		
}
*/

// Fecha todas as janelas ativas no sistema. 
// Deverá fechar as janelas DEPENDENTES
function Fecha_Janela(){			
	
	switch (get_FormatoJanela()) {
		case 'MDI': {
			for (var i = 0; i < janelas.length; i++)
			{	
				if (!janelas[i].closed) {
					janelas[i].Fecha_Janela();
					janelas[i].close();
				}
			}
		}
		case 'FRAMES': {
			//location.replace('about:blank');
			// abriu a janela como um dialog modal
            if (typeof window.returnValue == 'undefined') {
                //location.href= 'about:blank';
                location.href= getBaseHref() + 'blank.htm';
            }
		}
	}	
}

function Fecha_Help(){			
//	alert('"'+get_FormatoJanela()+'"="MDI"');	]
	switch (get_FormatoJanela()) {
		case 'MDI': {
				window.close();
		break;
		}
        case 'DIV': {
            window.close();
            break;
		}
		case 'FRAMES': {
                parent.Frame_Dados_Help.rows='*,0.1%';
		};
	}	
}


// Seleciona ou deseleciona todos os itens de um conjunto
// de checkbox pelo metodo da dll sListaTabela
function Checkbox_Todos_Nenhum(formulario) {	
	var todos;
	if (formulario.ck_Todos.checked){
		todos='Sim';	
	}
	else{
		todos='Nao';
	}
	
	for (i = 0; i < formulario.elements.length; i++) {
		if ((formulario.elements[i].type == "checkbox") && 
			(formulario.elements[i].name != "ck_Todos")) {
			if (todos == 'Sim'){
				formulario.elements[i].checked = true;
			}
			else {
				formulario.elements[i].checked = false;
			}
		} 
	}
}

function Retorna_Selec(formulario, texto_confirma){
var strSql="";

	for (i = 0; i < formulario.elements.length; i++) {
		if ((formulario.elements[i].type == "checkbox") && 
			(formulario.elements[i].name != "ck_Todos") &&
			(formulario.elements[i].checked)) {
		
			if (strSql == "") {
				strSql=formulario.elements[i].value;		
			}
			else {
				strSql= strSql + ',' + formulario.elements[i].value;
			}			
		}
	}	
	if (texto_confirma != "" && strSql != ""){
		if (!confirm(texto_confirma)){
			return false;
		}
	}		

	formulario.cp_retorna_selec.value = strSql;
	formulario.submit();
	return true;
}

function Retorna_SelecStr(formulario,carne){
	var strSql="";
	var elemento ="";

	for (i = 0; i < formulario.elements.length; i++) {
	
		if ((formulario[i].type == "checkbox") && 
			(formulario[i].name != "ck_Todos") &&
			(formulario[i].checked)) {
		
			elemento = "'" + formulario[i].value + "'";
			
			if (strSql == "") {
				strSql= elemento;
            				
			}
			else {
				strSql= strSql + "," + elemento;
		
			}
		}
	}

	formulario.botaocarne.value = carne;
	
	formulario.cp_retorna_selec.value = strSql;
	//formulario.submit();
      SubmitToolbar('Confirmar','N','');
}

function Retorna_Selec_Str2(){
  formulario = document.forms[0];
var strSql="";
    	
	for (i = 0; i < formulario.elements.length; i++) {
		if ((formulario.elements[i].type == "checkbox") && 
			(formulario.elements[i].name != "ck_Todos") &&
			(formulario.elements[i].id != "sem_confirmacao_atual") &&
			(formulario.elements[i].id != "sem_confirmacao_todos") &&
			(formulario.elements[i].checked)) {
			 //alert('nome '+formulario.elements[i].name);			 

			if (strSql == "") {			    
				strSql= "'" + formulario.elements[i].value + "'";
				//alert ('strSql 1 ='+ strSql);  
			}
			else {			    
				strSql = strSql + ", '" + formulario.elements[i].value + "'";
				//alert ('strSql 2 ='+ strSql); 
			}
		}
	}
    //alert ('strSql vai ='+ strSql);
	formulario.cp_retorna_selec.value = strSql;
}



// mesma funcionalidade de Retorna_Selec, apenas para valores do tipo string/char
function Retorna_Selec_Str(formulario, texto_confirma){

var strSql="";

	for (i = 0; i < formulario.elements.length; i++) {
		if ((formulario.elements[i].type == "checkbox") && 
			(formulario.elements[i].name != "ck_Todos") &&
			(formulario.elements[i].checked)) {

			if (strSql == "") {
				strSql= "'" + formulario.elements[i].value + "'";
			}
			else {
				strSql = strSql + ", '" + formulario.elements[i].value + "'";
			}
		}
	}

	if (texto_confirma != "" && strSql != ""){
		if (!confirm(texto_confirma)){
			return false;
		}
	}
		
	formulario.cp_retorna_selec.value = strSql;
	formulario.submit();
  return true;
}

// Mostra um alert na tela, feito para ser chamado atraves do Asp
function ShowMessage(msg){
  alert(msg);
}

// Controla no Item Requisicao a consulta de produtos no 
// evento onblur...
function SubmitBlur(campo,formulario,campo_ant){    
	if (Valida_Numero(campo)) {
		if ((campo.value != '')	&& (campo.value != campo_ant.value)) {									
			//coloca o nome do campo no qual o codigo foi informado para saber de qual
			//campo cdproduto ou nrproduto deve ser executado a consulta
			formulario.onblur.value = campo.name;		
			formulario.submit();
		}
	}	
}	

// Recebe um campo do tipo listbox e retorna o item selecionado
function getListText(campo){		
	for (i=0; i < campo.length;i++) {
		if (campo.options[i].selected) 
			return campo.options[i].text				
	}
  return "";
}

function SubmitAcaoFormulario(Acao,formulario){        
		formulario.action = formulario.action +"?AcaoToolbar=" + Acao + "&contexto_pai=" + getContexto();
		formulario.submit();	
}

function SubmitFormulario(Acao){
	if (Valida_Formulario()){
		document.forms[0].action = document.forms[0].action +"?AcaoToolbar=" + Acao + "&contexto_pai=" + getContexto();
		document.forms[0].submit();	
	}
}

function SubmitDependente(destino){    
    document.forms[0].method='post';
    if (destino!=""){
	document.forms[0].action = destino + "&contexto_pai=" + getContexto();
    }
   document.forms[0].submit();	
}

function SubmitComValidacao(destino){
	if (Valida_Formulario()){
                document.forms[0].method='post';
                if (destino!=""){
        		document.forms[0].action = destino + "&contexto_pai=" + getContexto();
                }
		document.forms[0].submit();		
	}	
}

// Controla o contexto da operacao na toolbar e submete o formulario...
function SubmitToolbar(valor,valida,texto_confirma){
   if (texto_confirma != ""){
       if (!confirm(texto_confirma)){
        return false;
       }
   }
	//habilita_campos();		
	if (valor == "Localizar") { 
        valida = "N";
		texto_confirma = "";
	}
	if (valida.toUpperCase() == "S"){
		if (!Valida_Formulario()) {
			return false;
		} 
	}
	habilita_campos();
    document.forms[0].elements['AcaoToolbar'].value = valor;
    document.forms[0].submit();
	return true;
}

function SubmitToolbar2(valor,valida,texto_confirma){	
	habilita_campos();
	document.forms[0].item("AcaoToolbar").value = valor;
	document.forms[0].submit();
}

function SubmitToolbar3(valor,valida,texto_confirma){	
	habilita_campos();
	parent.document.forms[0].item("AcaoToolbar").value = valor;
	parent.document.forms[0].item("cep_logradouro").value = texto_confirma;
	parent.document.forms[0].submit();
}

function Contexto(valor){
	el = document.getElementsByName('Contexto').item(0)
	el.value=valor;
//	document.forms[0].item("Contexto").value = valor;
}

function ContextoToolbar(valor){
	document.forms[0].item("ContextoToolbar").value = valor;
}

function AcaoToolbar(Acao){
	document.forms[0].item("AcaoToolbar").value = Acao;
}

function getContexto (){
  //alert('getContexto ' + document.getElementsByName('Contexto').item(0).value);
  //alert('getContexto ' + document.getElementsByName('Contexto').item(0).value);
  if (document.getElementsByName('Contexto').item(0) == null){
    return "";
  }
  else {
    return document.getElementsByName('Contexto').item(0).value;
  }
  /*
	if (typeof document.forms[0].Contexto == 'undefined'){
        return "";
    }
    else {
        return document.forms[0].item("Contexto").value;
    }        
  */
}


/******************************************************************
   convert_date()
   
   Function to convert supplied dates to format - dd/mm/yyyy.
	Valid input dates = 
		ddmmyy, ddmmmyy, ddmmyyyy, ddmmmyyyy,
		d/m/yy, dd/m/yy, d/mm/yy, dd/mm/yy, d/mmm/yy, dd/mmm/yy,
		d/m/yyyy, dd/m/yyyy, d/mm/yyyy, dd/mm/yyyy, d/mmm/yyyy, dd/mmm/yyyy
	Valid date seperators =
		'-','.','/',' ',':','_',','
		
	Calls convert_month()
			invalid_date()
			validate_date()
			validate_year()
     
   Author: Simon Kneafsey 
   Email: simonkneafsey@hotmail.com
   WebSite: www.simonkneafsey.co.uk
   Date Created: 4/9/00
   
   Notes: Please feel free to use/edit this script.  If you do please keep my comments and details 
   intact and notify me via a quick Email to the address above.  Enjoy!
*******************************************************************/
function convert_date(field1)
{
var fLength = field1.value.length; // Length of supplied field in characters.
var divider_values = new Array ('-','.','/',' ',':','_',','); // Array to hold permitted date seperators.  Add in '\' value
var array_elements = 7; // Number of elements in the array - divider_values.
var day1 = new String(null); // day value holder
var month1 = new String(null); // month value holder
var year1 = new String(null); // year value holder
var divider1 = null; // divider holder
var outdate1 = null; // formatted date to send back to calling field holder
var counter1 = 0; // counter for divider looping 
var divider_holder = new Array ('0','0','0'); // array to hold positions of dividers in dates
var s = String(field1.value); // supplied date value variable

//If field is empty do nothing
if ( fLength == 0 ) {
   return false;
}

// Deal with today or now
if ( field1.value.toUpperCase() == 'AGORA' || field1.value.toUpperCase() == 'HOJE' || field1.value.toUpperCase() == 'ONTEM' ) {
   
	var newDate1 = new Date();
  
  		if (navigator.appName == "Netscape") {
    		var myYear1 = newDate1.getYear() + 2000;
  		}
  		else {
  			var myYear1 = newDate1.getYear();
  		}
  
	var myMonth1 = newDate1.getMonth()+1;  
	if (field1.value.toUpperCase() == 'ONTEM')
		//{ var myDay1 = newDate1.getDate()-1;}
		//{ var myDay1 = newDate1.valueOf() - (1000 * 60 * 60 * 24); }
	{ 
		var yesterday = new Date(newDate1.valueOf() - 1000 * 60 * 60 * 24); 
		var myDay1 = yesterday.getUTCDate();
		var myMonth1 = yesterday.getUTCMonth() + 1;
		var myYear1 = yesterday.getUTCFullYear();
	}
	else
		{var myDay1 = newDate1.getDate();}
	field1.value = myDay1 + "/" + myMonth1 + "/" + myYear1;
	
	//field1.value = yesterday;
	fLength = field1.value.length;//re-evaluate string length.
	s = String(field1.value)//re-evaluate the string value.
}


//Check the date is the required length
if ( fLength != 0 && (fLength < 6 || fLength > 11) ) {
	invalid_date(field1);
	return false; 
	}

// Find position and type of divider in the date
for ( var i=0; i<3; i++ ) {
	for ( var x=0; x<array_elements; x++ ) {
		if ( s.indexOf(divider_values[x], counter1) != -1 ) {
			divider1 = divider_values[x];
			divider_holder[i] = s.indexOf(divider_values[x], counter1);
		   //alert(i + " divider1 = " + divider_holder[i]);
			counter1 = divider_holder[i] + 1;
			//alert(i + " counter1 = " + counter1);
			break;
		}
 	}
 }

// if element 2 is not 0 then more than 2 dividers have been found so date is invalid.
if ( divider_holder[2] != 0 ) {
   invalid_date(field1);
	return false;   
}

// See if no dividers are present in the date string.
if ( divider_holder[0] == 0 && divider_holder[1] == 0 ) { 
   
		//continue processing
		if ( fLength == 6 ) {//ddmmyy
   		day1 = field1.value.substring(0,2);
     		month1 = field1.value.substring(2,4);
  			year1 = field1.value.substring(4,6);
  			if ( (year1 = validate_year(year1)) == false ) {
   			invalid_date(field1);
				return false; 
				}
			}
			
		else if ( fLength == 7 ) {//ddmmmy
   		day1 = field1.value.substring(0,2);
  			month1 = field1.value.substring(2,5);
  			year1 = field1.value.substring(5,7);
  			if ( (month1 = convert_month(month1)) == false ) {
   			invalid_date(field1);
				return false; 
				}
  			if ( (year1 = validate_year(year1)) == false ) {
   			invalid_date(field1);
				return false; 
				}
			}
		else if ( fLength == 8 ) {//ddmmyyyy
   		day1 = field1.value.substring(0,2);
  			month1 = field1.value.substring(2,4);
  			year1 = field1.value.substring(4,8);
			}
		else if ( fLength == 9 ) {//ddmmmyyyy
   		day1 = field1.value.substring(0,2);
  			month1 = field1.value.substring(2,5);
  			year1 = field1.value.substring(5,9);
  			if ( (month1 = convert_month(month1)) == false ) {
   			invalid_date(field1);
				return false; 
				}
			}
		
		if ( (outdate1 = validate_date(day1,month1,year1)) == false ) {
   			// alert("O valor " + field1.value + " não é uma data válida.\n\r" +  
			// "Informe uma data válida no formato DD/MM/YYYY");
			// field1.focus();
			// field1.select();
			invalid_date(field1);
			return false;
			}

		field1.value = outdate1;
		return true;// All OK
		}
		
// 2 dividers are present so continue to process	
if ( divider_holder[0] != 0 && divider_holder[1] != 0 ) { 	
  	day1 = field1.value.substring(0, divider_holder[0]);
  	month1 = field1.value.substring(divider_holder[0] + 1, divider_holder[1]);
  	//alert(month1);
  	year1 = field1.value.substring(divider_holder[1] + 1, field1.value.length);
	}

if ( isNaN(day1) && isNaN(year1) ) { // Check day and year are numeric
	invalid_date(field1);
	return false;  
   }

if ( day1.length == 1 ) { //Make d day dd
   day1 = '0' + day1;  
}

if ( month1.length == 1 ) {//Make m month mm
	month1 = '0' + month1;   
}

if ( year1.length == 2 ) {//Make yy year yyyy
   if ( (year1 = validate_year(year1)) == false ) {
   	invalid_date(field1);
		return false;  
		}
}

if ( month1.length == 3 || month1.length == 4 ) {//Make mmm month mm
   if ( (month1 = convert_month(month1)) == false) {
   	alert("month1" + month1);
   	invalid_date(field1);
   	return false;  
   }
}

// Date components are OK
if ( (day1.length == 2 || month1.length == 2 || year1.length == 4) == false) {
   invalid_date(field1);
   return false;
}

//Validate the date
if ( (outdate1 = validate_date(day1, month1, year1)) == false ) {
	// alert("O valor " + field1.value + " não é uma data válida.\n\r" +  
	//	"Informe uma data válida no formato DD/MM/YYYY");		
	//	field1.focus();
	// field1.select();
	invalid_date(field1);
	return false;
}

// Redisplay the date in dd/mm/yyyy format
field1.value = outdate1;
return true;//All is well

}

function convert_hora(hora){
	hora_atual = hora.value;
	cmp = '';
	cmp2 = '';
	tamanho =  hora.value.length;
	hh = hora_atual.substring(0,2);
	separador = hora_atual.substring(2,3);
	mm = hora_atual.substring(3,5);
	
	if (tamanho == 0) {
		return true;
	}
	if (hora_atual == 'H' || hora_atual == 'h' || hora_atual == 'hora' || hora_atual == 'HORA' || hora_atual == 'Hora')
	{
		hora_atual = new Date();
		if (hora_atual.getHours() < 10)
		{
			cmp = '0';	
		}
		if (hora_atual.getMinutes() < 10)
		{
			cmp2 = '0';
		}
		hora.value = cmp + hora_atual.getHours() + ':' + cmp2 + hora_atual.getMinutes();
		return true;
	}
	else
	{
		if (tamanho > 5)
		{
			alert('Formato de Hora errado: Digite h para a hora atual');
			hora.select();
			hora.focus();
			return false;
		}
		
		if ( isNaN(hora.value)) 
		{ 	
			
			if (tamanho == 5)
			{
				if (hh >= 0 && hh < 24 && mm >= 0 && mm < 60 && separador == ':')
				{
					return true;
				}
				alert('Formato de Hora errado: Digite h para a hora atual');
				hora.select();
				hora.focus();
				return false;
			}
			if (tamanho == 4)
			{
				if (hora_atual.substring(0,1) >= 0 && hora_atual.substring(0,1) < 24 && hora_atual.substring(1,2) == ':' && hora_atual.substring(2,4) >= 0 && hora_atual.substring(2,4) < 60)
				{
					format = '0' + hora_atual;
					hora.value = format;
					return true;	
				}
				alert('Formato de Hora errado: Digite h para a hora atual');
				hora.select();
				hora.focus();
				return false;
			}
		}
		
		if (tamanho == 1)
		{
			if (hora_atual >= 0 && hora_atual < 24)
			{
				format = '0' + hora_atual + ':' + '00'
				hora.value = format;
				return true;
			}
			alert('Valor da Hora errado: Digite h para a hora atual');
			hora.select();
			hora.focus();
			return false;
		}
		
		if (tamanho == 2)
		{
			if (hora_atual >= 0 && hora_atual < 24)
			{
				format = hora_atual + ':' + '00'
				hora.value = format;
				return true;
			}
			alert('Valor da Hora errado: Digite h para a hora atual');
			hora.select();
			hora.focus();
			return false;
		}
		
		if (tamanho == 3)
		{
			if (hora_atual.substring(0,1) >= 0 && hora_atual.substring(0,1) < 24 && hora_atual.substring(1,3) >= 0 && hora_atual.substring(1,3) < 60)   
			{	
				format = '0' + hora_atual.substring(0,1) + ':' + hora_atual.substring(1,3);
				hora.value = format;
				return true;
			}
			alert('Formato de Hora errado: Digite h para a hora atual');
			hora.select();
			hora.focus();
			return false;
		}
		if (tamanho == 4)
		{
			if (hora_atual.substring(0,2) >= 0 && hora_atual.substring(0,2) < 24 && hora_atual.substring(2,4) >= 0 && hora_atual.substring(2,4) < 60)   
			{	
				format = hora_atual.substring(0,2) + ':' + hora_atual.substring(2,4);
				hora.value = format;
				return true;
			}
			alert('Formato de Hora errado: Digite h para a hora atual');
			hora.select();
			hora.focus();
			return false;
		}
		if (tamanho == 5)
		{
			alert('Formato de Hora errado: Digite h para a hora atual');
			hora.select();
			hora.focus();
			return false;
		}
	}
  return true;
}

/******************************************************************
   convert_month()
   
   Function to convert mmm month to mm month 
   
   Called by convert_date()    
   
   Author: Simon Kneafsey 
   Date Created: 4/9/00
   Email: simonkneafsey@hotmail.com
   WebSite: www.simonkneafsey.co.uk
   
   Notes:P lease feel free to use/edit this script.  If you do please keep my comments and details 
   intact and notify me via a quick Email to the address above.  Enjoy!
*******************************************************************/
function convert_month(monthIn) {

var month_values = new Array ("JAN","FEB","MAR","APR","MAY","JUN","JUL","AUG","SEP","OCT","NOV","DEC");

monthIn = monthIn.toUpperCase(); 

  if ( monthIn.length == 3 ) {
    for ( var i=0; i<12; i++ ) {
   	  if ( monthIn == month_values[i] ) {
        monthIn = i + 1;
	    if ( i != 10 && i != 11 && i != 12 ) {
          monthIn = '0' + monthIn;
        }
        return monthIn;
	  }
    }
  }
  else if ( monthIn.length == 4 && monthIn == 'SEPT') {
    monthIn = '09';
    return monthIn;
  }
	
  else {
    return false;
  } 
  
  return true;
}
/******************************************************************
   invalid_date()
   
   If an entered date is deemed to be invalid, invali
   d_date() is called to display a warning message to
   the user.  Also returns focus to the date  in que
   stion and selects the date for edit.
        
   Called by convert_date()
   
   Author: Simon Kneafsey
   Date Created: 4/9/00
   Email: simonkneafsey@hotmail.com
   WebSite: www.simonkneafsey.co.uk
   
   Notes: Please feel free to use/edit this script.  If you do please keep my comments and details 
   intact and notify me via a quick Email to the address above.  Enjoy!
*******************************************************************/
function invalid_date(inField) {
  alert("O valor " + inField.value + " não é uma data válida.\n\r" + "Informe uma data válida no formato DD/MM/YYYY ou use 'Hoje'");
  inField.value = "";
  inField.focus();
  inField.select();
  return true;
}
/******************************************************************
   validate_date()
   
   Validates date output from convert_date().  Checks
   day is valid for month, leap years, month !> 12,.
   
   Author: Simon Kneafsey
   Date Created: 4/9/00
   Email: simonkneafsey@hotmail.com
   WebSite: www.simonkneafsey.co.uk
   
   Notes: Please feel free to use/edit this script.  If you do please keep my comments and details 
   intact and notify me via a quick Email to the address above.  Enjoy!
*******************************************************************/
function validate_date(day2, month2, year2) {
  var DayArray = new Array(31,28,31,30,31,30,31,31,30,31,30,31);                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
  var MonthArray = new Array("01","02","03","04","05","06","07","08","09","10","11","12");                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      
  var inpDate = day2 + month2 + year2;                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                
  var filter=/^[0-9]{2}[0-9]{2}[0-9]{4}$/;                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          

  //Check ddmmyyyy date supplied
  if (! filter.test(inpDate)) {
    return false;                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
  }                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     
  /* Check Valid Month */                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               
  filter=/01|02|03|04|05|06|07|08|09|10|11|12/ ;                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
  if (! filter.test(month2)) {
    return false;
  }                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
  /* Check For Leap Year */                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            
  var N = Number(year2);                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   
  if ( ( N%4==0 && N%100 !=0 ) || ( N%400==0 ) ) {
    DayArray[1]=29;                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     
  }                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       
  /* Check for valid days for month */                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
  for(var ctr=0; ctr<=11; ctr++) {
    if (MonthArray[ctr]==month2) {
      if (day2<= DayArray[ctr] && day2 >0 ) {
        inpDate = day2 + '/' + month2 + '/' + year2;
        return inpDate;
      }
      else {
        return false;
      }
   	}
  }
  return true;
}
/******************************************************************
   validate_year()
   
   converts yy years to yyyy
   Uses a hinge date of 20
        < 20 = 20yy 
        => 20 = 19yy.
         
   Called by convert_date() before validate_date().
      
   Author: Simon Kneafsey 
   Date Created: 4/9/00
   Email: simonkneafsey@hotmail.com
   WebSite: www.simonkneafsey.co.uk
   
   Notes: Please feel free to use/edit this script.  If you do please keep my comments and details 
   intact and notify me via a quick Email to the address above.  Enjoy!
*******************************************************************/
function validate_year(inYear) 
{
if ( inYear < 20 ) 
	{
   inYear = "20" + inYear;
   return inYear;
	}
else if ( inYear >= 20 )
	{
   inYear = "19" + inYear;
   return inYear;
	}
else 
	{
	return false;
	}   
}

/*	 
	Redim_Fom(altura,largura,pos_alt,pos_larg) - 
	redimensiona a tela de acordo com as informacoes passadas
	se pos_alt=0 e pos_larg = 0 centraliza o form na tela
*/
function Redim_Form(altura,largura,pos_alt,pos_larg){
	var larg;
	var alt;
	
	largura = largura + 10
	
	if (pos_alt==0) {
		alt = (screen.height - altura) / 2;
	}
	else {
		alt = pos_alt;
	}

	if (pos_larg==0) {
		larg = (screen.width - largura) / 2;
	}
	else {
		larg = pos_larg;
	}
	switch (get_FormatoJanela()) {
		case 'MDI':
		{
			// Horizontal depois vertical
			window.resizeTo(largura,altura);
			window.moveTo(larg,alt);
		};
	}
}

/*
 * verifica a necessidade de autenticacao do usuario
 * em alguma acao da toolbar (incluir,localizar,confirmar)
*/
function autenticacao(disparar){
    var retorno = null;
	var link = window.location.search.substring(1);
	//alert('funcoes.js autenticacao link '+link);
    if (disparar.toUpperCase()=="C") {
        retorno = showModalDialog('../inc/dispara_autenticacao.asp?acao=C&'+window.location.search.substring(1),document.forms[0].elements,'unadorned:yes;center:yes;scroll:no;status:no;help:no;dialogWidth:500px;dialogHeight:280px')
		//alert('autenticacao retorno ['+retorno+']');
        if (retorno == false) {
            location.reload();                            
        }        
    } else if (disparar.toUpperCase()=="E" || disparar.toUpperCase()=="A") {
		
		retorno = showModalDialog('../inc/dispara_autenticacao.asp?acao='+disparar+'&'+window.location.search.substring(1),document.forms[0].elements,'unadorned:yes;center:yes;scroll:no;status:no;help:no;dialogWidth:500px;dialogHeight:280px')
        if (retorno == false) {
			//alert('funcoes.js.autenticacao  retorno==false');
			retorno = '../inc/retornar.asp?'+link;
        }
    }            
    return retorno;
}

function explorer() {
    retorno = showModalDialog(getBaseHref() +'inc/dispara_explorer.asp?cd_programa=11189','','center:yes;scroll:no;status:No;help:No;dialogWidth:550px;dialogHeight:500px')
    
    if (retorno != false) {
        //document.forms[0].arquivo.value=retorno.replace(/\//g, "\\");
        document.forms[0].arquivo.value=retorno;
        document.forms[0].arquivo.readOnly=true;
    }
    return retorno 
}

/*
    Eduardo - 15.07.2004
    realiza o conceito de sobrecarga (override) do metodo confirm do javascript
    pela dificuldade de encontrar uma forma de chamar o metodo confirm do ancestral (super do java)
    foi implementado um metodo em vbscript para montar a caixa de dialogo
    a funcao vbscript (showDialogVB) esta declarada no arquivo funcoes.vbs
*/
function confirm(mensagem) {
    /*
        Argumentos:
            titulo
            mensagem
            icone: 1-erro,2-pergunta;3-exclamacao;4-informacao
            botao: 0-ok,1-ok/cancel,2-abort/retry/ignore,3-yes/no/cancel,4-yes/no,5-retry/cancel
            botao selecionado: 0-primeiro,1-segundo,2-terceiro
            abertura: 0-aplication modal,1-system modal
    */
    Esconde('document.all[\'progresso\']');
    retorno = showDialogVB("Confirmação",mensagem,2,4,1,0);
    if (retorno==6){
        retorno = true;        
        Mostra('document.all[\'progresso\']');
    } else {
        retorno = false;          
    }        
    return retorno;
}    

/*
  09.08.2004
  Funcao que retorna um listbox com os meses do ano.
  funcionalidade e forma de uso parecidas com o componente asp
  
  formas de uso:
  DropDownMes("Mes",null,false,false,"<% =request("Mes")%>")
  DropDownMes("Mes","alert('oi')",true,true,"<% =Mes%>")
  
  Obs:
  Ao contrario do asp, nesta funcao todos os campos devem ser preenchidos.
  Os campos que nao tem valor devem ser passados como null
*/
function DropDownMes(nome,acao,primeiro_branco,valida,mesSelecionado){
  var time = new Date();
  var acaoJs = "";
  
  if (mesSelecionado == null || mesSelecionado == ""){
    // soma 1 no mes pq o javascript retorna mes de 0 a 11
    mesSelecionado = time.getMonth()+1;
  }

  if (nome == "") {
    nome="mes";
  }      
  
  if (acao != null) {
    acaoJs = "onchange="+ acao ;   
  }
  if (valida) {
    document.writeln ("<SELECT class='Tabela_Selecao' title='Select' name='" + nome + "' "+ acaoJs +">");
  } else {
    document.writeln ("<SELECT class='Tabela_Selecao' name='" + nome + "'"+ acaoJs +">");
  }
  
  if (primeiro_branco) { 
      document.write ("<OPTION value='null'>");
  }
  
  for (month=1; month<=12;month++) {  
    switch (month) {
      case 1:
        dateName = "Janeiro";
        dateValue = "01";
        break;
      case 2:
        dateName = "Fevereiro";
        dateValue = "02";
        break;
      case 3:
        //dateName = "Março";
        dateName = "Marco";
        dateValue = "03";
        break;
      case 4:
        dateName = "Abril";
        dateValue = "04";
        break;
     case 5:
       dateName = "Maio";
       dateValue = "05";
       break;
     case 6:
       dateName = "Junho";
       dateValue = "06";
       break;
     case 7:
       dateName = "Julho";
       dateValue = "07";
       break;
     case 8:
       dateName = "Agosto";
       dateValue = "08";
       break;
     case 9:
       dateName = "Setembro";
       dateValue = "09";
       break;
     case 10:
       dateName = "Outubro";
       dateValue = "10";
       break;
     case 11:
       dateName = "Novembro";
       dateValue = "11";
       break;
     case 12:
       dateName = "Dezembro";
       dateValue = "12";
       break
    }    
    if (month == mesSelecionado) {
      document.write ("<OPTION value=\"" + dateValue + "\" selected>" + dateName + "");
    } else {
      document.write ("<OPTION value=\"" + dateValue + "\">" + dateName + "");
    }
  }
  document.write ("</SELECT>");  
}


/* Comentado para validar o e-governo do Firefox (05/12/2006 - Janine) */

function Valida_Browser() {
  var browserName = navigator.appName;
  var userAgent = navigator.userAgent;
  var version=0;
  var verOffset, verOffsetEnd ;
  
  //alert(navigator.userAgent);
  
  if ((verOffset=userAgent.indexOf("MSIE"))!=-1) {
    browserName = "IE";
	verOffsetEnd = userAgent.indexOf(";", verOffset);
	version = userAgent.substring(verOffset+5,verOffsetEnd);
  }
  else if ((verOffset=userAgent.indexOf("Firefox"))!=-1) {
    browserName = "Firefox";
	version = userAgent.substring(verOffset+8);
  } 
  else if ((verOffset=userAgent.indexOf("Chrome"))!=-1) {
    browserName = "Chrome";
	version = userAgent.substring(verOffset+7);
  }
  else if ((verOffset=userAgent.indexOf("Safari"))!=-1) {
    browserName = "Safari";
    version = userAgent.substring(verOffset+7);	
  }
  else if ((verOffset=userAgent.indexOf("Opera"))!=-1) {
    browserName = "Opera";
	version = userAgent.substring(verOffset+6);
  }
  else if ( (nameOffset=userAgent.lastIndexOf(' ')+1) < (verOffset=userAgent.lastIndexOf('/')) ) {
    browserName = userAgent.substring(nameOffset,verOffset);
    version = userAgent.substring(verOffset+1);
    if (browserName.toLowerCase()==browserName.toUpperCase()) {
      browserName = navigator.appName;
   }
  }
  else {
    browserName = navigator.appName;
	alert('Browser não identificado adequadamente: appName[' + browserName + ']');	
  }
  
  //alert(browserName);  
  if (browserName == "IE") {
    return true;
  }
  else {
	//window.location.href = 'about:blank';
	//window.location.href = getBaseHref() + 'browser.htm';
    return false;
  }

//  if (navigator.appVersion.indexOf("MSIE")!=-1) {
//      temp=navigator.appVersion.split("MSIE")
//      version=parseFloat(temp[1])
//  }  
//  if ((version < 5.5) || (version == 0)) {//NON IE browser will return 0
//	if (browserName=="Netscape"){ 
//		alert("Para que o e-governo funcione adequadamente no navegador Mozilla Firefox \n adicione o complemento IE Tab e abra o programa (URL) utilizando este complemento!");
//	}
//	else{
// 		alert('Versão do browser utilizado não homologada!\n Necessário Internet Explorer 5.5 ou superior.')
//      location.replace('about:blank')
//      //location.href= getBaseHref() + 'blank.htm';
//	}
//	return false;    
//  }
//  else {
//      return true;
//  }
  
}

/*
recupera a data corrente em miliseconds para usar como 
*/
function getTimeMillis(){
    d=new Date();
    return d.getTime();
}    

/*
  24.09.2004 - Eduardo M. Sasso
  upload() - disparado pela toolbar do pai...
  submit_documento(arquivo) - disparado pelo componente de upload apos a execucao, submetendo o pai...
  assim eh posssivel manter as variaveis de request intactas
*/
/*
function upload(registra_temporaria){
    if (typeof document.forms[0].numero != 'undefined' && document.forms[0].numero.value != ''){
        SubmitToolbar('Confirmar','N','');
    } else {
        forma_gravacao = document.getElementById("formaGravacao");
        document.iframe_upload.frmUpload.forma_gravacao.value=forma_gravacao.value;
        
        if (document.iframe_upload.frmUpload.arquivo.value=="") {
            Esconde('document.all[\'progresso\']');
            alert("Informe o arquivo para upload!");        
        } else {
            //alert(document.forms[0].nome_arquivo_automatico.value);
    
            nome_automatico = "null";
            if (typeof document.forms[0].nome_arquivo_automatico != 'undefined'){
                nome_automatico = document.forms[0].nome_arquivo_automatico.value + "_" + getTimeMillis();
                document.forms[0].nome_arquivo_automatico.value = nome_automatico; 
            }
            document.iframe_upload.frmUpload.diretorio_destino.value=document.forms[0].arquivo_destino.value;
            document.iframe_upload.frmUpload.nome_arquivo_automatico.value= nome_automatico;
            document.iframe_upload.frmUpload.registra_temporaria.value=registra_temporaria;
            document.iframe_upload.frmUpload.arquivo_local.value=document.iframe_upload.frmUpload.arquivo.value;
                        
            if (forma_gravacao.toLowerCase() != "ifs") {
                document.iframe_upload.frmUpload.encoding = "multipart/form-data"; 
            }
            document.iframe_upload.frmUpload.submit();
        }
    }
}
*/
function upload(registra_temporaria,forma_gravacao){

    //alert(registra_temporaria+ '-' +forma_gravacao)

	/* se tiver numero quer dizer que ja eh um documento existente,recuperado por filtro
       somente submete para a transacao registrar o vinculo com o doc existente
    */
    if (typeof document.forms[0].numero_doc_vinculo != 'undefined' && document.forms[0].numero_doc_vinculo.value != ''){
        alert('if')
		SubmitToolbar('Confirmar','N','');
    } else {    
        if (typeof forma_gravacao == 'undefined'){
           forma_gravacao = document.getElementById("formaGravacao");
           forma_gravacao = forma_gravacao.value;
        }
        document.iframe_upload.frmUpload.forma_gravacao.value = forma_gravacao;
    //    upload(registra_temporaria);
        if (document.iframe_upload.frmUpload.arquivo.value=="") {
            Esconde('document.all[\'progresso\']');
            alert("Informe o arquivo para upload!");        
        } else {
            nome_automatico = "null";
            if (typeof document.forms[0].nome_arquivo_automatico != 'undefined'){
                nome_automatico = document.forms[0].nome_arquivo_automatico.value + "_" + getTimeMillis();
                document.forms[0].nome_arquivo_automatico.value = nome_automatico; 
            }
            //alert(document.forms[0].arquivo_destino.value)
			
			// busca o diretório destino para upload conforme seleção do tipo de documento
            //diretorio_destino = document.forms[0].arquivo_destino.value;
			//diretorio_destino = document.forms[0].diretorio.value;
			
document.getElementById('diretorio')
?diretorio_destino = document.forms[0].diretorio.value
:diretorio_destino = document.forms[0].arquivo_destino.value

            if (forma_gravacao.toLowerCase() != "ifs") {
                //se nao eh ifs deixa q o proprio upload.asp controla o upload, local
                //temporario ou e em memoria
                document.iframe_upload.frmUpload.action = '';
            }
            document.iframe_upload.frmUpload.diretorio_destino.value=diretorio_destino;
            document.iframe_upload.frmUpload.nome_arquivo_automatico.value=nome_automatico;
            document.iframe_upload.frmUpload.registra_temporaria.value=registra_temporaria;
            document.iframe_upload.frmUpload.arquivo_local.value=document.iframe_upload.frmUpload.arquivo.value;
            
            document.iframe_upload.frmUpload.submit();
        }
    }
}


function submit_documento(arquivo,erro){

   if (erro=="") {
       
       parent.document.forms[0].retorno_upload.value = arquivo;
       parent.document.forms[0].item("AcaoToolbar").value = "Confirmar";
       parent.document.forms[0].submit();
   } else {
       Esconde('parent.document.all[\'progresso\']');
       alert(erro);
   }       
}

function Busca_DataCorrecao() {
        retorno = showModalDialog(getBaseHref() +'/tributos/tri$_dispara_data_correcao.asp?acao=C','','center:yes;scroll:no;status:No;help:No;dialogWidth:350px;dialogHeight:200px')
        if (retorno == true) {
            SubmitToolbar('Carnet','N','');                            
        } else {
            if (retorno == false) {
                Esconde('document.all[\'progresso\']');
                //location.reload();
            }
        }
}

function Retorna_SelecStr_DataCorrecao(formulario,carne){
  ia = document.getElementsByName('cp_retorna_selec').item(0);
  if (ia == null) {
	Esconde('document.all[\'progresso\']');
	return false;
  }
  retorno = showModalDialog(getBaseHref() + '/tributos/tri$_dispara_data_correcao.asp?acao=C','','center:yes;scroll:no;status:No;help:No;dialogWidth:350px;dialogHeight:200px')
  if (retorno == true) {
    Retorna_SelecStr(formulario,carne);
  } 
  else {
    if (retorno == false) {
      Esconde('document.all[\'progresso\']');
    //location.reload();
    }
  }
  return true;
}

function ceplogradouro(logradouro,codigo_logradouro,bairro,codigo_bairro,cep,cepv) {
  var pars = 'codigo_cidade=' + $F("registro_cidade") + '&logradouro=' + codigo_logradouro + '&codigo_bairro=' + codigo_bairro + '&cep=' + cepv;
  var resultado = function(t) {
    var data = t.responseText.split(",");
	if (data[0]=='') return;
	$(bairro).value = data[1]; 
	if (codigo_logradouro != '' || cepv != ''){
		$(logradouro).value = data[3]; 
		$(cep).value = data[0]; 
	}
	
	if (bairro == 'bairro'){
		cd_bairro = 'codigo_bairro'
		cd_logradouro = 'codigo_logradouro'
	}	
	if (bairro == 'bairro_localizacao') {
		cd_bairro = 'cod_bairro'
		cd_logradouro = 'logradouro_localizacao'
	}
	if (bairro == 'bairro_localizacao_ci'){
		cd_bairro = 'cod_bairro_ci'
		cd_logradouro = 'logradouro_localizacao_ci'
	}
	$(cd_bairro).value = data[2]; 
	$(cd_logradouro).value = data[4]; 
  }
  var errFunc = function(t) {
    alert('Erro ' + t.status + ' -- ' + t.statusText);
  }
  new Ajax.Request(getBaseHref() + 'pro$/pro$_cep_ajax.asp', {
    method: 'get', 
    parameters:pars, 
    onSuccess:resultado,
    onFailure:errFunc
  });
}

function Acentuacao(t,campo){
	var resultado = (t).split("É").join("_").split("Á").join("_").split("Í").join("_").split("Ó").join("_").split("Ú").join("_").split("À").join("_").split("È").join("_").split("Ì").join("_").split("Ò").join("_").split("Ù").join("_").split("Â").join("_").split("Ê").join("_").split("Î").join("_").split("Ô").join("_").split("Û").join("_").split("Ã").join("_").split("Õ").join("_").split("Ñ").join("_").split("ñ").join("_").split("ç").join("_").split("Ç").join("_").split("á").join("_").split("é").join("_").split("í").join("_").split("ó").join("_").split("ú").join("_").split("à").join("_").split("è").join("_").split("ì").join("_").split("ò").join("_").split("ù").join("_").split("ã").join("_").split("õ").join("_").split("â").join("_").split("ê").join("_").split("î").join("_").split("ô").join("_").split("û").join("_").split("ä").join("_").split("ë").join("_").split("ï").join("_").split("ö").join("_").split("ü").join("_").split("'").join("_"); 
	document.getElementById(campo).value = resultado;
}

function doNext(el){
	if (el.value.length < el.getAttribute('maxlength')) return;
	var f = el.form;
	var els = f.elements;
	var x, nextEl;
	for (var i=0, len=els.length; i<len; i++){
		x = els[i];
		if (el == x && (nextEl = els[i+1])){
			if (els[i+1].type=='text')
			   if (nextEl.focus) nextEl.focus();
		}
	}
}

function primeiro_campo(tag){
	var numForm = document.getElementsByTagName("form");
	var i;
	if (numForm.length != 0){
		var numElement = eval(document.getElementById(tag).length);
		for (i=0; i<numElement; i++){
			if (document.getElementById(tag).elements[i].type=='text'){
				document.getElementById(tag).elements[i].focus();
				break;
			}
		}
	}
}


function Busca_IntervaloParcelas(formulario,carne) {
  ia = document.getElementsByName('cp_retorna_selec').item(0);
  if (ia == null) {
    Esconde('document.all[\'progresso\']');
	return false;
  } 
  retorno = showModalDialog(getBaseHref() +'/tributos/tri$_dispara_intervalo_parcelas.asp?acao=C','','center:yes;scroll:no;status:No;help:No;dialogWidth:350px;dialogHeight:200px')
  if (retorno == true) {
    Retorna_SelecStr(formulario,carne);
           //SubmitToolbar('Carnet','N','');                            
  } 
  else {
    if (retorno == false) {
      Esconde('document.all[\'progresso\']');
      //location.reload();
    }
  }
  return true;
}

function showHide(inID) {
	if (document.getElementById(inID).style.display == 'none') {
		document.getElementById(inID).style.display = 'block';
	} else {
		document.getElementById(inID).style.display = 'none';
	}
}


function abrirLogin(){
    retorno = showModalDialog('../inc/dispara_login.asp?'+ window.location.search.substring(1) +'&voltar=S','','center:yes;scroll:no;status:No;help:No;dialogWidth:350px;dialogHeight:200px')
    if (retorno == true) {
		parent.location.reload()
    } else {
		if (retorno == false) {
            Esconde('document.all[\'progresso\']');
        }
    }
}

function alterarSenha(){
    retorno = showModalDialog('inc/dispara_alteracao_senha.asp?'+ window.location.search.substring(1) +'&voltar=S','','center:yes;scroll:no;status:No;help:No;dialogWidth:350px;dialogHeight:200px')
	if (retorno == false) {
		location.replace('login.asp?');		
   } 
}

function confirmarInformacoes(){
    //alert('funcoes.js confirmarInformacoes location ['+window.location.search.substring(1)+']');
    retorno = showModalDialog('inc/dispara_confirmacao_informacoes.asp?AcaoToolbar="teste"&'+ window.location.search.substring(1) +'&voltar=S','','center:yes;scroll:no;status:No;help:No;dialogWidth:350px;dialogHeight:200px')
	if (retorno == false) {
			location.replace('login.asp?');
        }
}

function alterarCredencial(credencial){
    //retorno = showModalDialog('../inc/dispara_alteracao_credencial.asp?'+ window.location.search.substring(1) +'&voltar=S&credencial='+credencial,'','center:yes;scroll:no;status:No;help:No;dialogWidth:350px;dialogHeight:200px')
	retorno = location.replace('../configuracao/credencial.asp?'+ window.location.search.substring(1) +'&voltar=S&credencial='+credencial)
    if (retorno == true) {
		location.replace('inc/autenticacao.asp?cd_programa=11914')
    } else {
		if (retorno == false) {
            Esconde('document.all[\'progresso\']');
        }
    }
}


function linkInfo(programa, campo, valor){
//alert(programa+'-'+campo+'-'+valor);
    
	function translate(t){
	   //alert(t.responseText);
	   document.getElementById("link").href = t.responseText;
	}
	
	var errFunc = function(t) {
	    alert("Ocorreu um erro no sistema!")
		//alert('Erro ' + t.status + ' -- ' + t.statusText);
	}
	new Ajax.Request(getBaseHref() + 'pro$/pro$_linkInfo_ajax.asp?programa='+programa+'&campo='+campo+'&valor='+valor, 
		{method: 'get',
		  asynchronous: 'false',
		  onSuccess:translate,
	      onFailure:errFunc
	    });
}

