X-Git-Url: https://git.llucax.com/mecon/samurai.git/blobdiff_plain/8f8105f7e97f9e2f9f138ee3560cf33f4f2ce9df..38d0d26cbb40a662e0676e14d848ab76a976aeeb:/lib/SAMURAI/Usuario.php
diff --git a/lib/SAMURAI/Usuario.php b/lib/SAMURAI/Usuario.php
index 859f62c..b8006ba 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,