]> git.llucax.com Git - mecon/intranet.git/blob - sistema/www/servicios/codep/codep_codigo.php
Consulta del codep en servicios.
[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 $group[] = HTML_QuickForm::createElement('reset', 'cancelar' , 'Cancelar');
46 $botones =& $FORM->addGroup($group,'botones');
47
48
49 //Función para validar el formulario
50 $script = 
51 <<<EOT
52     function validar (theForm){ 
53         regex = /^[a-zA-Z0-9]+$/; 
54         codep = theForm.codep.value; 
55         if (codep == ''){ 
56             alert ('Complete el formulario'); 
57             return false; 
58         }
59         if (codep != ''){ 
60             if (codep.length < 3){ 
61                 alert ('El código de dependencia no es válido'); 
62                 return false; 
63             }
64             if (codep.length == 10 && !regex.test(codep)){ 
65                 alert ('El código de dependencia no es válido'); 
66                 return false; 
67             }
68             if (codep.length < 10 && codep.substr(codep.length-1) != '*'){ 
69                 alert ('El código de dependencia no es válido'); 
70                 return false; 
71             } 
72             if (codep.length < 10 && codep.substr(codep.length-1) == '*' && !regex.test(codep.substr(0, codep.length-1))){ 
73                 alert ('El código de dependencia no es válido'); 
74                 return false; 
75             } 
76         } 
77         return true;
78     } 
79 EOT;
80
81 //Fecha de actualización
82 $file = fopen('fecha.txt', 'r');
83 $fecha_act = fgets($file);
84 fclose($file);
85
86 //Marco de servicios en intranet
87 $MARCO     = new HTML_DietMarco('servicios', 'Servicios');
88 $MARCO->addStyleSheet('../../css/servicios_codep.css');
89 $MARCO->addScriptDeclaration($script);
90
91
92 //Tablas
93 $TABLA_Encabezado =& new HTML_Table (array( 'width'=>'760',
94                                             'cellpadding'=>'0',
95                                             'cellspacing'=>'0',
96                                             'border'=>'0'));
97 $TABLA_Encabezado->addRow(array($IMG_Ayuda->toHtml(), $LINK_Ayuda->toHtml(), 'Última actualización: '.$fecha_act),
98                             array('width'=>'24', 'align'=>'left', 'valign'=>'middle'));
99 $TABLA_Encabezado->updateCellAttributes(0, 1, array('width'=>'60',
100                                                     'align'=>'left',
101                                                     'class'=>'txt2'));
102 $TABLA_Encabezado->updateCellAttributes(0, 2, array('width'=>'676',
103                                                     'align'=>'right',
104                                                     'class'=>'txt_derecha'));
105
106
107 $TABLA_Form =& new MECON_HTML_Tabla ('width="500" align="center"', 'claro');
108 $TABLA_Form->addRow(array($IMG_Lupa->toHtml().'&nbsp;Búsqueda por código de dependencia'),
109                     'cabecera');
110 $TABLA_Form->addRow(array($input_codep->toHtml()), 'comun align="center"');
111 $TABLA_Form->addRow(array($botones->toHtml()), 'comun align="center"');
112
113
114 $TABLA_Pie =& new HTML_Table (array( 'width'=>'760',
115                                      'cellpadding'=>'0',
116                                      'cellspacing'=>'0',
117                                      'border'=>'0'));
118 $TABLA_Pie->addRow(array($IMG_Lupa->toHtml().$LINK_Buscar->toHtml()),
119                     array('class'=>'txt1'));
120 $TABLA_Pie->addRow(array($IMG_Zip->toHtml().$LINK_Download->toHtml()),
121                     array('class'=>'txt1'));
122
123
124 if (isset($_POST['codep'])){
125     //Resultado de la Búsqueda
126     $resultado = MECON_Dependencia::buscarPorCodigo($dbh, $_POST['codep']);
127
128     if ($resultado->numRows()>0){
129         //Mostrar resultados
130         $TABLA_Resultados =& new MECON_HTML_Tabla ('width="500" align="center"', 'medio');
131         $TABLA_Resultados->addRow(array($IMG_Viñeta->toHtml().'Resultados de la búsqueda por código de dependencia'),
132                                     array('cabecera'=>'1', 'colspan'=>'3'));
133         $TABLA_Resultados->addRow(array('CODEP', 'COMDOC', 'Dependencia'),
134                                     array('titulo'=>'1', 'height'=>'25'));
135
136         while ($resultado->fetchInto($row)){
137             $TABLA_Resultados->addRow(array($row['codigo_actual'], 
138                                             $row['codigo_comdoc'], 
139                                             $row['nombre']), 
140                                         'comun');
141         }
142     }
143     else{
144         //Mensaje de error
145         $TABLA_Resultados =& new HTML_Table(array('width'=>'500', 'align'=>'center', 'border'=>'0'));
146         $TABLA_Resultados->addRow(array('La búsqueda no produjo aciertos'),
147                                     array('align'=>'center', 'class'=>'txt_naranja'));
148     }
149 }
150
151 //Contenido de la página
152 $MARCO->addTitle('Codificador de Dependencias');
153
154 $MARCO->addBodyContent($TABLA_Encabezado);
155
156 $MARCO->addBodyContent($FORM->getBegin());
157 $MARCO->addBodyContent($TABLA_Form);
158 $MARCO->addBodyContent($FORM->getEnd());
159
160 if (isset($_POST['codep'])){
161     //Mostrar los resultados
162     $MARCO->addBodyContent('<br>');
163     $MARCO->addBodyContent($TABLA_Resultados);
164     $MARCO->addBodyContent('<br>');
165 }
166
167 $MARCO->addBodyContent($TABLA_Pie);
168
169 $MARCO->display();
170 ?>