]> git.llucax.com Git - mecon/samurai.git/blob - sistema/www/perfiles/perfiles-abm.php
fdc25fccb9ccc41782857782cde8af5f32173188
[mecon/samurai.git] / sistema / www / perfiles / perfiles-abm.php
1 <?php
2 // vim: set expandtab tabstop=4 softtabstop=4 shiftwidth=4 foldmethod=marker:
3 // +----------------------------------------------------------------------+
4 // | PHP Version 4                                                        |
5 // +----------------------------------------------------------------------+
6 // | Copyright (c) 1997-2003 The PHP Group                                |
7 // +----------------------------------------------------------------------+
8 // | This source file is subject to version 2.02 of the PHP license,      |
9 // | that is bundled with this package in the file LICENSE, and is        |
10 // | available at through the world-wide-web at                           |
11 // | http://www.php.net/license/2_02.txt.                                 |
12 // | If you did not receive a copy of the PHP license and are unable to   |
13 // | obtain it through the world-wide-web, please send a note to          |
14 // | license@php.net so we can mail you a copy immediately.               |
15 // +----------------------------------------------------------------------+
16 // | Created: lun jul  7 13:30:05 ART 2003
17 // | Author:  Martin Marrese <mmarre@mecon.gov.ar>
18 // +----------------------------------------------------------------------+
19 //
20 // $Id$
21 // 
22     
23     require_once 'MECON/HTML/QuickForm.php';
24     require_once 'MECON/HTML/Tabla.php';
25
26 //CREO LOS OBJETO NECESARIOS {{{
27     $SAMURAI = new Samurai($DB);
28     $FORM    = new MECON_HTML_QuickForm ('perfiles_abm','post','perfiles-abm');
29 // }}}
30 //AGREGO LOS ELEMENTOS DEL FORM {{{
31     $FORM->addElement ('header', 'cabecera', 'ABM Permisos');
32     $FORM->addElement ('hidden', 'id_perfil');
33     $FORM->addElement ('text'  , 'desc_permiso', 'Descripcion', array('size'=>'50'));
34     $FORM->addElement ('static', 'responsable' , 'Responsable', $_SESSION['samurai']['login']);
35     $group[] = HTML_QuickForm::createElement('submit', 'aceptar' , 'Grabar');
36     $FORM->addGroup($group,'botones');
37 // }}}
38 //AGREGO LAS REGLAS DE VALIDACION DE LOS ELEMENTOS {{{
39     $FORM->addRule('desc_permiso', 'El campo descripcion es obligatorio', 'required', '', 'client');
40 // }}}
41 //CREO EL OBJETO PERMISO {{{
42     //Obtengo el id del permiso.
43     $idPermiso =& $FORM->getElement('id_permiso');
44     if (isset($_GET['accion']) && $_GET['accion'] != '') {
45         //Viene en el get es -> modificar o eliminar, me ocupo yo.
46         $id_permiso = $_GET['idPermiso'];
47         $idPermiso->setValue($id_permiso);
48     }
49     else {
50         //Viene en el post, no me ocupo yo.
51         $id_permiso = $idPermiso->getValue();
52     }
53     $PERMISO = new Permiso ($DB, $id_permiso);
54 // }}}
55 //SETEO LOS VALORES DE LOS ELEMENTOS DEL OBJETO FORM {{{
56     if (isset($_GET['accion']) && $_GET['accion'] != '') {
57         //MODIFICACION -> agrego la info a los elementos
58         $desc_permiso =& $FORM->getElement  ('desc_permiso');
59         $responsable  =& $FORM->getElement  ('responsable' );
60         $group        =& $FORM->getElement  ('botones'     );
61         $group        =& $group->getElements('aceptar'     );
62         $aceptar      =& $group[0];
63
64         $desc_permiso->setValue ($PERMISO->getDescripcion());
65         
66         if ($PERMISO->getResponsable() != '') {
67             $responsable->setValue($PERMISO->getResponsable());
68         }
69         
70         $aceptar->setValue('Modificar');
71         
72         //ELIMINACION -> modifico el valor del boton
73         if ($_GET['accion'] == 'e') {
74             $aceptar->setValue('Eliminar');
75             $FORM->freeze();
76         }
77     }
78 // }}}
79 //VALIDO EL FORMULARIO {{{
80     if ($FORM->validate()) {
81         $desc_permiso =& $FORM->getElement  ('desc_permiso');
82         $responsable  =& $FORM->getElement  ('responsable' );
83         $group        =& $FORM->getElement  ('botones'     );
84         $group        =& $group->getElements('aceptar'     );
85         $aceptar      =& $group[0];
86         
87         $PERMISO->setDescripcion($desc_permiso->getValue());
88         $PERMISO->setResponsable($responsable->_text); //TODO URGENTE Modificar esto. No tiene metodo static::getValue()
89         
90         //Verifico si se produjo algun error
91         $res = $PERMISO->guardarDatos($aceptar->getValue());
92
93         if (PEAR::isError($res)) {
94             $TABLA = new Tabla ('cellspacing=0');
95             $row = array ('<font color="red"><b>'.$res->getMessage().'</b></font>');
96             $TABLA->addRow($row,'align=left');
97         }
98         else {
99             $FORM->freeze();
100             header('Location: permisos');
101         }
102     }
103 // }}}
104         
105 //DIBUJO LA PAGINA {{{
106     $MARCO = new Marco ('../../conf/confSecciones.php');
107     $MARCO->addTitle('ABM Permisos');
108     if (isset($TABLA)) {
109         $MARCO->addBody($TABLA->toHtml(1));
110     }
111     $MARCO->addBody($FORM);
112     $MARCO->display();
113 //
114 //FIN
115 ?>