X-Git-Url: https://git.llucax.com/mecon/samurai.git/blobdiff_plain/0ecc42815b25c93505bdc63406044ebd4c37283b..f3692172201650cb32cd500e1add6f5735b02a8c:/sistema/www/sistemas/sistemas-permisos.php?ds=sidebyside diff --git a/sistema/www/sistemas/sistemas-permisos.php b/sistema/www/sistemas/sistemas-permisos.php index 1d40f36..020695a 100644 --- a/sistema/www/sistemas/sistemas-permisos.php +++ b/sistema/www/sistemas/sistemas-permisos.php @@ -17,16 +17,22 @@ // | Author: Martin Marrese // +----------------------------------------------------------------------+ // -// $Id: sistemas-permisos.php 21 2003-06-25 22:26:30Z mmarre e -// $Author$ -// $URL$ -// $Date$ -// $Rev$ +// $Id$ // - require_once 'MECON/HTML/QuickForm.php'; - require_once 'MECON/HTML/Tabla.php'; -//OBTENGO EL ID DEL SISTEMA {{ +//REQUIRE_ONCE {{{ + //MECON {{{ + require_once 'MECON/HTML/Tabla.php'; + // }}} + //SAMURAI {{{ + require_once 'SAMURAI/Sistema.php'; + require_once 'SAMURAI/Permiso.php'; + // }}} +// }}} +//VERIFICO SI SE TIENE ACCESO A LA PAGINA{{{ +$SAMURAI_PERM->chequear(SAMURAI_PERM_DEVELOPER); +//}}} +//OBTENGO EL ID DEL SISTEMA {{{ //El id de sistema viene por get o por post, no hay otra posibilidad $idSistema = 0; if (isset($_GET['idSistema'])) { @@ -35,138 +41,69 @@ elseif (isset($_POST['idSistema'])) { $idSistema = $_POST['idSistema']; } + $_SESSION['samurai']['id_sistema'] = $idSistema; // }}} //CREO LOS OBJETO NECESARIOS {{{ - $SAMURAI = new Samurai($DB); - $FORM = new MECON_HTML_QuickForm ('sistemas_permisos','post','sistemas-permisos'); - $SISTEMA = new Sistema ($DB, $idSistema); - $TABLASIST = new Tabla ('cellpadding=2'); - $TABLAPERM = new Tabla ('cellpadding=2'); + $SISTEMA = new SAMURAI_Sistema ($DB, $idSistema); + $TABLASIST = new MECON_HTML_Tabla ('cellpadding=2'); + $TABLAPERM = new MECON_HTML_Tabla ('cellpadding=2'); + $SISTEMA->setResponsable($_SESSION['usuario']); // }}} - $SISTEMA->setResponsable($_SESSION['samurai']['login']); //AGREGO LA INFORMACION DEL SISTEMA {{{ + $row = array ('Datos del sistema'); + $TABLASIST->addRow($row, 'cabecera colspan=3'); $row = array ('Id', 'Nombre', 'Descripcion'); - $TABLASIST->addRow($row, 'cabecera'); + $TABLASIST->addRow($row, 'titulo'); $row = array ($SISTEMA->getId(), $SISTEMA->getNombre(), $SISTEMA->getDescripcion()); $TABLASIST->addRow($row, 'comun'); // }}} -//AGREGO LOS ELEMENTOS DEL FORM {{{ - //Obtengo la lista de permisos - $PERMISOS = $SAMURAI->getSelectPermisos(); - //Agrego elementos - $FORM->addElement ('header', 'cabecera' , 'Agregar una asociacion'); - $FORM->addElement ('hidden', 'idSistema' , $idSistema); - $FORM->addElement ('select', 'permisos' , 'Permisos' , $PERMISOS, array('size' => '1')); - $FORM->addElement ('hidden', 'permant'); //Permiso anterior - $FORM->addElement ('hidden', 'obsant'); //Obseracion anterior - $FORM->addElement ('text' , 'observacion', 'Observacion', array('size' => '30')); - $group[] = HTML_QuickForm::createElement('submit', 'aceptar' , 'Grabar'); - $FORM->addGroup($group,'botones', '', ', '); -// }}} -//VALIDO EL FORMULARIO {{{ - if ($FORM->validate()) { - $idPermiso =& $FORM->getElement ('permisos' ); - $idPerm_ant =& $FORM->getElement ('permant' ); - $observacion =& $FORM->getElement ('observacion'); - $obs_ant =& $FORM->getElement ('obsant' ); - $group =& $FORM->getElement ('botones' ); - $group =& $group->getElements('aceptar' ); - $aceptar =& $group[0]; - - $tmp = $idPermiso->getSelected(); - $tmp = $tmp['0']; - if ($aceptar->getValue() == 'Grabar') { - $error = $SISTEMA->guardarAsociacion($tmp, $observacion->getValue()); - } - elseif ($aceptar->getValue() == 'Modificar') { - $error = $SISTEMA->modificarAsociacion($tmp, $idPerm_ant->getValue(), $observacion->getValue(), $obs_ant->getValue()); - } - elseif ($aceptar->getValue() == 'Eliminar') { - $error = $SISTEMA->eliminarAsociacion($tmp, $observacion->getValue()); - } - - if ($error) { - $group = array (); - $group[] = HTML_QuickForm::createElement('static', 'error' , 'Error', 'La asociacion ya existe, modifique alguno de sus datos.'); - $group[] = HTML_QuickForm::createElement('submit', 'aceptar' , 'Grabar'); - $FORM->removeElement('botones'); - $FORM->addGroup($group,'botones', '', '
'); - } - else { - $idPermiso->setSelected(null); - $observacion->setValue(null); - $aceptar->setValue('Grabar'); - } - } -// }}} -//VERIFICO COMO DEBO LLAMAR AL BOTON SUBMIT {{{ - if (isset($_GET['accion'])) { - $group =& $FORM->getElement ('botones'); - $group =& $group->getElements('aceptar'); - $aceptar =& $group[0]; - - if ($_GET['accion'] == 'm') { - $aceptar->setValue('Modificar'); - } - elseif ($_GET['accion'] == 'e') { - $aceptar->setValue('Eliminar'); - $FORM->freeze(); - } - } -// }}} -//CAPTURO SI HAY ACCION -> MODIFICAR O ELIMINAR -> MUESTRO LOS DATOS EN EL FORM {{{ - if (isset($_GET['accion'])) { - $idPermiso =& $FORM->getElement ('permisos' ); - $idPerm_ant =& $FORM->getElement ('permant' ); - $observacion =& $FORM->getElement ('observacion'); - $obs_ant =& $FORM->getElement ('obsant' ); - $idPermiso->setSelected($_GET['idPermiso']); - $idPerm_ant->setValue($_GET['idPermiso']); - $observacion->setValue($_GET['observacion']); - $obs_ant->setValue($_GET['observacion']); - } -// }}} //AGREGO LA INFORMACION DE LAS ASOCIACIONES {{{ - $aHref = ''; + $aHref = ''; $aHrefModif = $aHref.'Modificar'; $aHrefElim = $aHref.'Eliminar'; + + $TABLA2 = new MECON_HTML_Tabla ('cellspacing=0'); + $tt = ereg_replace ('##ACCION##' , 'n', $aHref); + $tt = ereg_replace ('##PERMISO##', 'p', $tt ); + $tt = ereg_replace ('##OBS##' , 'o', $tt ); + $row = array ($tt.'Asociar nuevo permiso al sistema'); + $TABLA2->addRow($row, 'align=right'); + + $row = array ('Permisos Asociados al Sistema'); + $TABLAPERM->addRow($row, 'cabecera colspan=4'); $row = array ('Nombre', 'Observacion', 'Modif.', 'Elim.'); - $TABLAPERM->addRow($row, 'cabecera'); + $TABLAPERM->addRow($row, 'titulo'); $asocs = $SISTEMA->getAsociaciones(); - - $idPerm_ant =& $FORM->getElement ('permant'); - $obs_ant =& $FORM->getElement ('obsant' ); - - foreach ($asocs as $key => $asoc) { + + foreach ($asocs as $asoc) { + $obs = ereg_replace(' ' , '%20', $asoc['obs']); //Cambio los espacios por %20 para que funcione bien con el netscape $estilo = 'comun'; - $permiso = new Permiso($DB, $asoc['id']); + $permiso = new SAMURAI_Permiso($DB, $asoc['id']); $Modif = ereg_replace('##PERMISO##', $asoc['id'] , $aHrefModif); $Elim = ereg_replace('##PERMISO##', $asoc['id'] , $aHrefElim ); - $Modif = ereg_replace('##OBS##' , $asoc['obs'], $Modif ); - $Elim = ereg_replace('##OBS##' , $asoc['obs'], $Elim ); + $Modif = ereg_replace('##OBS##' , $obs , $Modif ); + $Elim = ereg_replace('##OBS##' , $obs , $Elim ); $Modif = ereg_replace('##ACCION##' , 'm' , $Modif ); $Elim = ereg_replace('##ACCION##' , 'e' , $Elim ); - - if ($permiso->getId() == $idPerm_ant->getValue() && $asoc['obs'] == $obs_ant->getValue()) { - $estilo = 'titulo'; - } - $row = array ($permiso->getDescripcion(), $asoc['obs'], $Modif, $Elim); $TABLAPERM->addRow($row, $estilo); } // }}} +//OPCION VOLVER {{{ + $TABLAVOLVER = new MECON_HTML_Tabla ('cellspacing=0'); + $row = array (' Volver a Sistemas'); + $TABLAVOLVER->addRow($row,'align=left'); +// }}} //DIBUJO LA PAGINA {{{ - $MARCO = new Marco ('../../conf/confSecciones.php'); + $MARCO->addBody($TABLAVOLVER); $MARCO->addTitle('Asociar Permisos y Sistemas'); //AGREGO LA TABLA DEL SISTEMA $MARCO->addBody($TABLASIST); $MARCO->addBody('
'); - //AGREGO LA TABLA DEL FORM - $MARCO->addBody($FORM); - $MARCO->addBody('
'); //AGREGO LA TABLA DE PERMISOS + $MARCO->addBody($TABLA2); $MARCO->addBody($TABLAPERM); $MARCO->display(); // }}}