Commit 48d93ca37e04f854f2c0766a7c0c1c7713a55f6b

Authored by Edmar Moretti
1 parent 00015ad9
Exists in master

i3GeoSaúde - Correção no uso de esquema que não seja o public para armazenamento…

… das tabelas do sistema de administração.
i3geo/admin/admin.db
No preview for this file type
i3geo/admin/menu.html
... ... @@ -74,6 +74,11 @@
74 74 url: "",
75 75 children:[
76 76 {
  77 + label: "Documentação (baseada no i3GeoSaúde)",
  78 + type: "text",
  79 + href: "http://i3geo.com.br/i3geosaude/docs/index.php?conteudo=fluxograma.html",
  80 + target: "principal"
  81 + },{
77 82 label: "Cadastro principal de variáveis",
78 83 type: "text",
79 84 href: "html/estat_variavel.html",
... ...
i3geo/admin/php/admin.php
... ... @@ -327,13 +327,13 @@ function verificaFilhos()
327 327 }
328 328 if($tabela == "i3geoadmin_grupos")
329 329 {
330   - $r = pegaDados("select n1.id_grupo from ".$esquemaadmin."i3geoadmin_n1 as n1, i3geoadmin_n2 as n2 where n1.id_n1 = n2.id_n1 and n1.id_grupo = '$id'");
  330 + $r = pegaDados("select n1.id_grupo from ".$esquemaadmin."i3geoadmin_n1 as n1, ".$esquemaadmin."i3geoadmin_n2 as n2 where n1.id_n1 = n2.id_n1 and n1.id_grupo = '$id'");
331 331 if(count($r) > 0)
332 332 $res = true;
333 333 }
334 334 if($tabela == "i3geoadmin_subgrupos")
335 335 {
336   - $r = pegaDados("select n2.id_subgrupo from ".$esquemaadmin."i3geoadmin_n3 as n3, i3geoadmin_n2 as n2 where n2.id_n2 = n3.id_n3 and n2.id_subgrupo = '$id'");
  336 + $r = pegaDados("select n2.id_subgrupo from ".$esquemaadmin."i3geoadmin_n3 as n3, ".$esquemaadmin."i3geoadmin_n2 as n2 where n2.id_n2 = n3.id_n3 and n2.id_subgrupo = '$id'");
337 337 if(count($r) > 0)
338 338 $res = true;
339 339 }
... ...
i3geo/admin/php/arvore.php
... ... @@ -157,7 +157,7 @@ switch (strtoupper($funcao))
157 157 {JSON}
158 158 */
159 159 case "PEGADADOSGRUPO":
160   - retornaJSON(pegaDados("select * from ".$esquemaadmin."i3geoadmin_n1 LEFT JOIN i3geoadmin_grupos ON i3geoadmin_n1.id_grupo = i3geoadmin_grupos.id_grupo where id_n1 = $id"));
  160 + retornaJSON(pegaDados("select * from ".$esquemaadmin."i3geoadmin_n1 LEFT JOIN ".$esquemaadmin."i3geoadmin_grupos ON i3geoadmin_n1.id_grupo = i3geoadmin_grupos.id_grupo where id_n1 = $id"));
161 161 exit;
162 162 break;
163 163 /*
... ... @@ -174,7 +174,7 @@ switch (strtoupper($funcao))
174 174 {JSON}
175 175 */
176 176 case "PEGADADOSSUBGRUPO":
177   - retornaJSON(pegaDados("select * from ".$esquemaadmin."i3geoadmin_n2 LEFT JOIN i3geoadmin_subgrupos ON i3geoadmin_n2.id_subgrupo = i3geoadmin_subgrupos.id_subgrupo where id_n2 = $id"));
  177 + retornaJSON(pegaDados("select * from ".$esquemaadmin."i3geoadmin_n2 LEFT JOIN ".$esquemaadmin."i3geoadmin_subgrupos ON i3geoadmin_n2.id_subgrupo = i3geoadmin_subgrupos.id_subgrupo where id_n2 = $id"));
178 178 exit;
179 179 break;
180 180 /*
... ... @@ -191,7 +191,7 @@ switch (strtoupper($funcao))
191 191 {JSON}
192 192 */
193 193 case "PEGADADOSTEMA":
194   - retornaJSON(pegaDados("select * from ".$esquemaadmin."i3geoadmin_n3 LEFT JOIN i3geoadmin_temas ON i3geoadmin_n3.id_tema = i3geoadmin_temas.id_tema where id_n3 = $id"));
  194 + retornaJSON(pegaDados("select * from ".$esquemaadmin."i3geoadmin_n3 LEFT JOIN ".$esquemaadmin."i3geoadmin_temas ON i3geoadmin_n3.id_tema = i3geoadmin_temas.id_tema where id_n3 = $id"));
195 195 exit;
196 196 break;
197 197 /*
... ... @@ -208,7 +208,7 @@ switch (strtoupper($funcao))
208 208 {JSON}
209 209 */
210 210 case "PEGADADOSRAIZ":
211   - retornaJSON(pegaDados("select * from ".$esquemaadmin."i3geoadmin_raiz LEFT JOIN i3geoadmin_temas ON i3geoadmin_raiz.id_tema = i3geoadmin_temas.id_tema where id_raiz = $id"));
  211 + retornaJSON(pegaDados("select * from ".$esquemaadmin."i3geoadmin_raiz LEFT JOIN ".$esquemaadmin."i3geoadmin_temas ON i3geoadmin_raiz.id_tema = i3geoadmin_temas.id_tema where id_raiz = $id"));
212 212 exit;
213 213 break;
214 214 /*
... ... @@ -231,7 +231,7 @@ switch (strtoupper($funcao))
231 231 else
232 232 {$coluna = $idioma;
233 233 }
234   - $raiz = pegaDados("select i3geoadmin_raiz.id_raiz,$coluna as nome_tema from ".$esquemaadmin."i3geoadmin_raiz LEFT JOIN i3geoadmin_temas ON i3geoadmin_temas.id_tema = i3geoadmin_raiz.id_tema where i3geoadmin_raiz.id_raiz = '$id_raiz'");
  234 + $raiz = pegaDados("select i3geoadmin_raiz.id_raiz,$coluna as nome_tema from ".$esquemaadmin."i3geoadmin_raiz LEFT JOIN ".$esquemaadmin."i3geoadmin_temas ON i3geoadmin_temas.id_tema = i3geoadmin_raiz.id_tema where i3geoadmin_raiz.id_raiz = '$id_raiz'");
235 235 retornaJSON(array("raiz"=>$raiz,"grupos"=>array()));
236 236 exit;
237 237 break;
... ... @@ -259,7 +259,7 @@ switch (strtoupper($funcao))
259 259 else
260 260 {$coluna = $idioma;
261 261 }
262   - $raiz = pegaDados("select i3geoadmin_raiz.id_raiz,$coluna as nome_tema from ".$esquemaadmin."i3geoadmin_raiz LEFT JOIN i3geoadmin_temas ON i3geoadmin_temas.id_tema = i3geoadmin_raiz.id_tema where i3geoadmin_raiz.id_raiz = '$id_raiz'");
  262 + $raiz = pegaDados("select i3geoadmin_raiz.id_raiz,$coluna as nome_tema from ".$esquemaadmin."i3geoadmin_raiz LEFT JOIN ".$esquemaadmin."i3geoadmin_temas ON i3geoadmin_temas.id_tema = i3geoadmin_raiz.id_tema where i3geoadmin_raiz.id_raiz = '$id_raiz'");
263 263 retornaJSON(array("raiz"=>$raiz,"grupos"=>array()));
264 264 exit;
265 265 break;
... ... @@ -284,7 +284,7 @@ switch (strtoupper($funcao))
284 284 else{
285 285 $coluna = $idioma;
286 286 }
287   - $grupos = pegaDados("select i3geoadmin_grupos.$coluna as nome_grupo,id_n1,i3geoadmin_n1.publicado from ".$esquemaadmin."i3geoadmin_n1 LEFT JOIN i3geoadmin_grupos ON i3geoadmin_n1.id_grupo = i3geoadmin_grupos.id_grupo where id_menu='$id_menu' and id_n1 = '$id_n1'");
  287 + $grupos = pegaDados("select i3geoadmin_grupos.$coluna as nome_grupo,id_n1,i3geoadmin_n1.publicado from ".$esquemaadmin."i3geoadmin_n1 LEFT JOIN ".$esquemaadmin."i3geoadmin_grupos ON i3geoadmin_n1.id_grupo = i3geoadmin_grupos.id_grupo where id_menu='$id_menu' and id_n1 = '$id_n1'");
288 288 $raiz = array();
289 289 retornaJSON(array("raiz"=>$raiz,"grupos"=>$grupos));
290 290 exit;
... ... @@ -311,7 +311,7 @@ switch (strtoupper($funcao))
311 311 else
312 312 {$coluna = $idioma;
313 313 }
314   - $subgrupos = pegaDados("select i3geoadmin_subgrupos.$coluna as nome_subgrupo,i3geoadmin_n2.id_n2,i3geoadmin_n2.publicado from ".$esquemaadmin."i3geoadmin_n2 LEFT JOIN i3geoadmin_subgrupos ON i3geoadmin_n2.id_subgrupo = i3geoadmin_subgrupos.id_subgrupo where i3geoadmin_n2.id_n2='$id_n2'");
  314 + $subgrupos = pegaDados("select i3geoadmin_subgrupos.$coluna as nome_subgrupo,i3geoadmin_n2.id_n2,i3geoadmin_n2.publicado from ".$esquemaadmin."i3geoadmin_n2 LEFT JOIN ".$esquemaadmin."i3geoadmin_subgrupos ON i3geoadmin_n2.id_subgrupo = i3geoadmin_subgrupos.id_subgrupo where i3geoadmin_n2.id_n2='$id_n2'");
315 315 $raiz = array();
316 316 retornaJSON(array("raiz"=>$raiz,"subgrupos"=>$subgrupos));
317 317 exit;
... ... @@ -338,7 +338,7 @@ switch (strtoupper($funcao))
338 338 else
339 339 {$coluna = $idioma;
340 340 }
341   - $temas = pegaDados("select i3geoadmin_temas.$coluna as nome_tema,i3geoadmin_n3.id_n3,i3geoadmin_n3.publicado from ".$esquemaadmin."i3geoadmin_n3 LEFT JOIN i3geoadmin_temas ON i3geoadmin_n3.id_tema = i3geoadmin_temas.id_tema where i3geoadmin_n3.id_n3='$id_n3'");
  341 + $temas = pegaDados("select i3geoadmin_temas.$coluna as nome_tema,i3geoadmin_n3.id_n3,i3geoadmin_n3.publicado from ".$esquemaadmin."i3geoadmin_n3 LEFT JOIN ".$esquemaadmin."i3geoadmin_temas ON i3geoadmin_n3.id_tema = i3geoadmin_temas.id_tema where i3geoadmin_n3.id_n3='$id_n3'");
342 342 $raiz = array();
343 343 retornaJSON($temas);
344 344 exit;
... ...
i3geo/admin/php/atlas.php
... ... @@ -23,7 +23,7 @@ Este programa é distribuído na expectativa de que seja útil
23 23 porém, SEM NENHUMA GARANTIA; nem mesmo a garantia implícita
24 24 de COMERCIABILIDADE OU ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA.
25 25 Consulte a Licença Pública Geral do GNU para mais detalhes.
26   -Você deve ter recebido uma cópia da Licença Pública Geral do
  26 +Você deve ter recebido uma c�pia da Licença Pública Geral do
27 27 GNU junto com este programa; se não, escreva para a
28 28 Free Software Foundation, Inc., no endereço
29 29 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA.
... ... @@ -36,7 +36,7 @@ Parametros:
36 36  
37 37 O parâmetro principal é "funcao", que define qual operação será executada, por exemplo, atlas.php?funcao=pegaAtlas
38 38  
39   -Cada operação possuí seus próprios parâmetros, que devem ser enviados também na requisição da operação.
  39 +Cada operação possuí seus pr�prios parâmetros, que devem ser enviados também na requisição da operação.
40 40  
41 41 */
42 42 include_once(dirname(__FILE__)."/login.php");
... ... @@ -105,7 +105,7 @@ switch (strtoupper($funcao))
105 105 {JSON}
106 106 */
107 107 case "PEGATEMAS":
108   - retornaJSON(pegaDados("SELECT i3geoadmin_atlast.*,i3geoadmin_temas.nome_tema from ".$esquemaadmin."i3geoadmin_atlast LEFT JOIN i3geoadmin_temas ON ( i3geoadmin_atlast.codigo_tema = i3geoadmin_temas.codigo_tema ) where id_prancha = '$id_prancha' order by ordem_tema"));
  108 + retornaJSON(pegaDados("SELECT i3geoadmin_atlast.*,i3geoadmin_temas.nome_tema from ".$esquemaadmin."i3geoadmin_atlast LEFT JOIN ".$esquemaadmin."i3geoadmin_temas ON ( i3geoadmin_atlast.codigo_tema = i3geoadmin_temas.codigo_tema ) where id_prancha = '$id_prancha' order by ordem_tema"));
109 109 exit;
110 110 break;
111 111 /*
... ... @@ -329,15 +329,15 @@ switch (strtoupper($funcao))
329 329 /*
330 330 Valor: MOVIMENTANO
331 331  
332   - Muda a ordem de um nó
  332 + Muda a ordem de um n�
333 333  
334 334 Parametros:
335 335  
336   - tipo - tipo de nó tema|prancha|atlas
  336 + tipo - tipo de n� tema|prancha|atlas
337 337  
338 338 movimento - sobe|desce
339 339  
340   - id- id do nó
  340 + id- id do n�
341 341  
342 342 Retorno:
343 343  
... ...
i3geo/admin/php/editormapfile.php
... ... @@ -23,7 +23,7 @@ Este programa é distribuído na expectativa de que seja útil
23 23 porém, SEM NENHUMA GARANTIA; nem mesmo a garantia implícita
24 24 de COMERCIABILIDADE OU ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA.
25 25 Consulte a Licença Pública Geral do GNU para mais detalhes.
26   -Você deve ter recebido uma cópia da Licença Pública Geral do
  26 +Você deve ter recebido uma copia da Licença Pública Geral do
27 27 GNU junto com este programa; se não, escreva para a
28 28 Free Software Foundation, Inc., no endereço
29 29 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA.
... ... @@ -36,7 +36,7 @@ Parametros:
36 36  
37 37 O parâmetro principal é "funcao", que define qual operação será executada, por exemplo, editormapfile.php?funcao=pegaMapfiles
38 38  
39   -Cada operação possuí seus próprios parâmetros, que devem ser enviados também na requisição da operação.
  39 +Cada operação possuí seus proprios parâmetros, que devem ser enviados também na requisição da operação.
40 40  
41 41 */
42 42 include_once(dirname(__FILE__)."/login.php");
... ... @@ -82,6 +82,13 @@ if(in_array(strtoupper($funcao),$funcoesEdicao)){
82 82 }
83 83 }
84 84 error_reporting(0);
  85 +//define o parametro de output do resultado da funcao
  86 +//algumas funcoes podem ser inseridas com include em outros programas
  87 +//nesse caso, defina output como "retorno"
  88 +//caso contrario sera definido como json
  89 +if(empty($output)){
  90 + $output = "json";
  91 +}
85 92 //faz a busca da função que deve ser executada
86 93 switch (strtoupper($funcao))
87 94 {
... ... @@ -112,8 +119,13 @@ switch (strtoupper($funcao))
112 119 {JSON}
113 120 */
114 121 case "CRIARNOVOMAP":
115   - retornaJSON(criarNovoMap());
116   - exit;
  122 + $resultado = criarNovoMap();
  123 + if($output == "retorno"){
  124 + return $resultado;
  125 + }else{
  126 + retornaJSON($resultado);
  127 + exit;
  128 + }
117 129 break;
118 130  
119 131 case "DOWNLOADGVP":
... ... @@ -219,7 +231,7 @@ switch (strtoupper($funcao))
219 231 /*
220 232 Valor: LIMPARCACHEMAPFILE
221 233  
222   - Apaga o diretório contendo o cache de um tema (mapfile)
  234 + Apaga o diret�rio contendo o cache de um tema (mapfile)
223 235  
224 236 Parametros:
225 237  
... ... @@ -256,7 +268,7 @@ switch (strtoupper($funcao))
256 268  
257 269 Exclui um mapfile.
258 270  
259   - Só é possível excluir se o mapfile não estiver vinculado a nenhum tema ou nó da árvore de temas
  271 + S� é possível excluir se o mapfile não estiver vinculado a nenhum tema ou n� da árvore de temas
260 272  
261 273 Parametros:
262 274  
... ... @@ -310,7 +322,7 @@ switch (strtoupper($funcao))
310 322  
311 323 maporigem {string} - nome completo do arquivo mapfile que contem o layer que será utilizado para alterar o original
312 324  
313   - nomelayer {string} - código do layer em mapfile que será utilizado para atualizar codigoMap
  325 + nomelayer {string} - codigo do layer em mapfile que será utilizado para atualizar codigoMap
314 326  
315 327 Retorno:
316 328  
... ... @@ -344,7 +356,7 @@ switch (strtoupper($funcao))
344 356  
345 357 Cria um novo layer em um mapfile
346 358  
347   - O novo layer receberá um nome aleatório, que pode ser modificado posteriormente. Por default, esse novo layer será do tipo linear
  359 + O novo layer receberá um nome aleatorio, que pode ser modificado posteriormente. Por default, esse novo layer será do tipo linear
348 360  
349 361 Parametros:
350 362  
... ... @@ -1170,12 +1182,13 @@ function sobeDesce()
1170 1182 removeCabecalho($mapfile);
1171 1183 return "ok";
1172 1184 }
1173   -function criarNovoMap()
1174   -{
1175   - global $nome,$codigo,$locaplic,$it,$en,$es,$esquemaadmin,$metaestat;
  1185 +function criarNovoMap(){
  1186 + global $nome,$codigo,$locaplic,$it,$en,$es,$esquemaadmin,$metaestat,$tipoLayer,$data;
1176 1187 $arq = $locaplic."/temas/".$codigo.".map";
1177   - if(!file_exists($arq))
1178   - {
  1188 + if(!file_exists($arq)){
  1189 + if(empty($tipoLayer)){
  1190 + $tipoLayer = "line";
  1191 + }
1179 1192 $dados[] = "MAP";
1180 1193 $dados[] = "SYMBOLSET ../symbols/simbolosv6.sym";
1181 1194 $dados[] = 'FONTSET "../symbols/fontes.txt"';
... ... @@ -1184,12 +1197,15 @@ function criarNovoMap()
1184 1197 $dados[] = ' TEMPLATE "none.htm"';
1185 1198 if(!empty($metaestat) && $metaestat == "SIM"){
1186 1199 $dados[] = ' CONNECTIONTYPE POSTGIS';
1187   - $dados[] = " TYPE polygon";
  1200 + $tipoLayer = "polygon";
  1201 + }
  1202 + $dados[] = " TYPE ".$tipoLayer;
  1203 + if(empty($data)){
  1204 + $dados[] = ' DATA ""';
1188 1205 }
1189 1206 else{
1190   - $dados[] = " TYPE line";
  1207 + $dados[] = ' DATA "'.$data.'"';
1191 1208 }
1192   - $dados[] = ' DATA ""';
1193 1209 $dados[] = ' METADATA';
1194 1210 $dados[] = ' TEMA "'.$nome.'"';
1195 1211 $dados[] = ' CLASSE "SIM"';
... ... @@ -1207,6 +1223,9 @@ function criarNovoMap()
1207 1223 $dados[] = ' STYLE';
1208 1224 $dados[] = ' COLOR 0 0 0';
1209 1225 $dados[] = ' SIZE 12';
  1226 + if($tipoLayer == "point"){
  1227 + $dados[] = " SYMBOL 'ponto'";
  1228 + }
1210 1229 $dados[] = ' END';
1211 1230 $dados[] = ' END';
1212 1231 $dados[] = "END";
... ...
i3geo/admin/php/estatisticas.php
... ... @@ -41,7 +41,7 @@ td {
41 41 porém, SEM NENHUMA GARANTIA; nem mesmo a garantia implícita
42 42 de COMERCIABILIDADE OU ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA.
43 43 Consulte a Licença Pública Geral do GNU para mais detalhes.
44   - Você deve ter recebido uma cópia da Licença Pública Geral do
  44 + Você deve ter recebido uma c�pia da Licença Pública Geral do
45 45 GNU junto com este programa; se não, escreva para a
46 46 Free Software Foundation, Inc., no endereço
47 47 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA.
... ... @@ -55,7 +55,7 @@ td {
55 55 $totaltemas = count(pegaDados("select * from ".$esquemaadmin."i3geoadmin_temas"));
56 56 $temasvalidos = pegaDados("select codigo_tema,nome_tema,download_tema,kml_tema,ogc_tema,link_tema,tags_tema from ".$esquemaadmin."i3geoadmin_temas where codigo_tema <> ''");
57 57 $temasassocsubgrupos = pegaDados("select id_tema from ".$esquemaadmin."i3geoadmin_n3 group by id_tema");
58   - $nacessostema = pegaDados("select b.nome_tema,sum(a.nacessos) as soma,a.codigo_tema from ".$esquemaadmin."i3geoadmin_acessostema as a,i3geoadmin_temas as b where a.codigo_tema = b.codigo_tema and a.nacessos > 0 group by a.codigo_tema,b.nome_tema");
  58 + $nacessostema = pegaDados("select b.nome_tema,sum(a.nacessos) as soma,a.codigo_tema from ".$esquemaadmin."i3geoadmin_acessostema as a,".$esquemaadmin."i3geoadmin_temas as b where a.codigo_tema = b.codigo_tema and a.nacessos > 0 group by a.codigo_tema,b.nome_tema");
59 59 $ntags = pegaDados("select nome from ".$esquemaadmin."i3geoadmin_tags");
60 60 $totaltemasvalidos = count($temasvalidos);
61 61 $codigostemas = array();
... ... @@ -124,8 +124,8 @@ td {
124 124 }
125 125 echo "<table>";
126 126 echo "<tr><td><b>N&uacute;mero total de temas cadastrados: </b></td><td>$totaltemas</td><td></td></tr>";
127   - echo "<tr><td><b>N&uacute;mero total de temas v&aacute;lidos (código diferente de vazio): </b></td><td>$totaltemasvalidos</td><td></td></tr>";
128   - echo "<tr><td><b>Temas v&aacute;lidos com códigos duplicados: </b></td><td>".count($temasmaisdeum)."</td><td></td></tr>";
  127 + echo "<tr><td><b>N&uacute;mero total de temas v&aacute;lidos (c�digo diferente de vazio): </b></td><td>$totaltemasvalidos</td><td></td></tr>";
  128 + echo "<tr><td><b>Temas v&aacute;lidos com c�digos duplicados: </b></td><td>".count($temasmaisdeum)."</td><td></td></tr>";
129 129 echo "<tr><td><b>Temas v&aacute;lidos com nomes duplicados: </b></td><td>".count($nomestemasmaisdeum)."</td><td></td></tr>";
130 130 echo "<tr><td><b>Temas associados a algum sub-grupo: </b></td><td>".count($temasassocsubgrupos)."</td><td></td></tr>";
131 131  
... ...
i3geo/classesphp/funcoes_gerais.php
... ... @@ -2566,6 +2566,7 @@ Lista os temas que possuem restricao de acesso para apenas alguns grupos de usua
2566 2566 O retorno e um array com a chave sendo o codigo do tema e o valor um array com a lista de ids de grupos que podem acessar
2567 2567 */
2568 2568 function listaTemasRestritos(){
  2569 + global $esquemaadmin;
2569 2570 include_once(dirname(__FILE__)."/../admin/php/admin.php");
2570 2571 error_reporting(0);
2571 2572 $res = pegaDados("select id_grupo,codigo_tema from ".$esquemaadmin."i3geousr_grupotema as gt,".$esquemaadmin."i3geoadmin_temas as te where gt.id_tema = te.id_tema");
... ...