]> git.llucax.com Git - mecon/samurai.git/blobdiff - lib/SAMURAI/Usuario.php
Finalizada las consultas de los sistemas. Se puede ver la informacion y reactivar...
[mecon/samurai.git] / lib / SAMURAI / Usuario.php
index 015349e1f725e0959a337821b487ebb3a74dd41b..91ce6c50a102ffb6ca19f37fa093cda509bd1ee8 100644 (file)
@@ -32,6 +32,7 @@ require_once 'MECON/Usuario.php';
 // +X2C Class 207 :SAMURAI_Usuario
 /**
  * Clase para el manejo de los usuarios.
+@see \ref page_samurai_html_usuario
  *
  * @access public
  */
@@ -76,6 +77,14 @@ class SAMURAI_Usuario {
      */
     var $_perfiles;
 
+    /**
+     * Identificador del sistema en el cual se esta trabajando.
+     *
+     * @var    int $idSistema
+     * @access protected
+     */
+    var $_idSistema;
+
     /**
      * Gets Login.
      *
@@ -176,14 +185,16 @@ class SAMURAI_Usuario {
      *
      * @param  SAMURAI_DB &$db Objeto conexion.
      * @param  string $login Login del usuario
+     * @param  int $idSistema Identificador del sistema en el cual se esta trabajando
      *
      * @return void
      * @access public
      */
-    function SAMURAI_Usuario(&$db, $login = null) // ~X2C
+    function SAMURAI_Usuario(&$db, $login = null, $idSistema = null) // ~X2C
     {
         $this->_db = $db; 
         $this->setLogin($login);
+        $this->_idSistema = $idSistema;
         if (!is_null($login)) {
             $tmp =& new MECON_Usuario(null, $login);
             $this->setNrodoc($tmp->getDni());
@@ -266,7 +277,7 @@ class SAMURAI_Usuario {
     {
         $rta = array ();
         foreach (SAMURAI_Usuario::_getLoginUsuarios($db, $id_sistema) as $login) {
-            $tmp = new SAMURAI_Usuario($db,$login);
+            $tmp = new SAMURAI_Usuario($db, $login, $id_sistema);
             array_push($rta, $tmp);
         }
         return $rta;
@@ -286,11 +297,13 @@ class SAMURAI_Usuario {
         
         $tmp = $sql['obtener_perfiles_usuario'];
         $dbh = $this->_db->prepare($tmp);
-        $res = $this->_db->execute($dbh,array($this->getLogin(), $_SESSION['samurai']['id_sistema']));
+        $res = $this->_db->execute($dbh,array($this->getLogin(),
+                    $this->_idSistema));
         $rta = array();
 
         while ($re  = $res->fetchRow(DB_FETCHMODE_ASSOC)) {
-            $tmp = new SAMURAI_Perfil($this->_db, $re['id_perfil']);
+            $tmp = new SAMURAI_Perfil($this->_db, $re['id_perfil'],
+                    $this->_idSistema);
             $rta[] = $tmp->getId();
         }
         $this->setPerfiles($rta);
@@ -334,12 +347,12 @@ class SAMURAI_Usuario {
     function _grabarDb() // ~X2C
     {   
         $datos = array ('login', 'id_perfil', 'id_sistema', 'responsable');
-        $re = $this->_db->autoPrepare('perfil_sist_usuario', $datos, DB_AUTOQUERY_INSERT);
+        $re = $this->_db->autoPrepare('samurai.perfil_sist_usuario', $datos, DB_AUTOQUERY_INSERT);
         foreach ($this->getPerfiles() as $perfil) {
             $datos = array ($this->getLogin(),
                             $perfil,
-                            $_SESSION['samurai']['id_sistema']
-                            $_SESSION['samurai']['login']);
+                            $this->_idSistema
+                            $_SESSION['usuario']);
             $res = $this->_db->execute($re, $datos);
             if (PEAR::isError($res)) {
                 return $res;
@@ -360,7 +373,7 @@ class SAMURAI_Usuario {
         $sql = parse_ini_file(dirname(__FILE__) . '/Usuario/consultas.ini', true);
         $tmp = $sql['borrar'];
         $dbh = $this->_db->prepare($tmp);
-        $tmp = array ($this->getLogin(), $_SESSION['samurai']['id_sistema']);
+        $tmp = array ($this->getLogin(), $this->_idSistema);
         return $this->_db->execute($dbh,$tmp);        
     }
     // -X2C
@@ -416,7 +429,8 @@ class SAMURAI_Usuario {
         $sql = parse_ini_file(dirname(__FILE__) . '/Usuario/consultas.ini', true);
         $tmp = $sql['verificar_login2'];
         $dbh = $this->_db->prepare($tmp);
-        $res = $this->_db->execute($dbh,array($this->getLogin(), $_SESSION['samurai']['id_sistema']));
+        $res = $this->_db->execute($dbh,array($this->getLogin(),
+                    $this->_idSistema));
         $re  = $res->fetchRow(DB_FETCHMODE_ASSOC);
         if ($re['login']) {
             return new PEAR_Error('El usuario seleccionado ya esta cargado. Modifique sus opciones.');