Commit bed968b43a503d8a82b6b18aef2c29a53be08449

Authored by anderson.peterle@previdencia.gov.br
1 parent 7937c271
Exists in master and in 1 other branch 3.1

Gerente WEB: Correcao na totalizacao de computadores por MacAddress e geracao de…

… relatorio de alteracao de hardware.

git-svn-id: http://svn.softwarepublico.gov.br/svn/cacic/cacic/trunk/gerente@813 fecfc0c7-e812-0410-ae72-849f08638ee7
include/monta_consulta_mac.php
... ... @@ -28,11 +28,9 @@ $query = 'SELECT count(te_node_address) as qtd
28 28 $result = mysql_query($query) or die($oTranslator->_('Ocorreu um erro no acesso a tabela %1 ou sua sessao expirou!',array('computadores, redes, so')));
29 29  
30 30 $v_row_result = $oTranslator->_('Quantidade real baseada em MAC-Address');
31   -session_register('arr_mac');
32   -$_SESSION['arr_mac'] = array();
33   -$_SESSION['arr_mac'][$v_row_result] = 0;
  31 +
  32 +$arr_mac = array();
  33 +$arr_mac[$v_row_result] = 0;
34 34 while ($row_result = mysql_fetch_assoc($result))
35   - {
36   - $_SESSION['arr_mac'][$v_row_result] ++ ;
37   - }
  35 + $arr_mac[$v_row_result] ++ ;
38 36 ?>
39 37 \ No newline at end of file
... ...
relatorios/alteracoes_hardware/index.php
... ... @@ -24,194 +24,381 @@ if(!isset($_SESSION['id_usuario']))
24 24 else { // Inserir regras para outras verificações (ex: permissões do usuário)!
25 25 }
26 26  
27   -$id_acao = 'cs_coleta_hardware';
28   -require_once('../../include/inicio_relatorios_inc.php');
  27 +if($_POST['submitGerarRelatorio'])
  28 + {
  29 + $_SESSION["list2"] = $_POST['list2'];
  30 + $_SESSION["list4"] = $_POST['list4'];
  31 + $_SESSION["list6"] = $_POST['list6'];
  32 + $_SESSION["list8"] = $_POST['list8'];
  33 + $_SESSION["list12"] = $_POST['list12'];
  34 + $_SESSION["cs_situacao"] = $_POST["cs_situacao"];
29 35  
30   -$historical_data_help = $oTranslator->_("Dados historicos obtidos de versoes anteriores a 2.4");
31   -?>
32   - <script src="../../include/sniffer.js" type="text/javascript" language="javascript"></script>
33   - <script src="../../include/dyncalendar.js" type="text/javascript" language="javascript"></script>
34   - <link href="../../include/dyncalendar.css" media="screen" rel="stylesheet">
35   -
36   -<table width="90%" border="0" align="center">
37   - <tr>
38   - <td class="cabecalho">
39   - <?php echo $oTranslator->_('Relatorio de alteracao de hardware'); ?>
40   - </td>
41   - </tr>
42   - <tr>
43   - <td class="descricao">
44   - <?php echo $oTranslator->_('Exibe as alteracoes nas configuracoes de hardware dos computadores.'); ?>
45   - </td>
46   - </tr>
47   -</table>
48   -<form action="rel_alteracoes_hardware_02.php" target="_blank" method="post" ENCTYPE="multipart/form-data" name="forma" onsubmit="return valida_form()">
49   - <table width="90%" border="0" align="center" cellpadding="5" cellspacing="1">
50   - <tr>
51   - <td valign="top"><table width="100%" border="0" cellpadding="0" cellspacing="1" align="center">
52   - <tr>
53   - <td class="label" colspan="2">
54   - <?php echo $oTranslator->_('Selecione o periodo em que devera ser realizada a consulta:') ?>
55   - </td>
56   - </tr>
57   - <tr>
58   - <td height="1" bgcolor="#333333" colspan="2"></td>
59   - </tr>
60   - <tr valign="middle">
61   - <td width="33%" height="1" nowrap valign="middle"> <input name="date_input1" type="text" size="10" class="normal" onFocus="SetaClassDigitacao(this);" onBlur="SetaClassNormal(this);" value="<? echo $date_input1;?>">
62   - <script type="text/javascript" language="JavaScript">
63   - <!--
64   - function calendar1Callback(date, month, year)
  36 + // Aqui eu inverto as datas para YYYYMMDD
  37 + $v_elementos = explode("/",$_POST['date_input1']);
  38 + $v_data_ini = $v_elementos[2] .'/'. $v_elementos[1] .'/'. $v_elementos[0];
  39 + $_SESSION["data_ini"] = $v_data_ini;
  40 + $v_elementos = explode("/",$_POST['date_input2']);
  41 + $v_data_fim = $v_elementos[2] .'/'. $v_elementos[1] .'/'. $v_elementos[0];
  42 + $_SESSION["data_fim"] = $v_data_fim;
  43 +// }
  44 +
  45 + require_once('../../include/library.php');
  46 + AntiSpy();
  47 + conecta_bd_cacic();
  48 +
  49 + $redes_selecionadas = '';
  50 + if ($_SESSION['cs_nivel_administracao']<>1 && $_SESSION['cs_nivel_administracao']<>2)
65 51 {
66   - document.forms['forma'].date_input1.value = date + '/' + month + '/' + year;
  52 + //if($_SESSION["cs_situacao"] == 'S')
  53 + //{
  54 + // Aqui pego todas as redes selecionadas e faço uma query p/ condição de redes
  55 + $redes_selecionadas = "'" . $_SESSION["list2"][0] . "'";
  56 + for( $i = 1; $i < count($_SESSION["list2"] ); $i++ )
  57 + $redes_selecionadas = $redes_selecionadas . ",'" . $_SESSION["list2"][$i] . "'";
  58 +
  59 + $query_redes = 'AND id_ip_rede IN ('. $redes_selecionadas .')';
  60 + //}
67 61 }
68   - calendar1 = new dynCalendar('calendar1', 'calendar1Callback');
69   - -->
70   - </script> &nbsp; <font size="2" face="Verdana, Arial, Helvetica, sans-serif">a</font>
71   - &nbsp;&nbsp; <input name="date_input2" type="text" size="10" class="normal" onFocus="SetaClassDigitacao(this);" onBlur="SetaClassNormal(this);" value="<? echo $date_input2;?>">
72   - <script type="text/javascript" language="JavaScript">
73   - <!--
74   - function calendar2Callback(date, month, year)
  62 + else
75 63 {
76   - document.forms['forma'].date_input2.value = date + '/' + month + '/' + year;
  64 + // Aqui pego todos os locais selecionados e faço uma query p/ condição de redes/locais
  65 + $locais_selecionados = "'" . $_SESSION["list12"][0] . "'";
  66 + for( $i = 1; $i < count($_SESSION["list12"] ); $i++ )
  67 + $locais_selecionados .= ",'" . $_SESSION["list12"][$i] . "'";
  68 +
  69 + $query_redes = 'AND comp.id_ip_rede = redes.id_ip_rede AND
  70 + redes.id_local IN ('. $locais_selecionados .') AND
  71 + redes.id_local = locais.id_local ';
  72 + $select = ' ,sg_local as Local ';
  73 + $from = ' ,redes,locais ';
77 74 }
78   - calendar2 = new dynCalendar('calendar2', 'calendar2Callback');
79   - -->
80   - </script> </td>
81   - <td align="left" class="descricao"><?php echo $oTranslator->_('formato:'); ?> dd/mm/aaaa</td>
82   - </tr>
83   - <tr>
84   - <td height="1" bgcolor="#333333" colspan="2"></td>
85   - </tr>
86   - <tr>
87   - <td>
88   - <input type="checkbox" class="checkbox" name="historical_data" value="historical_data"
89   - onchange="toggleDetails('hardware_type');"
90   - title="<?=$historical_data_help;?>" />
91   - <b title="<?=$historical_data_help;?>">
92   - <?php echo $oTranslator->_('Mostrar tambem dados historicos?'); ?>
93   - </b>
94   - </td>
95   - </tr>
96   - <tr>
97   - <td height="1" bgcolor="#333333" colspan="2"></td>
98   - </tr>
99   - </table>
100   - </td>
101   - </tr>
102   - <tr>
103   - <td valign="top">
104   - <div id='hardware_type' style="display: none;">
105   - <table width="90%" border="0" cellpadding="0" cellspacing="1">
106   - <tr>
107   - <td class="label">
108   - <?php echo $oTranslator->_('Selecione os tipos de hardware a serem exibidos no relatorio.'); ?>
109   - </td>
110   - </tr>
111   - <tr>
112   - <td height="1" bgcolor="#333333"></td>
113   - </tr>
114   - <tr>
115   - <td>
116   - <input type="checkbox" class="checkbox" name="historical_data_only" value="historical_data_only"
117   - title="<?=$historical_data_help;?>" />
118   - <b title="<?=$historical_data_help;?>">
119   - <?php echo $oTranslator->_('Mostrar somente dados historicos?'); ?>
120   - </b>
121   - </td>
122   - </tr>
123   - <tr>
124   - <td height="1"><table border="0" cellpadding="0" cellspacing="0">
125   - <tr>
126   - <td>&nbsp;&nbsp;</td>
127   - <td class="cabecalho_tabela"><div align="left">Dispon&iacute;veis:</div></td>
128   - <td>&nbsp;&nbsp;</td>
129   - <td width="40">&nbsp;</td>
130   - <td nowrap>&nbsp;&nbsp;</td>
131   - <td nowrap class="cabecalho_tabela">Selecionados:</td>
132   - <td nowrap>&nbsp;&nbsp;</td>
133   - </tr>
134   - <tr>
135   - <td>&nbsp;</td>
136   - <td> <div align="left">
137   - <select multiple name="list5[]" size="10" class="normal" onFocus="SetaClassDigitacao(this);" onBlur="SetaClassNormal(this);" >
138   - <? $query = "SELECT nm_campo_tab_hardware,
139   - te_desc_hardware
140   - FROM descricao_hardware
141   - ORDER BY te_desc_hardware";
142   - $result_hardwares_selecionados = mysql_query($query) or
143   - die('Ocorreu um erro durante a consulta à tabela descricao_hardware ou sua sessão expirou!');
144   - /* Agora monto os itens do combo de hardwares selecionadas. */
145   - while($campos_hardwares_selecionados=mysql_fetch_array($result_hardwares_selecionados)) {
146   - echo '<option value=", ' . $campos_hardwares_selecionados['nm_campo_tab_hardware'] .
147   - ' as &quot;' . $campos_hardwares_selecionados['te_desc_hardware'] .
148   - '&quot;">' . $campos_hardwares_selecionados['te_desc_hardware'] .
149   - '</option>\n';
150   - }
151   - ?>
152   - </select>
153   - </div></td>
154   - <td>&nbsp;</td>
155   - <td width="40"> <div align="center">
156   - <?
157   - //<input type="button" value=" &gt; " onClick="copia(this.form.elements['list5[]'],this.form.elements['list7[]']); move(this.form.elements['list5[]'],this.form.elements['list6[]'])" name="B132">
158   - ?>
159   - <input type="button" value=" &gt; " onClick="move(this.form.elements['list5[]'],this.form.elements['list6[]'])" name="B132">
160   - <br>
161   - <br>
162   - <?
163   - //<input type="button" value=" &lt; " onClick="exclui(this.form.elements['list6[]'],this.form.elements['list8[]']); exclui(this.form.elements['list6[]'],this.form.elements['list7[]']); move(this.form.elements['list6[]'],this.form.elements['list5[]'])" name="B232">
164   - ?>
165   - <input type="button" value=" &lt; " onClick="move(this.form.elements['list6[]'],this.form.elements['list5[]'])" name="B232">
166   - </div></td>
167   - <td>&nbsp;</td>
168   - <td><select multiple name="list6[]" size="10" class="normal" onFocus="SetaClassDigitacao(this);" onBlur="SetaClassNormal(this);" >
169   - </select></td>
170   - <td>&nbsp;</td>
171   - </tr>
172   - </table>
173   - </div>
174   - </td>
175   - </tr>
176   - <tr>
177   - <td class="descricao">&nbsp;&nbsp;&nbsp;(Dica:
178   - use SHIFT ou CTRL para selecionar m&uacute;ltiplos itens)</td>
179   - </tr>
180   - </table></td>
181   - </tr>
182   - <tr>
183   - <td valign="top">
184   - <? $v_require = '../../include/' .($_SESSION['cs_nivel_administracao']<>1 && $_SESSION['cs_nivel_administracao']<>2?'selecao_redes_inc.php':'selecao_locais_inc.php');
185   - require_once($v_require);
  75 +
  76 + // Aqui pego todos os SO selecionados
  77 + $so_selecionados = "'" . $_SESSION["list4"][0] . "'";
  78 + for( $i = 1; $i < count($_SESSION["list4"] ); $i++ )
  79 + $so_selecionados = $so_selecionados . ",'" . $_SESSION["list4"][$i] . "'";
  80 +
  81 + // Aqui pego todas as configurações de hardware que deseja exibir
  82 + for( $i = 0; $i < count($_SESSION["list6"] ); $i++ )
  83 + $campos_hardware = $campos_hardware . $_SESSION["list6"][$i];
  84 +
  85 + // Aqui substitui todas as strings \ por vazio que a variável $campos_hardware retorna
  86 + $campos_hardware = str_replace('\\', '', $campos_hardware);
  87 +
  88 + // Aqui inclui o "hist." devido à origem das informações sobre o hardware ser a tabela de históricos
  89 + $campos_hardware = str_replace(', ', ', hist.', $campos_hardware);
  90 +
  91 + if ($_GET['orderby'])
  92 + $orderby = $_GET['orderby'];
  93 + else
  94 + $orderby = '1';
  95 +
  96 +
  97 + $query = "SELECT
  98 + distinct comp.te_nome_computador,
  99 + comp.id_so,
  100 + comp.te_node_address " .
  101 + $campos_hardware .
  102 + $select . "
  103 + FROM historico_hardware hist,
  104 + computadores comp ".
  105 + $from . "
  106 + WHERE DATE_FORMAT(hist.dt_hr_alteracao, '%Y%m%d') >= DATE_FORMAT('" . $_SESSION["data_ini"] . "', '%Y%m%d') AND
  107 + DATE_FORMAT(hist.dt_hr_alteracao, '%Y%m%d') <= DATE_FORMAT('" . $_SESSION["data_fim"] . "', '%Y%m%d') AND
  108 + comp.te_node_address = hist.te_node_address AND
  109 + comp.id_so = hist.id_so ".
  110 + $query_redes. "
  111 + ORDER BY $orderby ";
  112 + //echo $query . '<br>';
  113 + $result = mysql_query($query) or die ('Erro no select ou sua sessão expirou!');
  114 +
  115 + if (mysql_num_rows($result) > 0)
  116 + {
186 117 ?>
187   -
188   - </td>
189   - </tr>
190   - <tr>
191   - <td valign="top">
192   - <? require_once('../../include/selecao_so_inc.php'); ?>
193   - </td>
194   - </tr>
195   - <tr>
196   - <td valign="top">
197   - <table width="100%" border="0" cellpadding="0" cellspacing="1">
198   - <tr>
199   - <td height="1" bgcolor="#333333"></td>
200   - </tr>
201   - <tr>
202   - <td> <div align="center">
203   - <input name="submit" type="submit" value=" Gerar Relat&oacute;rio " onClick="ChecaTodasAsRedes(),<? echo ($_SESSION['cs_nivel_administracao']<>1 && $_SESSION['cs_nivel_administracao']<>2?"SelectAll(this.form.elements['list2[]'])":"SelectAll(this.form.elements['list12[]'])")?>,
204   - SelectAll(this.form.elements['list4[]']),
205   - SelectAll(this.form.elements['list6[]'])">
206   - </div></td>
207   - </tr>
208   - <tr>
209   - <td>&nbsp;</td>
210   - </tr>
211   - </table>
212   - </td>
213   - </tr>
214   - </table>
215   -</form>
216   -</body>
217   -</html>
  118 + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  119 + <html>
  120 + <head>
  121 + <title>Relat&oacute;rio de Altera&ccedil;&otilde;es de Hardware</title>
  122 + <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  123 + <script language="JavaScript" type="text/JavaScript">
  124 + <!--
  125 + function MM_openBrWindow(theURL,winName,features)
  126 + {
  127 + window.open(theURL,winName,features); //v2.0
  128 + }
  129 + //-->
  130 + </script>
  131 + </head>
  132 +
  133 + <body bgcolor="#FFFFFF" topmargin="5">
  134 + <table border="0" align="left" cellpadding="0" cellspacing="0" bordercolor="#999999">
  135 + <tr bgcolor="#E1E1E1">
  136 + <td rowspan="5" bgcolor="#FFFFFF"><img src="../../imgs/cacic_logo.png" width="50" height="50"></td>
  137 + <td rowspan="5" bgcolor="#FFFFFF">&nbsp;</td>
  138 + <td bgcolor="#FFFFFF">&nbsp;</td>
  139 + </tr>
  140 + <tr bgcolor="#E1E1E1">
  141 + <td nowrap bgcolor="#FFFFFF"><div align="center"><font color="#333333" size="4" face="Verdana, Arial, Helvetica, sans-serif"><strong>CACIC
  142 + - Relat&oacute;rio de Altera&ccedil;&otilde;es de Hardware</strong></font></div></td>
  143 + </tr>
  144 + <tr>
  145 + <td height="1" bgcolor="#333333"></td>
  146 + </tr>
  147 + <tr>
  148 + <td><p><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Gerado
  149 + em <? echo date("d/m/Y à\s H:i"); ?></font></p></td>
  150 + </tr>
  151 + </table>
  152 + <br>
  153 + <br>
  154 + <br>
  155 + <br>
  156 +
  157 + <?
  158 + $cor = 0;
  159 + $num_registro = 1;
  160 +
  161 + $fields=mysql_num_fields($result);
  162 + echo '<table align="center" cellpadding="2" cellspacing="0" border="1" bordercolor="#999999" bordercolordark="#E1E1E1">
  163 + <tr bgcolor="#E1E1E1" >
  164 + <td nowrap align="left"><font size="1" face="Verdana, Arial">&nbsp;</font></td>';
  165 +
  166 + for ($i=2; $i < $fields; $i++) //Table Header
  167 + print '<td nowrap align="left"><b><font size="1" face="Verdana, Arial"><a href="?orderby=' . ($i + 1) . '">'. mysql_field_name($result, $i) .'</a></font><b></td>';
  168 +
  169 + echo '</tr>';
  170 +
  171 +
  172 + while ($row = mysql_fetch_row($result)) //Table body
  173 + {
  174 + echo '<tr ';
  175 + if ($cor) { echo 'bgcolor="#E1E1E1"'; }
  176 + echo '>';
  177 + echo '<td nowrap align="right"><font size="1" face="Verdana, Arial">' . $num_registro . '</font></td>';
  178 + echo "<td nowrap align='left'><font size='1' face='Verdana, Arial'><a href='../computador/computador.php?te_node_address=". $row[2] ."&id_so=". $row[1] ."' target='_blank'>" . $row[2] ."</a>&nbsp;</td>";
  179 + for ($i=3; $i < $fields; $i++)
  180 + echo '<td nowrap align="left"><font size="1" face="Verdana, Arial">' . $row[$i] .'&nbsp;</td>';
  181 +
  182 + $cor=!$cor;
  183 + $num_registro++;
  184 + echo '</tr>';
  185 + }
  186 + echo '</table>';
  187 + echo '<br><br>';
  188 + if (count($_SESSION["list8"])>0)
  189 + {
  190 + $v_opcao = 'alteracoes_hardware'; // Nome do pie que será chamado por tabela_estatisticas
  191 + $query_redes .= " AND (DATE_FORMAT(a.dt_hr_alteracao, '%Y%m%d') >= DATE_FORMAT('".$v_data_ini."', '%Y%m%d'))
  192 + AND (DATE_FORMAT(a.dt_hr_alteracao, '%Y%m%d') <= DATE_FORMAT('".$v_data_fim."', '%Y%m%d')) ";
  193 + // Os sinais -=- acima são propositais em substituição aos "'" e sofrerão replace no pie.
  194 + require_once('../../include/tabela_estatisticas.php');
  195 + }
  196 + ?>
  197 + </p>
  198 + <p></p>
  199 + <p align="left"><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Relat&oacute;rio
  200 + gerado pelo <strong>CACIC</strong> - Configurador Autom&aacute;tico e Coletor
  201 + de Informa&ccedil;&otilde;es Computacionais</font><br>
  202 + <font size="1" face="Verdana, Arial, Helvetica, sans-serif">Software desenvolvido
  203 + pela Dataprev - Unidade Regional Esp&iacute;rito Santo</font></p>
  204 + </body>
  205 + </html>
  206 + <?
  207 + }
  208 + else
  209 + {
  210 + header ("Location: ../../include/nenhum_registro_encontrado.php?chamador=../relatorios/alteracoes_hardware/index.php&tempo=3");
  211 + }
  212 + }
  213 +else
  214 + {
  215 + $id_acao = 'cs_coleta_hardware';
  216 + require_once('../../include/inicio_relatorios_inc.php');
  217 +
  218 + $historical_data_help = $oTranslator->_("Dados historicos obtidos de versoes anteriores a 2.4");
  219 + ?>
  220 + <script src="../../include/sniffer.js" type="text/javascript" language="javascript"></script>
  221 + <script src="../../include/dyncalendar.js" type="text/javascript" language="javascript"></script>
  222 + <link href="../../include/dyncalendar.css" media="screen" rel="stylesheet">
  223 +
  224 + <table width="90%" border="0" align="center">
  225 + <tr>
  226 + <td class="cabecalho">
  227 + <?php echo $oTranslator->_('Relatorio de alteracao de hardware'); ?>
  228 + </td>
  229 + </tr>
  230 + <tr>
  231 + <td class="descricao">
  232 + <?php echo $oTranslator->_('Exibe as alteracoes nas configuracoes de hardware dos computadores.'); ?>
  233 + </td>
  234 + </tr>
  235 + </table>
  236 + <form method="post" ENCTYPE="multipart/form-data" name="forma" onsubmit="return valida_form()">
  237 + <table width="90%" border="0" align="center" cellpadding="5" cellspacing="1">
  238 + <tr>
  239 + <td valign="top"><table width="100%" border="0" cellpadding="0" cellspacing="1" align="center">
  240 + <tr>
  241 + <td class="label" colspan="2">
  242 + <?php echo $oTranslator->_('Selecione o periodo em que devera ser realizada a consulta:') ?> </td>
  243 + </tr>
  244 + <tr>
  245 + <td height="1" bgcolor="#333333" colspan="2"></td>
  246 + </tr>
  247 + <tr valign="middle">
  248 + <td width="33%" height="1" nowrap valign="middle"> <input name="date_input1" type="text" size="10" class="normal" onFocus="SetaClassDigitacao(this);" onBlur="SetaClassNormal(this);" value="<? echo $date_input1;?>">
  249 + <script type="text/javascript" language="JavaScript">
  250 + <!--
  251 + function calendar1Callback(date, month, year)
  252 + {
  253 + document.forms['forma'].date_input1.value = date + '/' + month + '/' + year;
  254 + }
  255 + calendar1 = new dynCalendar('calendar1', 'calendar1Callback');
  256 + -->
  257 + </script> &nbsp; <font size="2" face="Verdana, Arial, Helvetica, sans-serif">a</font>
  258 + &nbsp;&nbsp; <input name="date_input2" type="text" size="10" class="normal" onFocus="SetaClassDigitacao(this);" onBlur="SetaClassNormal(this);" value="<? echo $date_input2;?>">
  259 + <script type="text/javascript" language="JavaScript">
  260 + <!--
  261 + function calendar2Callback(date, month, year)
  262 + {
  263 + document.forms['forma'].date_input2.value = date + '/' + month + '/' + year;
  264 + }
  265 + calendar2 = new dynCalendar('calendar2', 'calendar2Callback');
  266 + -->
  267 + </script> </td>
  268 + <td align="left" class="descricao"><?php echo $oTranslator->_('formato:'); ?> dd/mm/aaaa</td>
  269 + </tr>
  270 + <tr>
  271 + <td height="1" bgcolor="#333333" colspan="2"></td>
  272 + </tr>
  273 + <tr>
  274 + <td colspan="2">
  275 + <input type="checkbox" class="checkbox" name="historical_data" value="historical_data"
  276 + onchange="toggleDetails('hardware_type');"
  277 + title="<?=$historical_data_help;?>" />
  278 + <b title="<?=$historical_data_help;?>"><?php echo $oTranslator->_('Mostrar tambem dados historicos?'); ?></b></td>
  279 + </tr>
  280 + <tr>
  281 + <td height="1" bgcolor="#333333" colspan="2"></td>
  282 + </tr>
  283 + </table>
  284 + </td>
  285 + </tr>
  286 + <tr>
  287 + <td valign="top">
  288 + <div id='hardware_type' style="display: none;">
  289 + <table width="90%" border="0" cellpadding="0" cellspacing="1">
  290 + <tr>
  291 + <td class="label">
  292 + <?php echo $oTranslator->_('Selecione os tipos de hardware a serem exibidos no relatorio.'); ?>
  293 + </td>
  294 + </tr>
  295 + <tr>
  296 + <td height="1" bgcolor="#333333"></td>
  297 + </tr>
  298 + <tr>
  299 + <td>
  300 + <input type="checkbox" class="checkbox" name="historical_data_only" value="historical_data_only"
  301 + title="<?=$historical_data_help;?>" />
  302 + <b title="<?=$historical_data_help;?>">
  303 + <?php echo $oTranslator->_('Mostrar somente dados historicos?'); ?>
  304 + </b>
  305 + </td>
  306 + </tr>
  307 + <tr>
  308 + <td height="1"><table border="0" cellpadding="0" cellspacing="0">
  309 + <tr>
  310 + <td>&nbsp;&nbsp;</td>
  311 + <td class="cabecalho_tabela"><div align="left">Dispon&iacute;veis:</div></td>
  312 + <td>&nbsp;&nbsp;</td>
  313 + <td width="40">&nbsp;</td>
  314 + <td nowrap>&nbsp;&nbsp;</td>
  315 + <td nowrap class="cabecalho_tabela">Selecionados:</td>
  316 + <td nowrap>&nbsp;&nbsp;</td>
  317 + </tr>
  318 + <tr>
  319 + <td>&nbsp;</td>
  320 + <td> <div align="left">
  321 + <select multiple name="list5[]" size="10" class="normal" onFocus="SetaClassDigitacao(this);" onBlur="SetaClassNormal(this);" >
  322 + <? $query = "SELECT nm_campo_tab_hardware,
  323 + te_desc_hardware
  324 + FROM descricao_hardware
  325 + ORDER BY te_desc_hardware";
  326 + $result_hardwares_selecionados = mysql_query($query) or
  327 + die('Ocorreu um erro durante a consulta à tabela descricao_hardware ou sua sessão expirou!');
  328 + /* Agora monto os itens do combo de hardwares selecionadas. */
  329 + while($campos_hardwares_selecionados=mysql_fetch_array($result_hardwares_selecionados)) {
  330 + echo '<option value=", ' . $campos_hardwares_selecionados['nm_campo_tab_hardware'] .
  331 + ' as &quot;' . $campos_hardwares_selecionados['te_desc_hardware'] .
  332 + '&quot;">' . $campos_hardwares_selecionados['te_desc_hardware'] .
  333 + '</option>\n';
  334 + }
  335 + ?>
  336 + </select>
  337 + </div></td>
  338 + <td>&nbsp;</td>
  339 + <td width="40"> <div align="center">
  340 + <?
  341 + //<input type="button" value=" &gt; " onClick="copia(this.form.elements['list5[]'],this.form.elements['list7[]']); move(this.form.elements['list5[]'],this.form.elements['list6[]'])" name="B132">
  342 + ?>
  343 + <input type="button" value=" &gt; " onClick="move(this.form.elements['list5[]'],this.form.elements['list6[]'])" name="B132">
  344 + <br>
  345 + <br>
  346 + <?
  347 + //<input type="button" value=" &lt; " onClick="exclui(this.form.elements['list6[]'],this.form.elements['list8[]']); exclui(this.form.elements['list6[]'],this.form.elements['list7[]']); move(this.form.elements['list6[]'],this.form.elements['list5[]'])" name="B232">
  348 + ?>
  349 + <input type="button" value=" &lt; " onClick="move(this.form.elements['list6[]'],this.form.elements['list5[]'])" name="B232">
  350 + </div></td>
  351 + <td>&nbsp;</td>
  352 + <td><select multiple name="list6[]" size="10" class="normal" onFocus="SetaClassDigitacao(this);" onBlur="SetaClassNormal(this);" >
  353 + </select></td>
  354 + <td>&nbsp;</td>
  355 + </tr>
  356 + </table>
  357 + </div>
  358 + </td>
  359 + </tr>
  360 + <tr>
  361 + <td class="descricao">&nbsp;&nbsp;&nbsp;(Dica:
  362 + use SHIFT ou CTRL para selecionar m&uacute;ltiplos itens)</td>
  363 + </tr>
  364 + </table></td>
  365 + </tr>
  366 + <tr>
  367 + <td valign="top">
  368 + <? $v_require = '../../include/' .($_SESSION['cs_nivel_administracao']<>1 && $_SESSION['cs_nivel_administracao']<>2?'selecao_redes_inc.php':'selecao_locais_inc.php');
  369 + require_once($v_require);
  370 + ?>
  371 +
  372 + </td>
  373 + </tr>
  374 + <tr>
  375 + <td valign="top">
  376 + <? require_once('../../include/selecao_so_inc.php'); ?>
  377 + </td>
  378 + </tr>
  379 + <tr>
  380 + <td valign="top">
  381 + <table width="100%" border="0" cellpadding="0" cellspacing="1">
  382 + <tr>
  383 + <td height="1" bgcolor="#333333"></td>
  384 + </tr>
  385 + <tr>
  386 + <td> <div align="center">
  387 + <input name="submitGerarRelatorio" id="submitGerarRelatorio" type="submit" value=" Gerar Relat&oacute;rio " onClick="ChecaTodasAsRedes(),<? echo ($_SESSION['cs_nivel_administracao']<>1 && $_SESSION['cs_nivel_administracao']<>2?"SelectAll(this.form.elements['list2[]'])":"SelectAll(this.form.elements['list12[]'])")?>,
  388 + SelectAll(this.form.elements['list4[]']),
  389 + SelectAll(this.form.elements['list6[]'])">
  390 + </div></td>
  391 + </tr>
  392 + <tr>
  393 + <td>&nbsp;</td>
  394 + </tr>
  395 + </table>
  396 + </td>
  397 + </tr>
  398 + </table>
  399 + </form>
  400 + </body>
  401 + </html>
  402 + <?
  403 + }
  404 + ?>
... ...