//
//
//
-/** \page page_samurai_html_usuario Usuario Embebido
+/** \page page_samurai_html_usuario Usuario Embebido
\section page_samurai_html_usuario_descripcion Descripcion
-
- Funcion que sirve para embeber la funcionalidad de los usuario dentro de
- los sistemas que asi lo requieran (Es una copia de la funcionalidad de la
- seccion).
- Necesita para funcionar que se le pase como parametro la referencia al
- objeto MECON_Marco que se este utilizando, ademas del identificador del
- sistema del sistema en el cual se esta trabajando.
- El funcionamiento es completamente independiente del sistema en el cual se
- trabaje, no es necesario que se ingrese como seccion o subseccion. De hecho
- como se ve en el ejemplo solo se embebe una tabla o formulario pero se
- pueden agregar cosas particulares antes y despues de el.
-
- \note Trabaja con variables de sesion asi que es necesario que antes de llamar a
- esta funcion se haya realizado un session_start() (Por ejemplo en el prepend).
+ Samurai provee de una funcion que permite embeber la funcionalidad de
+ usuarios dentro de aquellos sistemas que asi lo requieran.
+ Es completamente independiente del sistema en el cual trabaja y puede ser
+ agregado de cualquier manera (Seccion, Subseccion o Contenido) al sistema.
+
+ \note Es necesario para embeber los usuarios que se haya realizado un
+ session_start().
\section page_samurai_html_usuario_funcionamiento Funcionamiento
- Al ser una copia de la seccion de Samurai, los permisos y validaciones que
- se realizan en esta funcion son las mismas que se realizan en Samurai.
+ Es una copia de la seccion Usuarios dentro de SAMURAI. Se relizan las mismas
+ verificaciones, tiene las mismas condiciones y se utilizan los mismos
+ permisos que en este.
- \subsection page_samurai_html_usuario_funcionamiento_validaciones Validaciones
- Se realizan las siguientes validaciones:
- - Cualquier usuario que se quiera agregar debe haberse logueado al
- menos una vez a la intranet.
- - No puede cargarse dos veces el mismo usuario en un sistema. Solo
- se modifican sus datos.
- - Cada vez que se carga un usuario es necesario asignarle al menos
- un permiso, sino no va a permitir que se ingrese el mismo.
+ \subsection page_samurai_html_usuario_funcionamiento_validaciones Validaciones y Condiciones
+ - Cualquier usuario que se quiera agregar debe haberse logueado al
+ menos una vez a la intranet.
+ - No puede cargarse dos veces el mismo usuario en un sistema.
+ - Cada vez que se carga un usuario es necesario asignarle al menos
+ un perfil, sino no va a permitir que se ingrese el mismo.
\section page_samurai_html_usuario_ejemplo Ejemplo
- La utilizacion de usuario embebido no genera condiciones, queda a criterio
- del desarrollador incluir esta funcionalidad en el lugar que quiera.
-
- De esta manera se agrega la funcionalidad:
+ SAMURAI_HTML_Usuario agrega el contenido directamente en el marco que se
+ este utilizando.
+ Para embeber los usuarios hay que hacerlo de la siguiente manera
+
\code
include 'SAMURAI/HTML/Usuario.php';
-
SAMURAI_HTML_Usuario($MARCO, $ID_SISTEMA);
\endcode
-
- En donde $MARCO es el objeto MECON_Marco que utiliza el sistema y
- $ID_SISTEMA es el identificador numerico del sistema en el cual se esta
- trabajando.
+
+ \note $MARCO es el objeto MECON_Marco o el objeto HTML_DietMarco de
+ intranet.
+ $ID_SISTEMA es el identificador numerico en el cual se esta realizando la
+ accion de embeber.
- Antes o despues de esto se pueden agregar componentes pertenecientes al
- sistema.
+\section page_samurai_html_usuario_permisos Pasos Finales
+ Para que los usuarios puedan acceder a los usuarios embebidos es necesario
+ que en el sistema en el cual se este embebiendo se agregen los permisos que
+ utiliza la seccion Usuarios (enumerados mas abajo), y que estos mediante
+ perfiles se asignen a usuarios.
+ Esto implica que por lo menos un usuario tendra que ser cargado desde
+ SAMURAI para que este tenga acceso a la zona embebida.
- \note Es necesario para ver el contenido de la pagina hacer
- $MARCO->display() al final de la misma.
+ Permisos
+ - usuario alta
+ - usuario baja
+ - usuario modificacion
*/
//REQUIRE ONCE {{{
require_once 'SAMURAI/constantes.php';
//}}}
-/** Funcion que se encarga agregar los componentes necesarios al sistema para
+/**
+ * Funcion que se encarga agregar los componentes necesarios al sistema para
* que se pueda realizar un abm de usuarios.
+@see \ref page_samurai_html_usuario
*
* @param MECON_Marco &$MARCO Referencia al objeto MECON_Marco que se este
* utilizando en la pagina
$SAMURAI_PERM = new SAMURAI_Perm ($_SESSION['usuario'], $id_sistema, $DB);
//}}}
//VERIFICO SI SE TIENE ACCESO A LA PAGINA{{{
- $SAMURAI_PERM->chequear(SAMURAI_ALTA_USUARIO, SAMURAI_BAJA_USUARIO, SAMURAI_MODI_USUARIO);
+ $SAMURAI_PERM->chequear(SAMURAI_PERM_USUARIO_ALTA, SAMURAI_PERM_USUARIO_BAJA, SAMURAI_PERM_USUARIO_MODIF);
//}}}
if (@$_POST['samurai_accion'] == 'abm' || @$_GET['samurai_usuarios'] == 'abm') {
$TABLA3->addRow($row,'align=left');
//Agrego el link a nuevo
- if ($SAMURAI_PERM->tiene(SAMURAI_ALTA_USUARIO)) {
+ if ($SAMURAI_PERM->tiene(SAMURAI_PERM_USUARIO_ALTA)) {
$row = array ($aHref.'<img src="/MECON/images/general_nuevo.gif" border="0">Agregar Nuevo Usuario</a>');
$TABLA2->addRow($row,'align=right');
}
//Genero la cabecera de la tabla
$row = array ('Login','Nombre');
- if ($SAMURAI_PERM->tiene(SAMURAI_MODI_USUARIO)) {
+ if ($SAMURAI_PERM->tiene(SAMURAI_PERM_USUARIO_MODIF)) {
$row[] = 'Modif.';
}
- if ($SAMURAI_PERM->tiene(SAMURAI_BAJA_USUARIO)) {
+ if ($SAMURAI_PERM->tiene(SAMURAI_PERM_USUARIO_BAJA)) {
$row[] = 'Elim.';
}
$TABLA->addRow($row,'cabecera');
$Modif = ereg_replace('##ACCION##', 'm' , $Modif );
$Elim = ereg_replace('##ACCION##', 'e' , $Elim );
$row = array ($usuario->getLogin(), $usuario->getNombre());
- if ($SAMURAI_PERM->tiene(SAMURAI_MODI_USUARIO)) {
+ if ($SAMURAI_PERM->tiene(SAMURAI_PERM_USUARIO_MODIF)) {
$row[] = $Modif;
}
- if ($SAMURAI_PERM->tiene(SAMURAI_BAJA_USUARIO)) {
+ if ($SAMURAI_PERM->tiene(SAMURAI_PERM_USUARIO_BAJA)) {
$row[] = $Elim;
}
}
// }}}
//DIBUJO LA PAGINA {{{
- $MARCO->addBody($TABLA3);
- $MARCO->addBody($TABLA2->toHtml(1));
- $MARCO->addBody($TABLA);
+ $MARCO->addBodyContent($TABLA3);
+ $MARCO->addBodyContent($TABLA2->toHtml(1));
+ $MARCO->addBodyContent($TABLA);
// }}}
}
//}}}
$validar = 1;
$login = null;
}
+ //XXX OBTENGO LA ACCION {{{
+ switch (@$_REQUEST['accion']) {
+ case 'm':
+ $b_accion = 'Modificar';
+ $accion = 'm';
+ break;
+ case 'e':
+ $b_accion = 'Eliminar';
+ $accion = 'e';
+ break;
+ default:
+ $b_accion = 'Grabar';
+ $accion = '';
+ break;
+ }
+ //}}}
$TABLA = new MECON_HTML_Tabla ('cellspacing=0');
$FORM = new MECON_HTML_QuickForm ('samurai_usuarios','post', $_SERVER['PHP_SELF']);
$SISTEMA = new SAMURAI_Sistema($DB, $id_sistema);
}
$FORM->addElement ('select', 'perfiles' , 'Perfiles', $PERFILES, array('size' => '5', 'multiple' => 'true'));
$FORM->addElement ('hidden', 'responsable', $_SESSION['samurai']['login']);
- $group[] = HTML_QuickForm::createElement('submit', 'aceptar' , 'Grabar');
+ $FORM->addElement ('hidden', 'accion', $accion);
+ $group[] = HTML_QuickForm::createElement('submit', 'aceptar', $b_accion);
$group[] = HTML_QuickForm::createElement('submit', 'cancelar', 'Cancelar', array ('onClick' => 'javascript:window.location = \''.$_SERVER['PHP_SELF'].'\';return false;'));
$FORM->addGroup($group,'botones');
}
}
// }}}
//DIBUJO LA PAGINA {{{
- $MARCO->addBody($TABLA);
+ $MARCO->addBodyContent($TABLA);
if (isset($ERROR)) {
- $MARCO->addBody($ERROR);
+ $MARCO->addBodyContent($ERROR);
}
- $MARCO->addBody($FORM);
+ $MARCO->addBodyContent($FORM);
// }}}
}
//}}}