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