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';
15 if(!isset($_SESSION['documento']) or !isset($_POST['fecha']))
17 header('Location: ../../servicios.php');
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());
26 //Seteo las variables generales
27 $nrodoc = $_SESSION['documento'];
28 setlocale (LC_ALL, 'es_AR');
29 $fecha = $_POST['fecha'];
30 $fecha_spliteada = split('-',$fecha);
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');
38 $agente =& new BandasNovedades_AgenteBanda($nrodoc,new date($fecha),$dbh);
40 if(!$agente->buscarAgente($nrodoc))
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);
50 /* Si el agente es un contratado entonces no muestro la info */
51 if(preg_match('/^CON/',$agente->getTipo()))
53 $HTML_Mensaje =& new HTML_Mensaje("alerta","Información no disponible",300);
54 $m->addStyleSheet($HTML_Mensaje->getCSS());
55 $m->addBodyContent($HTML_Mensaje);
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'));
64 /* Encabezado propio de la pagina */
65 $IMG_flecha_naranja =& new MECON_HTML_Image('../../images/servicios_flecha_naranja.gif',
69 $IMG =& new MECON_HTML_Image('../../images/servicios_imprimir1.gif',
71 array('width'=>'24','height'=>'24','alt'=>'imprimir'));
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>",
80 $tabla_cuerpo->addRow($row_cuerpo,array('height'=>'24'));
81 $IMG =& new MECON_HTML_Image('/MECON/images/blanco.gif',
83 array('width'=>'586','height'=>'1','alt'=>'blanco','align'=>'top'));
84 $IMG2 =& new MECON_HTML_Image('/MECON/images/blanco.gif',
86 array('width'=>'150','height'=>'1','alt'=>'blanco','align'=>'top'));
87 $IMG3 =& new MECON_HTML_Image('/MECON/images/blanco.gif',
89 array('width'=>'24','height'=>'1','alt'=>'blanco','align'=>'top'));
91 $row_cuerpo = array($IMG->toHtml(),$IMG2->toHtml(),$IMG3->toHtml());
93 $tabla_cuerpo->addRow($row_cuerpo,array('bgcolor'=>'#FF9900',
95 $tabla_cuerpo->addRow($row_cuerpo,array('bgcolor'=>'#FFFFFF',
98 $tabla_cuerpo->updateCellAttributes(0,
100 array('width'=>'586','class'=>'titulo_tres'));
101 $tabla_cuerpo->updateCellAttributes(0,
103 array('width'=>'150','class'=>'imprimir_bandas'));
104 $tabla_cuerpo->updateCellAttributes(0,
106 array('width'=>'24','class'=>'imprimir_bandas'));
107 $tabla_cuerpo->updateCellAttributes(1,
109 array('height'=>'1'));
110 $tabla_cuerpo->updateCellAttributes(1,
112 array('height'=>'1'));
113 $tabla_cuerpo->updateCellAttributes(1,
115 array('height'=>'1'));
117 $m->addBodyContent($tabla_cuerpo);
119 /* Fin del encabezado propio de la pagina*/
121 Aca empieza las tablas con la informacion personal del agente y
122 con las referencias de cada color de las celdas
125 /* Armo la tabla de la información personal */
127 $tabla_info_personal =& new BandasNovedades_HTML_TablaInfoPersonal($agente,'oscuro');
128 $m->addStyleSheet($tabla_info_personal->getCSS());
131 /* Agrego la tabla de información personal al cuerpo de la página*/
132 $t =& new HTML_Table(array('width'=>'760',
135 'cellpadding'=>'0'));
137 $t->addRow(array($tabla_info_personal),array('colspan'=>'3'));
138 $t->addRow(array(' '),array('colspan'=>'3'));
140 /* Agrego las tablas de referencia al cuerpo */
143 if(BandasNovedades_AgenteBanda::tieneCredencial($dbh,$_SESSION['documento'],new Date($fecha)))
145 /* Armo la tabla con la gilla horaria*/
146 $tabla_info =& new BandasNovedades_HTML_TablaInfoMes($agente,'nov_dia.php','oscuro');
148 /* Armo la tabla de referencias */
149 $tabla_referencias =& new BandasNovedades_HTML_TablaReferencias('oscuro');
151 $row = array($tabla_info,' ',$tabla_referencias);
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);
159 $t->addRow($row,array('valign'=>'top'));
161 if($agente->getReduccionHoraria())
163 $IMG_reduccion_horaria =& new MECON_HTML_Image('../../images/servicios_bandas_red_hs.gif',
165 array('alt'=>'Agente con reducción horaria'));
166 $row = array('','',$IMG_reduccion_horaria->toHtml());
169 $row = array('','','');
171 $t->addRow($row,array('valign'=>'top','align'=>'center'));
172 $t->updateCellAttributes(2,0,array('rowspan'=>2));
174 /* Esta fila contiene las referencias */
175 $row_cuerpo = array($t);
176 $m->addBodyContent($t);
179 $m->addBodyContent('<BR>');
181 /* Comienzo a mostrar los links con las notas, accesos y salidas autorizadas*/
182 $tabla_notas =& new HTML_Table(array('width'=>'760',
186 'bgcolor'=>'#003366'));
188 $IMG_notas =& new MECON_HTML_Image('../../images/servicios_nota.gif',
190 array('width'=>'24','height'=>'24','valign'=>'top'));
192 $IMG_anterior =& new MECON_HTML_Image('../../images/servicios_bandas_anterior.gif',
194 array('width'=>'16','height'=>'10','valign'=>'top'));
196 $IMG_visto =& new MECON_HTML_Image('../../images/servicios_visto.gif',
198 array('width'=>'16','height'=>'10','valign'=>'top'));
199 $link_volver =& new MECON_HTML_LINK('./','volver');
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())
205 $sql = "Select fecha from FechaActualizacion where tipoActualizacion='DIARIO'
206 order by fecha desc limit 1";
207 $result = $dbh->query($sql);
209 if (DB::isError($result))
210 die ($result->getMessage("Query mal hecho"));
212 $FECHA_ACTUALIZACION=$result->fetchRow(DB_FETCHMODE_ASSOC);
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>");
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>");
228 $tabla_notas->addRow($row,array('class'=>'imprimir_bandas',
229 'bgcolor'=>'#FFFFFF'));
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'));
242 $m->addBodyContent($tabla_notas);