]> git.llucax.com Git - mecon/intranet.git/blob - sistema/www/servicios/codep/codep_codigo.php
doh
[mecon/intranet.git] / sistema / www / servicios / codep / codep_codigo.php
1 <?php 
2 /*-----------------------------------------------------------------------------
3 Intranet del Ministerio de Economía
4 Consulta del CODEP
5 -------------------------------------------------------------------------------
6 Myrna Degano <mdegan@mecon.gov.ar>
7 ------------------------------------------------------------------------------*/
8
9 require_once 'MECON/Dependencia.php';
10 require_once 'HTML/Table.php';
11 require_once 'MECON/HTML/Tabla.php';
12 require_once '../../../local_lib/HTML_DietMarco.php';
13 require_once 'MECON/HTML/QuickFormSimple.php';
14 require_once 'MECON/HTML/Image.php';
15 require_once 'MECON/HTML/Link.php';
16 require_once 'DB.php';
17
18 //Conexión a la BD
19 $dbh = DB::connect("mysql://intranet:intranet@intranet-db/CODEP", true);
20 if (DB::isError($dbh)) {
21     die ($dbh->getMessage());
22 }
23
24
25 //Imágenes
26 $IMG_Ayuda =& new MECON_HTML_Image('../../images/servicios_ayuda.gif', 'Ayuda');
27 $IMG_Lupa =& new MECON_HTML_Image('../../images/servicios_lupa.gif', 'Buscar');
28 $IMG_Zip =& new MECON_HTML_Image('../../images/servicios_zip.gif', 'Download');
29 $IMG_Viñeta =& new MECON_HTML_Image('../../images/servicios_flecha_naranja.gif', '>>');
30
31
32 //Links
33 $LINK_Ayuda =& new MECON_HTML_Link('', 'Ayuda', array(), 
34                                     array('onClick'=>'window.open(\'ayuda.htm\',\'ayuda\',\'width=675,height=420,scrollbars=yes\');return(false);'));
35 $LINK_Buscar =& new MECON_HTML_Link('./codep_nombre.php', 'Búsqueda por palabra clave');
36 $LINK_Download =& new MECON_HTML_Link('../downloads/codep.zip', 'Obtener codificador de dependencias');
37
38
39 //Elementos del Formulario
40 $FORM =& new MECON_HTML_QuickFormSimple ('form', 'post', './codep_codigo.php', '', 'onSubmit="return validar(this)"');
41
42 $input_codep =& $FORM->addElement ('text', 'codep', 'codep', array('size' => '20', 'maxlength'=>'10'));
43
44 $group[] = HTML_QuickForm::createElement('submit', 'aceptar' , 'Aceptar');
45 $botones =& $FORM->addGroup($group,'botones');
46
47
48 //Función para validar el formulario
49 $script = 
50 <<<EOT
51     function validar (theForm){ 
52         regex = /^[a-zA-Z0-9]+$/; 
53         codep = theForm.codep.value; 
54         if (codep == ''){ 
55             alert ('Complete el formulario'); 
56             return false; 
57         }
58         if (codep != ''){ 
59             if (codep.length < 3){ 
60                 alert ('El código de dependencia no es válido'); 
61                 return false; 
62             }
63             if (codep.length == 10 && !regex.test(codep)){ 
64                 alert ('El código de dependencia no es válido'); 
65                 return false; 
66             }
67             if (codep.length < 10 && codep.substr(codep.length-1) != '*'){ 
68                 alert ('El código de dependencia no es válido'); 
69                 return false; 
70             } 
71             if (codep.length < 10 && codep.substr(codep.length-1) == '*' && !regex.test(codep.substr(0, codep.length-1))){ 
72                 alert ('El código de dependencia no es válido'); 
73                 return false; 
74             } 
75         } 
76         return true;
77     } 
78 EOT;
79
80 //Fecha de actualización
81 $file = fopen('fecha.txt', 'r');
82 $fecha_act = fgets($file);
83 fclose($file);
84
85 //Marco de servicios en intranet
86 $MARCO     = new HTML_DietMarco('servicios', 'Servicios');
87 $MARCO->addStyleSheet('../../css/servicios_codep.css');
88 $MARCO->addScriptDeclaration($script);
89
90
91 //Tablas
92 $TABLA_Encabezado =& new HTML_Table (array( 'width'=>'760',
93                                             'cellpadding'=>'0',
94                                             'cellspacing'=>'0',
95                                             'border'=>'0'));
96 $TABLA_Encabezado->addRow(array($IMG_Ayuda->toHtml(), $LINK_Ayuda->toHtml(), 'Última actualización: '.$fecha_act),
97                             array('width'=>'24', 'align'=>'left', 'valign'=>'middle'));
98 $TABLA_Encabezado->updateCellAttributes(0, 1, array('width'=>'60',
99                                                     'align'=>'left',
100                                                     'class'=>'txt2'));
101 $TABLA_Encabezado->updateCellAttributes(0, 2, array('width'=>'676',
102                                                     'align'=>'right',
103                                                     'class'=>'txt_derecha'));
104
105
106 $TABLA_Form =& new MECON_HTML_Tabla ('width="500" align="center"', 'claro');
107 $TABLA_Form->addRow(array($IMG_Lupa->toHtml().'&nbsp;Búsqueda por código de dependencia'),
108                     'cabecera');
109 $TABLA_Form->addRow(array($input_codep->toHtml()), 'comun align="center"');
110 $TABLA_Form->addRow(array($botones->toHtml()), 'comun align="center"');
111
112
113 $TABLA_Pie =& new HTML_Table (array( 'width'=>'760',
114                                      'cellpadding'=>'0',
115                                      'cellspacing'=>'0',
116                                      'border'=>'0'));
117 $TABLA_Pie->addRow(array($IMG_Lupa->toHtml().$LINK_Buscar->toHtml()),
118                     array('class'=>'txt1'));
119 $TABLA_Pie->addRow(array($IMG_Zip->toHtml().$LINK_Download->toHtml()),
120                     array('class'=>'txt1'));
121
122
123 if (isset($_POST['codep'])){
124     //Resultado de la Búsqueda
125     $resultado = MECON_Dependencia::buscarPorCodigo($dbh, $_POST['codep']);
126
127     if ($resultado->numRows()>0){
128         //Mostrar resultados
129         $TABLA_Resultados =& new MECON_HTML_Tabla ('width="500" align="center"', 'medio');
130         $TABLA_Resultados->addRow(array($IMG_Viñeta->toHtml().'Resultados de la búsqueda por código de dependencia'),
131                                     array('cabecera'=>'1', 'colspan'=>'3'));
132         $TABLA_Resultados->addRow(array('CODEP', 'COMDOC', 'Dependencia'),
133                                     array('titulo'=>'1', 'height'=>'25', 'align'=>'left'));
134
135         while ($resultado->fetchInto($row)){
136             $TABLA_Resultados->addRow(array($row['codigo_actual'], 
137                                             $row['codigo_comdoc'], 
138                                             $row['nombre']), 
139                                         'comun align="left"');
140         }
141     }
142     else{
143         //Mensaje de error
144         $TABLA_Resultados =& new HTML_Table(array('width'=>'500', 'align'=>'center', 'border'=>'0'));
145         $TABLA_Resultados->addRow(array('La búsqueda no produjo aciertos'),
146                                     array('align'=>'center', 'class'=>'txt_naranja'));
147     }
148 }
149
150 //Contenido de la página
151 $MARCO->addTitle('Codificador de Dependencias');
152
153 $MARCO->addBodyContent($TABLA_Encabezado);
154
155 $MARCO->addBodyContent($FORM->getBegin());
156 $MARCO->addBodyContent($TABLA_Form);
157 $MARCO->addBodyContent($FORM->getEnd());
158
159 if (isset($_POST['codep'])){
160     //Mostrar los resultados
161     $MARCO->addBodyContent('<br>');
162     $MARCO->addBodyContent($TABLA_Resultados);
163     $MARCO->addBodyContent('<br>');
164 }
165
166 $MARCO->addBodyContent($TABLA_Pie);
167
168 $MARCO->display();
169 ?>