X-Git-Url: https://git.llucax.com/mecon/samurai.git/blobdiff_plain/3c702b40a1806798e475c48abb456e5a9c2dac72..8f8105f7e97f9e2f9f138ee3560cf33f4f2ce9df:/lib/SAMURAI/Usuario.php?ds=sidebyside diff --git a/lib/SAMURAI/Usuario.php b/lib/SAMURAI/Usuario.php index 57c0489..859f62c 100644 --- a/lib/SAMURAI/Usuario.php +++ b/lib/SAMURAI/Usuario.php @@ -408,9 +408,70 @@ class SAMURAI_Usuario { if ($re['cuenta'] == 0) { return new PEAR_Error('Usuario no reconocido.
Recuerde que éste debe haberse logueado previamente a Intranet'); } - else { - return 1; + return 1; + } + // -X2C + + // +X2C Operation 375 + /** + * Verifica si el login actual ya esta asociado en base. + * + * @return mixed + * @access public + */ + function verificarAsociacionExistente() // ~X2C + { + $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'])); + $re = $res->fetchRow(DB_FETCHMODE_ASSOC); + if ($re['login']) { + return new PEAR_Error('El usuario seleccionado ya esta cargado. Modifique sus opciones.'); + } + return 1; + } + // -X2C + + // +X2C Operation 377 + /** + * 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 + * + * @return mixed + * @access public + * @static + */ + 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.'); + } + + //Asocio el perfil con el usuario en perfil_sist_usuario + $datos = array ('login' => $login, + 'id_perfil' => $id_perfil, + 'id_sistema' => $id_sistema, + 'responsable' => $responsable); + + $res = $db->autoExecute('samurai.perfil_sist_usuario', $datos, DB_AUTOQUERY_INSERT); + if (PEAR::isError($res)) { + return $res; } + + return 1; } // -X2C