//arquivo modificado darabas 07-11-06
  //Tenta 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;
        }
    }
  }

  //Fila de conexões
  fila=[]
  ifila = 0;

  //Carrega via XMLHTTP a url recebida e coloca seu valor
  //no objeto com o id recebido
  function ajaxHTML(id,url){
    //Carregando...
    document.getElementById(id).innerHTML="<span class='carregando'>"+
                                          "Carregando...</span>"
    //Adiciona à fila
    fila[fila.length]=[id,url]
    //Se não há conexões pendentes, executa
    if((ifila+1)==fila.length)
    ajaxRun()
  }

  //Executa a próxima conexão da fila - ajax
  function ajaxRun(){
    //Abre a conexão
    xmlhttp.open("GET",fila[ifila][1],true);
    //Função para tratamento do retorno
    xmlhttp.onreadystatechange=function() {
        if (xmlhttp.readyState==4){
            //Mostra o HTML recebido
            retorno=unescape(xmlhttp.responseText.replace(/\+/g," "))
            retorno=unescape(xmlhttp.responseText.replace(/\+/g," "))
            document.getElementById(fila[ifila][0]).innerHTML=retorno;
            //Roda o próximo
            ifila++
            if(ifila<fila.length)setTimeout("ajaxRun()",20)
        }
    }
    //Executa
    xmlhttp.send(null)
  }

  var divCombo;
  var divLayer;
  var idChamada;
  var tabelaChamada;
  var colunaRelacaoChamada;//add darabas 06-12-06

  function verificaCampoLayer(pForm, arqInc){ //Deve ser usado nos relacionamentos não multilingue, no form chamado no lugar de verifica campo
    var aux = verificaCampo(pForm);
        if(aux){
          var i = 0;
          var aux = '';
          var x = '?';
          while (i != pForm.length){
            aux = aux+x+pForm.elements[i].name+'='+pForm.elements[i].value;
            if(pForm.elements[i].name != 'ACAO')
              pForm.elements[i].value = '';
            x='&';
            i++;
          }
          ajaxHTML(divCombo,arqInc+aux+'&tabela='+pForm.name+'&id_chamada='+idChamada);
          hideMe();
        }
    //nao deve retornar resultado
  }
  
  var cor;

  //modificado darabas 29-03-07
  function mostraPropriedades(divIndice, codigo, tabela, pCorD, vCols, pPermiteEditarImgs, pMultilingue, pPerEdt, pPerExc){
    if(document.getElementById('div_prop'+divIndice).innerHTML==''){
      ajaxHTML('div_prop'+divIndice, 'propriedades_list.php?codigo='+codigo+'&tabela='+tabela+'&div_prop=div_prop'+divIndice+'&indice='+divIndice+'&cols_list='+vCols+'&permite_editar_imgs='+pPermiteEditarImgs+'&multilingue='+pMultilingue+'&p_editar='+pPerEdt+'&p_excluir='+pPerExc);
      document.getElementById('div_mais'+divIndice).innerHTML = '&nbsp;[&nbsp;-&nbsp;]&nbsp;';
      document.getElementById('linha'+divIndice).style.backgroundColor=pCorD;
      document.getElementById('col'+divIndice).style.backgroundColor=pCorD;
    }else{
      document.getElementById('div_prop'+divIndice).innerHTML = '';
      document.getElementById('div_mais'+divIndice).innerHTML = '&nbsp;[&nbsp;+&nbsp;]&nbsp;';
      document.getElementById('col'+divIndice).style.backgroundColor= '';
    }
  }
  
  function AlteraCorSaida(idIndice, pCor, pCorD){
    if(document.getElementById('div_prop'+idIndice).innerHTML != ''){
      document.getElementById('linha'+idIndice).style.backgroundColor=pCorD;
    }else{
      document.getElementById('linha'+idIndice).style.backgroundColor=pCor;
    }
  }

  function verificaCampoLayerMulti(pForm, arqInc, pMulti){ //Deve ser usado nos relacionamentos multilingue, no form chamado no lugar de verifica campo
    var aux = verificaCampo(pForm);
        if(aux){
          var i = 0;
          var aux = '';
          var x = '?';
          while (i != pForm.length){
            aux = aux+x+pForm.elements[i].name+'='+pForm.elements[i].value;
            if(pForm.elements[i].name != 'ACAO')
              pForm.elements[i].value = '';
            x='&';
            i++;
          }
          //linha abaixo alterada darabas 06-12-06
          ajaxHTML(divLayer,arqInc+aux+'&tabela='+pForm.name+'&id_chamada='+idChamada+'&multilingue='+pMulti+'&tabela_chamada='+tabelaChamada+'&coluna_relacao_chamada='+colunaRelacaoChamada);
        }

    atualizouDivCombo = false;
    //nao deve retornar resultado
  }
  
  function verificaCampoEdicaoListagem(pForm, arqInc, arqList, pMulti, codigo, pIndice, pColunasListagem){ //Deve ser usado nos relacionamentos multilingue, no form chamado no lugar de verifica campo
    pCL = pColunasListagem.split(",");

    var aux = verificaCampo(pForm);
        if(aux){
          var j;
          for(j=0;j<pCL.length;j++){
            if((pCL[j].indexOf("foto")==-1)&&(pCL[j].indexOf("download")==-1)){
              var a = pForm.elements[pCL[j]].value;
              document.getElementById(pCL[j]+pIndice).innerHTML = a;
            }
          }
          var i = 0;
          var aux = '';
          var x = '?';
          while (i != pForm.length){
            aux = aux+x+pForm.elements[i].name+'='+pForm.elements[i].value;
            if(pForm.elements[i].name != 'ACAO')
              pForm.elements[i].value = '';
            x='&';
            i++;
          }
          ajaxHTML('div_prop'+pIndice,arqInc+aux+'&tabela='+pForm.name+'&id_chamada='+idChamada+'&ACAO=Alterar&tipo=altera_listagem&multilingue='+pMulti);
          ajaxHTML('div_prop'+pIndice,arqList+'?tabela='+pForm.name+'&codigo='+codigo+'&div_prop=div_prop'+pIndice);
        }
  }

  function preencheRelacaoMenus(pForm, pDivLayer, arqInc){ //Deve ser usado nos relacionamentos multilingue, no form chamado no lugar de verifica campo
    var i = 0;
    var aux = '';
    var x = '?';
    while (i != pForm.length){
      aux = aux+x+pForm.elements[i].name+'='+pForm.elements[i].value;
      x='&';
      i++;
    }
    var conteudo = arqInc+aux;
    //alert(conteudo);
    ajaxHTML(pDivLayer, conteudo);
  }

  function AlteraIdiomaLayer(pLink){//usado no relacionameto com multilingue, para alterar o idioma de cadastro
    ajaxHTML(divLayer,pLink);
  }

  function adicionaOption(form,campo,codigo,valor) {// alterar opcao de combo - {ainda não testado}
    var i;
    i=document.forms[form].elements[campo].options.length;
    document.forms[form].elements[campo].options[i]=new Option(valor,codigo);
  }

  //funcao alterada darabas 06-12-06
  function IncluiNoLayerEShow(pDivLayer, pDivCombo, pArq, pId, pTabelaChamada, pColunaRelacaoChamada){ //deve ser usdado no formulario que solicita o relacionamento multilingue ou não
    divCombo = pDivCombo;
    divLayer = pDivLayer;
    idChamada = pId;
    tabelaChamada = pTabelaChamada;
    colunaRelacaoChamada = pColunaRelacaoChamada;
    ajaxHTML(pDivLayer, pArq);
    showMe();
    return false;
  }

  var atualizouDivCombo = false;
  function AtualizaDivCombo(pDivCombo, pLink, pHide){ //deve ser usado na estrutura de relacionamento multilingue
    if(!atualizouDivCombo){
       ajaxHTML(pDivCombo,pLink);
       atualizouDivCombo = true;
    }
    if(pHide){
      atualizouDivCombo = false;
      hideMe();
    }
  }


