2 require_once 'HTML_DietMarco.php';
3 require_once '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';
15 if(!isset($_SESSION['documento']) or !isset($_POST['fecha']))
17 header('Location: ../../servicios/');
20 //Seteo las variables generales
21 $nrodoc = $_SESSION['documento'];
22 setlocale (LC_ALL, 'es_AR');
23 $fecha = $_POST['fecha'];
24 $fecha_spliteada = split('-',$fecha);
27 /* Instancio DietMarco que sirve para mostrar la pagina dentro del marco de Intranet*/
28 $m =& new HTML_DietMarco('servicios','Bandas Horarias');
29 //$m->addTitle('Bandas Horarias');
30 $m->addStyleSheet('../../css/servicios_bandas.css');
32 $agente =& new BandasNovedades_AgenteBanda($nrodoc,new date($fecha),$DB);
34 if(!$agente->buscarAgente($nrodoc))
36 $HTML_Mensaje =& new HTML_Mensaje("alerta","El agente no está en las bases de RRHH",450);
37 $m->addStyleSheet($HTML_Mensaje->getCSS());
38 $m->addBodyContent($HTML_Mensaje);
44 /* Si el agente es un contratado entonces no muestro la info */
45 if(preg_match('/^CON/',$agente->getTipo()))
47 $HTML_Mensaje =& new HTML_Mensaje("alerta","Información no disponible",300);
48 $m->addStyleSheet($HTML_Mensaje->getCSS());
49 $m->addBodyContent($HTML_Mensaje);
55 /* Instancio un objeto Table para el cuerpo de la pagina*/
56 $tabla_cuerpo =& new HTML_Table(array('width'=>'760','border'=>'0','cellspacing'=>'0','cellpadding'=>'0'));
58 /* Encabezado propio de la pagina */
59 $IMG_flecha_naranja =& new MECON_HTML_Image('../../images/servicios_flecha_naranja.gif',
63 $IMG =& new MECON_HTML_Image('../../images/servicios_imprimir1.gif',
65 array('width'=>'24','height'=>'24','alt'=>'imprimir'));
68 $row_cuerpo = array( $IMG_flecha_naranja->toHtml().' '.$agente->getNombre(),
69 "<a href=\"\" onClick=\"window.open('./impresion_banda_agente.php?fecha=".
70 $_POST['fecha']."','imprimir',
71 'scrollbars=yes,width=780,height=500,screenX=10,screenY=10');
72 return(false);\">Página de Impresión</a>",
74 $tabla_cuerpo->addRow($row_cuerpo,array('height'=>'24'));
75 $IMG =& new MECON_HTML_Image('/MECON/images/blanco.gif',
77 array('width'=>'586','height'=>'1','alt'=>'blanco','align'=>'top'));
78 $IMG2 =& new MECON_HTML_Image('/MECON/images/blanco.gif',
80 array('width'=>'150','height'=>'1','alt'=>'blanco','align'=>'top'));
81 $IMG3 =& new MECON_HTML_Image('/MECON/images/blanco.gif',
83 array('width'=>'24','height'=>'1','alt'=>'blanco','align'=>'top'));
85 $row_cuerpo = array($IMG->toHtml(),$IMG2->toHtml(),$IMG3->toHtml());
87 $tabla_cuerpo->addRow($row_cuerpo,array('bgcolor'=>'#FF9900',
89 $tabla_cuerpo->addRow($row_cuerpo,array('bgcolor'=>'#FFFFFF',
92 $tabla_cuerpo->updateCellAttributes(0,
94 array('width'=>'586','class'=>'titulo_tres'));
95 $tabla_cuerpo->updateCellAttributes(0,
97 array('width'=>'150','class'=>'imprimir_bandas'));
98 $tabla_cuerpo->updateCellAttributes(0,
100 array('width'=>'24','class'=>'imprimir_bandas'));
101 $tabla_cuerpo->updateCellAttributes(1,
103 array('height'=>'1'));
104 $tabla_cuerpo->updateCellAttributes(1,
106 array('height'=>'1'));
107 $tabla_cuerpo->updateCellAttributes(1,
109 array('height'=>'1'));
111 $m->addBodyContent($tabla_cuerpo);
113 /* Fin del encabezado propio de la pagina*/
115 Aca empieza las tablas con la informacion personal del agente y
116 con las referencias de cada color de las celdas
119 /* Armo la tabla de la información personal */
121 $tabla_info_personal =& new BandasNovedades_HTML_TablaInfoPersonal($agente,'oscuro');
122 $m->addStyleSheet($tabla_info_personal->getCSS());
125 /* Agrego la tabla de información personal al cuerpo de la página*/
126 $t =& new HTML_Table(array('width'=>'760',
129 'cellpadding'=>'0'));
131 $t->addRow(array($tabla_info_personal),array('colspan'=>'3'));
132 $t->addRow(array(' '),array('colspan'=>'3'));
134 /* Agrego las tablas de referencia al cuerpo */
137 if(BandasNovedades_AgenteBanda::tieneCredencial($DB,$_SESSION['documento'],new Date($fecha)))
139 /* Armo la tabla con la gilla horaria*/
140 $tabla_info =& new BandasNovedades_HTML_TablaInfoMes($agente,'nov_dia.php','oscuro');
142 /* Armo la tabla de referencias */
143 $tabla_referencias =& new BandasNovedades_HTML_TablaReferencias('oscuro');
145 $row = array($tabla_info,' ',$tabla_referencias);
148 $HTML_Mensaje =& new HTML_Mensaje("alerta","El agente no tiene credencial asignada en este mes",450);
149 $m->addStyleSheet($HTML_Mensaje->getCSS());
150 $row = array($HTML_Mensaje);
153 $t->addRow($row,array('valign'=>'top'));
155 if($agente->getReduccionHoraria())
157 $IMG_reduccion_horaria =& new MECON_HTML_Image('../../images/servicios_bandas_red_hs.gif',
159 array('alt'=>'Agente con reducción horaria'));
160 $row = array('','',$IMG_reduccion_horaria->toHtml());
163 $row = array('','','');
165 $t->addRow($row,array('valign'=>'top','align'=>'center'));
166 $t->updateCellAttributes(2,0,array('rowspan'=>2));
168 /* Esta fila contiene las referencias */
169 $row_cuerpo = array($t);
170 $m->addBodyContent($t);
173 $m->addBodyContent('<BR>');
175 /* Comienzo a mostrar los links con las notas, accesos y salidas autorizadas*/
176 $tabla_notas =& new HTML_Table(array('width'=>'760',
180 'bgcolor'=>'#003366'));
182 $IMG_notas =& new MECON_HTML_Image('../../images/servicios_nota.gif',
184 array('width'=>'24','height'=>'24','valign'=>'top'));
186 $IMG_anterior =& new MECON_HTML_Image('../../images/servicios_bandas_anterior.gif',
188 array('width'=>'16','height'=>'10','valign'=>'top'));
190 $IMG_visto =& new MECON_HTML_Image('../../images/servicios_visto.gif',
192 array('width'=>'16','height'=>'10','valign'=>'top'));
193 $link_volver =& new MECON_HTML_LINK('./','volver');
195 $MES_ACTUAL =& new date();
196 $FECHA_PEDIDA =& new date($fecha);
197 if($MES_ACTUAL->getmonth()==$FECHA_PEDIDA->getmonth() && $MES_ACTUAL->getyear()==$FECHA_PEDIDA->getyear())
199 $sql = "Select fecha from FechaActualizacion where tipoActualizacion='DIARIO'
200 order by fecha desc limit 1";
201 $result = $DB->query($sql);
203 if (DB::isError($result))
204 trigger_error($result->getMessage("Query mal hecho"), E_USER_ERROR);
206 $FECHA_ACTUALIZACION=$result->fetchRow(DB_FETCHMODE_ASSOC);
208 $FECHA=preg_replace('/(\d\d\d\d)(\d\d)(\d\d)(.*)/','$3/$2/$1',$FECHA_ACTUALIZACION['fecha']);
209 $row = array( $IMG_notas,'Nota: Fecha de actualización '.$FECHA,
210 $IMG_anterior->toHtml().' '.$link_volver->toHtml(),
211 $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>",
212 $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>");
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>");
222 $tabla_notas->addRow($row,array('class'=>'imprimir_bandas',
223 'bgcolor'=>'#FFFFFF'));
225 $tabla_notas->updateCellAttributes(0,0,array( 'width'=>'25','height'=>'30',
226 'align'=>'left','class'=>'aclarar'));
227 $tabla_notas->updateCellAttributes(0,1,array( 'width'=>'325',
228 'align'=>'right','class'=>'aclarar'));
229 $tabla_notas->updateCellAttributes(0,2,array( 'width'=>'145',
230 'align'=>'right','class'=>'imprimir_bandas'));
231 $tabla_notas->updateCellAttributes(0,3,array( 'width'=>'80',
232 'align'=>'right','class'=>'imprimir_bandas'));
233 $tabla_notas->updateCellAttributes(0,4,array( 'width'=>'125',
234 'align'=>'right','class'=>'imprimir_bandas'));
236 $m->addBodyContent($tabla_notas);