X-Git-Url: https://git.llucax.com/mecon/samurai.git/blobdiff_plain/6fc69c96ec6c616c137688e49a2d212a10367ca4..f36973cf590bb2a3f616609a53aba542fa93a8fa:/src/www/include/prepend.php diff --git a/src/www/include/prepend.php b/src/www/include/prepend.php index f0e9e9e..ab7866b 100644 --- a/src/www/include/prepend.php +++ b/src/www/include/prepend.php @@ -1,83 +1,63 @@ | +// | Creado: fri mar 21 ART 2003 | +// | Autor: Martin Marrese | // +--------------------------------------------------------------------+ // +// $Id$ +// // $URL$ // $Rev$ // $Date$ // $Author$ -// -// Comienza el manejo de sesiones. +// Basado en prepend.php de Horas Extras de Leandro Lucarella + session_start(); -// Hace que de forma general, si hay un error, se interrumpa la ejecución -// (excepto aquellos que sean advertencias). require_once 'PEAR.php'; -PEAR::setErrorHandling( PEAR_ERROR_DIE ); +require_once 'DB.php'; +require_once 'Samurai/Perm.php'; // SAMURAI_LIB -> Manejo de permisos /home/intranet/lib +require_once 'HE/hooks.php'; // HE - HOOKS +require_once 'lib/SA/Sistemas.php'; // SA - Sistemas -// Obtiene la sesión de Embperl. -require_once 'HE/Session/Perl.php'; -$udat = HE_Session_Perl::udat(); -// Se fija si está logueado en la intranet. -if ( $udat === false or !isset( $udat['user'] ) or !isset( $udat['nro_doc'] ) ) { - // Limpia los datos de la sesión. - session_destroy(); - setcookie( session_name(), '', 0, '/', '.mecon.ar' ); - $_SESSION = array(); - // Redirecciona al login. - header( 'Location: /' ); - exit; -} elseif ( is_string( $udat ) ) { - die( "

ERROR DE SESION

$udat

Este es un error no esperado, por favor anote el mensaje de error e informelo a ".$basehost."@mecon.gov.ar" ); +if (isset($_POST['id_sistema']) && isset($_POST['usuario'])) { + $_SESSION['id_sistema_remoto'] = $_POST['id_sistema']; + $_SESSION['usuario'] = $_POST['usuario']; } - -// Setea las variables de usuario. -$_SESSION['usuario']['login'] = $udat['user']; -$_SESSION['usuario']['nrodoc'] = intval( $udat['nro_doc'] ); - -// Obtiene el nivel del usuario. -require_once 'HE/DB/ABM/Usuario.php'; -$USR =& new HE_DB_ABM_Usuario; -$_SESSION['usuario']['nivel'] = $USR->nivel(); - -// Obtiene la dependencia del usuario. -require_once 'HE/DB/Persona.php'; -$PRS =& new HE_DB_Persona; -switch ( $_SESSION['usuario']['login'] ) { - case 'llucar@mecon': $_SESSION['usuario']['dependencia'] = '3002030702'; break; - case 'mmespi@mecon': $_SESSION['usuario']['dependencia'] = '3002030702'; break; - case 'rcarta@mecon': $_SESSION['usuario']['dependencia'] = '1000020000'; break; - case 'aausil@mecon': $_SESSION['usuario']['dependencia'] = '1301010000'; break; - case 'pabaez@mecon': $_SESSION['usuario']['dependencia'] = '3002030300'; break; - case 'vfranc@mecon': $_SESSION['usuario']['dependencia'] = '3002030203'; break; - case 'malvar1@mecon': $_SESSION['usuario']['dependencia'] = '1200000003'; break; - case 'dcolle@mecon': $_SESSION['usuario']['dependencia'] = '8102020000'; break; - default: $_SESSION['usuario']['dependencia'] = $PRS->dependencia(); +elseif (!isset($_SESSION['id_sistema_remoto']) || !isset($_SESSION['usuario'])) { + die ('ERROR -> Por Post la aplicacion debe recibir el id_sistema y el usuario'); } + + // Levanto la configuracion de SAMURAI + $CONF = require_once 'conf/sist_Conf.php'; + + // Crea el objeto de chequeo de permisos para el sistema local. + $PERMISO =& new SA_Perm($CONF['id_sistema'],$_SESSION['usuario']); + + // Creo la conexion persistente a la base de datos {{{ + $tmp = include 'conf/db_Conf.php'; + $tmp = $tmp['db_type'].'://'.$tmp['db_user'].':'.$tmp['db_pass'].'@'.$tmp['db_host'].'/'.$tmp['db_name']; + + $dbh = DB::connect($tmp,true); + if (DB::isError($dbh)) { + die ($dbh->getMessage()); + } + + // Creo el objeto $sistema_remoto que voy a usar en todos lados + // Tambien lo uso como nexo para sus funciones + $sistema_remoto = new SA_Sistemas ($_SESSION['id_sistema_remoto'], $dbh); + // }}} + + // HOOKS + hook( 'head' ); //Abro tags ya preparo la pagina para ser ususada -// Crea el objeto de chequeo de permisos. -require_once 'HE/Perm.php'; -$PRM =& new HE_Perm; - -// Hooks. -require_once 'lib/HE/lib/hooks.php'; -// Toma la configuración desde un hook. -$CNF = hook( 'config' ); -// Chequeo de permisos. -hook( 'permisos' ); -// Cosas a ejecutar antes de enviar nada de HTML. -hook( 'prepend' ); -// Cabecera HTML. -hook( 'cabecera' ); - -// $URL$ $Rev$ $Date$ $Author$ ?>