]> git.llucax.com Git - mecon/intranet.git/blob - sistema/www/servicios/bandas/banda_agente.php
Se pasa Php2Embperl_Session.epl al repositorio scripts y se actualiza documentacion.
[mecon/intranet.git] / sistema / www / servicios / bandas / banda_agente.php
1 <?
2 require_once '../../../local_lib/HTML_DietMarco.php';
3 require_once '../../../local_lib/HTML_Mensaje.php';
4 require_once 'HTML/Table.php';
5 require_once 'MECON/HTML/Image.php';
6 require_once 'MECON/HTML/Link.php';
7 require_once 'MECON/Dependencia.php';
8 require_once 'MECON/NovedadesDia.php';
9 require_once 'MECON/HTML/Tabla.php';
10 require_once 'BandasNovedades/AgenteBanda.php';
11 require_once 'BandasNovedades/HTML/TablaInfoMes.php';
12 require_once 'BandasNovedades/HTML/TablaReferencias.php';
13 require_once 'BandasNovedades/HTML/TablaInfoPersonal.php';
14
15 if(!isset($_SESSION['documento']) or !isset($_POST['fecha']))
16 {
17         header('Location: ../../servicios.php');
18 }
19
20 //CREO LA CONEXION A LA BASE DE DATOS
21 $dbh = DB::connect("mysql://intranet:intranet@bal747f/bandas",true);
22 if (DB::isError($dbh)) {
23     die ($DB->getMessage());
24 }
25
26 //Seteo las variables generales
27 $nrodoc = $_SESSION['documento'];
28 setlocale (LC_ALL, 'es_AR');
29 $fecha = $_POST['fecha'];
30 $fecha_spliteada = split('-',$fecha);
31
32
33 /* Instancio DietMarco que sirve para mostrar la pagina dentro del marco de Intranet*/
34 $m =& new HTML_DietMarco('servicios','Bandas Horarias');
35 //$m->addTitle('Bandas Horarias');
36 $m->addStyleSheet('../../css/servicios_bandas.css');
37
38 $agente =& new BandasNovedades_AgenteBanda($nrodoc,new date($fecha),$dbh);
39
40 if(!$agente->buscarAgente($nrodoc))
41 {
42         $HTML_Mensaje =& new HTML_Mensaje("alerta","El agente no está en las bases de RRHH",450);
43         $m->addStyleSheet($HTML_Mensaje->getCSS());
44         $m->addBodyContent($HTML_Mensaje);
45         $m->display();
46         die;
47 }
48
49
50 /* Si el agente es un contratado entonces no muestro la info */
51 if(preg_match('/^CON/',$agente->getTipo()))
52 {
53         $HTML_Mensaje =& new HTML_Mensaje("alerta","Información no disponible",300);
54         $m->addStyleSheet($HTML_Mensaje->getCSS());
55         $m->addBodyContent($HTML_Mensaje);
56         $m->display();
57         die;
58 }
59
60
61 /* Instancio un objeto Table para el cuerpo de la pagina*/
62 $tabla_cuerpo =& new HTML_Table(array('width'=>'760','border'=>'0','cellspacing'=>'0','cellpadding'=>'0'));
63
64 /* Encabezado propio de la pagina */
65 $IMG_flecha_naranja =& new MECON_HTML_Image('../../images/servicios_flecha_naranja.gif',
66                                                  '',
67                                                 array('alt'=>'>>'));
68
69 $IMG =& new MECON_HTML_Image('../../images/servicios_imprimir1.gif',
70                                                  '',
71                                                 array('width'=>'24','height'=>'24','alt'=>'imprimir'));
72
73
74 $row_cuerpo = array(    $IMG_flecha_naranja->toHtml().' '.$agente->getNombre(),
75                                                 "<a href=\"\" onClick=\"window.open('./impresion_banda_agente.php?fecha=".
76                                                 $_POST['fecha']."','imprimir',
77                                                 'scrollbars=yes,width=780,height=500,screenX=10,screenY=10');
78                                                 return(false);\">Página de Impresión</a>",
79                                                 $IMG->toHtml());
80 $tabla_cuerpo->addRow($row_cuerpo,array('height'=>'24'));
81 $IMG =& new MECON_HTML_Image('/MECON/images/blanco.gif',
82                                                 '',
83                                                 array('width'=>'586','height'=>'1','alt'=>'blanco','align'=>'top'));
84 $IMG2 =& new MECON_HTML_Image('/MECON/images/blanco.gif',
85                                                 '',
86                                                 array('width'=>'150','height'=>'1','alt'=>'blanco','align'=>'top'));
87 $IMG3 =& new MECON_HTML_Image('/MECON/images/blanco.gif',
88                                                 '',
89                                                 array('width'=>'24','height'=>'1','alt'=>'blanco','align'=>'top'));
90
91 $row_cuerpo = array($IMG->toHtml(),$IMG2->toHtml(),$IMG3->toHtml());
92
93 $tabla_cuerpo->addRow($row_cuerpo,array('bgcolor'=>'#FF9900',
94                                                                         'height'=>'1'));
95 $tabla_cuerpo->addRow($row_cuerpo,array('bgcolor'=>'#FFFFFF',
96                                                                         'height'=>'10'));
97
98 $tabla_cuerpo->updateCellAttributes(0,
99                                                                         0,
100                                                                         array('width'=>'586','class'=>'titulo_tres'));
101 $tabla_cuerpo->updateCellAttributes(0,
102                                                                         1,
103                                                                         array('width'=>'150','class'=>'imprimir_bandas'));
104 $tabla_cuerpo->updateCellAttributes(0,
105                                                                         2,
106                                                                         array('width'=>'24','class'=>'imprimir_bandas'));
107 $tabla_cuerpo->updateCellAttributes(1,
108                                                                         0,
109                                                                         array('height'=>'1'));
110 $tabla_cuerpo->updateCellAttributes(1,
111                                                                         1,
112                                                                         array('height'=>'1'));
113 $tabla_cuerpo->updateCellAttributes(1,
114                                                                         2,
115                                                                         array('height'=>'1'));
116
117 $m->addBodyContent($tabla_cuerpo);
118
119 /* Fin del encabezado propio de la pagina*/
120 /* 
121 Aca empieza las tablas con la informacion personal del agente y
122 con las referencias de cada color de las celdas
123 */
124
125 /* Armo la tabla de la información personal */
126
127 $tabla_info_personal =& new BandasNovedades_HTML_TablaInfoPersonal($agente,'oscuro');
128 $m->addStyleSheet($tabla_info_personal->getCSS());
129
130
131 /* Agrego la tabla de información personal al cuerpo de la página*/
132 $t =& new HTML_Table(array('width'=>'760',
133                                                         'border'=>'0',
134                                                         'cellspacing'=>'0',
135                                                         'cellpadding'=>'0'));
136
137 $t->addRow(array($tabla_info_personal),array('colspan'=>'3'));
138 $t->addRow(array('&nbsp;'),array('colspan'=>'3'));
139
140 /* Agrego las tablas de referencia al cuerpo */
141 $row = array();
142
143 if(BandasNovedades_AgenteBanda::tieneCredencial($dbh,$_SESSION['documento'],new Date($fecha)))
144 {
145         /* Armo la tabla con la gilla horaria*/
146         $tabla_info =& new BandasNovedades_HTML_TablaInfoMes($agente,'nov_dia.php','oscuro');
147
148         /* Armo la tabla de referencias */
149         $tabla_referencias =& new BandasNovedades_HTML_TablaReferencias('oscuro');
150         
151         $row = array($tabla_info,'&nbsp',$tabla_referencias);
152 }else
153 {
154         $HTML_Mensaje =& new HTML_Mensaje("alerta","El agente no tiene credencial asignada en este mes",450);
155         $m->addStyleSheet($HTML_Mensaje->getCSS());
156         $row = array($HTML_Mensaje);
157 }
158
159 $t->addRow($row,array('valign'=>'top'));
160
161 if($agente->getReduccionHoraria())
162 {
163         $IMG_reduccion_horaria =& new MECON_HTML_Image('../../images/servicios_bandas_red_hs.gif',
164                                                                                                         '',
165                                                                                                         array('alt'=>'Agente con reducción horaria'));
166         $row = array('','',$IMG_reduccion_horaria->toHtml());
167 }else
168 {
169         $row = array('','','');
170 }
171 $t->addRow($row,array('valign'=>'top','align'=>'center'));
172 $t->updateCellAttributes(2,0,array('rowspan'=>2));
173
174 /* Esta fila contiene las referencias */
175 $row_cuerpo = array($t);
176 $m->addBodyContent($t);
177
178
179 $m->addBodyContent('<BR>');
180
181 /* Comienzo a mostrar los links con las notas, accesos y salidas autorizadas*/
182 $tabla_notas =& new HTML_Table(array('width'=>'760',
183                                                                         'border'=>'0',
184                                                                         'cellspacing'=>'0',
185                                                                         'cellpadding'=>'0',
186                                                                         'bgcolor'=>'#003366'));
187
188 $IMG_notas =& new MECON_HTML_Image('../../images/servicios_nota.gif',
189                                                          '',
190                                                         array('width'=>'24','height'=>'24','valign'=>'top'));
191
192 $IMG_anterior =& new MECON_HTML_Image('../../images/servicios_bandas_anterior.gif',
193                                                                 '',
194                                                                 array('width'=>'16','height'=>'10','valign'=>'top'));
195                                                                 
196 $IMG_visto =& new MECON_HTML_Image('../../images/servicios_visto.gif',
197                                                                 '',
198                                                                 array('width'=>'16','height'=>'10','valign'=>'top'));
199 $link_volver =& new MECON_HTML_LINK('./','volver');
200
201 $MES_ACTUAL =& new date();
202 $FECHA_PEDIDA =& new date($fecha);
203 if($MES_ACTUAL->getmonth()==$FECHA_PEDIDA->getmonth() && $MES_ACTUAL->getyear()==$FECHA_PEDIDA->getyear())
204 {
205         $sql = "Select fecha from FechaActualizacion where tipoActualizacion='DIARIO'
206                         order by fecha desc limit 1";
207         $result = $dbh->query($sql);
208
209         if (DB::isError($result))
210                 die ($result->getMessage("Query mal hecho"));
211
212         $FECHA_ACTUALIZACION=$result->fetchRow(DB_FETCHMODE_ASSOC);
213
214         $FECHA=preg_replace('/(\d\d\d\d)(\d\d)(\d\d)(.*)/','$3/$2/$1',$FECHA_ACTUALIZACION['fecha']);
215         $row = array(   $IMG_notas,'Nota: Fecha de actualización '.$FECHA,
216                                         $IMG_anterior->toHtml().' '.$link_volver->toHtml(),
217                                         $IMG_visto->toHtml()." <a href=\"\" onClick=\"window.open('./accesos.php?nrodoc=".$nrodoc."&fecha=".$_POST['fecha']."','accesos','scrollbars=yes,width=450,height=500,screenX=10,screenY=10');return(false);\">accesos</a>",
218                                         $IMG_visto->toHtml()." <a href=\"\" onClick=\"window.open('./salidas_autorizadas.php?nrodoc=".$nrodoc."&fecha=".$_POST['fecha']."','salidas_autorizadas','scrollbars=yes,width=450,height=500,screenX=10,screenY=10');return(false);\">salidas autorizadas</a>");
219 }else
220 {
221         $row = array(   '','',
222                                         $IMG_anterior->toHtml().' '.$link_volver->toHtml(),
223                                         $IMG_visto->toHtml()." <a href=\"\" onClick=\"window.open('./accesos.php?nrodoc=".$nrodoc."&fecha=".$_POST['fecha']."','accesos','scrollbars=yes,width=450,height=500,screenX=10,screenY=10');return(false);\">accesos</a>",
224                                         $IMG_visto->toHtml()." <a href=\"\" onClick=\"window.open('./salidas_autorizadas.php?nrodoc=".$nrodoc."&fecha=".$_POST['fecha']."','salidas_autorizadas','scrollbars=yes,width=450,height=500,screenX=10,screenY=10');return(false);\">salidas autorizadas</a>");
225
226 }
227
228 $tabla_notas->addRow($row,array('class'=>'imprimir_bandas',
229                                                                                 'bgcolor'=>'#FFFFFF'));
230
231 $tabla_notas->updateCellAttributes(0,0,array(   'width'=>'25','height'=>'30',
232                                                                                                 'align'=>'left','class'=>'aclarar'));
233 $tabla_notas->updateCellAttributes(0,1,array(   'width'=>'325',
234                                                                                                 'align'=>'right','class'=>'aclarar'));
235 $tabla_notas->updateCellAttributes(0,2,array(   'width'=>'145',
236                                                                                                 'align'=>'right','class'=>'imprimir_bandas'));
237 $tabla_notas->updateCellAttributes(0,3,array(   'width'=>'80',
238                                                                                                 'align'=>'right','class'=>'imprimir_bandas'));
239 $tabla_notas->updateCellAttributes(0,4,array(   'width'=>'125',
240                                                                                                 'align'=>'right','class'=>'imprimir_bandas'));
241
242 $m->addBodyContent($tabla_notas);
243 $m->display();
244 ?>
245