2 header ("Pragma: no-cache"); // sempre carregar página (não vai ser armazenada no cache http 1,0
3 header("Cache-Control: no-cache, must-revalidate"); // idem http 1,1
5 require_once("Globals.php");
6 //verifica se o administrador está logado
8 // realiza conexão com o banco de dados
11 if(isset($_GET['passado']))
13 $title = "Ver Horas Semanais Passadas";
14 $campo_sql = "mes_anterior";
15 $prox_mes = "<td class='hover' onClick=\"document.location.href='?';\"> >> </td>";
20 $title = "Ver Horas Semanais";
21 $campo_sql = "mes_inicio";
23 $mes_anterior = "<td class='hover' onClick=\"document.location.href='?passado';\"> << </td>";
28 <title
>Área
do Administrador
</title
>
29 <link rel
="stylesheet" type
="text/css" href
="estilo.css">
34 (DATEDIFF(semana_inicio, $campo_sql) div 7)+1 AS num_semana,
35 DATE_FORMAT(config.$campo_sql + INTERVAL 0 WEEK, '%d/%m/%Y') AS iniSem1,
36 DATE_FORMAT(config.$campo_sql + INTERVAL 1 WEEK - INTERVAL 1 DAY, '%d/%m/%Y') AS fimSem1,
37 DATE_FORMAT(config.$campo_sql + INTERVAL 1 WEEK, '%d/%m/%Y') AS iniSem2,
38 DATE_FORMAT(config.$campo_sql + INTERVAL 2 WEEK - INTERVAL 1 DAY, '%d/%m/%Y') AS fimSem2,
39 DATE_FORMAT(config.$campo_sql + INTERVAL 2 WEEK, '%d/%m/%Y') AS iniSem3,
40 DATE_FORMAT(config.$campo_sql + INTERVAL 3 WEEK - INTERVAL 1 DAY, '%d/%m/%Y') AS fimSem3,
41 DATE_FORMAT(config.$campo_sql + INTERVAL 3 WEEK, '%d/%m/%Y') AS iniSem4,
42 DATE_FORMAT(config.$campo_sql + INTERVAL 4 WEEK - INTERVAL 1 DAY, '%d/%m/%Y') AS fimSem4
44 $rs = mysql_query($sql);
47 <center
><h2
><?php
echo $title ." (". mysql_result($rs, 0, 'iniSem1') ." - ". mysql_result($rs, 0, 'fimSem4') .")"; ?
></h2
></center
>
54 $col = "tempoSem". $i;
55 $select[] = "IF( $col is NULL, '<span class=\'red\'>00h 00min</span>', (IF($col < '06:00:00', TIME_FORMAT($col, '<span class=\'red\'>%Hh %imin</span>'), TIME_FORMAT($col, '%Hh %imin')))) AS $col";
58 ". implode($select, ', ') ."
61 (SELECT id_user, login
62 FROM usuario) AS usuarios
64 (SELECT id_user, sec_to_time(sum(tempo)) AS tempoSem1 FROM
67 id_user, time_to_sec(timediff(fim, inicio)) AS tempo
70 WHERE ( ( DATE(historico.inicio) >= DATE(config.$campo_sql + INTERVAL 0 WEEK) ) AND ( DATE(historico.inicio) < DATE(config.$campo_sql + INTERVAL 1 WEEK) ) )
72 GROUP BY id_user) AS sem1
75 (SELECT id_user, sec_to_time(sum(tempo)) AS tempoSem2 FROM
78 id_user, time_to_sec(timediff(fim, inicio)) AS tempo
81 WHERE ( ( DATE(historico.inicio) >= DATE(config.$campo_sql + INTERVAL 1 WEEK) ) AND ( DATE(historico.inicio) < DATE(config.$campo_sql + INTERVAL 2 WEEK) ) )
83 GROUP BY id_user) AS sem2
86 (SELECT id_user, sec_to_time(sum(tempo)) AS tempoSem3 FROM
89 id_user, time_to_sec(timediff(fim, inicio)) AS tempo
92 WHERE ( ( DATE(historico.inicio) >= DATE(config.$campo_sql + INTERVAL 2 WEEK) ) AND ( DATE(historico.inicio) < DATE(config.$campo_sql + INTERVAL 3 WEEK) ) )
94 GROUP BY id_user) AS sem3
97 (SELECT id_user, sec_to_time(sum(tempo)) AS tempoSem4 FROM
100 id_user, time_to_sec(timediff(fim, inicio)) AS tempo
102 historico JOIN config
103 WHERE ( ( DATE(historico.inicio) >= DATE(config.$campo_sql + INTERVAL 3 WEEK) ) AND ( DATE(historico.inicio) < DATE(config.$campo_sql + INTERVAL 4 WEEK) ) )
105 GROUP BY id_user) AS sem4
109 $pesq_horas = mysql_query($sql);
111 if(mysql_num_rows($pesq_horas) == 0)
113 echo "<center style='color: #ff0000;'>Não há dados para este período!!!</center>";
114 echo "<table align='center'>$mes_anterior $prox_mes</table>";
118 echo "<div style='width: 900px;margin:0 auto;'>\n";
119 echo "<table border=0 class='bordasimples' align='center'>\n";
123 echo "<table border=2 class='bordasimples' align='center'>\n";
125 echo "<th>Nome</th>\n";
127 $num_semana = mysql_result($rs, 0, 'num_semana');
130 if($num_semana == $i)
131 $class = "style='background-color:#000099'";
134 echo "<th ". $class .">Sem. ". $i ."<br>";
135 echo "(". mysql_result($rs, 0, 'iniSem'.$i) ." - ". mysql_result($rs, 0, 'fimSem'.$i) .")";
137 echo "<th> Total </th>";
139 while($usuario = mysql_fetch_array($pesq_horas))
141 echo "<tr class='tbrow'>\n";
142 echo "<td>". $usuario['login'] ."</td>\n";
144 echo "<td>". $usuario['tempoSem'.$i] ."</td>";
146 $total = calcTotal($usuario);
148 echo "<td>".$total."</td>";
159 function calcTotal($usuario) {
162 for($i=1;$i<5;$i++
) {
164 $total+
=getMinutes($usuario['tempoSem'.$i]);
166 $horas = (int) ($total/60);
167 $minutos = $total%60
;
169 $res = "<font color=#FF0000>".$horas."h ".$minutos."min</font>";
171 $res = $horas."h ".$minutos."min";
175 function getMinutes($stringHoras) {
182 $n = sscanf($stringHoras, "%dh %dmin", $horas, $minutos);
186 $res+
=$horas*60 +
$minutos;
195 <div style
="clear:both"></div
>
197 <a href
="admin.php"><< Administrador
</a
><br
>
198 <a href
="index.php"><< Logador
</a
>