//
// $Id$
//
-
- require_once 'MECON/HTML/Tabla.php';
- require_once 'SAMURAI/Permiso.php';
+//VERIFICO SI SE TIENE ACCESO A LA PAGINA {{{
+$SAMURAI_PERM->setSistema(SAMURAI_PERM);
+if (!$SAMURAI_PERM->tiene(SAMURAI_PERM_DEVELOPER)) {
+ $SAMURAI_PERM->chequear(SAMURAI_PERM_DEVELOPER);
+}
+$MARCO =& new MECON_Marco ('/var/www/sistemas/samurai/sistema/conf/confSecciones.php', $SAMURAI_PERM);
+//}}}
+
+//REQUIRE ONCE {{{
+require_once 'MECON/HTML/Image.php';
+require_once 'MECON/HTML/Link.php';
+require_once 'MECON/HTML/TablaDB.php';
+require_once 'SAMURAI/Permiso.php';
+//}}}
-//LINKS A PERMISOS-ABM {{{
- $aH = '<a href="permisos-abm?accion=##ACCION##&idPermiso=##NUEVO##">';
- $aHModif = $aH.'<img src="/MECON/images/general_modificar.gif" border="0" alt="Modificar Permiso"></a>';
- $aHElim = $aH.'<img src="/MECON/images/general_eliminar.gif" border="0" alt="Eliminar Permiso" ></a>';
- $aHModifdes = '<img src="/MECON/images/general_modificar_des.gif" border="0" alt="No se puede modificar Permiso">';
- $aHElimdes = '<img src="/MECON/images/general_eliminar_des.gif" border="0" alt="No se puede eliminar Permiso">';
-// }}}
//VEO SI HAY QUE ELEGIR EN QUE SISTEMA TRABAJAR {{{
-if (!@$_SESSION['samurai']['id_sistema'] || !@$_SESSION['samurai']['login']) {
- header('Location: ./../sel-sistema');
+if (!@$_SESSION['samurai']['id_sistema']) {
+ header('Location: ./../sel-sistema?redirect=permisos/permisos');
}
-// }}}
-//CREO LOS OBJETOS NECESARIOS {{{
- $TABLA2 = new Tabla ('cellspacing=0');
- $TABLA = new Tabla ('cellpadding=2');
-// }}}
+//}}}
+
//OBTENGO LA INFORMACION DE LA BASE {{{
- $permisos = SAMURAI_Permiso::getPermisos($DB);
+$res = SAMURAI_Permiso::getPermisosPager($DB);
+if (PEAR::isError($res)) {
+ trigger_error('Error: ' . $res->getMessage() . "\n", E_USER_ERROR);
+}
+
// }}}
-//AGREGO LOS DATOS A LAS TABLAS {{{
- $row = array ($aH.'<img src="/MECON/images/general_nuevo.gif" border="0">Ingresar Nuevo Permiso</a>');
- $TABLA2->addRow($row,'align=right');
- $row = array ('Id','Descripcion','Modif.','Elim.');
- $TABLA->addRow($row,'cabecera');
-
- foreach ($permisos as $permiso) {
- if ($permiso->asociadoASistema()) {
- $Modif = $aHModifdes;
- $Elim = $aHElimdes;
- }
- else {
- $Modif = ereg_replace('##NUEVO##' , $permiso->getId(), $aHModif);
- $Elim = ereg_replace('##NUEVO##' , $permiso->getId(), $aHElim );
- $Modif = ereg_replace('##ACCION##' , 'm' , $Modif );
- $Elim = ereg_replace('##ACCION##' , 'e' , $Elim );
- }
- $row = array ( $permiso->getId(),
- $permiso->getDescripcion(),
- $Modif,
- $Elim,
- );
- $TABLA->addRow($row);
- $TABLA->updateColAttributes(0,'width="10%" ');
- $TABLA->updateColAttributes(1,'width="70%"');
- $TABLA->updateColAttributes(2,'width="10%"');
- $TABLA->updateColAttributes(3,'width="10%"');
- $TABLA->updateRowAttributes(0,'cabecera');
+
+//CREO LA TABLA DE PERMISOS {{{
+$TABLA =& new MECON_HTML_TablaDB ('Permisos');
+$TABLA->addLink(
+ 'nuevo',
+ new MECON_HTML_Link(
+ 'permisos-abm', 'Nuevo Permiso',
+ array (
+ 'accion' => '##ACCION##',
+ 'idPermiso' => '##NUEVO##'
+ )
+ )
+ );
+$TABLA->addRow(array('Id', 'DescripciĆ³n', 'Modif.', 'Elimn.'), 'cabecera');
+$pager = $TABLA->addPager($res, null, new MECON_HTML_Link ('permisos', null), 25);
+
+//Agrego las columnas de modificacion y eliminacion {{{
+//Modificar {{{
+$TABLA->addRowsData('%s',
+ array (
+ array (
+ array (
+ 'id_permiso',
+ 'cuenta'
+ ),
+ 'modificar_callback'
+ )
+ )
+ );
+
+function modificar_callback($param) {
+ if ($param['cuenta']) {
+ //DesHabilitado
+ $tmp =& new MECON_HTML_Image (
+ '/MECON/images/general_modificar_des.gif',
+ '(m)'
+ );
+ return $tmp->toHtml();
}
-// }}}
+ else {
+ //Habilitado
+ $tmp =& new MECON_HTML_Link (
+ 'permisos-abm',
+ new MECON_HTML_Image (
+ '/MECON/images/general_modificar.gif',
+ '(M)'
+ ),
+ array (
+ 'accion' => 'm',
+ 'idPermiso' => $param['id_permiso']
+ )
+ );
+ return $tmp->toHtml();
+ }
+}
+//}}}
+//Eliminar {{{
+$TABLA->addRowsData('%s',
+ array (
+ array (
+ array (
+ 'id_permiso',
+ 'cuenta'
+ ),
+ 'eliminar_callback'
+ )
+ )
+ );
+
+function eliminar_callback($param) {
+ if ($param['cuenta']) {
+ //DesHabilitado
+ $tmp =& new MECON_HTML_Image (
+ '/MECON/images/general_eliminar_des.gif',
+ '(e)'
+ );
+ return $tmp->toHtml();
+ }
+ else {
+ //Habilitado
+ $tmp =& new MECON_HTML_Link (
+ 'permisos-abm',
+ new MECON_HTML_Image (
+ '/MECON/images/general_eliminar.gif',
+ '(E)'
+ ),
+ array (
+ 'accion' => 'e',
+ 'idPermiso' => $param['id_permiso']
+ )
+ );
+ return $tmp->toHtml();
+ }
+}
+//}}}
+//}}}
+
+$TABLA->addRows($pager, array ('id_permiso', 'desc_permiso'));
+$TABLA->updateColAttributes(0,'width="10%" ');
+$TABLA->updateColAttributes(1,'width="70%"');
+$TABLA->updateColAttributes(2,'width="10%"');
+$TABLA->updateColAttributes(3,'width="10%"');
+//}}}
+
//DIBUJO LA PAGINA {{{
- $MARCO = new Marco ('../../conf/confSecciones.php');
- $MARCO->addBody($TABLA2->toHtml(1));
$MARCO->addBody($TABLA);
$MARCO->display();
// }}}
-//FIN
?>