2 // vim: set expandtab tabstop=4 shiftwidth=4 foldmethod=marker:
3 // +--------------------------------------------------------------------+
4 // | Ministerio de Economía |
5 // | AI (Administrador de Intranet) |
6 // +--------------------------------------------------------------------+
7 // | This file is part of AI. |
9 // | AI is free software; you can redistribute it and/or modify |
10 // | it under the terms of the GNU General Public License as published |
11 // | by the Free Software Foundation; either version 2 of the License, |
12 // | or (at your option) any later version. |
14 // | AI is distributed in the hope that it will be useful, but |
15 // | WITHOUT ANY WARRANTY; without even the implied warranty of |
16 // | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
17 // | General Public License for more details. |
19 // | You should have received a copy of the GNU General Public License |
20 // | along with Hooks; if not, write to the Free Software Foundation, |
21 // | Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
22 // +--------------------------------------------------------------------+
23 // | Creado: vie jun 27 17:08:18 ART 2003 |
24 // | Autor: Leandro Lucarella <llucar@mecon.gov.ar> |
25 // +--------------------------------------------------------------------+
31 require_once 'MECON/HTML/Arbol/ArbolDB.php';
32 require_once 'AIForm.php';
33 require_once 'Servicio.php';
36 // Creo el árbol con los servicios. {{{
39 'tabla' => 'servicio',
42 'id_padre' => 'servicio_padre',
43 'prepend_link' => 'servicios?accion='.MODIFICACION.'&id='
45 $arbol = new HTML_ArbolDB($dbdata, '/MECON/images/arbol_noticias.gif');
48 // Creo un servicio y seteo su id. {{{
49 $servicio = new Servicio;
50 $servicio->servicio = @$_REQUEST['id'];
53 // Creo formulario. {{{
57 // Verifico que la accion sea válida. {{{
58 switch(@$_REQUEST['accion']) {
61 $accion = $_REQUEST['accion'];
68 // Verifico si ya se envio el formulario. {{{
69 $botones = $form->getSubmitValue('botones');
70 if ($boton = @join('', array_keys($botones))) {
71 $boton = $boton . '_' . strtolower($botones[$boton]);
74 case 'aceptar_agregar':
77 case 'modificar_borrar':
78 // Viene de modificar, hay que confirmar primero.
80 case 'aceptar_borrar':
82 $servicio->servicio = $form->getSubmitValue('servicio');
84 case 'borrar_cancelar':
85 // Indico que viene de un formulario cancelado.
87 case 'aceptar_modificar':
88 $accion = MODIFICACION;
89 $servicio->servicio = $form->getSubmitValue('servicio');
94 // Inicio el formulario, cargando datos de ser necesario. {{{
95 if ($accion & (BAJA | MODIFICACION)) {
96 $err =& $servicio->cargar($DB);
97 if (PEAR::isError($err)) {
98 die($err->getMessage());
100 $form->iniciar($servicio, $accion);
103 $form->iniciar($servicio);
107 // Freezo de ser necesario. {{{
113 // Me fijo si se cargo un formulalrio y si es válido. {{{
114 if ($form->validate()) {
117 $form->llenarObjeto($servicio);
118 $err =& $servicio->guardar($DB);
119 if (PEAR::isError($err)) {
120 die($err->getMessage());
122 header(sprintf('Location: servicios?accion=%d&id=%d',
123 MODIFICACION, $servicio->servicio));
127 if (!@$a_confirmar) {
128 $form->llenarObjeto($servicio);
129 $err =& $servicio->borrar($DB);
130 if (PEAR::isError($err)) {
131 die($err->getMessage());
133 header('Location: servicios');
139 $form->llenarObjeto($servicio);
140 $err =& $servicio->guardar($DB);
141 if (PEAR::isError($err)) {
142 die($err->getMessage());
144 header(sprintf('Location: servicios?accion=%d&id=%d',
145 MODIFICACION, $servicio->servicio));
155 $LAYOUT->setCellContents(0, 0, $arbol);
156 $LAYOUT->setCellContents(0, 2, $body);
157 $MARCO->addBody($LAYOUT);