Commit c9dfdff19d9e4657c00681d2a57cb7d42560de13

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

Detalhamento dos graficos estatisticos da pagina principal quando representarem …

…mais de um local(usuarios associados a locais secundarios e/ou niveis Administracao/Gestao Central). Melhoria no processo de liberacao de FTP por parte do cliente(Gerente de Coletas). Inicio de criacao do mecanismo de identificacao dinamica do S.O.(MS-Windows). Site para documentacao interna (FAQ, etc.).

git-svn-id: http://svn.softwarepublico.gov.br/svn/cacic/cacic/trunk/gerente@116 fecfc0c7-e812-0410-ae72-849f08638ee7
admin/locais/detalhes_local.php
@@ -61,10 +61,25 @@ elseif ($GravaAlteracoes) @@ -61,10 +61,25 @@ elseif ($GravaAlteracoes)
61 else 61 else
62 { 62 {
63 $query = "SELECT * 63 $query = "SELECT *
64 - FROM locais  
65 - WHERE id_local = '".$_REQUEST['id_local']."'"; 64 + FROM locais ";
66 $result = mysql_query($query) or die ('select falhou'); 65 $result = mysql_query($query) or die ('select falhou');
67 - $row = mysql_fetch_array($result); 66 +
  67 + $v_arr_locais = array();
  68 + while ($row = mysql_fetch_array($result))
  69 + {
  70 + if ($row['id_local']==$_REQUEST['id_local'])
  71 + {
  72 + $v_sg_local = $row['sg_local'];
  73 + $v_nm_local = $row['nm_local'];
  74 + $v_te_observacao = $row['te_observacao'];
  75 + }
  76 + else
  77 + {
  78 + array_push($v_arr_locais,$row['id_local'],$row['sg_local']);
  79 + }
  80 + }
  81 +
  82 +
68 ?> 83 ?>
69 84
70 85
@@ -101,7 +116,7 @@ function valida_form() @@ -101,7 +116,7 @@ function valida_form()
101 <table width="90%" border="0" align="center"> 116 <table width="90%" border="0" align="center">
102 <tr> 117 <tr>
103 <td class="cabecalho">Detalhes 118 <td class="cabecalho">Detalhes
104 - do Local "<? echo $row['sg_local'];?>"</td> 119 + do Local "<? echo $v_sg_local;?>"</td>
105 </tr> 120 </tr>
106 <tr> 121 <tr>
107 <td class="descricao">As informa&ccedil;&otilde;es 122 <td class="descricao">As informa&ccedil;&otilde;es
@@ -120,8 +135,8 @@ function valida_form() @@ -120,8 +135,8 @@ function valida_form()
120 <td height="1" bgcolor="#333333" colspan="3"></td> </tr> 135 <td height="1" bgcolor="#333333" colspan="3"></td> </tr>
121 <tr> 136 <tr>
122 <td>&nbsp;</td> 137 <td>&nbsp;</td>
123 - <td class="dado_peq_sem_fundo"> <input name="frm_sg_local" type="text" value="<? echo $row['sg_local']; ?>" size="20" maxlength="20" class="normal" onFocus="SetaClassDigitacao(this);" onBlur="SetaClassNormal(this);" >&nbsp;&nbsp;Ex.: DTP - UAES  
124 - <input name="frm_id_local" type="hidden" id="frm_id_local" value="<? echo $row['id_local']; ?>"> 138 + <td class="dado_peq_sem_fundo"> <input name="frm_sg_local" type="text" value="<? echo $v_sg_local; ?>" size="20" maxlength="20" class="normal" onFocus="SetaClassDigitacao(this);" onBlur="SetaClassNormal(this);" >&nbsp;&nbsp;Ex.: DTP - UAES
  139 + <input name="frm_id_local" type="hidden" id="frm_id_local" value="<? echo $_REQUEST['id_local']; ?>">
125 </td> 140 </td>
126 <td>&nbsp;</td> 141 <td>&nbsp;</td>
127 </tr> 142 </tr>
@@ -135,7 +150,7 @@ function valida_form() @@ -135,7 +150,7 @@ function valida_form()
135 <td height="1" bgcolor="#333333" colspan="3"></td> </tr> 150 <td height="1" bgcolor="#333333" colspan="3"></td> </tr>
136 <tr> 151 <tr>
137 <td nowrap>&nbsp;</td> 152 <td nowrap>&nbsp;</td>
138 - <td nowrap><input name="frm_nm_local" type="text" id="frm_nm_local" value="<? echo $row['nm_local']; ?>" size="100" maxlength="100" class="normal" onFocus="SetaClassDigitacao(this);" onBlur="SetaClassNormal(this);" ></td> 153 + <td nowrap><input name="frm_nm_local" type="text" id="frm_nm_local" value="<? echo $v_nm_local; ?>" size="100" maxlength="100" class="normal" onFocus="SetaClassDigitacao(this);" onBlur="SetaClassNormal(this);" ></td>
139 <td>&nbsp;</td> 154 <td>&nbsp;</td>
140 </tr> 155 </tr>
141 <tr> 156 <tr>
@@ -148,7 +163,7 @@ function valida_form() @@ -148,7 +163,7 @@ function valida_form()
148 <td height="1" bgcolor="#333333" colspan="3"></td> </tr> 163 <td height="1" bgcolor="#333333" colspan="3"></td> </tr>
149 <tr> 164 <tr>
150 <td>&nbsp;</td> 165 <td>&nbsp;</td>
151 - <td><textarea name="frm_te_observacao" cols="70" id="textarea" class="normal" onFocus="SetaClassDigitacao(this);" onBlur="SetaClassNormal(this);" ><? echo $row['te_observacao']; ?></textarea></td> 166 + <td><textarea name="frm_te_observacao" cols="70" id="textarea" class="normal" onFocus="SetaClassDigitacao(this);" onBlur="SetaClassNormal(this);" ><? echo $v_te_observacao; ?></textarea></td>
152 <td>&nbsp;</td> 167 <td>&nbsp;</td>
153 </tr> 168 </tr>
154 <tr> 169 <tr>
@@ -211,10 +226,10 @@ function valida_form() @@ -211,10 +226,10 @@ function valida_form()
211 <br> 226 <br>
212 <table width="90%" border="0" align="center" cellpadding="0" cellspacing="1"> 227 <table width="90%" border="0" align="center" cellpadding="0" cellspacing="1">
213 <tr> 228 <tr>
214 - <td colspan="5" class="label">Usu&aacute;rios Associados ao Local:</td> 229 + <td colspan="7" class="label">Usu&aacute;rios Associados ao Local:</td>
215 </tr> 230 </tr>
216 <tr> 231 <tr>
217 - <td height="1" bgcolor="#333333" colspan="5"></td> 232 + <td height="1" bgcolor="#333333" colspan="7"></td>
218 </tr> 233 </tr>
219 <tr> 234 <tr>
220 <td class="cabecalho_tabela">&nbsp;</td> 235 <td class="cabecalho_tabela">&nbsp;</td>
@@ -222,20 +237,27 @@ function valida_form() @@ -222,20 +237,27 @@ function valida_form()
222 <td align="left" nowrap class="cabecalho_tabela">Nome</td> 237 <td align="left" nowrap class="cabecalho_tabela">Nome</td>
223 <td align="left" class="cabecalho_tabela">&nbsp;</td> 238 <td align="left" class="cabecalho_tabela">&nbsp;</td>
224 <td align="left" class="cabecalho_tabela">N&iacute;vel de Acesso</td> 239 <td align="left" class="cabecalho_tabela">N&iacute;vel de Acesso</td>
  240 + <td align="left" class="cabecalho_tabela">&nbsp;</td>
  241 + <td align="left" class="cabecalho_tabela">Tipo de Acesso</td>
225 </tr> 242 </tr>
226 <tr> 243 <tr>
227 - <td height="1" bgcolor="#333333" colspan="5"></td> 244 + <td height="1" bgcolor="#333333" colspan="7"></td>
228 </tr> 245 </tr>
229 -  
230 <? 246 <?
231 $query = "SELECT a.id_usuario, 247 $query = "SELECT a.id_usuario,
232 a.nm_usuario_completo, 248 a.nm_usuario_completo,
233 a.id_local, 249 a.id_local,
  250 + a.te_locais_secundarios,
234 b.te_grupo_usuarios 251 b.te_grupo_usuarios
235 FROM usuarios a, 252 FROM usuarios a,
236 grupo_usuarios b 253 grupo_usuarios b
237 - WHERE a.id_local = ".$_REQUEST['id_local']." AND  
238 - b.id_grupo_usuarios = a.id_grupo_usuarios"; 254 + WHERE (a.id_local = ".$_REQUEST['id_local']." OR
  255 + TRIM(a.te_locais_secundarios)='".$_REQUEST['id_local']."' OR
  256 + a.te_locais_secundarios like '%,".$_REQUEST['id_local']."' OR
  257 + a.te_locais_secundarios like '".$_REQUEST['id_local'].",%' OR
  258 + a.te_locais_secundarios like '%,".$_REQUEST['id_local'].",%') AND
  259 + b.id_grupo_usuarios = a.id_grupo_usuarios
  260 + ORDER BY a.nm_usuario_completo";
239 261
240 $result = mysql_query($query) or die ('select falhou'); 262 $result = mysql_query($query) or die ('select falhou');
241 $seq = 1; 263 $seq = 1;
@@ -244,11 +266,18 @@ function valida_form() @@ -244,11 +266,18 @@ function valida_form()
244 { 266 {
245 ?> 267 ?>
246 <tr <? if ($Cor) echo 'bgcolor="#E1E1E1"'; ?>> 268 <tr <? if ($Cor) echo 'bgcolor="#E1E1E1"'; ?>>
247 - <td width="3%" align="center" nowrap class="opcao_tabela"><a href="../usuarios/detalhes_usuario.php?id_usuario=<? echo $row['id_usuario'];?>&id_local=<? echo $row['id_local'];?>&nm_chamador=Locais"><? echo $seq; ?></a></td> 269 + <td width="2%" align="center" nowrap class="opcao_tabela"><a href="../usuarios/detalhes_usuario.php?id_usuario=<? echo $row['id_usuario'];?>&id_local=<? echo $row['id_local'];?>&nm_chamador=Locais"><? echo $seq; ?></a></td>
248 <td width="1%" align="left" nowrap class="opcao_tabela">&nbsp;&nbsp;</td> 270 <td width="1%" align="left" nowrap class="opcao_tabela">&nbsp;&nbsp;</td>
249 - <td width="3%" align="left" nowrap class="opcao_tabela"><a href="../usuarios/detalhes_usuario.php?id_usuario=<? echo $row['id_usuario'];?>&id_local=<? echo $row['id_local'];?>&nm_chamador=Locais"><? echo $row['nm_usuario_completo']; ?></a></td> 271 + <td width="3%" align="left" nowrap class="opcao_tabela"><a href="../usuarios/detalhes_usuario.php?id_usuario=<? echo $row['id_usuario'];?>&id_local=<? echo $row['id_local'];?>&nm_chamador=Locais"><? echo $row['nm_usuario_completo'];
  272 + if ($row['te_locais_secundarios'])
  273 + {
  274 + echo ' ('.$v_arr_locais[array_search($row['id_local'],$v_arr_locais)+1] . ')';
  275 + }
  276 + ?></a></td>
250 <td width="1%" align="left" class="opcao_tabela">&nbsp;&nbsp;</td> 277 <td width="1%" align="left" class="opcao_tabela">&nbsp;&nbsp;</td>
251 - <td width="92%" align="left" class="opcao_tabela"><a href="../usuarios/detalhes_usuario.php?id_usuario=<? echo $row['id_usuario'];?>&id_local=<? echo $row['id_local'];?>&nm_chamador=Locais"><? echo $row['te_grupo_usuarios']; ?></a></td> 278 + <td width="30%" align="left" class="opcao_tabela"><a href="../usuarios/detalhes_usuario.php?id_usuario=<? echo $row['id_usuario'];?>&id_local=<? echo $row['id_local'];?>&nm_chamador=Locais"><? echo $row['te_grupo_usuarios']; ?></a></td>
  279 + <td width="1%" align="left" class="opcao_tabela">&nbsp;</td>
  280 + <td width="62%" align="left" class="opcao_tabela"><a href="../usuarios/detalhes_usuario.php?id_usuario=<? echo $row['id_usuario'];?>&id_local=<? echo $row['id_local'];?>&nm_chamador=Locais"><? echo ($row['id_local']==$_REQUEST['id_local']?'Primário':'Secundário'); ?></a></td>
252 </tr> 281 </tr>
253 <? 282 <?
254 $seq++; 283 $seq++;
@@ -258,9 +287,8 @@ function valida_form() @@ -258,9 +287,8 @@ function valida_form()
258 echo '<tr><td colspan="3" class="label_vermelho">Ainda não existem usuários associados ao local!</td></tr>'; 287 echo '<tr><td colspan="3" class="label_vermelho">Ainda não existem usuários associados ao local!</td></tr>';
259 ?> 288 ?>
260 <tr> 289 <tr>
261 - <td height="1" bgcolor="#333333" colspan="5"></td> 290 + <td height="1" bgcolor="#333333" colspan="7"></td>
262 </tr> 291 </tr>
263 -  
264 </table> 292 </table>
265 <p align="center"> <br> 293 <p align="center"> <br>
266 <br> 294 <br>
admin/usuarios/index.php
@@ -35,7 +35,8 @@ if ($_SESSION[&#39;te_locais_secundarios&#39;] &amp;&amp; $where) @@ -35,7 +35,8 @@ if ($_SESSION[&#39;te_locais_secundarios&#39;] &amp;&amp; $where)
35 35
36 $query = 'SELECT usu.id_usuario, 36 $query = 'SELECT usu.id_usuario,
37 usu.nm_usuario_acesso, 37 usu.nm_usuario_acesso,
38 - usu.nm_usuario_completo, 38 + usu.nm_usuario_completo,
  39 + usu.te_locais_secundarios,
39 g_usu.cs_nivel_administracao, 40 g_usu.cs_nivel_administracao,
40 g_usu.id_grupo_usuarios, 41 g_usu.id_grupo_usuarios,
41 loc.sg_local, 42 loc.sg_local,
@@ -88,10 +89,10 @@ $result_grp = mysql_query($query_grp); @@ -88,10 +89,10 @@ $result_grp = mysql_query($query_grp);
88 </div></td> 89 </div></td>
89 </tr> 90 </tr>
90 <tr> 91 <tr>
91 - <td height="10">&nbsp;</td> 92 + <td height="12">&nbsp;</td>
92 </tr> 93 </tr>
93 <tr> 94 <tr>
94 - <td height="10"><? echo $msg;?></td> 95 + <td height="12"><? echo $msg;?></td>
95 </tr> 96 </tr>
96 97
97 <tr> 98 <tr>
@@ -107,9 +108,13 @@ $result_grp = mysql_query($query_grp); @@ -107,9 +108,13 @@ $result_grp = mysql_query($query_grp);
107 <td nowrap>&nbsp;</td> 108 <td nowrap>&nbsp;</td>
108 <td nowrap class="cabecalho_tabela"><div align="left">Nome</div></td> 109 <td nowrap class="cabecalho_tabela"><div align="left">Nome</div></td>
109 <td nowrap>&nbsp;</td> 110 <td nowrap>&nbsp;</td>
110 - <td align="center" nowrap class="cabecalho_tabela"><div align="left">Local</div></td> 111 + <td align="center" nowrap class="cabecalho_tabela"><div align="center">Local
  112 + Prim&aacute;rio </div></td>
111 <td nowrap>&nbsp;</td> 113 <td nowrap>&nbsp;</td>
112 - <? 114 + <td align="center" nowrap class="cabecalho_tabela"><div align="center">Locais
  115 + Secund&aacute;rios</div></td>
  116 + <td nowrap>&nbsp;</td>
  117 + <?
113 while ($row_grp = mysql_fetch_array($result_grp)) 118 while ($row_grp = mysql_fetch_array($result_grp))
114 { 119 {
115 echo '<td nowrap class="cabecalho_tabela"><div align="center">'; 120 echo '<td nowrap class="cabecalho_tabela"><div align="center">';
@@ -144,8 +149,10 @@ else @@ -144,8 +149,10 @@ else
144 <td nowrap>&nbsp;</td> 149 <td nowrap>&nbsp;</td>
145 <td nowrap class="opcao_tabela"><div align="left"><a href="detalhes_usuario.php?id_usuario=<? echo $row['id_usuario'];?>&id_local=<? echo $row['id_local'];?>"><? echo PrimUltNome($row['nm_usuario_completo']); ?></a></div></td> 150 <td nowrap class="opcao_tabela"><div align="left"><a href="detalhes_usuario.php?id_usuario=<? echo $row['id_usuario'];?>&id_local=<? echo $row['id_local'];?>"><? echo PrimUltNome($row['nm_usuario_completo']); ?></a></div></td>
146 <td nowrap>&nbsp;</td> 151 <td nowrap>&nbsp;</td>
147 - <td nowrap class="opcao_tabela"><div align="left"><a href="detalhes_usuario.php?id_usuario=<? echo $row['id_usuario'];?>&id_local=<? echo $row['id_local'];?>"><? echo $row['sg_local']; ?></a></div></td>  
148 - <? 152 + <td nowrap class="opcao_tabela"><div align="center"><a href="detalhes_usuario.php?id_usuario=<? echo $row['id_usuario'];?>&id_local=<? echo $row['id_local'];?>"><? echo $row['sg_local']; ?></a></div></td>
  153 + <td nowrap>&nbsp;</td>
  154 + <td nowrap class="opcao_tabela"><div align="center"><a href="detalhes_usuario.php?id_usuario=<? echo $row['id_usuario'];?>&id_local=<? echo $row['id_local'];?>"><? echo (strspn($row['te_locais_secundarios'],",")>0?strspn($row['te_locais_secundarios'],",")+1:(trim($row['te_locais_secundarios'])==''?'':'1')); ?></a></div></td>
  155 + <?
149 mysql_data_seek($result_grp,0); 156 mysql_data_seek($result_grp,0);
150 while ($row_grp = mysql_fetch_array($result_grp)) 157 while ($row_grp = mysql_fetch_array($result_grp))
151 { 158 {
@@ -163,7 +170,7 @@ else @@ -163,7 +170,7 @@ else
163 } 170 }
164 } 171 }
165 ?> 172 ?>
166 - </table></td> 173 + </table></td>
167 </tr> 174 </tr>
168 <tr> 175 <tr>
169 <td height="1" bgcolor="#333333"></td> 176 <td height="1" bgcolor="#333333"></td>
graficos/pie_so.php
@@ -37,13 +37,14 @@ $query = &#39;SELECT count(a.id_so) as qtd, @@ -37,13 +37,14 @@ $query = &#39;SELECT count(a.id_so) as qtd,
37 FROM computadores a, 37 FROM computadores a,
38 so b, 38 so b,
39 redes c 39 redes c
40 - WHERE a.id_so = b.id_so AND 40 + WHERE (a.id_so = b.id_so OR a.te_so = b.te_so) AND
41 a.te_nome_computador IS NOT NULL AND 41 a.te_nome_computador IS NOT NULL AND
42 a.dt_hr_ult_acesso IS NOT NULL AND 42 a.dt_hr_ult_acesso IS NOT NULL AND
43 a.id_ip_rede = c.id_ip_rede '. 43 a.id_ip_rede = c.id_ip_rede '.
44 $where . ' 44 $where . '
45 GROUP BY a.id_so 45 GROUP BY a.id_so
46 ORDER BY a.id_so'; 46 ORDER BY a.id_so';
  47 +GravaTESTES($query);
47 $result = mysql_query($query) or die('Falha na consulta (computadores, so, redes, locais)'); 48 $result = mysql_query($query) or die('Falha na consulta (computadores, so, redes, locais)');
48 while ($row_result = mysql_fetch_assoc($result)) 49 while ($row_result = mysql_fetch_assoc($result))
49 { 50 {
imgs/Thumbs.db
No preview for this file type
imgs/arvore/Thumbs.db
No preview for this file type
include/library.php
@@ -13,6 +13,7 @@ @@ -13,6 +13,7 @@
13 Você deve ter recebido uma cópia da Licença Pública Geral GNU, sob o título "LICENCA.txt", junto com este programa, se não, escreva para a Fundação do Software 13 Você deve ter recebido uma cópia da Licença Pública Geral GNU, sob o título "LICENCA.txt", junto com este programa, se não, escreva para a Fundação do Software
14 Livre(FSF) Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 14 Livre(FSF) Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
15 */ 15 */
  16 +session_start();
16 require_once 'config.php'; 17 require_once 'config.php';
17 // -------------------------------------------------------------------------------------- 18 // --------------------------------------------------------------------------------------
18 // Função para bloqueio de acesso indevido 19 // Função para bloqueio de acesso indevido
@@ -131,11 +132,11 @@ function conecta_ftp($p_te_serv, $p_user_name, $p_user_pass, $p_port) @@ -131,11 +132,11 @@ function conecta_ftp($p_te_serv, $p_user_name, $p_user_pass, $p_port)
131 { 132 {
132 //Conecta ao servidor FTP 133 //Conecta ao servidor FTP
133 $con = @ftp_connect("$p_te_serv","$p_port"); 134 $con = @ftp_connect("$p_te_serv","$p_port");
134 - GravaTESTES('Passei pelo ftp_connect... con='.$con); 135 + //GravaTESTES('Passei pelo ftp_connect... con='.$con);
135 136
136 //Faz o login no servidor FTP 137 //Faz o login no servidor FTP
137 $result = @ftp_login($con, $p_user_name, $p_user_pass); 138 $result = @ftp_login($con, $p_user_name, $p_user_pass);
138 - GravaTESTES('Passei pelo ftp_login...result='.$result); 139 + //GravaTESTES('Passei pelo ftp_login...result='.$result);
139 return ($result?$con:'0'); 140 return ($result?$con:'0');
140 } 141 }
141 142
@@ -304,7 +305,7 @@ function GetDadosRede() @@ -304,7 +305,7 @@ function GetDadosRede()
304 } 305 }
305 // Obs.: as colunas sg_local e nm_local são requeridas por menu_esq.php 306 // Obs.: as colunas sg_local e nm_local são requeridas por menu_esq.php
306 // the columns sg_local and nm_local have been requested by menu_esq.php 307 // the columns sg_local and nm_local have been requested by menu_esq.php
307 - $query_ver = " SELECT te_serv_cacic, 308 + $query_ver = ' SELECT te_serv_cacic,
308 te_serv_updates, 309 te_serv_updates,
309 nu_limite_ftp, 310 nu_limite_ftp,
310 nu_porta_serv_updates, 311 nu_porta_serv_updates,
@@ -317,15 +318,15 @@ function GetDadosRede() @@ -317,15 +318,15 @@ function GetDadosRede()
317 nm_local 318 nm_local
318 FROM redes, 319 FROM redes,
319 locais 320 locais
320 - WHERE redes.id_ip_rede = '$v_id_ip_rede' AND  
321 - redes.id_local = locais.id_local"; 321 + WHERE redes.id_ip_rede = "'.$v_id_ip_rede.'" AND
  322 + redes.id_local = locais.id_local';
322 $result_ver = mysql_query($query_ver); 323 $result_ver = mysql_query($query_ver);
323 324
324 if (!$v_dados = @mysql_fetch_array($result_ver)) 325 if (!$v_dados = @mysql_fetch_array($result_ver))
325 { 326 {
326 327
327 // Neste caso, apela-se para uma rede que tenha configurações válidas... 328 // Neste caso, apela-se para uma rede que tenha configurações válidas...
328 - $query_ver = " SELECT redes.id_ip_rede, 329 + $query_ver = ' SELECT redes.id_ip_rede,
329 redes.te_serv_updates, 330 redes.te_serv_updates,
330 redes.nu_limite_ftp, 331 redes.nu_limite_ftp,
331 redes.nu_porta_serv_updates, 332 redes.nu_porta_serv_updates,
@@ -337,10 +338,10 @@ function GetDadosRede() @@ -337,10 +338,10 @@ function GetDadosRede()
337 FROM redes, 338 FROM redes,
338 configuracoes_locais conf 339 configuracoes_locais conf
339 WHERE conf.te_serv_updates_padrao = redes.te_serv_updates and 340 WHERE conf.te_serv_updates_padrao = redes.te_serv_updates and
340 - trim(redes.nu_porta_serv_updates) <> '' and  
341 - trim(redes.nm_usuario_login_serv_updates) <> '' and  
342 - trim(redes.te_senha_login_serv_updates) <> ''  
343 - LIMIT 1"; 341 + trim(redes.nu_porta_serv_updates) <> "" and
  342 + trim(redes.nm_usuario_login_serv_updates) <> "" and
  343 + trim(redes.te_senha_login_serv_updates) <> ""
  344 + LIMIT 1';
344 $result_ver = mysql_query($query_ver); 345 $result_ver = mysql_query($query_ver);
345 $v_dados = mysql_fetch_array($result_ver); 346 $v_dados = mysql_fetch_array($result_ver);
346 } 347 }
@@ -356,8 +357,8 @@ function atualiza_configuracoes_uonx($p_uonx) @@ -356,8 +357,8 @@ function atualiza_configuracoes_uonx($p_uonx)
356 { 357 {
357 conecta_bd_cacic(); 358 conecta_bd_cacic();
358 $v_nome_coluna = 'dt_hr_alteracao_patrim_uon'.$p_uonx; 359 $v_nome_coluna = 'dt_hr_alteracao_patrim_uon'.$p_uonx;
359 - $query = " UPDATE configuracoes_locais  
360 - SET ".$v_nome_coluna." = now()"; 360 + $query = ' UPDATE configuracoes_locais
  361 + SET '.$v_nome_coluna.' = now()';
361 362
362 if (mysql_query($query)) 363 if (mysql_query($query))
363 { 364 {
@@ -453,10 +454,10 @@ function autentica_agente($p_CipherKey, $p_IV, $p_cs_cipher, $p_cs_compress) @@ -453,10 +454,10 @@ function autentica_agente($p_CipherKey, $p_IV, $p_cs_cipher, $p_cs_compress)
453 function computador_existe($te_node_address, $id_so) 454 function computador_existe($te_node_address, $id_so)
454 { 455 {
455 conecta_bd_cacic(); 456 conecta_bd_cacic();
456 - $query = "SELECT te_node_address, te_nome_computador, te_ip, id_ip_rede, te_workgroup 457 + $query = 'SELECT te_node_address, te_nome_computador, te_ip, id_ip_rede, te_workgroup
457 FROM computadores 458 FROM computadores
458 - WHERE te_node_address = '$te_node_address'  
459 - AND id_so = '$id_so'"; 459 + WHERE te_node_address = "'.$te_node_address.'"
  460 + AND id_so = "'.$id_so.'"';
460 $result = mysql_query($query); 461 $result = mysql_query($query);
461 $row = mysql_fetch_array($result); 462 $row = mysql_fetch_array($result);
462 463
@@ -492,21 +493,21 @@ function inclui_computador_caso_nao_exista( $te_node_address, @@ -492,21 +493,21 @@ function inclui_computador_caso_nao_exista( $te_node_address,
492 if ($checa_existe == '0') 493 if ($checa_existe == '0')
493 { 494 {
494 conecta_bd_cacic(); 495 conecta_bd_cacic();
495 - $query = "INSERT INTO computadores (te_node_address, id_so, id_ip_rede, te_ip, te_nome_computador, te_workgroup, dt_hr_inclusao, dt_hr_ult_acesso)  
496 - VALUES ('$te_node_address', '$id_so', '$id_ip_rede','$te_ip','$te_nome_computador','$te_workgroup', NOW(), NOW())"; 496 + $query = 'INSERT INTO computadores (te_node_address, id_so, id_ip_rede, te_ip, te_nome_computador, te_workgroup, dt_hr_inclusao, dt_hr_ult_acesso)
  497 + VALUES ("'.$te_node_address.'", "'.$id_so.'", "'.$id_ip_rede.'","'.$te_ip.'","'.$te_nome_computador.'","'.$te_workgroup.'", NOW(), NOW())';
497 $result = mysql_query($query); 498 $result = mysql_query($query);
498 return '1'; // Esse código indica se o computador foi incluído. 499 return '1'; // Esse código indica se o computador foi incluído.
499 } 500 }
500 elseif ($checa_existe == '2') 501 elseif ($checa_existe == '2')
501 { 502 {
502 conecta_bd_cacic(); 503 conecta_bd_cacic();
503 - $query = "UPDATE computadores  
504 - SET id_ip_rede = '$id_ip_rede',  
505 - te_ip = '$te_ip',  
506 - te_nome_computador='$te_nome_computador',  
507 - te_workgroup='$te_workgroup'  
508 - WHERE te_node_address = '$te_node_address'  
509 - AND id_so = '$id_so'"; 504 + $query = 'UPDATE computadores
  505 + SET id_ip_rede = "'.$id_ip_rede.'",
  506 + te_ip = "'.$te_ip.'",
  507 + te_nome_computador="'.$te_nome_computador.'",
  508 + te_workgroup="'.$te_workgroup.'"
  509 + WHERE te_node_address = "'.$te_node_address.'"
  510 + AND id_so = "'.$id_so.'"';
510 $result = mysql_query($query); 511 $result = mysql_query($query);
511 return '2'; // Esse código indica se o computador foi atualizado. Anderson. 512 return '2'; // Esse código indica se o computador foi atualizado. Anderson.
512 } 513 }
@@ -520,10 +521,10 @@ function inclui_computador_caso_nao_exista( $te_node_address, @@ -520,10 +521,10 @@ function inclui_computador_caso_nao_exista( $te_node_address,
520 function get_valor_campo($tabela, $campo, $where="1") 521 function get_valor_campo($tabela, $campo, $where="1")
521 { 522 {
522 conecta_bd_cacic(); 523 conecta_bd_cacic();
523 - $query = "SELECT $campo  
524 - FROM $tabela  
525 - WHERE $where  
526 - LIMIT 1"; 524 + $query = 'SELECT '.$campo.'
  525 + FROM '.$tabela.'
  526 + WHERE '.$where.'
  527 + LIMIT 1';
527 $result = mysql_query($query); 528 $result = mysql_query($query);
528 if (mysql_num_rows($result) > 0) 529 if (mysql_num_rows($result) > 0)
529 { 530 {
@@ -606,17 +607,17 @@ function atualiza_red_ver_mod($pp_id_ip_rede, $p_nm_modulo, $p_te_versao_modulo, @@ -606,17 +607,17 @@ function atualiza_red_ver_mod($pp_id_ip_rede, $p_nm_modulo, $p_te_versao_modulo,
606 { 607 {
607 $MainFolder = GetMainFolder(); 608 $MainFolder = GetMainFolder();
608 conecta_bd_cacic(); 609 conecta_bd_cacic();
609 - $query_UPD = " UPDATE redes 610 + $query_UPD = ' UPDATE redes
610 set dt_verifica_updates = NOW() 611 set dt_verifica_updates = NOW()
611 - WHERE id_ip_rede = '".$pp_id_ip_rede."' AND  
612 - id_local = ".$p_id_local; 612 + WHERE id_ip_rede = "'.$pp_id_ip_rede.'" AND
  613 + id_local = '.$p_id_local;
613 $result = mysql_query($query_UPD); 614 $result = mysql_query($query_UPD);
614 615
615 - $query_DEL = "DELETE 616 + $query_DEL = 'DELETE
616 FROM redes_versoes_modulos 617 FROM redes_versoes_modulos
617 - WHERE TRIM(id_ip_rede) = '".trim($pp_id_ip_rede)."' AND  
618 - TRIM(nm_modulo)='".trim($p_nm_modulo)."' AND  
619 - id_local = ".$p_id_local; 618 + WHERE TRIM(id_ip_rede) = "'.trim($pp_id_ip_rede).'" AND
  619 + TRIM(nm_modulo)="'.trim($p_nm_modulo).'" AND
  620 + id_local = '.$p_id_local;
620 $result_DEL = mysql_query($query_DEL); 621 $result_DEL = mysql_query($query_DEL);
621 622
622 $v_te_versao_modulo = $p_te_versao_modulo; 623 $v_te_versao_modulo = $p_te_versao_modulo;
@@ -625,15 +626,15 @@ function atualiza_red_ver_mod($pp_id_ip_rede, $p_nm_modulo, $p_te_versao_modulo, @@ -625,15 +626,15 @@ function atualiza_red_ver_mod($pp_id_ip_rede, $p_nm_modulo, $p_te_versao_modulo,
625 $v_te_versao_modulo = str_replace('.','',$v_te_versao_modulo); 626 $v_te_versao_modulo = str_replace('.','',$v_te_versao_modulo);
626 } 627 }
627 628
628 - $query_INS = "INSERT 629 + $query_INS = 'INSERT
629 INTO redes_versoes_modulos (id_ip_rede, 630 INTO redes_versoes_modulos (id_ip_rede,
630 nm_modulo, 631 nm_modulo,
631 te_versao_modulo, 632 te_versao_modulo,
632 id_local) 633 id_local)
633 - values ('".$pp_id_ip_rede."',  
634 - '".$p_nm_modulo."',  
635 - '".$v_te_versao_modulo."',".  
636 - $p_id_local.")"; 634 + values ("'.$pp_id_ip_rede.'",
  635 + "'.$p_nm_modulo.'",
  636 + "'.$v_te_versao_modulo.'","'.
  637 + $p_id_local.'")';
637 638
638 $result_INS = mysql_query($query_INS); 639 $result_INS = mysql_query($query_INS);
639 } 640 }
@@ -782,10 +783,10 @@ if ($handle = opendir($MainFolder . &#39;/repositorio&#39;)) @@ -782,10 +783,10 @@ if ($handle = opendir($MainFolder . &#39;/repositorio&#39;))
782 } 783 }
783 } 784 }
784 785
785 - $query_SEL_REDES= " SELECT * 786 + $query_SEL_REDES= ' SELECT *
786 FROM redes_versoes_modulos 787 FROM redes_versoes_modulos
787 - WHERE id_ip_rede = '" . $p_id_ip_rede . "' AND  
788 - id_local = ".$p_id_local; 788 + WHERE id_ip_rede = "' . $p_id_ip_rede . '" AND
  789 + id_local = '.$p_id_local;
789 conecta_bd_cacic(); 790 conecta_bd_cacic();
790 791
791 $v_nomes_arquivos_FTP = array(); 792 $v_nomes_arquivos_FTP = array();
@@ -810,7 +811,7 @@ if ($handle = opendir($MainFolder . &#39;/repositorio&#39;)) @@ -810,7 +811,7 @@ if ($handle = opendir($MainFolder . &#39;/repositorio&#39;))
810 811
811 if ($v_achei < count($v_nomes_arquivos_REP)) 812 if ($v_achei < count($v_nomes_arquivos_REP))
812 { 813 {
813 - $query_SEL_REDES= " SELECT re.id_ip_rede, 814 + $query_SEL_REDES= ' SELECT re.id_ip_rede,
814 re.nm_rede, 815 re.nm_rede,
815 re.te_serv_updates, 816 re.te_serv_updates,
816 re.nu_porta_serv_updates, 817 re.nu_porta_serv_updates,
@@ -819,8 +820,8 @@ if ($handle = opendir($MainFolder . &#39;/repositorio&#39;)) @@ -819,8 +820,8 @@ if ($handle = opendir($MainFolder . &#39;/repositorio&#39;))
819 re.te_senha_login_serv_updates_gerente, 820 re.te_senha_login_serv_updates_gerente,
820 re.id_local 821 re.id_local
821 FROM redes re 822 FROM redes re
822 - WHERE re.id_ip_rede = '" . $p_id_ip_rede . "' AND  
823 - re.id_local = ".$p_id_local; 823 + WHERE re.id_ip_rede = "' . $p_id_ip_rede . '" AND
  824 + re.id_local = '.$p_id_local;
824 conecta_bd_cacic(); 825 conecta_bd_cacic();
825 $Result_SEL_REDES = mysql_query($query_SEL_REDES); 826 $Result_SEL_REDES = mysql_query($query_SEL_REDES);
826 827
@@ -991,10 +992,10 @@ function diferenca_em_horas($p_dt_hr_ult_acesso) @@ -991,10 +992,10 @@ function diferenca_em_horas($p_dt_hr_ult_acesso)
991 // -------------------------------------------------------------------------------------- 992 // --------------------------------------------------------------------------------------
992 function Marca_Atualizado($p_id_ip_rede,$p_id_local) 993 function Marca_Atualizado($p_id_ip_rede,$p_id_local)
993 { 994 {
994 - $query_UPD = " UPDATE redes 995 + $query_UPD = ' UPDATE redes
995 set dt_verifica_updates = NOW() 996 set dt_verifica_updates = NOW()
996 - WHERE id_ip_rede = '".$p_id_ip_rede."' AND  
997 - id_local = ".$p_id_local; 997 + WHERE id_ip_rede = "'.$p_id_ip_rede.'" AND
  998 + id_local = '.$p_id_local;
998 conecta_bd_cacic(); 999 conecta_bd_cacic();
999 $result_UPD = mysql_query($query_UPD); 1000 $result_UPD = mysql_query($query_UPD);
1000 } 1001 }
@@ -1096,13 +1097,13 @@ function seta_perfis_rede($p_id_local, $p_id_ip_rede, $p_perfis) @@ -1096,13 +1097,13 @@ function seta_perfis_rede($p_id_local, $p_id_ip_rede, $p_perfis)
1096 1097
1097 for ($cnt_perfis = 0; $cnt_perfis <= count($v_perfis); $cnt_perfis++) 1098 for ($cnt_perfis = 0; $cnt_perfis <= count($v_perfis); $cnt_perfis++)
1098 { 1099 {
1099 - $query_INS = "INSERT 1100 + $query_INS = 'INSERT
1100 INTO aplicativos_redes (id_local, 1101 INTO aplicativos_redes (id_local,
1101 id_ip_rede, 1102 id_ip_rede,
1102 id_aplicativo) 1103 id_aplicativo)
1103 - values (".$p_id_local.",  
1104 - '".$p_id_ip_rede."',  
1105 - ".$v_perfis[$cnt_perfis].")"; 1104 + values ('.$p_id_local.',
  1105 + "'.$p_id_ip_rede.'",
  1106 + '.$v_perfis[$cnt_perfis].')';
1106 $result_INS = mysql_query($query_INS); 1107 $result_INS = mysql_query($query_INS);
1107 1108
1108 } 1109 }
@@ -16,7 +16,7 @@ @@ -16,7 +16,7 @@
16 <html> 16 <html>
17 <head> 17 <head>
18 <title>CACIC - Configurador Automático e Coletor de Informações Computacionais</title> 18 <title>CACIC - Configurador Automático e Coletor de Informações Computacionais</title>
19 -<link rel="shortcut icon" href="cacic_icon.ico"> 19 +<LINK REL="shortcut icon" HREF="cacic_icon.ico" TYPE="imag/x-icon" >
20 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 20 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
21 </head> 21 </head>
22 22
1 - LICENÇA PÚBLICA GERAL GNU  
2 - Versão 2, junho de 1991  
3 -  
4 - This is an unofficial translation of the GNU General Public License  
5 - into Brazilian Portuguese. It was not published by the Free Software  
6 - Foundation, and does not legally state the distribution terms for  
7 - software that uses the GNU GPL -- only the original English text of  
8 - the GNU GPL does that. However, we hope that this translation will  
9 - help Brazilian Portuguese speakers understand the GNU GPL better.  
10 -  
11 - Esta é uma tradução não-oficial da Licença Pública Geral GNU ("GPL  
12 - GNU") para o português do Brasil. Ela não foi publicada pela Free  
13 -Software Foundation, e legalmente não afirma os termos de distribuição  
14 - de software que utiliza a GPL GNU -- apenas o texto original da GPL  
15 - GNU, em inglês, faz isso. Contudo, esperamos que esta tradução ajude  
16 - aos que utilizam o português do Brasil a entender melhor a GPL GNU.  
17 -  
18 - Copyright (C) 1989, 1991 Free Software Foundation, Inc. 675 Mass Ave,  
19 - Cambridge, MA 02139, USA  
20 -  
21 -A qualquer pessoa é permitido copiar e distribuir cópias desse  
22 -documento de licença, desde que sem qualquer alteração.  
23 -  
24 - Introdução  
25 -  
26 - As licenças de muitos software são desenvolvidas para restringir sua  
27 -liberdade de compartilhá-lo e mudá-lo. Contrária a isso, a Licença  
28 -Pública Geral GNU pretende garantir sua liberdade de compartilhar e  
29 -alterar software livres -- garantindo que o software será livre e  
30 -gratuito para os seus usuários. Esta Licença Pública Geral aplica-se à  
31 -maioria dos software da Free Software Foundation e a qualquer outro  
32 -programa cujo autor decida aplicá-la. (Alguns outros software da FSF  
33 -são cobertos pela Licença Pública Geral de Bibliotecas, no entanto.)  
34 -Você pode aplicá-la também aos seus programas.  
35 -  
36 - Quando nos referimos a software livre, estamos nos referindo a  
37 -liberdade e não a preço. Nossa Licença Pública Geral foi desenvolvida  
38 -para garantir que você tenha a liberdade de distribuir cópias de  
39 -software livre (e cobrar por isso, se quiser); que você receba o  
40 -código-fonte ou tenha acesso a ele, se quiser; que você possa mudar o  
41 -software ou utilizar partes dele em novos programas livres e  
42 -gratuitos; e que você saiba que pode fazer tudo isso.  
43 -  
44 - Para proteger seus direitos, precisamos fazer restrições que impeçam  
45 -a qualquer um negar estes direitos ou solicitar que você deles  
46 -abdique. Estas restrições traduzem-se em certas responsabilidades para  
47 -você, se você for distribuir cópias do software ou modificá-lo.  
48 -  
49 - Por exemplo, se você distribuir cópias de um programa, gratuitamente  
50 -ou por alguma quantia, você tem que fornecer aos recebedores todos os  
51 -direitos que você possui. Você tem que garantir que eles também  
52 -recebam ou possam obter o código-fonte. E você tem que mostrar-lhes  
53 -estes termos para que eles possam conhecer seus direitos.  
54 -  
55 - Nós protegemos seus direitos em dois passos: (1) com copyright do  
56 -software e (2) com a oferta desta licença, que lhe dá permissão legal  
57 -para copiar, distribuir e/ou modificar o software.  
58 -  
59 - Além disso, tanto para a proteção do autor quanto a nossa,  
60 -gostaríamos de certificar-nos que todos entendam que não há qualquer  
61 -garantia nestes software livres. Se o software é modificado por alguém  
62 -mais e passado adiante, queremos que seus recebedores saibam que o que  
63 -eles obtiveram não é original, de forma que qualquer problema  
64 -introduzido por terceiros não interfira na reputação do autor  
65 -original.  
66 -  
67 - Finalmente, qualquer programa é ameaçado constantemente por patentes  
68 -de software. Queremos evitar o perigo de que distribuidores de  
69 -software livre obtenham patentes individuais, o que tem o efeito de  
70 -tornar o programa proprietário. Para prevenir isso, deixamos claro que  
71 -qualquer patente tem que ser licenciada para uso livre e gratuito por  
72 -qualquer pessoa, ou então que nem necessite ser licenciada.  
73 -  
74 - Os termos e condições precisas para cópia, distribuição e  
75 -modificação se encontram abaixo:  
76 -  
77 - LICENÇA PÚBLICA GERAL GNU  
78 - TERMOS E CONDIÇÕES PARA CÓPIA, DISTRIBUIÇÃO E MODIFICAÇÃO  
79 -  
80 - 0. Esta licença se aplica a qualquer programa ou outro trabalho que  
81 -contenha um aviso colocado pelo detentor dos direitos autorais  
82 -informando que aquele pode ser distribuído sob as condições desta  
83 -Licença Pública Geral. O "Programa" abaixo refere-se a qualquer  
84 -programa ou trabalho, e "trabalho baseado no Programa" significa tanto  
85 -o Programa em si como quaisquer trabalhos derivados, de acordo com a  
86 -lei de direitos autorais: isto quer dizer um trabalho que contenha o  
87 -Programa ou parte dele, tanto originalmente ou com modificações, e/ou  
88 -tradução para outros idiomas. (Doravante o processo de tradução está  
89 -incluído sem limites no termo "modificação".) Cada licenciado é  
90 -mencionado como "você".  
91 -  
92 -Atividades outras que a cópia, a distribuição e modificação não estão  
93 -cobertas por esta Licença; elas estão fora de seu escopo. O ato de  
94 -executar o Programa não é restringido e o resultado do Programa é  
95 -coberto apenas se seu conteúdo contenha trabalhos baseados no Programa  
96 -(independentemente de terem sido gerados pela execução do  
97 -Programa). Se isso é verdadeiro depende do que o programa faz.  
98 -  
99 - 1. Você pode copiar e distribuir cópias fiéis do código-fonte do  
100 -Programa da mesma forma que você o recebeu, usando qualquer meio,  
101 -deste que você conspícua e apropriadamente publique em cada cópia um  
102 -aviso de direitos autorais e uma declaração de inexistência de  
103 -garantias; mantenha intactas todos os avisos que se referem a esta  
104 -Licença e à ausência total de garantias; e forneça a outros  
105 -recebedores do Programa uma cópia desta Licença, junto com o Programa.  
106 -  
107 -Você pode cobrar pelo ato físico de transferir uma cópia e pode,  
108 -opcionalmente, oferecer garantia em troca de pagamento.  
109 -  
110 - 2. Você pode modificar sua cópia ou cópias do Programa, ou qualquer  
111 -parte dele, assim gerando um trabalho baseado no Programa, e copiar e  
112 -distribuir essas modificações ou trabalhos sob os termos da seção 1  
113 -acima, desde que você também se enquadre em todas estas condições:  
114 -  
115 - a) Você tem que fazer com que os arquivos modificados levem avisos  
116 - proeminentes afirmando que você alterou os arquivos, incluindo a  
117 - data de qualquer alteração.  
118 -  
119 - b) Você tem que fazer com que quaisquer trabalhos que você  
120 - distribua ou publique, e que integralmente ou em partes contenham  
121 - ou sejam derivados do Programa ou de suas partes, sejam  
122 - licenciados, integralmente e sem custo algum para quaisquer  
123 - terceiros, sob os termos desta Licença.  
124 -  
125 - c) Se qualquer programa modificado normalmente lê comandos  
126 - interativamente quando executados, você tem que fazer com que,  
127 - quando iniciado tal uso interativo da forma mais simples, seja  
128 - impresso ou mostrado um anúncio de que não há qualquer garantia  
129 - (ou então que você fornece a garantia) e que os usuários podem  
130 - redistribuir o programa sob estas condições, ainda informando os  
131 - usuários como consultar uma cópia desta Licença. (Exceção: se o  
132 - Programa em si é interativo mas normalmente não imprime estes  
133 - tipos de anúncios, seu trabalho baseado no Programa não precisa  
134 - imprimir um anúncio.)  
135 -  
136 -Estas exigências aplicam-se ao trabalho modificado como um todo. Se  
137 -seções identificáveis de tal trabalho não são derivadas do Programa, e  
138 -podem ser razoavelmente consideradas trabalhos independentes e  
139 -separados por si só, então esta Licença, e seus termos, não se aplicam  
140 -a estas seções quando você distribui-las como trabalhos em  
141 -separado. Mas quando você distribuir as mesmas seções como parte de um  
142 -todo que é trabalho baseado no Programa, a distribuição como um todo  
143 -tem que se enquadrar nos termos desta Licença, cujas permissões para  
144 -outros licenciados se estendem ao todo, portanto também para cada e  
145 -toda parte independente de quem a escreveu.  
146 -  
147 -Desta forma, esta seção não tem a intenção de reclamar direitos os  
148 -contestar seus direitos sobre o trabalho escrito completamente por  
149 -você; ao invés disso, a intenção é a de exercitar o direito de  
150 -controlar a distribuição de trabalhos, derivados ou coletivos,  
151 -baseados no Programa.  
152 -  
153 -Adicionalmente, a mera adição ao Programa de outro trabalho não  
154 -baseado no Programa (ou de trabalho baseado no Programa) em um volume  
155 -de armazenamento ou meio de distribuição não faz o outro trabalho  
156 -parte do escopo desta Licença.  
157 -  
158 - 3. Você pode copiar e distribuir o Programa (ou trabalho baseado  
159 -nele, conforme descrito na Seção 2) em código-objeto ou em forma  
160 -executável sob os termos das Seções 1 e 2 acima, desde que você  
161 -faça um dos seguintes:  
162 -  
163 - a) O acompanhe com o código-fonte completo e em forma acessível  
164 - por máquinas, que tem que ser distribuído sob os termos das Seções  
165 - 1 e 2 acima e em meio normalmente utilizado para o intercâmbio de  
166 - software; ou,  
167 -  
168 - b) O acompanhe com uma oferta escrita, válida por pelo menos três  
169 - anos, de fornecer a qualquer um, com um custo não superior ao  
170 - custo de distribuição física do material, uma cópia do  
171 - código-fonte completo e em forma acessível por máquinas, que tem  
172 - que ser distribuído sob os termos das Seções 1 e 2 acima e em meio  
173 - normalmente utilizado para o intercâmbio de software; ou,  
174 -  
175 - c) O acompanhe com a informação que você recebeu em relação à  
176 - oferta de distribuição do código-fonte correspondente. (Esta  
177 - alternativa é permitida somente em distribuição não comerciais, e  
178 - apenas se você recebeu o programa em forma de código-objeto ou  
179 - executável, com oferta de acordo com a Subseção b acima.)  
180 -  
181 -O código-fonte de um trabalho corresponde à forma de trabalho  
182 -preferida para se fazer modificações. Para um trabalho em forma  
183 -executável, o código-fonte completo significa todo o código-fonte de  
184 -todos os módulos que ele contém, mais quaisquer arquivos de definição  
185 -de "interface", mais os "scripts" utilizados para se controlar a  
186 -compilação e a instalação do executável. Contudo, como exceção  
187 -especial, o código-fonte distribuído não precisa incluir qualquer  
188 -componente normalmente distribuído (tanto em forma original quanto  
189 -binária) com os maiores componentes (o compilador, o "kernel" etc.) do  
190 -sistema operacional sob o qual o executável funciona, a menos que o  
191 -componente em si acompanhe o executável.  
192 -  
193 -Se a distribuição do executável ou código-objeto é feita através da  
194 -oferta de acesso a cópias de algum lugar, então ofertar o acesso  
195 -equivalente a cópia, do mesmo lugar, do código-fonte equivale à  
196 -distribuição do código-fonte, mesmo que terceiros não sejam compelidos  
197 -a copiar o código-fonte com o código-objeto.  
198 -  
199 - 4. Você não pode copiar, modificar, sub-licenciar ou distribuir o  
200 -Programa, exceto de acordo com as condições expressas nesta  
201 -Licença. Qualquer outra tentativa de cópia, modificação,  
202 -sub-licenciamento ou distribuição do Programa não é valida, e  
203 -cancelará automaticamente os direitos que lhe foram fornecidos por  
204 -esta Licença. No entanto, terceiros que de você receberam cópias ou  
205 -direitos, fornecidos sob os termos desta Licença, não terão suas  
206 -licenças terminadas, desde que permaneçam em total concordância com  
207 -ela.  
208 -  
209 - 5. Você não é obrigado a aceitar esta Licença já que não a  
210 -assinou. No entanto, nada mais o dará permissão para modificar ou  
211 -distribuir o Programa ou trabalhos derivados deste. Estas ações são  
212 -proibidas por lei, caso você não aceite esta Licença. Desta forma, ao  
213 -modificar ou distribuir o Programa (ou qualquer trabalho derivado do  
214 -Programa), você estará indicando sua total aceitação desta Licença  
215 -para fazê-los, e todos os seus termos e condições para copiar,  
216 -distribuir ou modificar o Programa, ou trabalhos baseados nele.  
217 -  
218 - 6. Cada vez que você redistribuir o Programa (ou qualquer trabalho  
219 -baseado nele), os recebedores adquirirão automaticamente do  
220 -licenciador original uma licença para copiar, distribuir ou modificar  
221 -o Programa, sujeitos a estes termos e condições. Você não poderá impor  
222 -aos recebedores qualquer outra restrição ao exercício dos direitos  
223 -então adquiridos. Você não é responsável em garantir a concordância de  
224 -terceiros a esta Licença.  
225 -  
226 - 7. Se, em conseqüência de decisões judiciais ou alegações de  
227 -infringimento de patentes ou quaisquer outras razões (não limitadas a  
228 -assuntos relacionados a patentes), condições forem impostas a você  
229 -(por ordem judicial, acordos ou outras formas) e que contradigam as  
230 -condições desta Licença, elas não o livram das condições desta  
231 -Licença. Se você não puder distribuir de forma a satisfazer  
232 -simultaneamente suas obrigações para com esta Licença e para com as  
233 -outras obrigações pertinentes, então como conseqüência você não poderá  
234 -distribuir o Programa. Por exemplo, se uma licença de patente não  
235 -permitirá a redistribuição, livre de "royalties", do Programa, por  
236 -todos aqueles que receberem cópias direta ou indiretamente de você,  
237 -então a única forma de você satisfazer a ela e a esta Licença seria a  
238 -de desistir completamente de distribuir o Programa.  
239 -  
240 -Se qualquer parte desta seção for considerada inválida ou não  
241 -aplicável em qualquer circunstância particular, o restante da seção se  
242 -aplica, e a seção como um todo se aplica em outras circunstâncias.  
243 -  
244 -O propósito desta seção não é o de induzi-lo a infringir quaisquer  
245 -patentes ou reivindicação de direitos de propriedade outros, ou a  
246 -contestar a validade de quaisquer dessas reivindicações; esta seção  
247 -tem como único propósito proteger a integridade dos sistemas de  
248 -distribuição de software livres, o que é implementado pela prática de  
249 -licenças públicas. Várias pessoas têm contribuído generosamente e em  
250 -grande escala para os software distribuídos usando este sistema, na  
251 -certeza de que sua aplicação é feita de forma consistente; fica a  
252 -critério do autor/doador decidir se ele ou ela está disposto a  
253 -distribuir software utilizando outro sistema, e um licenciado não pode  
254 -impor qualquer escolha.  
255 -  
256 -Esta seção destina-se a tornar bastante claro o que se acredita ser  
257 -conseqüência do restante desta Licença.  
258 -  
259 - 8. Se a distribuição e/ou uso do Programa são restringidos em certos  
260 -países por patentes ou direitos autorais, o detentor dos direitos  
261 -autorais original, e que colocou o Programa sob esta Licença, pode  
262 -incluir uma limitação geográfica de distribuição, excluindo aqueles  
263 -países de forma a tornar a distribuição permitida apenas naqueles ou  
264 -entre aqueles países então não excluídos. Nestes casos, esta Licença  
265 -incorpora a limitação como se a mesma constasse escrita nesta Licença.  
266 -  
267 - 9. A Free Software Foundation pode publicar versões revisadas e/ou  
268 -novas da Licença Pública Geral de tempos em tempos. Estas novas  
269 -versões serão similares em espírito à versão atual, mas podem diferir  
270 -em detalhes que resolvem novos problemas ou situações.  
271 -  
272 -A cada versão é dada um número distinto. Se o Programa especifica um  
273 -número de versão específico desta Licença que se aplica a ele e a  
274 -"qualquer nova versão", você tem a opção de aceitar os termos e  
275 -condições daquela versão ou de qualquer outra versão publicada pela  
276 -Free Software Foundation. Se o programa não especifica um número de  
277 -versão desta Licença, você pode escolher qualquer versão já publicada  
278 -pela Free Software Foundation.  
279 -  
280 - 10. Se você pretende incorporar partes do Programa em outros  
281 -programas livres cujas condições de distribuição são diferentes,  
282 -escreva ao autor e solicite permissão. Para o software que a Free  
283 -Software Foundation detém direitos autorais, escreva à Free Software  
284 -Foundation; às vezes nós permitimos exceções a este caso. Nossa  
285 -decisão será guiada pelos dois objetivos de preservar a condição de  
286 -liberdade de todas as derivações do nosso software livre, e de  
287 -promover o compartilhamento e reutilização de software em aspectos  
288 -gerais.  
289 -  
290 - AUSÊNCIA DE GARANTIAS  
291 -  
292 - 11. UMA VEZ QUE O PROGRAMA É LICENCIADO SEM ÔNUS, NÃO HÁ QUALQUER  
293 -GARANTIA PARA O PROGRAMA, NA EXTENSÃO PERMITIDA PELAS LEIS  
294 -APLICÁVEIS. EXCETO QUANDO EXPRESSADO DE FORMA ESCRITA, OS DETENTORES  
295 -DOS DIREITOS AUTORAIS E/OU TERCEIROS DISPONIBILIZAM O PROGRAMA "NO  
296 -ESTADO", SEM QUALQUER TIPO DE GARANTIAS, EXPRESSAS OU IMPLÍCITAS,  
297 -INCLUINDO, MAS NÃO LIMITADO A, AS GARANTIAS IMPLÍCITAS DE  
298 -COMERCIALIZAÇÃO E AS DE ADEQUAÇÃO A QUALQUER PROPÓSITO. O RISCO TOTAL  
299 -COM A QUALIDADE E DESEMPENHO DO PROGRAMA É SEU. SE O PROGRAMA SE  
300 -MOSTRAR DEFEITUOSO, VOCÊ ASSUME OS CUSTOS DE TODAS AS MANUTENÇÕES,  
301 -REPAROS E CORREÇÕES.  
302 -  
303 - 12. EM NENHUMA OCASIÃO, A MENOS QUE EXIGIDO PELAS LEIS APLICÁVEIS OU  
304 -ACORDO ESCRITO, OS DETENTORES DOS DIREITOS AUTORAIS, OU QUALQUER OUTRA  
305 -PARTE QUE POSSA MODIFICAR E/OU REDISTRIBUIR O PROGRAMA CONFORME  
306 -PERMITIDO ACIMA, SERÃO RESPONSABILIZADOS POR VOCÊ POR DANOS, INCLUINDO  
307 -QUALQUER DANO EM GERAL, ESPECIAL, ACIDENTAL OU CONSEQÜENTE,  
308 -RESULTANTES DO USO OU INCAPACIDADE DE USO DO PROGRAMA (INCLUINDO, MAS  
309 -NÃO LIMITADO A, A PERDA DE DADOS OU DADOS TORNADOS INCORRETOS, OU  
310 -PERDAS SOFRIDAS POR VOCÊ OU POR OUTRAS PARTES, OU FALHAS DO PROGRAMA  
311 -AO OPERAR COM QUALQUER OUTRO PROGRAMA), MESMO QUE TAL DETENTOR OU  
312 -PARTE TENHAM SIDO AVISADOS DA POSSIBILIDADE DE TAIS DANOS.  
313 -  
314 - FIM DOS TERMOS E CONDIÇÕES  
315 -  
316 - Como Aplicar Estes Termos aos Seus Novos Programas  
317 -  
318 - Se você desenvolver um novo programa, e quer que ele seja utilizado  
319 -amplamente pelo público, a melhor forma de alcançar este objetivo é  
320 -torná-lo software livre que qualquer um pode redistribuir e alterar,  
321 -sob estes termos.  
322 -  
323 - Para isso, anexe os seguintes avisos ao programa. É mais seguro  
324 -anexá-los logo no início de cada arquivo-fonte para reforçarem mais  
325 -efetivamente a inexistência de garantias; e cada arquivo deve possuir  
326 -pelo menos a linha de "copyright" e uma indicação de onde o texto  
327 -completo se encontra.  
328 -  
329 - <uma linha que forneça o nome do programa e uma idéia do que ele faz.>  
330 - Copyright (C) <ano> <nome do autor>  
331 -  
332 - Este programa é software livre; você pode redistribuí-lo e/ou  
333 - modificá-lo sob os termos da Licença Pública Geral GNU, conforme  
334 - publicada pela Free Software Foundation; tanto a versão 2 da  
335 - Licença como (a seu critério) qualquer versão mais nova.  
336 -  
337 - Este programa é distribuído na expectativa de ser útil, mas SEM  
338 - QUALQUER GARANTIA; sem mesmo a garantia implícita de  
339 - COMERCIALIZAÇÃO ou de ADEQUAÇÃO A QUALQUER PROPÓSITO EM  
340 - PARTICULAR. Consulte a Licença Pública Geral GNU para obter mais  
341 - detalhes.  
342 -  
343 - Você deve ter recebido uma cópia da Licença Pública Geral GNU  
344 - junto com este programa; se não, escreva para a Free Software  
345 - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  
346 - 02111-1307, USA.  
347 -  
348 -Inclua também informações sobre como contactá-lo eletronicamente e por  
349 -carta.  
350 -  
351 -Se o programa é interativo, faça-o mostrar um aviso breve como este,  
352 -ao iniciar um modo interativo:  
353 -  
354 - Gnomovision versão 69, Copyright (C) ano nome do autor  
355 - O Gnomovision não possui QUALQUER GARANTIA; para obter mais  
356 - detalhes digite `show w'. Ele é software livre e você está  
357 - convidado a redistribui-lo sob certas condições; digite `show c'  
358 - para obter detalhes.  
359 -  
360 -Os comandos hipotéticos `show w' e `show c' devem mostrar as partes  
361 -apropriadas da Licença Pública Geral. Claro, os comandos que você usar  
362 -podem ser ativados de outra forma que `show w' e `show c'; eles podem  
363 -até ser cliques do mouse ou itens de um menu -- o que melhor se  
364 -adequar ao programa.  
365 -  
366 -Você também deve obter do seu empregador (se você trabalha como  
367 -programador) ou escola, se houver, uma "declaração de ausência de  
368 -direitos autorais" sobre o programa, se necessário. Aqui está um  
369 -exemplo; altere os nomes:  
370 -  
371 - Yoyodyne, Inc., aqui declara a ausência de quaisquer direitos  
372 - autorais sobre o programa `Gnomovision' (que executa interpretações  
373 - em compiladores) escrito por James Hacker.  
374 -  
375 - <assinatura de Ty Coon>, 1o. de abril de 1989  
376 - Ty Con, Vice-presidente  
377 -  
378 -Esta Licença Pública Geral não permite incorporar seu programa em  
379 -programas proprietários. Se seu programa é uma biblioteca de  
380 -sub-rotinas, você deve considerar mais útil permitir ligar aplicações  
381 -proprietárias com a biblioteca. Se isto é o que você deseja, use a  
382 -Licença Pública Geral de Bibliotecas GNU, ao invés desta Licença. 1 + GNU GENERAL PUBLIC LICENSE
  2 + Version 2, June 1991
  3 +
  4 + Copyright (C) 1989, 1991 Free Software Foundation, Inc.
  5 + 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
  6 + Everyone is permitted to copy and distribute verbatim copies
  7 + of this license document, but changing it is not allowed.
  8 +
  9 + Preamble
  10 +
  11 + The licenses for most software are designed to take away your
  12 +freedom to share and change it. By contrast, the GNU General Public
  13 +License is intended to guarantee your freedom to share and change free
  14 +software--to make sure the software is free for all its users. This
  15 +General Public License applies to most of the Free Software
  16 +Foundation's software and to any other program whose authors commit to
  17 +using it. (Some other Free Software Foundation software is covered by
  18 +the GNU Library General Public License instead.) You can apply it to
  19 +your programs, too.
  20 +
  21 + When we speak of free software, we are referring to freedom, not
  22 +price. Our General Public Licenses are designed to make sure that you
  23 +have the freedom to distribute copies of free software (and charge for
  24 +this service if you wish), that you receive source code or can get it
  25 +if you want it, that you can change the software or use pieces of it
  26 +in new free programs; and that you know you can do these things.
  27 +
  28 + To protect your rights, we need to make restrictions that forbid
  29 +anyone to deny you these rights or to ask you to surrender the rights.
  30 +These restrictions translate to certain responsibilities for you if you
  31 +distribute copies of the software, or if you modify it.
  32 +
  33 + For example, if you distribute copies of such a program, whether
  34 +gratis or for a fee, you must give the recipients all the rights that
  35 +you have. You must make sure that they, too, receive or can get the
  36 +source code. And you must show them these terms so they know their
  37 +rights.
  38 +
  39 + We protect your rights with two steps: (1) copyright the software, and
  40 +(2) offer you this license which gives you legal permission to copy,
  41 +distribute and/or modify the software.
  42 +
  43 + Also, for each author's protection and ours, we want to make certain
  44 +that everyone understands that there is no warranty for this free
  45 +software. If the software is modified by someone else and passed on, we
  46 +want its recipients to know that what they have is not the original, so
  47 +that any problems introduced by others will not reflect on the original
  48 +authors' reputations.
  49 +
  50 + Finally, any free program is threatened constantly by software
  51 +patents. We wish to avoid the danger that redistributors of a free
  52 +program will individually obtain patent licenses, in effect making the
  53 +program proprietary. To prevent this, we have made it clear that any
  54 +patent must be licensed for everyone's free use or not licensed at all.
  55 +
  56 + The precise terms and conditions for copying, distribution and
  57 +modification follow.
  58 +
  59 + GNU GENERAL PUBLIC LICENSE
  60 + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
  61 +
  62 + 0. This License applies to any program or other work which contains
  63 +a notice placed by the copyright holder saying it may be distributed
  64 +under the terms of this General Public License. The "Program", below,
  65 +refers to any such program or work, and a "work based on the Program"
  66 +means either the Program or any derivative work under copyright law:
  67 +that is to say, a work containing the Program or a portion of it,
  68 +either verbatim or with modifications and/or translated into another
  69 +language. (Hereinafter, translation is included without limitation in
  70 +the term "modification".) Each licensee is addressed as "you".
  71 +
  72 +Activities other than copying, distribution and modification are not
  73 +covered by this License; they are outside its scope. The act of
  74 +running the Program is not restricted, and the output from the Program
  75 +is covered only if its contents constitute a work based on the
  76 +Program (independent of having been made by running the Program).
  77 +Whether that is true depends on what the Program does.
  78 +
  79 + 1. You may copy and distribute verbatim copies of the Program's
  80 +source code as you receive it, in any medium, provided that you
  81 +conspicuously and appropriately publish on each copy an appropriate
  82 +copyright notice and disclaimer of warranty; keep intact all the
  83 +notices that refer to this License and to the absence of any warranty;
  84 +and give any other recipients of the Program a copy of this License
  85 +along with the Program.
  86 +
  87 +You may charge a fee for the physical act of transferring a copy, and
  88 +you may at your option offer warranty protection in exchange for a fee.
  89 +
  90 + 2. You may modify your copy or copies of the Program or any portion
  91 +of it, thus forming a work based on the Program, and copy and
  92 +distribute such modifications or work under the terms of Section 1
  93 +above, provided that you also meet all of these conditions:
  94 +
  95 + a) You must cause the modified files to carry prominent notices
  96 + stating that you changed the files and the date of any change.
  97 +
  98 + b) You must cause any work that you distribute or publish, that in
  99 + whole or in part contains or is derived from the Program or any
  100 + part thereof, to be licensed as a whole at no charge to all third
  101 + parties under the terms of this License.
  102 +
  103 + c) If the modified program normally reads commands interactively
  104 + when run, you must cause it, when started running for such
  105 + interactive use in the most ordinary way, to print or display an
  106 + announcement including an appropriate copyright notice and a
  107 + notice that there is no warranty (or else, saying that you provide
  108 + a warranty) and that users may redistribute the program under
  109 + these conditions, and telling the user how to view a copy of this
  110 + License. (Exception: if the Program itself is interactive but
  111 + does not normally print such an announcement, your work based on
  112 + the Program is not required to print an announcement.)
  113 +
  114 +These requirements apply to the modified work as a whole. If
  115 +identifiable sections of that work are not derived from the Program,
  116 +and can be reasonably considered independent and separate works in
  117 +themselves, then this License, and its terms, do not apply to those
  118 +sections when you distribute them as separate works. But when you
  119 +distribute the same sections as part of a whole which is a work based
  120 +on the Program, the distribution of the whole must be on the terms of
  121 +this License, whose permissions for other licensees extend to the
  122 +entire whole, and thus to each and every part regardless of who wrote it.
  123 +
  124 +Thus, it is not the intent of this section to claim rights or contest
  125 +your rights to work written entirely by you; rather, the intent is to
  126 +exercise the right to control the distribution of derivative or
  127 +collective works based on the Program.
  128 +
  129 +In addition, mere aggregation of another work not based on the Program
  130 +with the Program (or with a work based on the Program) on a volume of
  131 +a storage or distribution medium does not bring the other work under
  132 +the scope of this License.
  133 +
  134 + 3. You may copy and distribute the Program (or a work based on it,
  135 +under Section 2) in object code or executable form under the terms of
  136 +Sections 1 and 2 above provided that you also do one of the following:
  137 +
  138 + a) Accompany it with the complete corresponding machine-readable
  139 + source code, which must be distributed under the terms of Sections
  140 + 1 and 2 above on a medium customarily used for software interchange; or,
  141 +
  142 + b) Accompany it with a written offer, valid for at least three
  143 + years, to give any third party, for a charge no more than your
  144 + cost of physically performing source distribution, a complete
  145 + machine-readable copy of the corresponding source code, to be
  146 + distributed under the terms of Sections 1 and 2 above on a medium
  147 + customarily used for software interchange; or,
  148 +
  149 + c) Accompany it with the information you received as to the offer
  150 + to distribute corresponding source code. (This alternative is
  151 + allowed only for noncommercial distribution and only if you
  152 + received the program in object code or executable form with such
  153 + an offer, in accord with Subsection b above.)
  154 +
  155 +The source code for a work means the preferred form of the work for
  156 +making modifications to it. For an executable work, complete source
  157 +code means all the source code for all modules it contains, plus any
  158 +associated interface definition files, plus the scripts used to
  159 +control compilation and installation of the executable. However, as a
  160 +special exception, the source code distributed need not include
  161 +anything that is normally distributed (in either source or binary
  162 +form) with the major components (compiler, kernel, and so on) of the
  163 +operating system on which the executable runs, unless that component
  164 +itself accompanies the executable.
  165 +
  166 +If distribution of executable or object code is made by offering
  167 +access to copy from a designated place, then offering equivalent
  168 +access to copy the source code from the same place counts as
  169 +distribution of the source code, even though third parties are not
  170 +compelled to copy the source along with the object code.
  171 +
  172 + 4. You may not copy, modify, sublicense, or distribute the Program
  173 +except as expressly provided under this License. Any attempt
  174 +otherwise to copy, modify, sublicense or distribute the Program is
  175 +void, and will automatically terminate your rights under this License.
  176 +However, parties who have received copies, or rights, from you under
  177 +this License will not have their licenses terminated so long as such
  178 +parties remain in full compliance.
  179 +
  180 + 5. You are not required to accept this License, since you have not
  181 +signed it. However, nothing else grants you permission to modify or
  182 +distribute the Program or its derivative works. These actions are
  183 +prohibited by law if you do not accept this License. Therefore, by
  184 +modifying or distributing the Program (or any work based on the
  185 +Program), you indicate your acceptance of this License to do so, and
  186 +all its terms and conditions for copying, distributing or modifying
  187 +the Program or works based on it.
  188 +
  189 + 6. Each time you redistribute the Program (or any work based on the
  190 +Program), the recipient automatically receives a license from the
  191 +original licensor to copy, distribute or modify the Program subject to
  192 +these terms and conditions. You may not impose any further
  193 +restrictions on the recipients' exercise of the rights granted herein.
  194 +You are not responsible for enforcing compliance by third parties to
  195 +this License.
  196 +
  197 + 7. If, as a consequence of a court judgment or allegation of patent
  198 +infringement or for any other reason (not limited to patent issues),
  199 +conditions are imposed on you (whether by court order, agreement or
  200 +otherwise) that contradict the conditions of this License, they do not
  201 +excuse you from the conditions of this License. If you cannot
  202 +distribute so as to satisfy simultaneously your obligations under this
  203 +License and any other pertinent obligations, then as a consequence you
  204 +may not distribute the Program at all. For example, if a patent
  205 +license would not permit royalty-free redistribution of the Program by
  206 +all those who receive copies directly or indirectly through you, then
  207 +the only way you could satisfy both it and this License would be to
  208 +refrain entirely from distribution of the Program.
  209 +
  210 +If any portion of this section is held invalid or unenforceable under
  211 +any particular circumstance, the balance of the section is intended to
  212 +apply and the section as a whole is intended to apply in other
  213 +circumstances.
  214 +
  215 +It is not the purpose of this section to induce you to infringe any
  216 +patents or other property right claims or to contest validity of any
  217 +such claims; this section has the sole purpose of protecting the
  218 +integrity of the free software distribution system, which is
  219 +implemented by public license practices. Many people have made
  220 +generous contributions to the wide range of software distributed
  221 +through that system in reliance on consistent application of that
  222 +system; it is up to the author/donor to decide if he or she is willing
  223 +to distribute software through any other system and a licensee cannot
  224 +impose that choice.
  225 +
  226 +This section is intended to make thoroughly clear what is believed to
  227 +be a consequence of the rest of this License.
  228 +
  229 + 8. If the distribution and/or use of the Program is restricted in
  230 +certain countries either by patents or by copyrighted interfaces, the
  231 +original copyright holder who places the Program under this License
  232 +may add an explicit geographical distribution limitation excluding
  233 +those countries, so that distribution is permitted only in or among
  234 +countries not thus excluded. In such case, this License incorporates
  235 +the limitation as if written in the body of this License.
  236 +
  237 + 9. The Free Software Foundation may publish revised and/or new versions
  238 +of the General Public License from time to time. Such new versions will
  239 +be similar in spirit to the present version, but may differ in detail to
  240 +address new problems or concerns.
  241 +
  242 +Each version is given a distinguishing version number. If the Program
  243 +specifies a version number of this License which applies to it and "any
  244 +later version", you have the option of following the terms and conditions
  245 +either of that version or of any later version published by the Free
  246 +Software Foundation. If the Program does not specify a version number of
  247 +this License, you may choose any version ever published by the Free Software
  248 +Foundation.
  249 +
  250 + 10. If you wish to incorporate parts of the Program into other free
  251 +programs whose distribution conditions are different, write to the author
  252 +to ask for permission. For software which is copyrighted by the Free
  253 +Software Foundation, write to the Free Software Foundation; we sometimes
  254 +make exceptions for this. Our decision will be guided by the two goals
  255 +of preserving the free status of all derivatives of our free software and
  256 +of promoting the sharing and reuse of software generally.
  257 +
  258 + NO WARRANTY
  259 +
  260 + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
  261 +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
  262 +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
  263 +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
  264 +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
  265 +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
  266 +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
  267 +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
  268 +REPAIR OR CORRECTION.
  269 +
  270 + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
  271 +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
  272 +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
  273 +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
  274 +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
  275 +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
  276 +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
  277 +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
  278 +POSSIBILITY OF SUCH DAMAGES.
  279 +
  280 + END OF TERMS AND CONDITIONS
  281 +
  282 + How to Apply These Terms to Your New Programs
  283 +
  284 + If you develop a new program, and you want it to be of the greatest
  285 +possible use to the public, the best way to achieve this is to make it
  286 +free software which everyone can redistribute and change under these terms.
  287 +
  288 + To do so, attach the following notices to the program. It is safest
  289 +to attach them to the start of each source file to most effectively
  290 +convey the exclusion of warranty; and each file should have at least
  291 +the "copyright" line and a pointer to where the full notice is found.
  292 +
  293 + <one line to give the program's name and a brief idea of what it does.>
  294 + Copyright (C) <year> <name of author>
  295 +
  296 + This program is free software; you can redistribute it and/or modify
  297 + it under the terms of the GNU General Public License as published by
  298 + the Free Software Foundation; either version 2 of the License, or
  299 + (at your option) any later version.
  300 +
  301 + This program is distributed in the hope that it will be useful,
  302 + but WITHOUT ANY WARRANTY; without even the implied warranty of
  303 + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  304 + GNU General Public License for more details.
  305 +
  306 + You should have received a copy of the GNU General Public License
  307 + along with this program; if not, write to the Free Software
  308 + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
  309 +
  310 +
  311 +Also add information on how to contact you by electronic and paper mail.
  312 +
  313 +If the program is interactive, make it output a short notice like this
  314 +when it starts in an interactive mode:
  315 +
  316 + Gnomovision version 69, Copyright (C) year name of author
  317 + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
  318 + This is free software, and you are welcome to redistribute it
  319 + under certain conditions; type `show c' for details.
  320 +
  321 +The hypothetical commands `show w' and `show c' should show the appropriate
  322 +parts of the General Public License. Of course, the commands you use may
  323 +be called something other than `show w' and `show c'; they could even be
  324 +mouse-clicks or menu items--whatever suits your program.
  325 +
  326 +You should also get your employer (if you work as a programmer) or your
  327 +school, if any, to sign a "copyright disclaimer" for the program, if
  328 +necessary. Here is a sample; alter the names:
  329 +
  330 + Yoyodyne, Inc., hereby disclaims all copyright interest in the program
  331 + `Gnomovision' (which makes passes at compilers) written by James Hacker.
  332 +
  333 + <signature of Ty Coon>, 1 April 1989
  334 + Ty Coon, President of Vice
  335 +
  336 +This General Public License does not permit incorporating your program into
  337 +proprietary programs. If your program is a subroutine library, you may
  338 +consider it more useful to permit linking proprietary applications with the
  339 +library. If this is what you want to do, use the GNU Library General
  340 +Public License instead of this License.
menus/menu_adm.txt
@@ -70,4 +70,5 @@ @@ -70,4 +70,5 @@
70 ..Sistemas Monitorados|estatisticas/aplicativos/index.php|mainFrame|| 70 ..Sistemas Monitorados|estatisticas/aplicativos/index.php|mainFrame||
71 .<b>Acesso</b>||mainFrame|imgs/config_gerais.gif 71 .<b>Acesso</b>||mainFrame|imgs/config_gerais.gif
72 ..Troca de Senha|admin/usuarios/troca_senha.php|mainFrame|| 72 ..Troca de Senha|admin/usuarios/troca_senha.php|mainFrame||
73 -.<b>HP do Projeto CACIC<b>|http://www.governoeletronico.gov.br/cacic/|new||Link de Acesso à Home Page do Projeto CACIC  
74 \ No newline at end of file 73 \ No newline at end of file
  74 +.<b>Projeto CACIC<b>|tribo/|new||Link de Acesso à Home Page do Projeto CACIC
  75 +.<b>Comunidade CACIC<b>|http://www.softwarepublico.gov.br/spb/ver-comunidade?community_id=3585|new||Link de Acesso à Home Page da Comunidade CACIC
75 \ No newline at end of file 76 \ No newline at end of file
menus/menu_com.txt
@@ -9,4 +9,6 @@ @@ -9,4 +9,6 @@
9 ..Softwares Básicos|relatorios/software/index.php|mainFrame|| 9 ..Softwares Básicos|relatorios/software/index.php|mainFrame||
10 .<b>Acesso</b>||mainFrame|imgs/config_gerais.gif 10 .<b>Acesso</b>||mainFrame|imgs/config_gerais.gif
11 ..Troca de Senha|admin/usuarios/troca_senha.php|mainFrame|| 11 ..Troca de Senha|admin/usuarios/troca_senha.php|mainFrame||
12 -.<b>HP do Projeto CACIC<b>|http://www.governoeletronico.gov.br/cacic/|new||Link de Acesso à Home Page do Projeto CACIC 12 +.<b>Projeto CACIC<b>|tribo/|new||Link de Acesso à Home Page do Projeto CACIC
  13 +.<b>Comunidade CACIC<b>|http://www.softwarepublico.gov.br/spb/ver-comunidade?community_id=3585|new||Link de Acesso à Home Page da Comunidade CACIC
  14 +
menus/menu_con.txt
1 -.<b>HP do Projeto CACIC<b>|http://www.governoeletronico.gov.br/cacic/|new||Link de Acesso à Home Page do Projeto CACIC 1 +.<b>Projeto CACIC<b>|tribo/|new||Link de Acesso à Home Page do Projeto CACIC
  2 +.<b>Comunidade CACIC<b>|http://www.softwarepublico.gov.br/spb/ver-comunidade?community_id=3585|new||Link de Acesso à Home Page da Comunidade CACIC
  3 +
menus/menu_ini.txt
1 .<b>Página Principal<b>|principal.php|mainFrame 1 .<b>Página Principal<b>|principal.php|mainFrame
2 -.<b>HP do Projeto CACIC<b>|http://www.governoeletronico.gov.br/cacic/|new||Link de Acesso à Home Page do Projeto CACIC 2 +.<b>Projeto CACIC<b>|tribo/|new||Link de Acesso à Home Page do Projeto CACIC
  3 +.<b>Comunidade CACIC<b>|http://www.softwarepublico.gov.br/spb/ver-comunidade?community_id=3585|new||Link de Acesso à Home Page da Comunidade CACIC
menus/menu_rel.txt
@@ -10,5 +10,7 @@ @@ -10,5 +10,7 @@
10 ..Variáveis de Ambiente|relatorios/variaveis_ambiente/index.php|mainFrame|| 10 ..Variáveis de Ambiente|relatorios/variaveis_ambiente/index.php|mainFrame||
11 .<b>Acesso</b>||mainFrame|imgs/config_gerais.gif 11 .<b>Acesso</b>||mainFrame|imgs/config_gerais.gif
12 ..Troca de Senha|admin/usuarios/troca_senha.php|mainFrame|| 12 ..Troca de Senha|admin/usuarios/troca_senha.php|mainFrame||
13 -.<b>HP do Projeto CACIC<b>|http://www.governoeletronico.gov.br/cacic/|new||Link de Acesso à Home Page do Projeto CACIC 13 +.<b>Projeto CACIC<b>|tribo/|new||Link de Acesso à Home Page do Projeto CACIC
  14 +.<b>Comunidade CACIC<b>|http://www.softwarepublico.gov.br/spb/ver-comunidade?community_id=3585|new||Link de Acesso à Home Page da Comunidade CACIC
  15 +
14 16
menus/menu_sup.txt
@@ -65,4 +65,5 @@ @@ -65,4 +65,5 @@
65 ..Sistemas Monitorados|estatisticas/aplicativos/index.php|mainFrame|| 65 ..Sistemas Monitorados|estatisticas/aplicativos/index.php|mainFrame||
66 .<b>Acesso</b>||mainFrame|imgs/config_gerais.gif 66 .<b>Acesso</b>||mainFrame|imgs/config_gerais.gif
67 ..Troca de Senha|admin/usuarios/troca_senha.php|mainFrame|| 67 ..Troca de Senha|admin/usuarios/troca_senha.php|mainFrame||
68 -.<b>HP do Projeto CACIC<b>|http://www.governoeletronico.gov.br/cacic/|new||Link de Acesso à Home Page do Projeto CACIC  
69 \ No newline at end of file 68 \ No newline at end of file
  69 +.<b>Projeto CACIC<b>|tribo/|new||Link de Acesso à Home Page do Projeto CACIC
  70 +.<b>Comunidade CACIC<b>|http://www.softwarepublico.gov.br/spb/ver-comunidade?community_id=3585|new||Link de Acesso à Home Page da Comunidade CACIC
menus/menu_tec.txt
@@ -14,4 +14,5 @@ @@ -14,4 +14,5 @@
14 ..Sistemas Monitorados|estatisticas/aplicativos/index.php|mainFrame|| 14 ..Sistemas Monitorados|estatisticas/aplicativos/index.php|mainFrame||
15 .<b>Acesso</b>||mainFrame|imgs/config_gerais.gif 15 .<b>Acesso</b>||mainFrame|imgs/config_gerais.gif
16 ..Troca de Senha|admin/usuarios/troca_senha.php|mainFrame|| 16 ..Troca de Senha|admin/usuarios/troca_senha.php|mainFrame||
17 -.<b>HP do Projeto CACIC<b>|http://www.governoeletronico.gov.br/cacic/|new||Link de Acesso à Home Page do Projeto CACIC 17 +.<b>Projeto CACIC<b>|tribo/|new||Link de Acesso à Home Page do Projeto CACIC
  18 +.<b>Comunidade CACIC<b>|http://www.softwarepublico.gov.br/spb/ver-comunidade?community_id=3585|new||Link de Acesso à Home Page da Comunidade CACIC
@@ -39,6 +39,7 @@ if (!session_is_registered(&#39;cs_nivel_administracao&#39;)) @@ -39,6 +39,7 @@ if (!session_is_registered(&#39;cs_nivel_administracao&#39;))
39 <img src="graficos/pie_acessos_locais.php" border="no"> 39 <img src="graficos/pie_acessos_locais.php" border="no">
40 </td> 40 </td>
41 </tr> 41 </tr>
  42 + <tr><td></td></tr>
42 <tr> 43 <tr>
43 <td class="descricao"><div align="center">Computadores monitorados por 44 <td class="descricao"><div align="center">Computadores monitorados por
44 local nesta data</div></td> 45 local nesta data</div></td>
@@ -69,6 +70,7 @@ else @@ -69,6 +70,7 @@ else
69 ?> 70 ?>
70 </td> 71 </td>
71 </tr> 72 </tr>
  73 + <tr><td></td></tr>
72 <tr> 74 <tr>
73 <td class="descricao"><div align="center"><? echo $title;?></div></td> 75 <td class="descricao"><div align="center"><? echo $title;?></div></td>
74 </tr> 76 </tr>
@@ -105,7 +107,8 @@ else @@ -105,7 +107,8 @@ else
105 { 107 {
106 echo '</a>'; 108 echo '</a>';
107 } 109 }
108 - ?> 110 + ?>
  111 + <tr><td></td></tr>
109 <tr> 112 <tr>
110 <td class="descricao"><div align="center"><? echo $title;?></div></td> 113 <td class="descricao"><div align="center"><? echo $title;?></div></td>
111 </tr> 114 </tr>
@@ -121,6 +124,7 @@ else @@ -121,6 +124,7 @@ else
121 else 124 else
122 { 125 {
123 ?> 126 ?>
  127 + <tr><td></td></tr>
124 <tr> 128 <tr>
125 <td class="descricao"><div align="center">&Uacute;ltimos acessos dos agentes deste local</div></td> 129 <td class="descricao"><div align="center">&Uacute;ltimos acessos dos agentes deste local</div></td>
126 </tr> 130 </tr>
@@ -143,6 +147,7 @@ else @@ -143,6 +147,7 @@ else
143 <img src="graficos/pie_locais.php" border="no"> 147 <img src="graficos/pie_locais.php" border="no">
144 </td> 148 </td>
145 </tr> 149 </tr>
  150 + <tr><td></td></tr>
146 <tr> 151 <tr>
147 <td class="descricao"><div align="center">Totais de computadores monitorados por local</div></td> 152 <td class="descricao"><div align="center">Totais de computadores monitorados por local</div></td>
148 </tr> 153 </tr>
@@ -173,6 +178,7 @@ else @@ -173,6 +178,7 @@ else
173 ?> 178 ?>
174 </td> 179 </td>
175 </tr> 180 </tr>
  181 + <tr><td></td></tr>
176 <tr> 182 <tr>
177 <td class="descricao"><div align="center"><? echo $title;?></div></td> 183 <td class="descricao"><div align="center"><? echo $title;?></div></td>
178 </tr> 184 </tr>
@@ -188,6 +194,7 @@ else @@ -188,6 +194,7 @@ else
188 ?> 194 ?>
189 </td> 195 </td>
190 </tr> 196 </tr>
  197 + <tr><td></td></tr>
191 <tr> 198 <tr>
192 <td class="descricao"><div align="center"><? echo $title;?></div></td> 199 <td class="descricao"><div align="center"><? echo $title;?></div></td>
193 </tr> 200 </tr>
relatorios/antivirus/rel_antivirus.php
@@ -112,6 +112,10 @@ $query = &#39;SELECT distinct computadores.te_node_address, @@ -112,6 +112,10 @@ $query = &#39;SELECT distinct computadores.te_node_address,
112 computadores.id_so IN ('. $so_selecionados .')'. 112 computadores.id_so IN ('. $so_selecionados .')'.
113 $query_redes .' 113 $query_redes .'
114 ORDER BY ' . $orderby; 114 ORDER BY ' . $orderby;
  115 +
  116 +//if ($_SERVER['REMOTE_ADDR']=='10.71.0.58')
  117 +// echo $query . '<br>';
  118 +
115 $result = mysql_query($query) or die('Erro no select'); 119 $result = mysql_query($query) or die('Erro no select');
116 120
117 $cor = 0; 121 $cor = 0;
relatorios/computador/inventario_em_branco.php
@@ -92,7 +92,7 @@ $linha = &#39;&lt;tr bgcolor=&quot;#e7e7e7&quot;&gt; @@ -92,7 +92,7 @@ $linha = &#39;&lt;tr bgcolor=&quot;#e7e7e7&quot;&gt;
92 <td nowrap>&nbsp;&nbsp;</td> 92 <td nowrap>&nbsp;&nbsp;</td>
93 <td nowrap><div align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><? echo $NumRegistro; ?></font></div></td> 93 <td nowrap><div align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><? echo $NumRegistro; ?></font></div></td>
94 <td nowrap>&nbsp;&nbsp;</td> 94 <td nowrap>&nbsp;&nbsp;</td>
95 - <td nowrap><div align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><a href="../../relatorios/computador/computador.php?te_node_address=<? echo $row['te_node_address'];?>&id_so=<? echo $row['id_so'];?>" target="_blank"><? echo $row['nm_maquina']; ?></div></td> 95 + <td nowrap><div align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><a href="../../../relatorios/computador/computador.php?te_node_address=<? echo $row['te_node_address'];?>&id_so=<? echo $row['id_so'];?>" target="_blank"><? echo $row['nm_maquina']; ?></div></td>
96 <td nowrap>&nbsp;&nbsp;</td> 96 <td nowrap>&nbsp;&nbsp;</td>
97 <td align="center" nowrap><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><? echo $row['te_ip']; ?></font></td> 97 <td align="center" nowrap><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><? echo $row['te_ip']; ?></font></td>
98 <td nowrap>&nbsp;&nbsp;</td> 98 <td nowrap>&nbsp;&nbsp;</td>
relatorios/computador/rel_ips_repetidos.php
@@ -88,7 +88,7 @@ $linha = &#39;&lt;tr bgcolor=&quot;#e7e7e7&quot;&gt; @@ -88,7 +88,7 @@ $linha = &#39;&lt;tr bgcolor=&quot;#e7e7e7&quot;&gt;
88 <td nowrap>&nbsp;</td> 88 <td nowrap>&nbsp;</td>
89 <td nowrap><div align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><? echo $NumRegistro; ?></font></div></td> 89 <td nowrap><div align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><? echo $NumRegistro; ?></font></div></td>
90 <td nowrap>&nbsp;</td> 90 <td nowrap>&nbsp;</td>
91 - <td nowrap><div align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><a href="../../relatorios/computador/computador.php?te_node_address=<? echo $row['te_node_address'];?>&id_so=<? echo $row['id_so'];?>" target="_blank"><? echo $row['te_nome_computador']; ?></div></td> 91 + <td nowrap><div align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><a href="../../../relatorios/computador/computador.php?te_node_address=<? echo $row['te_node_address'];?>&id_so=<? echo $row['id_so'];?>" target="_blank"><? echo $row['te_nome_computador']; ?></div></td>
92 <td nowrap>&nbsp;</td> 92 <td nowrap>&nbsp;</td>
93 <td nowrap><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><? echo $row['te_ip']; ?></font></td> 93 <td nowrap><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><? echo $row['te_ip']; ?></font></td>
94 <td nowrap>&nbsp;</td> 94 <td nowrap>&nbsp;</td>
relatorios/computador/rel_nomes_repetidos.php
@@ -88,7 +88,7 @@ $linha = &#39;&lt;tr bgcolor=&quot;#e7e7e7&quot;&gt; @@ -88,7 +88,7 @@ $linha = &#39;&lt;tr bgcolor=&quot;#e7e7e7&quot;&gt;
88 <td nowrap>&nbsp;</td> 88 <td nowrap>&nbsp;</td>
89 <td nowrap><div align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><? echo $NumRegistro; ?></font></div></td> 89 <td nowrap><div align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><? echo $NumRegistro; ?></font></div></td>
90 <td nowrap>&nbsp;</td> 90 <td nowrap>&nbsp;</td>
91 - <td nowrap><div align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><a href="../../relatorios/computador/computador.php?te_node_address=<? echo $row['te_node_address'];?>&id_so=<? echo $row['id_so'];?>" target="_blank"><? echo $row['te_nome_computador']; ?></div></td> 91 + <td nowrap><div align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><a href="../../../relatorios/computador/computador.php?te_node_address=<? echo $row['te_node_address'];?>&id_so=<? echo $row['id_so'];?>" target="_blank"><? echo $row['te_nome_computador']; ?></div></td>
92 <td nowrap>&nbsp;</td> 92 <td nowrap>&nbsp;</td>
93 <td nowrap><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><? echo $row['te_ip']; ?></font></td> 93 <td nowrap><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><? echo $row['te_ip']; ?></font></td>
94 <td nowrap>&nbsp;</td> 94 <td nowrap>&nbsp;</td>
relatorios/custom/index.php
@@ -93,7 +93,7 @@ @@ -93,7 +93,7 @@
93 </tr> 93 </tr>
94 <tr> 94 <tr>
95 <td class="descricao">&nbsp;&nbsp;&nbsp;(Dica: 95 <td class="descricao">&nbsp;&nbsp;&nbsp;(Dica:
96 - use SHIFT or CTRL para selecionar m&uacute;ltiplos itens)</td> 96 + use SHIFT ou CTRL para selecionar m&uacute;ltiplos itens)</td>
97 </tr> 97 </tr>
98 </table></td> 98 </table></td>
99 </tr> 99 </tr>
@@ -142,7 +142,7 @@ @@ -142,7 +142,7 @@
142 </tr> 142 </tr>
143 <tr> 143 <tr>
144 <td class="descricao">&nbsp;&nbsp;&nbsp;(Dica: 144 <td class="descricao">&nbsp;&nbsp;&nbsp;(Dica:
145 - use SHIFT or CTRL para selecionar m&uacute;ltiplos itens)</td> 145 + use SHIFT ou CTRL para selecionar m&uacute;ltiplos itens)</td>
146 </tr> 146 </tr>
147 </table></td> 147 </table></td>
148 </tr> 148 </tr>
@@ -6,7 +6,23 @@ @@ -6,7 +6,23 @@
6 6
7 <body> 7 <body>
8 <? 8 <?
9 -phpinfo(); 9 +include 'include/library.php';
  10 +echo 'Seu IP é: ' . $_SERVER['REMOTE_ADDR'] . '<br><br>';
  11 +$ip=exec("ifconfig | grep 'inet end.: 10' | cut -f13 -d' '");
  12 +$ip=exec("/sbin/ifconfig");
  13 +
  14 +echo 'O IP do servidor é: *'.$ip.'*<br>';
  15 +if ($_REQUEST['txtData'])
  16 + {
  17 + $date = date('m-d-Y');
  18 + $result = explode('-',$_REQUEST["txtData"]);
  19 + $diference = date_diff($date,trim(substr($result[1],0,2)).'-'.$result[2].'-'.$result[0]);
  20 + echo 'A diferença de dias é de: ' . $diference .'<br>';
  21 + }
  22 +
10 ?> 23 ?>
  24 +<form name="form1" method="post" action="">
  25 + <input type="text" name="txtData">
  26 +</form>
11 </body> 27 </body>
12 </html> 28 </html>
@@ -14,8 +14,12 @@ @@ -14,8 +14,12 @@
14 Livre(FSF) Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 14 Livre(FSF) Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
15 */ 15 */
16 session_start(); 16 session_start();
17 -$v_versao = '2.2.3-dev'; 17 +$v_versao = '2.2.3-dev-2';
18 /* 18 /*
  19 +2.2.3-dev-1 (Anderson Peterle - Dataprev/ES - Junho/2007)
  20 + * Corrigido o processo de liberação de FTP, onde a tabela redes_grupos_ftp é liberada após a operação
  21 + de transferência de arquivos por parte do módulo cliente Gerente de Coletas.
  22 +
19 2.2.3-dev (Anderson Peterle - Dataprev/ES - Maio/2007) 23 2.2.3-dev (Anderson Peterle - Dataprev/ES - Maio/2007)
20 + Implementado o detalhamento para as estatísticas exibidas na página principal quando representarem 24 + Implementado o detalhamento para as estatísticas exibidas na página principal quando representarem
21 mais de um local (local primário + local(is) secundário(s)) 25 mais de um local (local primário + local(is) secundário(s))
ws/get_config.php
@@ -20,9 +20,6 @@ @@ -20,9 +20,6 @@
20 Também há um sistema de exceções, onde um computador que consta nessa relação de exceções 20 Também há um sistema de exceções, onde um computador que consta nessa relação de exceções
21 não recebe as configurações. 21 não recebe as configurações.
22 */ 22 */
23 -// ************* Debugging **************  
24 -$cIPsToDebug = '10.71.0.58'; // IP numbers, * for All  
25 -// **************************************  
26 23
27 require_once('../include/library.php'); 24 require_once('../include/library.php');
28 25
@@ -54,10 +51,10 @@ if (trim(DeCrypt($key,$iv,$_POST[&#39;in_chkcacic&#39;],$v_cs_cipher,$v_cs_compress))==&#39; @@ -54,10 +51,10 @@ if (trim(DeCrypt($key,$iv,$_POST[&#39;in_chkcacic&#39;],$v_cs_cipher,$v_cs_compress))==&#39;
54 if (trim(DeCrypt($key,$iv,$_POST['in_chkcacic'],$v_cs_cipher,$v_cs_compress))=='chkcacic') 51 if (trim(DeCrypt($key,$iv,$_POST['in_chkcacic'],$v_cs_cipher,$v_cs_compress))=='chkcacic')
55 { 52 {
56 // Retorno as versões dos três principais agentes ao CHKCACIC para que sejam 53 // Retorno as versões dos três principais agentes ao CHKCACIC para que sejam
57 - $query_modulos = " SELECT * 54 + $query_modulos = ' SELECT *
58 FROM redes_versoes_modulos 55 FROM redes_versoes_modulos
59 - WHERE id_ip_rede = '".$v_dados_rede['id_local']."' AND  
60 - id_local = ".$v_dados_rede['id_local']; 56 + WHERE id_ip_rede = "'.$v_dados_rede['id_local'].'" AND
  57 + id_local = '.$v_dados_rede['id_local'];
61 $result_modulos = mysql_query($query_modulos); 58 $result_modulos = mysql_query($query_modulos);
62 59
63 while ($row_modulos = mysql_fetch_array($result_modulos)) 60 while ($row_modulos = mysql_fetch_array($result_modulos))
@@ -72,27 +69,30 @@ if (trim(DeCrypt($key,$iv,$_POST[&#39;in_chkcacic&#39;],$v_cs_cipher,$v_cs_compress))==&#39; @@ -72,27 +69,30 @@ if (trim(DeCrypt($key,$iv,$_POST[&#39;in_chkcacic&#39;],$v_cs_cipher,$v_cs_compress))==&#39;
72 } 69 }
73 70
74 $v_te_fila_ftp = '0'; 71 $v_te_fila_ftp = '0';
  72 + $v_id_ftp = ($_POST['id_ftp']?trim(DeCrypt($key,$iv,$_POST['id_ftp'],$v_cs_cipher,$v_cs_compress)):'');
  73 +
75 // Operações para agrupamento de FTP por subredes 74 // Operações para agrupamento de FTP por subredes
76 - if (trim(DeCrypt($key,$iv,$_POST['te_fila_ftp'],$v_cs_cipher,$v_cs_compress))=='1') 75 + if (trim(DeCrypt($key,$iv,$_POST['te_fila_ftp'],$v_cs_cipher,$v_cs_compress))=='1' &&
  76 + !$v_id_ftp)
77 { 77 {
78 // TimeOut definido para 5 minutos, ou seja, tempo máximo para as estações efetuarem FTP dos módulos necessários 78 // TimeOut definido para 5 minutos, ou seja, tempo máximo para as estações efetuarem FTP dos módulos necessários
79 // 1 minuto = 60000 milisegundos 79 // 1 minuto = 60000 milisegundos
80 // 5 * 60000 milisegundos = 5 minutos (TimeOut) 80 // 5 * 60000 milisegundos = 5 minutos (TimeOut)
81 $v_timeout = time() - (5 * 60000); 81 $v_timeout = time() - (5 * 60000);
82 - 82 +
83 // Exclusão por timeout 83 // Exclusão por timeout
84 - $query_del = "DELETE 84 + $query_del = 'DELETE
85 FROM redes_grupos_ftp 85 FROM redes_grupos_ftp
86 - WHERE id_local = ".$v_dados_rede['id_local']." AND  
87 - id_ip_rede = '".$v_dados_rede['id_ip_rede']."'  
88 - and nu_hora_inicio < ".$v_timeout." or id_ip_estacao = '".trim(DeCrypt($key,$iv,$_POST['id_ip_estacao'],$v_cs_cipher,$v_cs_compress))."'"; 86 + WHERE id_local = '.$v_dados_rede['id_local'].' AND
  87 + id_ip_rede = "'.$v_dados_rede['id_ip_rede'].'" AND
  88 + id_ip_estacao = "'.trim(DeCrypt($key,$iv,$_POST['id_ip_estacao'],$v_cs_cipher,$v_cs_compress)).'"';
89 $result_del = mysql_query($query_del); 89 $result_del = mysql_query($query_del);
90 90
91 // Contagem por subrede 91 // Contagem por subrede
92 - $query_grupo = "SELECT count(*) as total_estacoes 92 + $query_grupo = 'SELECT count(*) as total_estacoes
93 FROM redes_grupos_ftp 93 FROM redes_grupos_ftp
94 - WHERE id_ip_rede = '".$v_dados_rede['id_ip_rede']."' AND  
95 - id_local = ".$v_dados_rede['id_local']." FOR UPDATE"; 94 + WHERE id_ip_rede = "'.$v_dados_rede['id_ip_rede'].'" AND
  95 + id_local = '.$v_dados_rede['id_local'].' FOR UPDATE';
96 $result_grupo = mysql_query($query_grupo); 96 $result_grupo = mysql_query($query_grupo);
97 $total = mysql_fetch_array($result_grupo); 97 $total = mysql_fetch_array($result_grupo);
98 98
@@ -104,23 +104,26 @@ if (trim(DeCrypt($key,$iv,$_POST[&#39;in_chkcacic&#39;],$v_cs_cipher,$v_cs_compress))==&#39; @@ -104,23 +104,26 @@ if (trim(DeCrypt($key,$iv,$_POST[&#39;in_chkcacic&#39;],$v_cs_cipher,$v_cs_compress))==&#39;
104 } 104 }
105 else 105 else
106 { 106 {
107 - $queryINS = "INSERT 107 + $queryINS = 'INSERT
108 INTO redes_grupos_ftp(id_ip_rede,id_ip_estacao,nu_hora_inicio, id_local) 108 INTO redes_grupos_ftp(id_ip_rede,id_ip_estacao,nu_hora_inicio, id_local)
109 - VALUES ('".$v_dados_rede['id_ip_rede']."','".trim(DeCrypt($key,$iv,$_POST['id_ip_estacao'],$v_cs_cipher,$v_cs_compress))."',".time().",".$v_dados_rede['id_local'].")"; 109 + VALUES ("'.$v_dados_rede['id_ip_rede'].'","'.
  110 + trim(DeCrypt($key,$iv,$_POST['id_ip_estacao'],$v_cs_cipher,$v_cs_compress)).'",'.
  111 + time().','.
  112 + $v_dados_rede['id_local'].')';
110 $resultINS = mysql_query($queryINS); 113 $resultINS = mysql_query($queryINS);
111 } 114 }
112 $retorno_xml_values .= '<TE_FILA_FTP>' . $v_te_fila_ftp . '</TE_FILA_FTP>'; 115 $retorno_xml_values .= '<TE_FILA_FTP>' . $v_te_fila_ftp . '</TE_FILA_FTP>';
  116 + $retorno_xml_values .= '<ID_FTP>' . mysql_insert_id() . '</ID_FTP>';
113 } 117 }
114 - elseif (trim(DeCrypt($key,$iv,$v_te_fila_ftp,$v_cs_cipher,$v_cs_compress))=='2') // Operação concluída com sucesso! 118 + elseif (trim(DeCrypt($key,$iv,$_POST['te_fila_ftp'],$v_cs_cipher,$v_cs_compress))=='2') // Operação concluída com sucesso!
115 { 119 {
116 - $query_del = "DELETE 120 + $query_del = 'DELETE
117 FROM redes_grupos_ftp 121 FROM redes_grupos_ftp
118 - WHERE id_local = ".$v_dados_rede['id_local']." AND  
119 - id_ip_rede = '".$v_dados_rede['id_ip_rede']."' AND  
120 - id_ip_estacao = '".trim(DeCrypt($key,$iv,$_POST['id_ip_estacao'],$v_cs_cipher,$v_cs_compress))."'";  
121 - $result_del = mysql_query($query_del); 122 + WHERE id_local = '.$v_dados_rede['id_local'].' AND
  123 + id_ip_rede = "'.$v_dados_rede['id_ip_rede'].'" AND
  124 + id_ip_estacao = "'.trim(DeCrypt($key,$iv,$_POST['id_ip_estacao'],$v_cs_cipher,$v_cs_compress)).'"';
  125 + $result_del = mysql_query($query_del);
122 // Refaço o retorno_xml para redução do pacote a retornar... 126 // Refaço o retorno_xml para redução do pacote a retornar...
123 -  
124 } 127 }
125 } 128 }
126 else 129 else
@@ -162,15 +165,15 @@ else @@ -162,15 +165,15 @@ else
162 /* Atualizo a informação de versão(para uso futuro) do Sistema Operacional da estação. */ 165 /* Atualizo a informação de versão(para uso futuro) do Sistema Operacional da estação. */
163 conecta_bd_cacic(); 166 conecta_bd_cacic();
164 167
165 - $query = "UPDATE computadores SET 168 + $query = 'UPDATE computadores SET
166 dt_hr_ult_acesso = NOW(), 169 dt_hr_ult_acesso = NOW(),
167 - te_so = '".$te_so."',  
168 - te_versao_cacic = '" . $te_versao_cacic . "',  
169 - te_versao_gercols= '" . $te_versao_gercols . "'  
170 - WHERE te_node_address = '$te_node_address' AND  
171 - id_so = '$id_so'"; 170 + te_so = "'.$te_so.'",
  171 + te_versao_cacic = "' . $te_versao_cacic . '",
  172 + te_versao_gercols= "' . $te_versao_gercols . '"
  173 + WHERE te_node_address = "'.$te_node_address.'" AND
  174 + id_so = "'.$id_so.'"';
172 $result = mysql_query($query); 175 $result = mysql_query($query);
173 - 176 +GravaTESTES($query);
174 // Alternativa de solução enviada ao sr. Elton Levi Schroder Fenner [elton.fenner@al.rs.gov.br], por ocasião da mensagem de erro 177 // Alternativa de solução enviada ao sr. Elton Levi Schroder Fenner [elton.fenner@al.rs.gov.br], por ocasião da mensagem de erro
175 // "Cannot redeclare eh_excecao() (previously declared in /var/www/cacic2/ws/get_config.php:228) in <b>/var/www/cacic2/ws/get_config.php</b> on line <b>228" 178 // "Cannot redeclare eh_excecao() (previously declared in /var/www/cacic2/ws/get_config.php:228) in <b>/var/www/cacic2/ws/get_config.php</b> on line <b>228"
176 // 179 //
@@ -180,10 +183,10 @@ else @@ -180,10 +183,10 @@ else
180 /* Essa funcao retorna 1 caso $te_node_address seja uma excecao para a ação id_acao e 0 caso não seja. */ 183 /* Essa funcao retorna 1 caso $te_node_address seja uma excecao para a ação id_acao e 0 caso não seja. */
181 function eh_excecao($id_acao, $te_node_address) 184 function eh_excecao($id_acao, $te_node_address)
182 { 185 {
183 - $query_exc = " SELECT count(*) as num_registros 186 + $query_exc = ' SELECT count(*) as num_registros
184 FROM acoes_excecoes 187 FROM acoes_excecoes
185 - WHERE id_acao = '$id_acao' AND  
186 - te_node_address = '$te_node_address'"; 188 + WHERE id_acao = "'.$id_acao.'" AND
  189 + te_node_address = "'.$te_node_address.'"';
187 $result_exc = mysql_query($query_exc); 190 $result_exc = mysql_query($query_exc);
188 $campos_exc = mysql_fetch_array($result_exc); 191 $campos_exc = mysql_fetch_array($result_exc);
189 return ($campos_exc['num_registros'] == 0?0:1); 192 return ($campos_exc['num_registros'] == 0?0:1);
@@ -191,14 +194,14 @@ else @@ -191,14 +194,14 @@ else
191 // } 194 // }
192 195
193 /* Seleciona todos os perfis de aplicativos cadastrados para tratamento posterior */ 196 /* Seleciona todos os perfis de aplicativos cadastrados para tratamento posterior */
194 - $query_monitorado = " SELECT * 197 + $query_monitorado = ' SELECT *
195 FROM perfis_aplicativos_monitorados a, 198 FROM perfis_aplicativos_monitorados a,
196 aplicativos_redes b 199 aplicativos_redes b
197 WHERE a.id_aplicativo = b.id_aplicativo AND 200 WHERE a.id_aplicativo = b.id_aplicativo AND
198 - a.nm_aplicativo NOT LIKE '%#DESATIVADO#%' AND  
199 - b.id_ip_rede = '".$v_dados_rede['id_ip_rede']."' AND  
200 - b.id_local = ".$v_dados_rede['id_local']."  
201 - ORDER BY a.id_aplicativo"; 201 + a.nm_aplicativo NOT LIKE "%#DESATIVADO#%" AND
  202 + b.id_ip_rede = "'.$v_dados_rede['id_ip_rede'].'" AND
  203 + b.id_local = '.$v_dados_rede['id_local'].'
  204 + ORDER BY a.id_aplicativo';
202 conecta_bd_cacic(); 205 conecta_bd_cacic();
203 $result_monitorado = mysql_query($query_monitorado); 206 $result_monitorado = mysql_query($query_monitorado);
204 $v_tripa_perfis1 = explode('#',$te_tripa_perfis); 207 $v_tripa_perfis1 = explode('#',$te_tripa_perfis);
@@ -207,10 +210,10 @@ else @@ -207,10 +210,10 @@ else
207 /* Seleciona os dados de coleta_forcada específicos para este computador, que foram setados 210 /* Seleciona os dados de coleta_forcada específicos para este computador, que foram setados
208 via detalhes/Opções Administrativas */ 211 via detalhes/Opções Administrativas */
209 212
210 - $query_coleta_forcada = " SELECT dt_hr_coleta_forcada_estacao,te_nomes_curtos_modulos 213 + $query_coleta_forcada = ' SELECT dt_hr_coleta_forcada_estacao,te_nomes_curtos_modulos
211 FROM computadores 214 FROM computadores
212 - WHERE te_node_address = '$te_node_address' AND  
213 - id_so = '$id_so'"; 215 + WHERE te_node_address = "'.$te_node_address.'" AND
  216 + id_so = "'.$id_so.'"';
214 conecta_bd_cacic(); 217 conecta_bd_cacic();
215 $result_coleta_forcada = mysql_query($query_coleta_forcada); 218 $result_coleta_forcada = mysql_query($query_coleta_forcada);
216 $te_tripa_coleta = mysql_fetch_array($result_coleta_forcada); 219 $te_tripa_coleta = mysql_fetch_array($result_coleta_forcada);
@@ -222,20 +225,20 @@ else @@ -222,20 +225,20 @@ else
222 Também é realizado um filtro baseado no sistema operacional do agente. 225 Também é realizado um filtro baseado no sistema operacional do agente.
223 Além disso, o node address do agente não pode constar da relação de exceções. */ 226 Além disso, o node address do agente não pode constar da relação de exceções. */
224 227
225 - $query = " SELECT distinct acoes.id_acao, 228 + $query = ' SELECT distinct acoes.id_acao,
226 acoes_redes.dt_hr_coleta_forcada, 229 acoes_redes.dt_hr_coleta_forcada,
227 acoes.te_nome_curto_modulo 230 acoes.te_nome_curto_modulo
228 FROM acoes, 231 FROM acoes,
229 acoes_so, 232 acoes_so,
230 acoes_redes 233 acoes_redes
231 - WHERE (acoes_redes.cs_situacao = 'T' OR  
232 - acoes_redes.cs_situacao = 'S') AND  
233 - acoes_redes.id_ip_rede = '$id_ip_rede' AND  
234 - acoes_redes.id_local = ".$v_dados_rede['id_local']." AND 234 + WHERE (acoes_redes.cs_situacao = "T" OR
  235 + acoes_redes.cs_situacao = "S") AND
  236 + acoes_redes.id_ip_rede = "'.$id_ip_rede.'" AND
  237 + acoes_redes.id_local = '.$v_dados_rede['id_local'].' AND
235 acoes.id_acao = acoes_redes.id_acao AND 238 acoes.id_acao = acoes_redes.id_acao AND
236 acoes_so.id_acao = acoes.id_acao AND 239 acoes_so.id_acao = acoes.id_acao AND
237 - acoes_so.id_so = '$id_so' AND  
238 - acoes_so.id_local = ".$v_dados_rede['id_local']; 240 + acoes_so.id_so = "'.$id_so.'" AND
  241 + acoes_so.id_local = '.$v_dados_rede['id_local'];
239 conecta_bd_cacic(); 242 conecta_bd_cacic();
240 $result = mysql_query($query); 243 $result = mysql_query($query);
241 244
@@ -363,10 +366,10 @@ else @@ -363,10 +366,10 @@ else
363 } 366 }
364 } 367 }
365 368
366 - $query_modulos = " SELECT * 369 + $query_modulos = ' SELECT *
367 FROM redes_versoes_modulos 370 FROM redes_versoes_modulos
368 - WHERE id_ip_rede = '".$id_ip_rede."' AND  
369 - id_local = ".$v_dados_rede['id_local']; 371 + WHERE id_ip_rede = "'.$id_ip_rede.'" AND
  372 + id_local = '.$v_dados_rede['id_local'];
370 373
371 $result_modulos = mysql_query($query_modulos); 374 $result_modulos = mysql_query($query_modulos);
372 375
@@ -381,7 +384,7 @@ else @@ -381,7 +384,7 @@ else
381 } 384 }
382 385
383 // Configurações relacionadas ao comportamento do agente. 386 // Configurações relacionadas ao comportamento do agente.
384 - $query = "SELECT in_exibe_bandeja, 387 + $query = 'SELECT in_exibe_bandeja,
385 in_exibe_erros_criticos, 388 in_exibe_erros_criticos,
386 nu_exec_apos, 389 nu_exec_apos,
387 nu_intervalo_exec, 390 nu_intervalo_exec,
@@ -390,7 +393,7 @@ else @@ -390,7 +393,7 @@ else
390 te_enderecos_mac_invalidos, 393 te_enderecos_mac_invalidos,
391 te_janelas_excecao 394 te_janelas_excecao
392 FROM configuracoes_locais 395 FROM configuracoes_locais
393 - WHERE id_local = ".$v_dados_rede['id_local']; 396 + WHERE id_local = '.$v_dados_rede['id_local'];
394 397
395 conecta_bd_cacic(); 398 conecta_bd_cacic();
396 $result_configs = mysql_query($query); 399 $result_configs = mysql_query($query);