/* *********************************************************************************************************
 * FUNÇÃO         = this.form.elements[i]/Array getCampo(Form, Nome)
 * OBJETIVO       = Retorna um campo ou um Array de campos do formulário.
 * EXEMPLO DE USO = var campo = getCampo(this.form, "nomeDoCampo");
********************************************************************************************************* */
function getCampo(Form, Nome) {

  var count = 0;
  var indice = 0;

  if(Form.length != 0){
    for (var i=0; i < Form.elements.length; i++) {
      if(Form.elements[i].name == Nome){
        count ++;
        indice = i;
      }
    }
  }
  if(count == 1){
    return Form.elements[indice];
  }
  else if(count > 1){
    var arrCampo = new Array(count);
    var j = 0;

    for (var k=0; k < Form.elements.length; k++) {
      if(Form.elements[k].name == Nome){
        arrCampo[j] = Form.elements[k];
        j++;

      }
    }
    return arrCampo;
  }

 }

/* *********************************************************************************************************
 * FUNÇÃO         = void abrirNovaJanela(url, width, height)
 * OBJETIVO       = Abrir uma nova janela do browser com valores padrões de "altura" e "largura",
 *                  sem barra de menus e ferramentas.
 * EXEMPLO DE USO = abrirRelatorio("Endereço da página", "Comprimento", "Largura");
 * - O Endereço da página é o unico parametro obrigatório.
********************************************************************************************************* */
function abrirNovaJanela(url, width, height) {

    var horizontal  = window.screen.availWidth;
    var vertical    = window.screen.availHeight;
    var comprimento = 690;
    var altura      = 350;

    if(width != null && height != null) {
    comprimento = width;
    altura      = height;

    }

//status=yes ,toolbar=no

    var x = window.open(url,'x'," scrollbars=yes,width="+ comprimento + ",height=" + altura);

    horizontal = Math.round((horizontal - comprimento) / 2);
    vertical   = Math.round((vertical   - altura) / 2);

    if ((x) && (!x.closed)) x.moveTo(horizontal, vertical);
  }



/* *********************************************************************************************************
 * FUNÇÃO         = void repassaValorLovetDiv(arrayControlesRecebem, arrayTipoControlesRecebem, nomeControleEntrega, tipoControleEntrega)
 * OBJETIVO       = Repassar para as propriedades "value" dos controles da janela "Opener", cujos "names"
 *                  estão contidos no "arrayControlesRecebem", os valores separados pelo caracter "|" e armazenados na
 *                  propriedade "value" do "ControleEntrega" da janela "Lovet".
 * EXEMPLO DE USO =
 *  //Pagina que vai receber os dados.
 * <html>
 * <head>
 * <script language="JavaScript" src="/teste/jsp/geral/confirma.js"></script>
 * <script language="JavaScript" src="/teste/jsp/geral/geral.js"></script>
 * <script language="JavaScript" src="/teste/jsp/geral/mensagens.js"></script>
 * </head>
 * <body>
 * <script>
 * 	if(netscape){
 * 		document.write('<LAYER ID="campoDinamico">Valor dinamico</LAYER><br>');
 * 	}
 * 	else{
 * 		document.write('<DIV ID="campoDinamico">Valor dinamico</DIV>');
 * 	}
 * </script>
 * <form method="post" action="">
 *   <input type="text" name="campoText" value="Teste de Text">
 *   <input type="button" name="Submit" value="Ok" onclick="abrirNovaJanela('table.jsp');">
 * </form>
 * </body>
 * </html>
 *
 *  // Página que vai enviar os dados.
 * <html>
 * <head>
 * <script language="JavaScript" src="/teste/jsp/geral/geral.js"></script>
 * </head>
 * <body bgcolor="#FFFFFF">
 * <form method="post" action="">
 * <input type="radio" name="objIds" value="Novo Valor Dinamico|Novo Valor Text">
 * <input type="button" name="btnOk" value="OK" onClick="repassaValorLovetDiv(['campoDinamico','campoText'],['div','text'],'objIds','radio');">
 * </form>
 * </body>
 * </html>
********************************************************************************************************* */
function repassaValorLovetDiv(arrayControlesRecebem,arrayTipoControlesRecebem,nomeControleEntrega,tipoControleEntrega){
  var i;
  var r = new Array();
  var existeItemChecado = false;

  var cLovet  = getCampo(document.forms[0], nomeControleEntrega);  //controle da janela Lovet

  if(tipoControleEntrega.toLowerCase() == "radio"){      //se o controle da janela Lovet for um radio
    var qtde = cLovet.length;
    if(qtde > 0) {
      for(i = 0; i < cLovet.length; i++) {
        if(cLovet[i].checked) {                           //se existe um item radio checado
          cLovet            = cLovet[i];                  //o controle Lovet deixa de ser o array de radios e passa a ser radio checado
          existeItemChecado = true;
          break;
        }
      }
    }else{
      if(cLovet.checked) {
          existeItemChecado = true;
      }
    }
  }
  if (existeItemChecado){
    r = cLovet.value.split("|");                 //retornado um array de strings
    if((r != null) && (r.length == arrayControlesRecebem.length)){        //se a quantidade de controles a receberem os valores correspondem a quantidade de strings contidas em "r"
      for(i = 0; i < r.length; i++){
        if (arrayTipoControlesRecebem[i] != 'div'){
          eval("window.opener.document.forms[0]."+arrayControlesRecebem[i]+".value='"+r[i]+"';");
        }
        else{

           if(!netscape){
            eval("window.opener."+arrayControlesRecebem[i]+".innerText='"+r[i]+"';");

           }
           else{
            campoLayer = eval("window.opener.document."+arrayControlesRecebem[i]);
            campoLayer.document.write(r[i]);
            campoLayer.document.close();

           }
        }
      }
    }else{
      window.alert("Nº de controles inválidos da janela Opener inválido !!!");
    }
    self.close();
  }else{
    alert('É Necessário Escolher Um Item!!!');
  }
}

function repassaValorLovetDivSubmit(arrayControlesRecebem,arrayTipoControlesRecebem,nomeControleEntrega,tipoControleEntrega){
  var i;
  var r = new Array();
  var existeItemChecado = false;
  var cLovet  = getCampo(document.forms[0], nomeControleEntrega);  //controle da janela Lovet

  if(tipoControleEntrega.toLowerCase() == "radio"){      //se o controle da janela Lovet for um radio
    var qtde = cLovet.length;
    if(qtde > 0) {
      for(i = 0; i < cLovet.length; i++) {
        if(cLovet[i].checked) {                           //se existe um item radio checado
          cLovet            = cLovet[i];                  //o controle Lovet deixa de ser o array de radios e passa a ser radio checado
          existeItemChecado = true;
          break;
        }
      }
    }else{
      if(cLovet.checked) {
          existeItemChecado = true;
      }
    }
  }
  if (existeItemChecado){
    r = cLovet.value.split("|");                 //retornado um array de strings
    if((r != null) && (r.length == arrayControlesRecebem.length)){        //se a quantidade de controles a receberem os valores correspondem a quantidade de strings contidas em "r"
      for(i = 0; i < r.length; i++){
        if (arrayTipoControlesRecebem[i] != 'div'){
          eval("window.opener.document.forms[0]."+arrayControlesRecebem[i]+".value='"+r[i]+"';");
        }
        else{

           if(!netscape){
            eval("window.opener."+arrayControlesRecebem[i]+".innerText='"+r[i]+"';");

           }
           else{
            campoLayer = eval("window.opener.document."+arrayControlesRecebem[i]);
            campoLayer.document.write(r[i]);
            campoLayer.document.close();

           }
        }
      }
    }else{
      window.alert("Nº de controles inválidos da janela Opener inválido !!!");
    }
    eval("window.opener.document.forms[0].submit();");
    self.close();
  }else{
    alert('É Necessário Escolher Um Item!!!');
  }
}

function repassaValor(arrayControlesRecebem,nomeControleEntrega){
  eval("window.opener.document.forms[0]."+arrayControlesRecebem+".value='"+nomeControleEntrega+"';");
  eval("window.opener.document.forms[0]."+arrayControlesRecebem+".focus();");
  self.close();
}


/* *********************************************************************************************************
 * VARIAVEL         = boolean netscape
 * AUTOR          = rogerm
 * DT_CRIACAO     = 23/11/2001
 * OBJETIVO       = Retorna true se o navegador for o netscape 4+.
 * EXEMPLO DE USO = if(!nestcape){alert("Não é netscape");}
********************************************************************************************************* */
netscape = false;
navegador = navigator.appName;
versao = parseInt(navigator.appVersion);
if ( (navegador == "Netscape") && (versao >= 4) ) {
  netscape = true;
}


