// $Rev$
//
-/** \page page_
-
-\section PRUEBA PRUEBA
-hola esto es una prueba
-
- */
-
-
require_once 'PEAR.php';
require_once 'Perfil.php';
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
*/
$this->setLogin($login);
$this->_idSistema = $idSistema;
if (!is_null($login)) {
- $tmp =& new MECON_Usuario(null, $login);
+ $tmp =& new MECON_Usuario($db, null, $login);
$this->setNrodoc($tmp->getDni());
$this->setNombre($tmp->getNombre());
$this->_obtenerDatosDb();
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,
*/
function verificarLogin() // ~X2C
{
- $usu = new MECON_Usuario();
+ $usu = new MECON_Usuario($this->_db);
$tmp = $usu->verificarLogin($this->getLogin());
if ($tmp) {
if (PEAR::isError($tmp)) {
{
$sql = parse_ini_file(dirname(__FILE__) . '/Usuario/consultas.ini', true);
- $usu = new MECON_Usuario();
+ $usu = new MECON_Usuario($db);
$tmp = $usu->verificarLogin($login);
if ($tmp) {
if (PEAR::isError($tmp)) {
return $tmp;
}
- else {
- return true;
- }
}
else {
return new PEAR_Error('Usuario no reconocido.<br>Recuerde que éste debe haberse logueado previamente a Intranet');
}
// -X2C
+ // +X2C Operation 396
+ /**
+ * Devuelve la informacion completa del usuario. Sistemas a los que esta asignado, perfiles que tiene dentro de cada sistema y permisos.
+ *
+ * @return mixed
+ * @access public
+ */
+ function informacionGeneral() // ~X2C
+ {
+ $sql = parse_ini_file(dirname(__FILE__) . '/Usuario/consultas.ini', true);
+ $tmp = $sql['obtener_informacion'];
+ $dbh = $this->_db->prepare($tmp);
+ $res = $this->_db->execute($dbh,array($this->getLogin()));
+
+ if (PEAR::isError($res)) {
+ return $res;
+ }
+
+ $rta = array();
+
+ while ($re = $res->fetchRow(DB_FETCHMODE_ASSOC)) {
+ $rta[$re['id_sistema']]['nombre_sistema'] = $re['nombre_sistema'];
+ $rta[$re['id_sistema']]['perfiles'][$re['id_perfil']]['desc_perfil'] =
+ $re['desc_perfil'];
+
+ $rta[$re['id_sistema']]['perfiles'][$re['id_perfil']]['permisos'][$re['id_permiso']]
+ [$re['observaciones']]['desc_permiso'] = $re['desc_permiso'];
+
+ $rta[$re['id_sistema']]['perfiles'][$re['id_perfil']]['permisos'][$re['id_permiso']]
+ [$re['observaciones']]['observaciones'] = $re['observaciones'];
+ }
+
+ return $rta;
+ }
+ // -X2C
+
+ // +X2C Operation 398
+ /**
+ * Funcion que obtiene la lista de usuarios que tienen al menos un permiso en la intranet.
+ *
+ * @param DB &$db Conexion a la base de datos
+ * @param string $login Parte del login a filtrar
+ *
+ * @return mixed
+ * @access public
+ * @static
+ */
+ function filtrarUsuarios(&$db, $login) // ~X2C
+ {
+ $sql = parse_ini_file(dirname(__FILE__) . '/Usuario/consultas.ini', true);
+ $sql = str_replace ('##?##', $login, $sql['obtener_datos_compartido']);
+ $db->setFetchMode(DB_FETCHMODE_ASSOC);
+ return $db->query($sql);
+ }
+ // -X2C
+
} // -X2C Class :SAMURAI_Usuario
-?>
\ No newline at end of file
+?>