X-Git-Url: https://git.llucax.com/mecon/samurai.git/blobdiff_plain/8f8105f7e97f9e2f9f138ee3560cf33f4f2ce9df..c4f0334feae6676cfd92fc128ebe8e551f2c7717:/lib/SAMURAI/Usuario.php?ds=inline diff --git a/lib/SAMURAI/Usuario.php b/lib/SAMURAI/Usuario.php index 859f62c..3a93db5 100644 --- a/lib/SAMURAI/Usuario.php +++ b/lib/SAMURAI/Usuario.php @@ -26,6 +26,7 @@ require_once 'PEAR.php'; require_once 'Perfil.php'; +require_once 'MECON/Usuario.php'; // +X2C Class 207 :SAMURAI_Usuario @@ -184,6 +185,9 @@ class SAMURAI_Usuario { $this->_db = $db; $this->setLogin($login); if (!is_null($login)) { + $tmp =& new MECON_Usuario(null, $login); + $this->setNrodoc($tmp->getDni()); + $this->setNombre($tmp->getNombre()); $this->_obtenerDatosDb(); } } @@ -241,7 +245,7 @@ class SAMURAI_Usuario { //FORECHEO LO QUE ME DEVUELVA GET USUARIOS $rta = array (); foreach (SAMURAI_Usuario::getUsuarios($db, $id_sistema) as $Usuario) { - $rta[$permiso->getLogin()] = $permiso->getNombre(); + $rta[$Usuario->getLogin()] = $Usuario->getNombre(); } return $rta; } @@ -279,28 +283,12 @@ class SAMURAI_Usuario { function _obtenerDatosDb() // ~X2C { $sql = parse_ini_file(dirname(__FILE__) . '/Usuario/consultas.ini', true); - $tmp = $sql['obtener_datos_usuario'].$sql['obtener_datos_usuario3']; - $dbh = $this->_db->prepare($tmp); - $res = $this->_db->execute($dbh,array($this->getLogin())); - - if ($re = $res->fetchRow(DB_FETCHMODE_ASSOC)) { - if (isset($re['nrodoc'])) { - $this->setNrodoc($re['nrodoc']); - } - else { - $this->setNrodoc(); - } - if (isset($re['nombre'])) { - $this->setNombre($re['nombre']); - } - else { - $this->setNombre(); - } - } + $tmp = $sql['obtener_perfiles_usuario']; $dbh = $this->_db->prepare($tmp); $res = $this->_db->execute($dbh,array($this->getLogin(), $_SESSION['samurai']['id_sistema'])); $rta = array(); + while ($re = $res->fetchRow(DB_FETCHMODE_ASSOC)) { $tmp = new SAMURAI_Perfil($this->_db, $re['id_perfil']); $rta[] = $tmp->getId(); @@ -400,15 +388,19 @@ class SAMURAI_Usuario { */ function verificarLogin() // ~X2C { - $sql = parse_ini_file(dirname(__FILE__) . '/Usuario/consultas.ini', true); - $tmp = $sql['verificar_login']; - $dbh = $this->_db->prepare($tmp); - $res = $this->_db->execute($dbh,array($this->getLogin())); - $re = $res->fetchRow(DB_FETCHMODE_ASSOC); - if ($re['cuenta'] == 0) { + $usu = new MECON_Usuario(); + $tmp = $usu->verificarLogin($this->getLogin()); + if ($tmp) { + if (PEAR::isError($tmp)) { + return $tmp; + } + else { + return true; + } + } + else { return new PEAR_Error('Usuario no reconocido.
Recuerde que éste debe haberse logueado previamente a Intranet'); } - return 1; } // -X2C @@ -433,15 +425,15 @@ class SAMURAI_Usuario { } // -X2C - // +X2C Operation 377 + // +X2C Operation 386 /** * Metodo estatico que permite asociar un usuario con un perfil en un sistema determinado. * * @param DB &$db Conexion a la base de datos - * @param string $login Login del usuario - * @param int $id_perfil Identificador del perfil a asociar - * @param int $id_sistema Identificador del sistema en el cual se quiere realizar la asociacion - * @param string $responsable Login del usuario que esta realizando los cambios + * @param string $login Login del usuario que se quiere asociar + * @param int $id_perfil Identificador del perfil que se quiere asociar + * @param int $id_sistema identificador del sistema en el que se esta haciendo la asociacion + * @param int $responsable Login del usuario que esta haciendo los cambios * * @return mixed * @access public @@ -450,16 +442,21 @@ class SAMURAI_Usuario { function asociarPerfil(&$db, $login, $id_perfil, $id_sistema, $responsable) // ~X2C { $sql = parse_ini_file(dirname(__FILE__) . '/Usuario/consultas.ini', true); - - //Verifico que el usuario exista - $tmp = $sql['verificar_login']; - $dbh = $db->prepare($tmp); - $res = $db->execute($dbh,array($login)); - $re = $res->fetchRow(DB_FETCHMODE_ASSOC); - if ($re['cuenta'] == 0) { - return new PEAR_Error('Usuario no reconocido.'); - } + $usu = new MECON_Usuario(); + $tmp = $usu->verificarLogin($login()); + if ($tmp) { + if (PEAR::isError($tmp)) { + return $tmp; + } + else { + return true; + } + } + else { + return new PEAR_Error('Usuario no reconocido.
Recuerde que éste debe haberse logueado previamente a Intranet'); + } + //Asocio el perfil con el usuario en perfil_sist_usuario $datos = array ('login' => $login, 'id_perfil' => $id_perfil, @@ -476,4 +473,4 @@ class SAMURAI_Usuario { // -X2C } // -X2C Class :SAMURAI_Usuario -?> +?> \ No newline at end of file