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