]> git.llucax.com Git - mecon/samurai.git/blob - sistema/www/consultas/sistemas.php
BugFix en MECON_Usuario::asociarPerfil
[mecon/samurai.git] / sistema / www / consultas / sistemas.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: miĆ© oct  1 15:17:35 ART 2003
17 // | Author:  Martin Marrese <mmarre@mecon.gov.ar>
18 // +----------------------------------------------------------------------+
19 //
20 // $Id$
21 // 
22
23 //Require_once {{{
24     //PEAR{{{
25     require_once 'HTML/Table.php';
26     //}}}
27     //Mecon {{{
28     require_once 'MECON/HTML/Tabla.php';
29     require_once 'MECON/HTML/Image.php';
30     require_once 'MECON/HTML/Link.php';
31     //}}}
32     //Samurai {{{
33     require_once 'SAMURAI/Sistema.php';
34     require_once 'SAMURAI/Usuario.php';
35     require_once 'SAMURAI/Perfil.php';
36     require_once 'SAMURAI/Permiso.php';
37     //}}}
38 //}}}
39
40 //Verifico si se tiene acceso a la pagina {{{
41     $SAMURAI_PERM->chequear(SAMURAI_PERM_DEVELOPER);
42 //}}}
43
44 //Obtengo la accion y el id del sistema {{{
45     $accion    = (@$_REQUEST['accion'])    ? $_REQUEST['accion']    : 'listado';
46     $subaccion = (@$_REQUEST['subaccion']) ? $_REQUEST['subaccion'] : null;
47     $id_sist   = (@$_REQUEST['id_sist'])   ? $_REQUEST['id_sist']   : null; 
48 //}}}
49
50 //Creo la tabla volver {{{
51     $T_VOLVER     =& new HTML_Table('width="760"');
52     $IMG_VOLVER   =& new MECON_HTML_Image('/MECON/images/general_anterior.gif');
53     $LINK_VOLVER  =& new MECON_HTML_Link('', $IMG_VOLVER);
54 //}}}
55     
56 //ESTADISTICAS_SISTEMAS = LISTADO DE SISTEMAS {{{
57 if (@!$accion || $accion == 'info_listado') {
58     //Creo los objetos necesarios {{{
59         $T_SISTEMAS =& new MECON_HTML_Tabla();
60         $IMG_ACTIVO  =& new MECON_HTML_Image('/MECON/images/general_tilde_azul.gif');
61         $IMG_NACTIVO =& new MECON_HTML_Image('/MECON/images/general_cruz_roja.gif');
62         $LINK_SEL =& new MECON_HTML_Link('sistemas');
63     //}}}
64     
65     //Obtengo la lista de sistemas (habilitados y no habilitados) {{{
66         $sistemas = SAMURAI_Sistema::getSistemas($DB, false);
67     //}}}
68         
69     //Agrego la informacion a la tabla de sistemas {{{
70         $T_SISTEMAS->addRow(array('Listado de Sistemas'), 'cabecera
71                 colspan="4"');
72         $T_SISTEMAS->addRow(array('Id', 'Nombre', 'Descripcion', 'Activo'), 
73                 'titulo');
74         //Agrego la info de los sistemas
75         foreach ($sistemas as $sistema) {
76             $LINK_SEL->setContents(($sistema->getEstado()) ? $IMG_ACTIVO : $IMG_NACTIVO);
77             $LINK_SEL->setGetVars(
78                         array(
79                             'accion'  => 'info_informacion',
80                             'id_sist' => $sistema->getId(),
81                         )
82                        );
83             $row = array (  $sistema->getId(),
84                             $sistema->getNombre(),
85                             $sistema->getDescripcion(),
86                             $LINK_SEL->toHtml()
87                     );
88             $T_SISTEMAS->addRow($row);
89         } 
90         $T_SISTEMAS->updateColAttributes(0, 'width="5%" align="center"');
91         $T_SISTEMAS->updateColAttributes(1, 'width="20%" align="center"');
92         $T_SISTEMAS->updateColAttributes(3, 'width="5%" align="center"');
93         $T_SISTEMAS->updateRowAttributes(0, 'align="left"');
94     //}}}
95     
96     //Agrego la informacion al marco {{{
97         $LINK_VOLVER->setHref('consultas');
98         $MARCO->addBodyContent($T_SISTEMAS);
99         $MARCO->addTitle('Estadisticas de Sistemas');
100         $MARCO->addBodyContent('<BR>');
101         $T_VOLVER->addRow(array($LINK_VOLVER->toHtml()), 'align="left"');
102         $MARCO->addBodyContent($T_VOLVER);
103   //}}}
104 }
105 //}}}
106
107 //ESTADISTICAS_SISTEMAS = INFORMACION DE UN SISTEMA {{{
108 elseif (@!$accion || $accion == 'info_informacion') {
109     //Creo los objetos necesarios {{{
110         $T_SISTEMA  =& new MECON_HTML_Tabla();
111         $T_SISTEMA2 =& new MECON_HTML_Tabla();
112         $T_EST =& new MECON_HTML_Tabla('width="300"');
113         $SISTEMA =& new SAMURAI_Sistema($DB, $id_sist);
114         $IMG_ACTIVO  =& new MECON_HTML_Image('/MECON/images/general_tilde_azul.gif');
115         $IMG_NACTIVO =& new MECON_HTML_Image('/MECON/images/general_cruz_roja.gif');
116         $IMG_SEP =& new MECON_HTML_Image('../images/linea_separacion.gif');
117         
118         $LINK_USUARIOS =& new MECON_HTML_Link('sistemas', '', array('accion' =>
119                     'info_informacion', 'subaccion' => 'info_usuarios',
120                     'id_sist' => $id_sist));
121         $LINK_PERFILES =& new MECON_HTML_Link('sistemas', '', array('accion' =>
122                     'info_informacion', 'subaccion' => 'info_perfiles',
123                     'id_sist' => $id_sist));
124         $LINK_PERMISOS =& new MECON_HTML_Link('sistemas', '', array('accion' =>
125                     'info_informacion', 'subaccion' => 'info_permisos',
126                     'id_sist' => $id_sist));
127     //}}}
128
129     //Agrego la informacion del sistema seleccionado {{{
130         $T_SISTEMA->addRow(array('Datos del Sistema Seleccionado'),'cabecera
131                 colspan="4"');
132         $T_SISTEMA->addRow(array('Id', 'Nombre', 'Descripcion', 'Activo'), 
133                 'titulo');
134         $T_SISTEMA->addRow(array(
135                             $SISTEMA->getId(),
136                             $SISTEMA->getNombre(),
137                             $SISTEMA->getDescripcion(),
138                            ($SISTEMA->getEstado()) ? $IMG_ACTIVO : $IMG_NACTIVO,
139                            )
140                     );
141         $T_SISTEMA->updateColAttributes(0, 'width="5%" align="center"');
142         $T_SISTEMA->updateColAttributes(1, 'width="20%" align="center"');
143         $T_SISTEMA->updateColAttributes(3, 'width="5%" align="center"');
144         $T_SISTEMA->updateRowAttributes(0, 'align="left"');
145
146         $fch_ini =& $SISTEMA->getFechaInicio();
147         $fch_fin =& $SISTEMA->getFechaFin();
148         $fch_imp =& $SISTEMA->getFechaImplementacion();
149         
150         $T_SISTEMA2->addRow(array('Fecha Inicio', 'Fecha Fin', ' Fecha
151                     Imp', 'Contacto'), 'titulo');
152         $T_SISTEMA2->addRow(array(
153                                 ($fch_ini) ? $fch_ini->format("%d-%m-%Y") : '--',
154                                 ($fch_fin) ? $fch_fin->format("%d-%m-%Y") : '--',
155                                 ($fch_imp) ? $fch_imp->format("%d-%m-%Y") : '--',
156                                 $SISTEMA->getContacto()
157                             )
158                            );
159         $T_SISTEMA2->updateColAttributes(0, 'width="15%" align="center"');
160         $T_SISTEMA2->updateColAttributes(1, 'width="15%" align="center"');
161         $T_SISTEMA2->updateColAttributes(2, 'width="15%" align="center"');
162     //}}}
163
164     //Obtengo la info necesaria {{{
165         $usuarios = SAMURAI_Usuario::_getLoginUsuarios($DB, $id_sist);
166         $perfiles = SAMURAI_Perfil::_getIdPerfiles($DB, null, $id_sist);
167         $permisos = SAMURAI_Permiso::_getIdPermisos($DB, $id_sist);
168     //}}}
169         
170     //Agrego la informacion {{{
171         $T_EST->addRow(array('Estadisticas'), 'cabecera colspan="3"');
172         $T_EST->addRow(array('Usuarios', 'Perfiles', 'Permisos'), 'titulo');
173         $T_EST->updateColAttributes(0, 'width="33%" align="center"');
174         $T_EST->updateColAttributes(1, 'width="33%" align="center"');
175         $T_EST->updateColAttributes(2, 'width="33%" align="center"');
176
177         if (count($usuarios)) {
178             $LINK_USUARIOS->setContents(count($usuarios));
179         }
180         else {
181             $LINK_USUARIOS->setContents('0');
182             $LINK_USUARIOS->setGetVars(array());
183             $LINK_USUARIOS->setHref('#');
184         }
185         if (count($perfiles)) {
186             $LINK_PERFILES->setContents(count($perfiles));
187         }
188         else {
189             $LINK_PERFILES->setContents('0');
190             $LINK_PERFILES->setGetVars(array());
191             $LINK_PERFILES->setHref('#');
192         }
193         if (count($permisos)) {
194             $LINK_PERMISOS->setContents(count($permisos));
195         }
196         else {
197             $LINK_PERMISOS->setContents('0');
198             $LINK_PERMISOS->setHref('#');
199             $LINK_PERMISOS->setGetVars(array());
200         }
201         
202
203         
204         $T_EST->addRow(array(
205                         $LINK_USUARIOS->toHtml(),
206                         $LINK_PERFILES->toHtml(),
207                         $LINK_PERMISOS->toHtml(),
208                        )
209                       );
210     //}}}
211     
212     //Actuo segun la subaccion {{{
213         if (@$subaccion == 'info_usuarios') {
214             $T_SUBACCION =& new MECON_HTML_Tabla();
215             
216             $usu = SAMURAI_Usuario::getUsuarios($DB, $id_sist);
217             $T_SUBACCION->addRow(array('Datos de los Usuarios'), 'colspan="2"
218                     cabecera');
219             $T_SUBACCION->addRow(array('Login', 'Nombre'), 'titulo');
220             foreach ($usu as $u) {
221                 $T_SUBACCION->addRow(array($u->getLogin(), $u->getNombre()));
222             }
223             
224             $T_SUBACCION->updateRowAttributes(0, 'align="left"');
225         }
226         elseif (@$subaccion == 'info_perfiles') {
227             $T_SUBACCION =& new MECON_HTML_Tabla();
228             
229             $usu = SAMURAI_Perfil::getPerfiles($DB, '', $id_sist);
230             $T_SUBACCION->addRow(array('Datos de los Perfiles'), 'colspan="2"
231                     cabecera');
232             $T_SUBACCION->addRow(array('Id', 'Descripcion'), 'titulo');
233             foreach ($usu as $u) {
234                 $T_SUBACCION->addRow(array($u->getId(), $u->getDescripcion()));
235             }
236             
237             $T_SUBACCION->updateRowAttributes(0, 'align="left"');
238         }
239         elseif (@$subaccion == 'info_permisos') {
240             $T_SUBACCION =& new MECON_HTML_Tabla();
241             
242             $T_SUBACCION->addRow(array('Datos de los Permisos'), 'colspan="3"
243                     cabecera');
244             $T_SUBACCION->addRow(array('Id', 'Descripcion', 'Observacion'), 'titulo');
245             foreach ($SISTEMA->getAsociaciones() as $asoc) {
246                 $T_SUBACCION->addRow(array($asoc['id'], $asoc['desc'],
247                             $asoc['obs']));
248             }
249             $T_SUBACCION->updateRowAttributes(0, 'align="left"');
250         }
251     //}}}
252         
253     //Agrego la informacion al marco {{{
254         $LINK_VOLVER->setHref('sistemas');
255         $LINK_VOLVER->setGetVars(array('accion' => 'info_listado'));
256         $MARCO->addBodyContent($T_SISTEMA);
257         $MARCO->addBodyContent($T_SISTEMA2);
258         $MARCO->addBodyContent($IMG_SEP);
259         $MARCO->addBodyContent($T_EST);
260
261         if (@$subaccion) {
262             $MARCO->addBodyContent($IMG_SEP);
263             $MARCO->addBodyContent($T_SUBACCION);
264         }
265         
266         $MARCO->addTitle('Estadisticas de Sistemas');
267         $MARCO->addBodyContent('<BR>');
268         $T_VOLVER->addRow(array($LINK_VOLVER->toHtml()), 'align="left"');
269         $MARCO->addBodyContent($T_VOLVER);
270     //}}}
271 }
272 //}}}
273
274 //ACTIVAR_SISTEMAS {{{
275 elseif (@!$accion || $accion == 'activar_sistema') {
276     //Creo los objetos necesarios {{{
277         $T_SISTEMAS =& new MECON_HTML_Tabla();
278         $IMG  =& new MECON_HTML_Image('/MECON/images/general_tilde_azul.gif');
279         $LINK =& new MECON_HTML_Link('sistemas');
280     //}}}
281     
282     //Obtengo la lista de sistemas (habilitados y no habilitados) {{{
283         $sistemas = SAMURAI_Sistema::getSistemas($DB, false);
284     //}}}
285         
286     //Agrego la informacion a la tabla de sistemas {{{
287         $T_SISTEMAS->addRow(array('Listado de Sistemas de Sistemas Inactivos'), 'cabecera
288                 colspan="4"');
289         $T_SISTEMAS->addRow(array('Id', 'Nombre', 'Descripcion', 'Activar'), 
290                 'titulo');
291         //Agrego la info de los sistemas
292         foreach ($sistemas as $sistema) {
293             if (!$sistema->getEstado()) {
294                 $LINK->setContents($IMG);
295                 $LINK->setGetVars(
296                             array(
297                                 'accion'  => 'activar_sistema_activar',
298                                 'id_sist' => $sistema->getId(),
299                             )
300                            );
301                 $row = array (  $sistema->getId(),
302                                 $sistema->getNombre(),
303                                 $sistema->getDescripcion(),
304                                 $LINK->toHtml()
305                         );
306                 $T_SISTEMAS->addRow($row);
307             }
308         } 
309         $T_SISTEMAS->updateColAttributes(0, 'width="5%" align="center"');
310         $T_SISTEMAS->updateColAttributes(1, 'width="20%" align="center"');
311         $T_SISTEMAS->updateColAttributes(3, 'width="5%" align="center"');
312         $T_SISTEMAS->updateRowAttributes(0, 'align="left"');
313     //}}}
314     
315     //Agrego la informacion al marco {{{
316         $LINK_VOLVER->setHref('consultas');
317         $MARCO->addBodyContent($T_SISTEMAS);
318         $MARCO->addTitle('Activacion de Sistemas');
319         $MARCO->addBodyContent('<BR>');
320         $T_VOLVER->addRow(array($LINK_VOLVER->toHtml()), 'align="left"');
321         $MARCO->addBodyContent($T_VOLVER);
322   //}}}
323 }
324 //}}}
325
326 //ACTIVAR_SISTEMAS_ACTIVAR {{{
327 elseif (@!$accion || $accion == 'activar_sistema_activar') {
328     
329     //Creo los objetos necesarios {{{
330     $SISTEMA =& new SAMURAI_Sistema($DB, $id_sist);
331     //}}}
332     //Guardo la informacion {{{
333     $SISTEMA->setEstado(1);
334     $SISTEMA->guardarDatos('modificar');
335     //}}}
336     
337     header ('Location: sistemas?accion=activar_sistema');
338 }
339 //}}}
340
341 //MUESTRO LA INFORMACION {{{
342     $MARCO->display();
343     exit;
344 //}}}
345
346 ?>