Commit 375350bf8a2c622f4a150085d4909bffad507861

Authored by Edmar Moretti
1 parent aa6fc1d3
Exists in master

Atualização do código

classesphp/funcoes_gerais.php
@@ -3030,7 +3030,8 @@ function fileContemString($arq,$s){ @@ -3030,7 +3030,8 @@ function fileContemString($arq,$s){
3030 } 3030 }
3031 $handle = fopen($arq, 'r'); 3031 $handle = fopen($arq, 'r');
3032 $valid = false; // init as false 3032 $valid = false; // init as false
3033 - while (($buffer = fgets($handle)) !== false) { 3033 + while(! feof($handle)) {
  3034 + $buffer = fgets($handle);
3034 if (strpos($buffer, $s) !== false) { 3035 if (strpos($buffer, $s) !== false) {
3035 $valid = TRUE; 3036 $valid = TRUE;
3036 break; // Once you find the string, you should break out the loop. 3037 break; // Once you find the string, you should break out the loop.
@@ -3039,4 +3040,13 @@ function fileContemString($arq,$s){ @@ -3039,4 +3040,13 @@ function fileContemString($arq,$s){
3039 fclose($handle); 3040 fclose($handle);
3040 return $valid; 3041 return $valid;
3041 } 3042 }
  3043 +function i3GeoLog($txt,$dir_tmp=""){
  3044 + if(empty($dir_tmp)){
  3045 + include(dirname(__FILE__)."/../ms_configura.php");
  3046 + }
  3047 + $log = "Ip: ".$_SERVER['REMOTE_ADDR'].' - '.date("F j, Y, g:i a").PHP_EOL.
  3048 + $txt.PHP_EOL.
  3049 + "-------------------------".PHP_EOL;
  3050 + file_put_contents($dir_tmp.'/.log_i3geo_'.date("j.n.Y"), $log, FILE_APPEND);
  3051 +}
3042 ?> 3052 ?>
classesphp/mapa_googlemaps.php
@@ -145,6 +145,12 @@ elseif(isset($_GET["BBOX"])){ @@ -145,6 +145,12 @@ elseif(isset($_GET["BBOX"])){
145 } 145 }
146 //por seguranca 146 //por seguranca
147 include_once("funcoes_gerais.php"); 147 include_once("funcoes_gerais.php");
  148 +
  149 +$logExec = $_SESSION["logExec"];
  150 +if(isset($logExec) && $logExec["mapa_"] == true){
  151 + i3GeoLog("mapa_googlemaps ".implode("&",array_merge($_GET,$_POST)),$_SESSION["dir_tmp"]);
  152 +}
  153 +
148 restauraCon($map_fileX,$postgis_mapa); 154 restauraCon($map_fileX,$postgis_mapa);
149 155
150 $mapa = ms_newMapObj($map_fileX); 156 $mapa = ms_newMapObj($map_fileX);
classesphp/mapa_inicia.php
@@ -102,7 +102,7 @@ Retorno: @@ -102,7 +102,7 @@ Retorno:
102 */ 102 */
103 function iniciaMapa() 103 function iniciaMapa()
104 { 104 {
105 - global $postgis_mapa,$statusFerramentas,$saikuUrl,$emailInstituicao,$openid,$interfacePadrao,$mensagemInicia,$kmlurl,$tituloInstituicao,$tempo,$navegadoresLocais,$locaplic,$embedLegenda,$map_file,$mapext,$w,$h,$R_path,$locmapserv,$utilizacgi,$expoeMapfile,$interface; 105 + global $dir_tmp, $logExec, $postgis_mapa,$statusFerramentas,$saikuUrl,$emailInstituicao,$openid,$interfacePadrao,$mensagemInicia,$kmlurl,$tituloInstituicao,$tempo,$navegadoresLocais,$locaplic,$embedLegenda,$map_file,$mapext,$w,$h,$R_path,$locmapserv,$utilizacgi,$expoeMapfile,$interface;
106 // 106 //
107 //verifica se algum tema e restrito a determinado usuario 107 //verifica se algum tema e restrito a determinado usuario
108 //as funcoes de validacao encontram-se em funcoes_gerais.php 108 //as funcoes de validacao encontram-se em funcoes_gerais.php
@@ -111,6 +111,11 @@ function iniciaMapa() @@ -111,6 +111,11 @@ function iniciaMapa()
111 include_once("funcoes_gerais.php"); 111 include_once("funcoes_gerais.php");
112 } 112 }
113 validaAcessoTemas($map_file); 113 validaAcessoTemas($map_file);
  114 +
  115 + if($dir_tmp != "" && isset($logExec) && $logExec["init"] == true){
  116 + i3GeoLog("iniciaMapa $interface",$dir_tmp);
  117 + }
  118 +
114 if(!isset($kmlurl)){ 119 if(!isset($kmlurl)){
115 $kmlurl = ""; 120 $kmlurl = "";
116 } 121 }
classesphp/mapa_openlayers.php
@@ -165,6 +165,12 @@ $postgis_mapa = $_SESSION["postgis_mapa"]; @@ -165,6 +165,12 @@ $postgis_mapa = $_SESSION["postgis_mapa"];
165 165
166 //por seguranca 166 //por seguranca
167 include_once("funcoes_gerais.php"); 167 include_once("funcoes_gerais.php");
  168 +
  169 +$logExec = $_SESSION["logExec"];
  170 +if(isset($logExec) && $logExec["mapa_"] == true){
  171 + i3GeoLog("mapa_openlayers ".implode("&",array_merge($_GET,$_POST)),$_SESSION["dir_tmp"]);
  172 +}
  173 +
168 restauraCon($map_fileX,$postgis_mapa); 174 restauraCon($map_fileX,$postgis_mapa);
169 175
170 $cachedir = $_SESSION["cachedir"]; 176 $cachedir = $_SESSION["cachedir"];
ferramentas/aplicarsld/upload.php
@@ -12,6 +12,10 @@ $map_file = $_SESSION["map_file"]; @@ -12,6 +12,10 @@ $map_file = $_SESSION["map_file"];
12 $postgis_mapa = $_SESSION["postgis_mapa"]; 12 $postgis_mapa = $_SESSION["postgis_mapa"];
13 require_once (dirname(__FILE__)."/../../ms_configura.php"); 13 require_once (dirname(__FILE__)."/../../ms_configura.php");
14 $tema = $_GET["tema"]; 14 $tema = $_GET["tema"];
  15 +
  16 +if(isset($logExec) && $logExec["upload"] == true){
  17 + i3GeoLog("aplicarsld tema: $tema filename:" . $_FILES['i3GEOaplicarsld']['name'],$dir_tmp);
  18 +}
15 ?> 19 ?>
16 <html> 20 <html>
17 <head> 21 <head>
ferramentas/carregamapa/upload.php
@@ -11,6 +11,10 @@ session_start(); @@ -11,6 +11,10 @@ session_start();
11 $map_file = $_SESSION["map_file"]; 11 $map_file = $_SESSION["map_file"];
12 $postgis_mapa = $_SESSION["postgis_mapa"]; 12 $postgis_mapa = $_SESSION["postgis_mapa"];
13 require_once (dirname(__FILE__)."/../../ms_configura.php"); 13 require_once (dirname(__FILE__)."/../../ms_configura.php");
  14 +
  15 +if(isset($logExec) && $logExec["upload"] == true){
  16 + i3GeoLog("carregamapa filename:" . $_FILES['i3GEOcarregamapafilemap']['name'],$dir_tmp);
  17 +}
14 ?> 18 ?>
15 <html> 19 <html>
16 <head> 20 <head>
ferramentas/importarwmc/upload.php
@@ -22,6 +22,11 @@ error_reporting(0); @@ -22,6 +22,11 @@ error_reporting(0);
22 require_once (dirname(__FILE__)."/../../ms_configura.php"); 22 require_once (dirname(__FILE__)."/../../ms_configura.php");
23 $dirmap = dirname($map_file); 23 $dirmap = dirname($map_file);
24 $arquivo = ""; 24 $arquivo = "";
  25 +
  26 +if(isset($logExec) && $logExec["upload"] == true){
  27 + i3GeoLog("importarwmc filename:" . $_FILES['i3GEOimportarwmc']['name'],$dir_tmp);
  28 +}
  29 +
25 if(isset($_FILES['i3GEOimportarwmc']['name']) && !($_POST["i3GEOimportarwmcurl"]) && strlen(basename($_FILES['i3GEOimportarwmc']['name'])) < 200) 30 if(isset($_FILES['i3GEOimportarwmc']['name']) && !($_POST["i3GEOimportarwmcurl"]) && strlen(basename($_FILES['i3GEOimportarwmc']['name'])) < 200)
26 { 31 {
27 echo "<p class='paragrafo' >Carregando o arquivo...</p>"; 32 echo "<p class='paragrafo' >Carregando o arquivo...</p>";
ferramentas/upload/upload.php
@@ -33,6 +33,11 @@ if (ob_get_level() == 0) ob_start(); @@ -33,6 +33,11 @@ if (ob_get_level() == 0) ob_start();
33 if (isset($_FILES['i3GEOuploadshp']['name'])) 33 if (isset($_FILES['i3GEOuploadshp']['name']))
34 { 34 {
35 require_once (dirname(__FILE__)."/../../ms_configura.php"); 35 require_once (dirname(__FILE__)."/../../ms_configura.php");
  36 +
  37 + if(isset($logExec) && $logExec["upload"] == true){
  38 + i3GeoLog("upload filename:" . $_FILES['i3GEOuploadshp']['name'],$dir_tmp);
  39 + }
  40 +
36 echo "<p class='paragrafo' >Carregando o arquivo...</p>"; 41 echo "<p class='paragrafo' >Carregando o arquivo...</p>";
37 ob_flush(); 42 ob_flush();
38 flush(); 43 flush();
ferramentas/uploaddbf/upload.php
@@ -33,6 +33,11 @@ if (isset($_FILES[&#39;i3GEOuploaddbffile&#39;][&#39;name&#39;]) &amp;&amp; strlen(basename($_FILES[&#39;i3G @@ -33,6 +33,11 @@ if (isset($_FILES[&#39;i3GEOuploaddbffile&#39;][&#39;name&#39;]) &amp;&amp; strlen(basename($_FILES[&#39;i3G
33 33
34 //$ndir = dirname($filen); 34 //$ndir = dirname($filen);
35 require_once (dirname(__FILE__)."/../../ms_configura.php"); 35 require_once (dirname(__FILE__)."/../../ms_configura.php");
  36 +
  37 + if(isset($logExec) && $logExec["upload"] == true){
  38 + i3GeoLog("uploaddbf filename:" . $_FILES['i3GEOuploaddbffile']['name'],$dir_tmp);
  39 + }
  40 +
36 $mapa = ms_newMapObj($map_file); 41 $mapa = ms_newMapObj($map_file);
37 echo "<p class='paragrafo'>Carregando o arquivo...</p>"; 42 echo "<p class='paragrafo'>Carregando o arquivo...</p>";
38 ob_flush(); 43 ob_flush();
ferramentas/uploadgpx/upload.php
@@ -30,6 +30,11 @@ if (isset($_FILES[&#39;i3GEOuploadgpx&#39;][&#39;name&#39;]) &amp;&amp; strlen(basename($_FILES[&#39;i3GEOup @@ -30,6 +30,11 @@ if (isset($_FILES[&#39;i3GEOuploadgpx&#39;][&#39;name&#39;]) &amp;&amp; strlen(basename($_FILES[&#39;i3GEOup
30 } 30 }
31 //$ndir = dirname($filen); 31 //$ndir = dirname($filen);
32 require_once (dirname(__FILE__)."/../../ms_configura.php"); 32 require_once (dirname(__FILE__)."/../../ms_configura.php");
  33 +
  34 + if(isset($logExec) && $logExec["upload"] == true){
  35 + i3GeoLog("uploadgpx filename:" . $_FILES['i3GEOuploadgpx']['name'],$dir_tmp);
  36 + }
  37 +
33 $mapa = ms_newMapObj($map_file); 38 $mapa = ms_newMapObj($map_file);
34 echo "<p class='paragrafo' >Carregando o arquivo...</p>"; 39 echo "<p class='paragrafo' >Carregando o arquivo...</p>";
35 ob_flush(); 40 ob_flush();
ferramentas/uploadkml/upload.php
@@ -31,6 +31,11 @@ if (isset($_FILES[&#39;i3GEOuploadkml&#39;][&#39;name&#39;]) &amp;&amp; strlen(basename($_FILES[&#39;i3GEOup @@ -31,6 +31,11 @@ if (isset($_FILES[&#39;i3GEOuploadkml&#39;][&#39;name&#39;]) &amp;&amp; strlen(basename($_FILES[&#39;i3GEOup
31 } 31 }
32 //$ndir = dirname($filen); 32 //$ndir = dirname($filen);
33 require_once (dirname(__FILE__)."/../../ms_configura.php"); 33 require_once (dirname(__FILE__)."/../../ms_configura.php");
  34 +
  35 + if(isset($logExec) && $logExec["upload"] == true){
  36 + i3GeoLog("uploadkml filename:" . $_FILES['i3GEOuploadkml']['name'],$dir_tmp);
  37 + }
  38 +
34 $mapa = ms_newMapObj($map_file); 39 $mapa = ms_newMapObj($map_file);
35 echo "<p class='paragrafo' >Carregando o arquivo...</p>"; 40 echo "<p class='paragrafo' >Carregando o arquivo...</p>";
36 ob_flush(); 41 ob_flush();
ferramentas/uploadsimbolo/upload.php
@@ -26,6 +26,11 @@ if (isset($_FILES[&#39;i3GEOuploadsimboloarq&#39;][&#39;name&#39;]) &amp;&amp; strlen(basename($_FILES[&#39; @@ -26,6 +26,11 @@ if (isset($_FILES[&#39;i3GEOuploadsimboloarq&#39;][&#39;name&#39;]) &amp;&amp; strlen(basename($_FILES[&#39;
26 } 26 }
27 27
28 require_once (dirname(__FILE__)."/../../ms_configura.php"); 28 require_once (dirname(__FILE__)."/../../ms_configura.php");
  29 +
  30 + if(isset($logExec) && $logExec["upload"] == true){
  31 + i3GeoLog("uploadsimbolo filename:" . $_FILES['i3GEOuploadsimboloarq']['name'],$dir_tmp);
  32 + }
  33 +
29 echo "<p class='paragrafo' >Carregando o arquivo...</p>"; 34 echo "<p class='paragrafo' >Carregando o arquivo...</p>";
30 ob_flush(); 35 ob_flush();
31 flush(); 36 flush();
ms_configura.php
@@ -67,6 +67,16 @@ $i3geomaster = array( @@ -67,6 +67,16 @@ $i3geomaster = array(
67 67
68 Define se as transacoes no banco de dados de administracao serao mantidas em uma tabela de logs 68 Define se as transacoes no banco de dados de administracao serao mantidas em uma tabela de logs
69 69
  70 +Para que isso funcione e necessario que exista a tabela que armazena o log.
  71 +
  72 +Se voce possui um banco de administracao anterior a versao 7, utilize o seguinte sql para criar a tabela
  73 +
  74 +- caso esteja utilizando SQLlite:
  75 +CREATE TABLE i3geoadmin_log (id_log INTEGER PRIMARY KEY,sql TEXT,serializedata TEXT,usuario TEXT,ip TEXT,timestamp TEXT,outros TEXT)
  76 +
  77 +- caso esteja utilizando postgesql:
  78 +CREATE TABLE i3geoadmin.i3geoadmin_log (id_log SERIAL PRIMARY KEY NOT NULL,sql TEXT,serializedata TEXT,usuario TEXT,ip TEXT,timestamp TEXT,outros TEXT);
  79 +
70 Tipo: 80 Tipo:
71 {boolean} 81 {boolean}
72 82
@@ -76,12 +86,62 @@ false @@ -76,12 +86,62 @@ false
76 86
77 */ 87 */
78 $logTransacoes = false; 88 $logTransacoes = false;
  89 +//TODO documentar moodle
  90 +/*
  91 + Variale: $logExec
  92 +
  93 + Ativa a geracao do log em ms_tmp/.log_i3geo_
  94 +
  95 + Para evitar o log, basta definir os valores como false ou $logExec = ''
  96 +
  97 +*/
  98 +$logExec = array(
  99 + "mapa_" => true, //mapa_openlayers e mapa_googlemaps
  100 + "init" => true, //ms_criamapa mapa_inicia
  101 + "ogc" => true, //servico ogc
  102 + "upload" => true //ferramentas de upload
  103 +);
  104 +/*
  105 + Variable: $i3GeoProjDefault
  106 +
  107 +Parametros de projecao cartografica utilizados nos mapas e nas exportacoes de arquivos.
  108 +
  109 +Os valores devem ser obtidos do site http://spatialreference.org/
  110 +
  111 +proj4 - corresponde a string de definicao de projecao conforme a biblioteca proj4, exemplo http://spatialreference.org/ref/epsg/4326/proj4/
  112 +
  113 +epsg - corresponde ao codigo da projecao definido pela autoridade EPSG e eh o mesmo utilizado como SRID no Postgis, exemplo http://spatialreference.org/ref/epsg/4326/
  114 +
  115 +prj - string utilizado para gerar arquivos .prj que compoem shapefiles, exemplo: http://spatialreference.org/ref/epsg/4326/esriwkt/
  116 +
  117 +A exportacao de arquivos shapefile gera sempre o PRJ conforme essa definicao.
  118 +
  119 +Quando um mapfile utilizado no i3Geo nao possui a definicao de projecao no LAYER o i3Geo utilizara a projecao definida nessa variavel.
  120 +
  121 +Caso essa variavel esteja definida como vazio ou nao definida aqui o i3Geo utilizara o defaul, que se baseia no EPSG:4326.
  122 +
  123 +Os mapfiles de inicializacao tem seus parametros de projecao sobrepostos por essa variavel.
  124 +
  125 +Tipo:
  126 +{array}
  127 +
  128 +Default:
  129 +baseado em 4326
  130 +
  131 +*/
  132 +$i3GeoProjDefault = array(
  133 + 'proj4' => '+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs ',
  134 + 'epsg' => '4326',
  135 + 'prj' => 'GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]]'
  136 +);
79 /* 137 /*
80 Variable: $statusFerramentas 138 Variable: $statusFerramentas
81 139
82 -Algumas das funcionalidades do mapa interativo dependem de configura&ccedil;&otilde;es espec&iacute;ficas do servidor.  
83 -Esse array informa quais dessas ferramentas est&atilde;o corretamente configuradas.  
84 -As que estiverem marcadas como false n&atilde;o ser&atilde;o mostradas na interface do mapa interativo 140 +Algumas das funcionalidades do mapa interativo dependem de configuracoes especificas do servidor.
  141 +Esse array informa quais dessas ferramentas estao corretamente configuradas.
  142 +As que estiverem marcadas como false nao serao mostradas na interface do mapa interativo
  143 +Sobre essas configuracoes, veja na pasta i3geo/ferramentas e na documentacao do
  144 +sistema de administracao do i3Geo
85 */ 145 */
86 $statusFerramentas = array( 146 $statusFerramentas = array(
87 "saiku"=>true, 147 "saiku"=>true,
@@ -449,7 +509,8 @@ Tipo: @@ -449,7 +509,8 @@ Tipo:
449 $postgis_mapa = array( 509 $postgis_mapa = array(
450 "teste"=>"user=postgres password=postgres dbname=teste host=localhost port=5432", 510 "teste"=>"user=postgres password=postgres dbname=teste host=localhost port=5432",
451 "postgres"=>"user=postgres password=postgres dbname=postgres host=localhost port=5432", 511 "postgres"=>"user=postgres password=postgres dbname=postgres host=localhost port=5432",
452 - "i3geosaude"=>"user=postgres password=postgres dbname=i3geosaude host=localhost port=5432 options='-c client_encoding=LATIN1'" 512 + "i3geosaude"=>"user=postgres password=postgres dbname=i3geosaude host=localhost port=5432 options='-c client_encoding=LATIN1'",
  513 + "i3geosaudeUtf"=>"user=postgres password=postgres dbname=i3geosaude host=localhost port=5432"
453 ); 514 );
454 /* 515 /*
455 Variable: utilizacgi 516 Variable: utilizacgi
ms_criamapa.php
@@ -223,6 +223,7 @@ filtros - filtros podem ser adicionados incluindo o parametro da seguinte forma: @@ -223,6 +223,7 @@ filtros - filtros podem ser adicionados incluindo o parametro da seguinte forma:
223 // 223 //
224 //quando $funcao existe, &eacute; pq o ms_criamapa.php est&aacute; sendo utilizado como um include em classesphp/mapa_controle.php 224 //quando $funcao existe, &eacute; pq o ms_criamapa.php est&aacute; sendo utilizado como um include em classesphp/mapa_controle.php
225 // 225 //
  226 +
226 ms_ResetErrorList(); 227 ms_ResetErrorList();
227 if(!isset($funcao)){ 228 if(!isset($funcao)){
228 ob_end_clean(); 229 ob_end_clean();
@@ -285,6 +286,9 @@ $versao = $versao[&quot;principal&quot;]; @@ -285,6 +286,9 @@ $versao = $versao[&quot;principal&quot;];
285 if(!isset($dir_tmp)){ 286 if(!isset($dir_tmp)){
286 include_once (dirname(__FILE__)."/ms_configura.php"); 287 include_once (dirname(__FILE__)."/ms_configura.php");
287 } 288 }
  289 +if(isset($logExec) && $logExec["init"] == true){
  290 + i3GeoLog("ms_criamapa ".implode("&",array_merge($_GET,$_POST)),$_SESSION["dir_tmp"]);
  291 +}
288 if(!empty($restauramapa)){ 292 if(!empty($restauramapa)){
289 $base = restauraMapaAdmin($restauramapa,$dir_tmp); 293 $base = restauraMapaAdmin($restauramapa,$dir_tmp);
290 $m = ms_newMapObj($base); 294 $m = ms_newMapObj($base);
@@ -602,6 +606,7 @@ $_SESSION[&quot;imgurl&quot;] = strtolower($protocolo[0]).&quot;://&quot;.$_SERVER[&#39;HTTP_HOST&#39;].$atu @@ -602,6 +606,7 @@ $_SESSION[&quot;imgurl&quot;] = strtolower($protocolo[0]).&quot;://&quot;.$_SERVER[&#39;HTTP_HOST&#39;].$atu
602 $_SESSION["tmpurl"] = strtolower($protocolo[0])."://".$_SERVER['HTTP_HOST'].$atual; 606 $_SESSION["tmpurl"] = strtolower($protocolo[0])."://".$_SERVER['HTTP_HOST'].$atual;
603 $_SESSION["map_file"] = $tmpfname; 607 $_SESSION["map_file"] = $tmpfname;
604 $_SESSION["mapext"] = $mapext; 608 $_SESSION["mapext"] = $mapext;
  609 +$_SESSION["logExec"] = $logExec;
605 if (isset($executa)){ 610 if (isset($executa)){
606 if (file_exists($executa)){ 611 if (file_exists($executa)){
607 //include_once ($executa); 612 //include_once ($executa);
@@ -130,6 +130,9 @@ $cache = true; @@ -130,6 +130,9 @@ $cache = true;
130 include(dirname(__FILE__)."/ms_configura.php"); 130 include(dirname(__FILE__)."/ms_configura.php");
131 include(dirname(__FILE__)."/classesphp/funcoes_gerais.php"); 131 include(dirname(__FILE__)."/classesphp/funcoes_gerais.php");
132 132
  133 +if(isset($logExec) && $logExec["ogc"] == true){
  134 + i3GeoLog("ogc ".implode("&",$_GET),$_SESSION["dir_tmp"]);
  135 +}
133 // 136 //
134 //ajusta o default 137 //ajusta o default
135 // 138 //