$cgm = db_getsession('CGM');
        db_putsession("DB_acesso", $id_usuario);
        db_putsession("hora", date("H:i:s"));
        db_putsession("DB_id_usuario", $id_usuario);
    }
} else {
    $sqluser = "select id_usuario ";
    $sqluser .= "  from db_usuarios ";
    $sqluser .= " where login = 'dbpref' ";
    $resultuser = db_query($sqluser);
    if (pg_num_rows($resultuser) > 0) {
        $usuario = pg_result($resultuser, 0, 0);
    } else {
        $usuario = 1;
    }
    db_putsession("DB_id_usuario", $usuario);
}
if (@$cgm != "") {
    /**
     * Adicionada verificação para usuário externo e se esta ativo
     */
    $sql1 = "select nome,d.id_usuario as id_usuario                       ";
    $sql1 .= "  from db_usuarios d                                         ";
    $sql1 .= "       inner join db_usuacgm u on u.id_usuario = d.id_usuario";
    $sql1 .= " where u.cgmlogin     = '{$cgm}'                               ";
    //$sql1 .= "   and usuext         = 1                                    ";
    $sql1 .= "   and usuarioativo   = 1                                    ";
    $result = db_query($sql1);
    $nomeusuario = pg_result($result, 0, 'nome');
    $id_usuario = pg_result($result, 0, 'id_usuario');
    $cgm = $usuario;
 *  publicada pela Free Software Foundation; tanto a versao 2 da      
 *  Licenca como (a seu criterio) qualquer versao mais nova.          
 *                                                                    
 *  Este programa e distribuido na expectativa de ser util, mas SEM   
 *  QUALQUER GARANTIA; sem mesmo a garantia implicita de              
 *  COMERCIALIZACAO ou de ADEQUACAO A QUALQUER PROPOSITO EM           
 *  PARTICULAR. Consulte a Licenca Publica Geral GNU para obter mais  
 *  detalhes.                                                         
 *                                                                    
 *  Voce deve ter recebido uma copia da Licenca Publica Geral GNU     
 *  junto com este programa; se nao, escreva para a Free Software     
 *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA          
 *  02111-1307, USA.                                                  
 *  
 *  Copia da licenca no diretorio licenca/licenca_en.txt 
 *                                licenca/licenca_pt.txt 
 */
$result = pg_exec("select descricao from db_itensmenu where funcao = '" . basename($HTTP_SERVER_VARS['PHP_SELF']) . "'");
if (pg_numrows($result) > 0) {
    $str = pg_result($result, 0, 0);
} else {
    $str = basename($HTTP_SERVER_VARS['PHP_SELF']);
}
$result = pg_exec("select uol_id from db_usuariosonline \n                     where uol_id = " . db_getsession("DB_id_usuario") . "\n  \t\t             and uol_ip = '" . (isset($_SERVER["HTTP_X_FORWARDED_FOR"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $HTTP_SERVER_VARS['REMOTE_ADDR']) . "' \n\t\t             and uol_hora = " . db_getsession("DB_uol_hora"));
if (pg_numrows($result) == 0) {
    $hora = time();
    pg_exec($conn, "insert into db_usuariosonline \n                   values(" . db_getsession("DB_id_usuario") . ",\n\t\t\t          " . $hora . ",\n\t\t\t\t\t  '" . (isset($_SERVER["HTTP_X_FORWARDED_FOR"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $HTTP_SERVER_VARS['REMOTE_ADDR']) . "',\t\t\t\t\t  \n\t\t\t\t\t  '" . db_getsession("DB_login") . "',\n\t\t\t\t\t  '" . $str . "',\n\t\t\t\t\t  '" . db_getsession("DB_nome_modulo") . "',\n\t\t\t\t\t  " . time() . ")") or die("Erro:(27) inserindo arquivo em db_usuariosonline: " . pg_errormessage());
    db_putsession("DB_uol_hora", $hora);
} else {
    pg_exec("update db_usuariosonline set  \n           uol_arquivo = '" . $str . "',\n\t\t   uol_inativo = " . time() . "\n\t\t   where uol_id = " . db_getsession("DB_id_usuario") . "\n\t\t   and uol_ip = '" . (isset($_SERVER["HTTP_X_FORWARDED_FOR"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $HTTP_SERVER_VARS['REMOTE_ADDR']) . "' \n\t\t   and uol_hora = " . db_getsession("DB_uol_hora") . "\n\t\t   ") or die("Erro(26) atualizando db_usuariosonline");
}
 /**
  * Método responsável por setar na sessão a estrutura da folha de pagamento.
  * EX.: C/ Suplementar ou S/Suplementar
  * 
  * @static
  * @access public
  * @param Integer $iInstituicao
  * @throws DBException
  */
 public static function declararEstruturaFolhaPagamento($iInstituicao)
 {
     $oDaoCfPess = new cl_cfpess();
     $sSqlSuplementar = $oDaoCfPess->sql_query_file(null, null, $iInstituicao, "distinct r11_suplementar::int");
     $rsSuplementar = db_query($sSqlSuplementar);
     if (!$rsSuplementar) {
         throw new DBException("Ocorreu um erro ao declarar a estrutura da folha de pagamento.");
     }
     $oDadosSuplementar = db_utils::fieldsMemory($rsSuplementar, 0);
     db_putsession("DB_COMPLEMENTAR", (bool) $oDadosSuplementar->r11_suplementar);
 }
function db_logs($matricula, $inscricao, $numcgm, $string)
{
    $modulo = 5457;
    /* codigo modulo DBpref */
    if (db_getsession("DB_login") != "") {
        $usuario = db_getsession("DB_login");
    } else {
        $sqluser = "select id_usuario ";
        $sqluser .= "  from db_usuarios ";
        $sqluser .= " where login ~ 'dbpref' ";
        $resultuser = db_query($sqluser);
        if (pg_num_rows($resultuser) > 0) {
            $usuario = pg_result($resultuser, 0, 0);
        }
    }
    if ($usuario == "") {
        $usuario = 1;
    }
    $instit = db_getsession("DB_instit");
    $funcao = explode('?', basename($_SERVER["REQUEST_URI"]));
    $sqlmenu = "select db_itensmenu.id_item ";
    $sqlmenu .= "  from db_itensmenu ";
    $sqlmenu .= "       join db_menu on db_menu.id_item_filho = db_itensmenu.id_item ";
    $sqlmenu .= " where trim(funcao) = '{$funcao[0]}' ";
    $sqlmenu .= "   and modulo = {$modulo} ";
    $resultmenu = db_query($sqlmenu);
    if ($resultmenu and pg_num_rows($resultmenu) > 0) {
        $item = pg_result($resultmenu, 0, 0);
    } else {
        if (db_getsession('DB_itemmenu_acessado')) {
            $item = db_getsession('DB_itemmenu_acessado');
        } else {
            $item = $modulo;
        }
    }
    $sqlseq = "select nextval('db_logsacessa_codsequen_seq')";
    $resultseq = db_query($sqlseq);
    $codsequen = pg_result($resultseq, 0, 0);
    // grava codigo na sessao
    db_putsession("DB_itemmenu_acessado", $item);
    db_putsession("DB_acessado", $codsequen);
    if ((int) $matricula != 0 or (int) $inscricao != 0 or (int) $numcgm != 0) {
        $string .= " (";
        $string .= (int) $matricula != 0 ? "Matricula: {$matricula}" : "";
        $string .= (int) $inscricao != 0 ? "Inscricao: {$inscricao}" : "";
        $string .= (int) $numcgm != 0 ? "Numcgm: {$numcgm}" : "";
        $string .= ")";
    }
    $data = date("Y-m-d");
    $hora = date("G:i:s");
    db_query("BEGIN");
    $sqlinsert = "INSERT INTO db_logsacessa (codsequen, ip, data, hora, arquivo, obs, id_usuario, id_modulo, id_item, coddepto, instit) ";
    $sqlinsert .= "VALUES ({$codsequen}, ";
    $sqlinsert .= "        '{$_SERVER["REMOTE_ADDR"]}', ";
    $sqlinsert .= "        '{$data}', ";
    $sqlinsert .= "        '{$hora}', ";
    $sqlinsert .= "        '{$_SERVER["REQUEST_URI"]}', ";
    $sqlinsert .= "        '{$string}', ";
    $sqlinsert .= "        {$usuario}, ";
    $sqlinsert .= "        {$modulo}, ";
    $sqlinsert .= "        {$item}, ";
    $sqlinsert .= "        NULL, ";
    $sqlinsert .= "        {$instit}) ";
    $result = db_query($sqlinsert) or die(pg_last_error() . " - SQL:" . $sqlinsert);
    if (pg_cmdtuples($result) > 0) {
        db_query("COMMIT");
    } else {
        db_query("ROLLBACK");
    }
    return;
}
//  $DB_BASE = "template1";
//  global $HTTP_SESSION_VARS;
//  $HTTP_SESSION_VARS["DB_SELLER"] = "on";
//  $HTTP_SESSION_VARS["DB_servidor"] = $servidor;
//
//}
//if(!isset($trocaip) &&   !isset($atualiza)){
require "libs/db_conecta.php";
require "libs/db_usuariosonline.php";
//}else{
//  $DB_SERVIDOR = $servidor;
//  $conn = pg_connect("host=$DB_SERVIDOR dbname=template1 user=postgres");
//}
//  echo  db_getsession();
if (isset($atualiza)) {
    db_putsession("DB_NBASE", $db_base);
    $DB_BASE = db_getsession("DB_NBASE");
    echo "<script>\n          top.topo.document.getElementById('auxAcesso').value = '" . $DB_BASE . "';\n        </script>\n  ";
    /*
      $hora = time();
      pg_exec("insert into db_usuariosonline 
                   values(".db_getsession("DB_id_usuario").",
    			          ".$hora.",
    					  '".(isset($_SERVER["HTTP_X_FORWARDED_FOR"])?$_SERVER["HTTP_X_FORWARDED_FOR"]:$HTTP_SERVER_VARS['REMOTE_ADDR'])."',
    					  '".db_getsession("DB_login")."',
    					  'Entrou no sistema',					  
    					  '',
    					  ".time().",
    					  ' ')") or die("Erro:(27) inserindo arquivo em db_usuariosonline: ".pg_errormessage());
    */
}