Commit 0390af3623de793273cd72f5cd3d36d27c418536
1 parent
80958f40
Exists in
master
and in
7 other branches
Adaptações para funcionamento com o sistema de administração
Showing
12 changed files
with
322 additions
and
266 deletions
Show diff stats
classesphp/atlas_controle.php
@@ -114,6 +114,14 @@ if ($map_file != "") | @@ -114,6 +114,14 @@ if ($map_file != "") | ||
114 | substituiCon($map_file,$postgis_mapa); | 114 | substituiCon($map_file,$postgis_mapa); |
115 | } | 115 | } |
116 | // | 116 | // |
117 | +//identifica qual a url do i3geo | ||
118 | +// | ||
119 | +$protocolo = explode("/",$_SERVER['SERVER_PROTOCOL']); | ||
120 | +$protocolo = $protocolo[0] . '://'.$_SERVER['SERVER_NAME'] .":". $_SERVER['SERVER_PORT']; | ||
121 | +$urli3geo = str_replace("/classesphp/atlas_controle.php","",$protocolo.$_SERVER["PHP_SELF"]); | ||
122 | +if($atlasxml == "") | ||
123 | +{$atlasxml = $urli3geo."/admin/xmlatlas.php";} | ||
124 | +// | ||
117 | //faz a busca da função que deve ser executada | 125 | //faz a busca da função que deve ser executada |
118 | // | 126 | // |
119 | switch ($funcao) | 127 | switch ($funcao) |
classesphp/classe_atlas.php
@@ -33,11 +33,6 @@ Class: Atlas | @@ -33,11 +33,6 @@ Class: Atlas | ||
33 | */ | 33 | */ |
34 | class Atlas | 34 | class Atlas |
35 | { | 35 | { |
36 | - /* | ||
37 | - Variable: $atlas | ||
38 | - | ||
39 | - Objeto Atlas | ||
40 | - */ | ||
41 | public $atlas; | 36 | public $atlas; |
42 | /* | 37 | /* |
43 | Function: __construct | 38 | Function: __construct |
@@ -50,9 +45,9 @@ $atlasxml - Endereço do arquivo xml com as definições do Atlas. | @@ -50,9 +45,9 @@ $atlasxml - Endereço do arquivo xml com as definições do Atlas. | ||
50 | */ | 45 | */ |
51 | function __construct($atlasxml) | 46 | function __construct($atlasxml) |
52 | { | 47 | { |
53 | - | ||
54 | - $this->arquivo = $atlasxml; | 48 | + error_reporting(0); |
55 | $this->xml = simplexml_load_file($atlasxml); | 49 | $this->xml = simplexml_load_file($atlasxml); |
50 | + $this->arquivo = $atlasxml; | ||
56 | } | 51 | } |
57 | /* | 52 | /* |
58 | Method: pegaListaDeAtlas | 53 | Method: pegaListaDeAtlas |
@@ -243,7 +238,5 @@ locaplic - localização do i3geo no servidor | @@ -243,7 +238,5 @@ locaplic - localização do i3geo no servidor | ||
243 | if($h == ""){$h = 300;} | 238 | if($h == ""){$h = 300;} |
244 | return (array("link"=>$link,"w"=>$w,"h"=>$h)); | 239 | return (array("link"=>$link,"w"=>$w,"h"=>$h)); |
245 | } | 240 | } |
246 | - | ||
247 | } | 241 | } |
248 | - | ||
249 | ?> | 242 | ?> |
250 | \ No newline at end of file | 243 | \ No newline at end of file |
classesphp/classe_menutemas.php
@@ -35,49 +35,35 @@ Class: Menutemas | @@ -35,49 +35,35 @@ Class: Menutemas | ||
35 | */ | 35 | */ |
36 | class Menutemas | 36 | class Menutemas |
37 | { | 37 | { |
38 | - /* | ||
39 | - Variable: $mapa | ||
40 | - | ||
41 | - Objeto mapa | ||
42 | - */ | ||
43 | - protected $mapa; | ||
44 | - /* | ||
45 | - Variable: $arquivo | ||
46 | - | ||
47 | - Arquivo map file | ||
48 | - */ | ||
49 | - protected $arquivo; | ||
50 | - /* | ||
51 | - Variable: $layers | ||
52 | - | ||
53 | - Array com os layers | ||
54 | - */ | ||
55 | - protected $layers; | ||
56 | - /* | ||
57 | - Variable: $perfil | ||
58 | - | ||
59 | - Perfil do usuário atual | ||
60 | - */ | ||
61 | - protected $perfil; | ||
62 | - /* | ||
63 | - Variable: $xmlsistemas | ||
64 | - | ||
65 | - xml com a lista de sistemas | ||
66 | - */ | ||
67 | - protected $xmlsistemas; | ||
68 | /* | 38 | /* |
69 | function: __construct | 39 | function: __construct |
70 | 40 | ||
71 | Cria um objeto Menutemas | 41 | Cria um objeto Menutemas |
72 | 42 | ||
73 | parameters: | 43 | parameters: |
74 | -$map_file - string $map_file Endereço do mapfile no servidor. | 44 | + |
45 | +$map_file - (opcional) endereço do mapfile no servidor | ||
46 | + | ||
47 | +$perfil - (opcional) lista dos perfis, separados por espaços, que devem restringir a lista de menus, grupos, temas e etc. | ||
48 | + | ||
49 | +$locsistemas - (opcional) endereço do xml com a lista de sistemas adicionais que serão listados na opção de adiçao de temas | ||
50 | + | ||
51 | +$locaplic - (opcional) endereço físico do i3geo | ||
52 | + | ||
53 | +$menutemas - (opcional) array contendo a lista de menus para compor a árvore de temas (veja o i3geo/ms_configura) | ||
54 | + | ||
55 | +$urli3geo - (opcional) url onde está o i3geo (p.ex. http://localhost/i3geo | ||
75 | */ | 56 | */ |
76 | - function __construct($map_file="",$perfil="",$locsistemas="") | 57 | + function __construct($map_file="",$perfil="",$locsistemas="",$locaplic="",$menutemas="",$urli3geo="") |
77 | { | 58 | { |
78 | - //error_reporting(E_ALL); | 59 | + error_reporting(0); |
79 | $this->perfil = explode(",",$perfil); | 60 | $this->perfil = explode(",",$perfil); |
61 | + if(count($this->perfil) == 0) | ||
62 | + $this->perfil = explode(" ",$perfil); | ||
80 | $this->xmlsistemas = ""; | 63 | $this->xmlsistemas = ""; |
64 | + $this->locaplic = $locaplic; | ||
65 | + $this->menutemas = $menutemas; | ||
66 | + $this->urli3geo = $urli3geo; | ||
81 | if ($locsistemas != "") | 67 | if ($locsistemas != "") |
82 | $this->xmlsistemas = simplexml_load_file($locsistemas); | 68 | $this->xmlsistemas = simplexml_load_file($locsistemas); |
83 | if (($map_file != "") && (file_exists($map_file))) | 69 | if (($map_file != "") && (file_exists($map_file))) |
@@ -93,6 +79,53 @@ $map_file - string $map_file Endereço do mapfile no servidor. | @@ -93,6 +79,53 @@ $map_file - string $map_file Endereço do mapfile no servidor. | ||
93 | } | 79 | } |
94 | } | 80 | } |
95 | /* | 81 | /* |
82 | +function: pegaListaDeMenus | ||
83 | + | ||
84 | +Pega a lista de menus do banco de dados de administração. | ||
85 | + | ||
86 | +O perfil do usuário é armazenado na seção na inicialização do I3Geo. | ||
87 | + | ||
88 | +Parameters: | ||
89 | + | ||
90 | +locmapas - endereço do arquivo xml. | ||
91 | + | ||
92 | +return: | ||
93 | +array | ||
94 | +*/ | ||
95 | + function pegaListaDeMenus() | ||
96 | + { | ||
97 | + $resultado = array(); | ||
98 | + if($this->menutemas == "") | ||
99 | + { | ||
100 | + if(!isset($this->locaplic)) | ||
101 | + {return "locaplic nao foi definido";} | ||
102 | + if(!isset($this->locaplic)) | ||
103 | + {return "locaplic nao foi definido";} | ||
104 | + include_once($this->locaplic."/admin/php/conexao.php"); | ||
105 | + $sql = 'SELECT * from i3geoadmin_menus order by nome_menu'; | ||
106 | + $q = $dbh->query($sql,PDO::FETCH_ASSOC); | ||
107 | + $regs = $q->fetchAll(); | ||
108 | + $dbh = null; | ||
109 | + $resultado = array(); | ||
110 | + foreach($regs as $reg) | ||
111 | + { | ||
112 | + $status = "fechado"; | ||
113 | + if(strtolower($reg["aberto"]) == "sim") | ||
114 | + $status = "aberto"; | ||
115 | + $arquivo = "admin/xmlmenutemas.php?id_menu=".$reg["id_menu"]."&perfil=".$reg["perfil_menu"]; | ||
116 | + $url = $this->urli3geo."/admin/xmlmenutemas.php?id_menu=".$reg["id_menu"]."&perfil=".$reg["perfil_menu"]; | ||
117 | + $resultado[] = array("idmenu"=>$reg["nome_menu"],"arquivo"=>$arquivo,"status"=>$status,"url"=>$url); | ||
118 | + } | ||
119 | + } | ||
120 | + else | ||
121 | + {$resultado = $this->menutemas;} | ||
122 | + if(count($resultado) == 0) | ||
123 | + { | ||
124 | + $resultado[] = array("idmenu"=>"i3geo (xml)","arquivo"=>"../menutemas/menutemas.xml","status"=>"aberto"); | ||
125 | + } | ||
126 | + return ($resultado); | ||
127 | + } | ||
128 | +/* | ||
96 | function: pegaListaDeMapas | 129 | function: pegaListaDeMapas |
97 | 130 | ||
98 | Le o arquivo xml com a lista de mapas existente no xml $locmapas. | 131 | Le o arquivo xml com a lista de mapas existente no xml $locmapas. |
@@ -152,42 +185,36 @@ return: | @@ -152,42 +185,36 @@ return: | ||
152 | 185 | ||
153 | array | 186 | array |
154 | */ | 187 | */ |
155 | - function pegaListaDeGrupos($idmenu="",$listasistemas="sim",$listasgrupos="sim",$menutemas=null) | 188 | + function pegaListaDeGrupos($idmenu="",$listasistemas="sim",$listasgrupos="sim") |
156 | { | 189 | { |
190 | + // | ||
191 | + //lê os arquivos xml | ||
192 | + //"&tipo=gruposeraiz" pega apenas os nomes dos grupos e temas na raiz | ||
193 | + // | ||
194 | + if($listasgrupos == "sim") | ||
195 | + {$tipo = "";} | ||
196 | + else | ||
197 | + {$tipo = "&tipo=gruposeraiz";} | ||
157 | $this->xml = ""; | 198 | $this->xml = ""; |
158 | - //echo $menutemas; | ||
159 | - if(isset($menutemas)) | ||
160 | - { | ||
161 | - if (file_exists("../ms_configura.php")) | ||
162 | - {include_once("../ms_configura.php");} | ||
163 | - } | ||
164 | - if ((isset($menutemas)) && ($menutemas != "") && ($idmenu != "")) | 199 | + foreach($this->pegaListaDeMenus() as $menu) |
165 | { | 200 | { |
166 | - foreach ($menutemas as $m) | 201 | + if($menu["idmenu"] == $idmenu || $idmenu == "") |
167 | { | 202 | { |
168 | - if (($m["idmenu"] == $idmenu)) | ||
169 | - {$this->xml = simplexml_load_file($m["arquivo"]);} | ||
170 | - } | ||
171 | - } | ||
172 | - if (($this->xml == "") && ($menutemas == "")) | ||
173 | - { | ||
174 | - if (file_exists("../menutemas/menutemas.xml")) | ||
175 | - {$this->xml = simplexml_load_file("../menutemas/menutemas.xml");} | ||
176 | - else | ||
177 | - {$this->xml = simplexml_load_file("menutemas/menutemas.xml");} | ||
178 | - } | ||
179 | - if ($this->xml == "") | ||
180 | - { | ||
181 | - if (file_exists("../menutemas/menutemas.xml")) | ||
182 | - {$this->xml = simplexml_load_file("../menutemas/menutemas.xml");} | ||
183 | - else | ||
184 | - {$this->xml = simplexml_load_file("menutemas/menutemas.xml");} | 203 | + $ondexml = $menu["arquivo"]; |
204 | + if(isset($menu["url"])){$ondexml = $menu["url"];} | ||
205 | + $this->xml = simplexml_load_file($ondexml.$tipo); | ||
206 | + } | ||
185 | } | 207 | } |
208 | + // | ||
209 | + //varre o xml para pegar os dados | ||
210 | + // | ||
186 | $sistemas = array(); | 211 | $sistemas = array(); |
187 | $grupos = array(); | 212 | $grupos = array(); |
188 | $temasraiz = array(); | 213 | $temasraiz = array(); |
214 | + // | ||
189 | //pega os grupos | 215 | //pega os grupos |
190 | //verifica se existem temas na raiz do menu | 216 | //verifica se existem temas na raiz do menu |
217 | + // | ||
191 | foreach($this->xml->TEMA as $temar) | 218 | foreach($this->xml->TEMA as $temar) |
192 | { | 219 | { |
193 | $down = "nao"; | 220 | $down = "nao"; |
@@ -329,29 +356,14 @@ array | @@ -329,29 +356,14 @@ array | ||
329 | function pegaListaDeSubGrupos($codgrupo,$idmenu="") | 356 | function pegaListaDeSubGrupos($codgrupo,$idmenu="") |
330 | { | 357 | { |
331 | $this->xml = ""; | 358 | $this->xml = ""; |
332 | - if (file_exists("../ms_configura.php")) | ||
333 | - {include_once("../ms_configura.php");} | ||
334 | - if ((isset($menutemas)) && ($menutemas != "") && ($idmenu != "")) | 359 | + foreach($this->pegaListaDeMenus() as $menu) |
335 | { | 360 | { |
336 | - foreach ($menutemas as $m) | 361 | + if($menu["idmenu"] == $idmenu) |
337 | { | 362 | { |
338 | - if (($m["idmenu"] == $idmenu)) | ||
339 | - {$this->xml = simplexml_load_file($m["arquivo"]);} | ||
340 | - } | ||
341 | - } | ||
342 | - if (($this->xml == "") && ($menutemas == "")) | ||
343 | - { | ||
344 | - if (file_exists("../menutemas/menutemas.xml")) | ||
345 | - {$this->xml = simplexml_load_file("../menutemas/menutemas.xml");} | ||
346 | - else | ||
347 | - {$this->xml = simplexml_load_file("menutemas/menutemas.xml");} | ||
348 | - } | ||
349 | - if ($this->xml == "") | ||
350 | - { | ||
351 | - if (file_exists("../menutemas/menutemas.xml")) | ||
352 | - {$this->xml = simplexml_load_file("../menutemas/menutemas.xml");} | ||
353 | - else | ||
354 | - {$this->xml = simplexml_load_file("menutemas/menutemas.xml");} | 363 | + $ondexml = $menu["arquivo"]; |
364 | + if(isset($menu["url"])){$ondexml = $menu["url"];} | ||
365 | + $this->xml = simplexml_load_file($ondexml."&tipo=subgrupos"); | ||
366 | + } | ||
355 | } | 367 | } |
356 | $conta = 0; | 368 | $conta = 0; |
357 | $subgrupos[] = array(); | 369 | $subgrupos[] = array(); |
@@ -433,22 +445,14 @@ array | @@ -433,22 +445,14 @@ array | ||
433 | function pegaListaDeTemas($grupo,$subgrupo,$idmenu) | 445 | function pegaListaDeTemas($grupo,$subgrupo,$idmenu) |
434 | { | 446 | { |
435 | $this->xml = ""; | 447 | $this->xml = ""; |
436 | - if (file_exists("../ms_configura.php")) | ||
437 | - {include_once("../ms_configura.php");} | ||
438 | - if ((isset($menutemas)) && ($menutemas != "") && ($idmenu != "")) | 448 | + foreach($this->pegaListaDeMenus() as $menu) |
439 | { | 449 | { |
440 | - foreach ($menutemas as $m) | 450 | + if($menu["idmenu"] == $idmenu) |
441 | { | 451 | { |
442 | - if (($m["idmenu"] == $idmenu)) | ||
443 | - {$this->xml = simplexml_load_file($m["arquivo"]);} | ||
444 | - } | ||
445 | - } | ||
446 | - if ($this->xml == "") | ||
447 | - { | ||
448 | - if (file_exists("../menutemas/menutemas.xml")) | ||
449 | - {$this->xml = simplexml_load_file("../menutemas/menutemas.xml");} | ||
450 | - else | ||
451 | - {$this->xml = simplexml_load_file("menutemas/menutemas.xml");} | 452 | + $ondexml = $menu["arquivo"]; |
453 | + if(isset($menu["url"])){$ondexml = $menu["url"];} | ||
454 | + $this->xml = simplexml_load_file($ondexml); | ||
455 | + } | ||
452 | } | 456 | } |
453 | $contagrupo = 0; | 457 | $contagrupo = 0; |
454 | $temas = array(); | 458 | $temas = array(); |
@@ -532,26 +536,18 @@ $procurar - String que será procurada. | @@ -532,26 +536,18 @@ $procurar - String que será procurada. | ||
532 | function procurartemas($procurar) | 536 | function procurartemas($procurar) |
533 | { | 537 | { |
534 | $this->xml = array(); | 538 | $this->xml = array(); |
535 | - if (file_exists("../ms_configura.php")) | ||
536 | - {include_once("../ms_configura.php");} | ||
537 | - if ((isset($menutemas)) && ($menutemas != "")) | ||
538 | - { | ||
539 | - foreach ($menutemas as $m) | ||
540 | - { | ||
541 | - $this->xml[] = simplexml_load_file($m["arquivo"]); | ||
542 | - } | ||
543 | - } | ||
544 | - if ($this->xml == "") | 539 | + foreach($this->pegaListaDeMenus() as $menu) |
545 | { | 540 | { |
546 | - if (file_exists("../menutemas/menutemas.xml")) | ||
547 | - {$this->xml[] = simplexml_load_file("../menutemas/menutemas.xml");} | ||
548 | - else | ||
549 | - {$this->xml[] = simplexml_load_file("menutemas/menutemas.xml");} | ||
550 | - } | 541 | + $ondexml = $menu["arquivo"]; |
542 | + if(isset($menu["url"])){$ondexml = $menu["url"];} | ||
543 | + $this->xml[] = simplexml_load_file($ondexml); | ||
544 | + } | ||
551 | $resultado = array(); | 545 | $resultado = array(); |
552 | - $listadetemas = array(); | 546 | + $texto = array(); |
553 | foreach ($this->xml as $xml) | 547 | foreach ($this->xml as $xml) |
554 | { | 548 | { |
549 | + $listadetemas = array(); | ||
550 | + $subgrupo = array(); | ||
555 | foreach($xml->GRUPO as $grupo) | 551 | foreach($xml->GRUPO as $grupo) |
556 | { | 552 | { |
557 | $incluigrupo = TRUE; | 553 | $incluigrupo = TRUE; |
@@ -595,23 +591,27 @@ $procurar - String que será procurada. | @@ -595,23 +591,27 @@ $procurar - String que será procurada. | ||
595 | {$down = "sim";} | 591 | {$down = "sim";} |
596 | $link = ixml($tema,"TLINK"); | 592 | $link = ixml($tema,"TLINK"); |
597 | $tid = ixml($tema,"TID"); | 593 | $tid = ixml($tema,"TID"); |
598 | - $texto = array("tid"=>$tid,"nome"=>(ixml($tema,"TNOME")),"link"=>$link,"download"=>$down); | ||
599 | - $p1 = $this->removeAcentos($procurar); | ||
600 | - $p1 = $this->removeAcentos(htmlentities($p1)); | ||
601 | - | ||
602 | - $pp1 = $this->removeAcentos(ixml($tema,"TNOME")); | ||
603 | - $pp1 = $this->removeAcentos($pp1); | ||
604 | - $pp1 = $this->removeAcentos(htmlentities($pp1)); | ||
605 | 594 | ||
606 | - if (stristr($pp1,$p1) || stristr(ixml($tema,"TNOME"),htmlentities($procurar))) | ||
607 | - {$listadetemas[] = $texto;} | ||
608 | - | ||
609 | - if(ixml($tema,"TAGS") != "") | 595 | + if(!isset($texto[$tid])) |
610 | { | 596 | { |
611 | - $pp1 = ixml($tema,"TAGS"); | 597 | + $texto[$tid] = array("tid"=>$tid,"nome"=>(ixml($tema,"TNOME")),"link"=>$link,"download"=>$down); |
598 | + $p1 = $this->removeAcentos($procurar); | ||
599 | + $p1 = $this->removeAcentos(htmlentities($p1)); | ||
600 | + $pp1 = $this->removeAcentos(ixml($tema,"TNOME")); | ||
612 | $pp1 = $this->removeAcentos($pp1); | 601 | $pp1 = $this->removeAcentos($pp1); |
613 | - if (stristr($pp1,$p1)) | ||
614 | - {$listadetemas[] = $texto;} | 602 | + $pp1 = $this->removeAcentos(htmlentities($pp1)); |
603 | + if (stristr($pp1,$p1) || stristr(ixml($tema,"TNOME"),htmlentities($procurar))) | ||
604 | + { | ||
605 | + $listadetemas[] = $texto[$tid]; | ||
606 | + } | ||
607 | + else | ||
608 | + if(ixml($tema,"TAGS") != "") | ||
609 | + { | ||
610 | + $pp1 = ixml($tema,"TAGS"); | ||
611 | + $pp1 = $this->removeAcentos($pp1); | ||
612 | + if (stristr($pp1,$p1)) | ||
613 | + {$listadetemas[] = $texto[$tid];} | ||
614 | + } | ||
615 | } | 615 | } |
616 | } | 616 | } |
617 | } | 617 | } |
@@ -619,8 +619,9 @@ $procurar - String que será procurada. | @@ -619,8 +619,9 @@ $procurar - String que será procurada. | ||
619 | { | 619 | { |
620 | $subgrupo[] = array("subgrupo"=>(ixml($sgrupo,"SDTIPO")),"temas"=>$listadetemas); | 620 | $subgrupo[] = array("subgrupo"=>(ixml($sgrupo,"SDTIPO")),"temas"=>$listadetemas); |
621 | } | 621 | } |
622 | + $listadetemas = array(); | ||
622 | } | 623 | } |
623 | - $listadetemas = array(); | 624 | + |
624 | } | 625 | } |
625 | if (count($subgrupo) > 0) | 626 | if (count($subgrupo) > 0) |
626 | { | 627 | { |
@@ -659,21 +660,13 @@ nrss - (opcional) número de registros no rss que serão considerados | @@ -659,21 +660,13 @@ nrss - (opcional) número de registros no rss que serão considerados | ||
659 | } | 660 | } |
660 | } | 661 | } |
661 | $this->xml = array(); | 662 | $this->xml = array(); |
662 | - if (file_exists("../ms_configura.php")) | ||
663 | - {include_once("../ms_configura.php");} | ||
664 | - if ((isset($menutemas)) && ($menutemas != "")) | 663 | + $menus = $this->pegaListaDeMenus(); |
664 | + foreach ($menus as $m) | ||
665 | { | 665 | { |
666 | - foreach ($menutemas as $m) | ||
667 | - { | ||
668 | - $this->xml[] = simplexml_load_file($m["arquivo"]); | ||
669 | - } | ||
670 | - } | ||
671 | - if ($this->xml == "") | ||
672 | - { | ||
673 | - if (file_exists("../menutemas/menutemas.xml")) | ||
674 | - {$this->xml[] = simplexml_load_file("../menutemas/menutemas.xml");} | 666 | + if(isset($m["url"])) |
667 | + $this->xml[] = simplexml_load_file($m["url"]); | ||
675 | else | 668 | else |
676 | - {$this->xml[] = simplexml_load_file("menutemas/menutemas.xml");} | 669 | + $this->xml[] = simplexml_load_file($m["arquivo"]); |
677 | } | 670 | } |
678 | $resultado = array(); | 671 | $resultado = array(); |
679 | $noticias = array(); | 672 | $noticias = array(); |
@@ -722,7 +715,7 @@ nrss - (opcional) número de registros no rss que serão considerados | @@ -722,7 +715,7 @@ nrss - (opcional) número de registros no rss que serão considerados | ||
722 | { | 715 | { |
723 | if($tag != "") | 716 | if($tag != "") |
724 | { | 717 | { |
725 | - if(!$resultado[$tag]) | 718 | + if(!isset($resultado[$tag])) |
726 | { | 719 | { |
727 | $resultado[$tag] = array($tid); | 720 | $resultado[$tag] = array($tid); |
728 | //busca noticias | 721 | //busca noticias |
@@ -735,7 +728,7 @@ nrss - (opcional) número de registros no rss que serão considerados | @@ -735,7 +728,7 @@ nrss - (opcional) número de registros no rss que serão considerados | ||
735 | if(in_array(strtolower($t),$titulo)) | 728 | if(in_array(strtolower($t),$titulo)) |
736 | { | 729 | { |
737 | //echo $noticia["link"]."<br>"; | 730 | //echo $noticia["link"]."<br>"; |
738 | - if(!$noticias[$tag]) | 731 | + if(!isset($noticias[$tag])) |
739 | $noticias[$tag] = array("titulo"=>$noticia["titulo"],"link"=>$noticia["link"]); | 732 | $noticias[$tag] = array("titulo"=>$noticia["titulo"],"link"=>$noticia["link"]); |
740 | else | 733 | else |
741 | $noticias[$tag] = array_merge($noticias[$tag],array("titulo"=>$noticia["titulo"],"link"=>$noticia["link"])); | 734 | $noticias[$tag] = array_merge($noticias[$tag],array("titulo"=>$noticia["titulo"],"link"=>$noticia["link"])); |
@@ -760,7 +753,7 @@ nrss - (opcional) número de registros no rss que serão considerados | @@ -760,7 +753,7 @@ nrss - (opcional) número de registros no rss que serão considerados | ||
760 | foreach(array_keys($resultado) as $k) | 753 | foreach(array_keys($resultado) as $k) |
761 | { | 754 | { |
762 | 755 | ||
763 | - if($noticias[$k]) | 756 | + if(isset($noticias[$k])) |
764 | {$not = array($noticias[$k]);} | 757 | {$not = array($noticias[$k]);} |
765 | else | 758 | else |
766 | {$not = array();} | 759 | {$not = array();} |
@@ -804,6 +797,5 @@ nrss - (opcional) número de registros no rss que serão considerados | @@ -804,6 +797,5 @@ nrss - (opcional) número de registros no rss que serão considerados | ||
804 | //Return FALSE if none of the values from $needle are found in $haystack | 797 | //Return FALSE if none of the values from $needle are found in $haystack |
805 | return FALSE; | 798 | return FALSE; |
806 | } | 799 | } |
807 | - | ||
808 | } | 800 | } |
809 | ?> | 801 | ?> |
810 | \ No newline at end of file | 802 | \ No newline at end of file |
classesphp/mapa_controle.php
@@ -125,19 +125,6 @@ include_once("../pacotes/cpaint/cpaint2.inc.php"); | @@ -125,19 +125,6 @@ include_once("../pacotes/cpaint/cpaint2.inc.php"); | ||
125 | // | 125 | // |
126 | $cp = new cpaint(); | 126 | $cp = new cpaint(); |
127 | $cp->set_data(""); | 127 | $cp->set_data(""); |
128 | -/* | ||
129 | -// | ||
130 | -//grava na sessão o PID do processo PHP | ||
131 | -// | ||
132 | -if ($funcao == "terminaProcesso") | ||
133 | -{ | ||
134 | - $pid = $_SESSION["ultimopid"]; | ||
135 | - @exec("taskkill /f /PID $pid 2>&1"); | ||
136 | - $cp->set_data($pid); | ||
137 | - $cp->return_data(); | ||
138 | -} | ||
139 | -$_SESSION["ultimopid"] = getmypid(); | ||
140 | -*/ | ||
141 | if ($funcao == "criaMapa") | 128 | if ($funcao == "criaMapa") |
142 | { | 129 | { |
143 | session_destroy(); | 130 | session_destroy(); |
@@ -145,7 +132,7 @@ if ($funcao == "criaMapa") | @@ -145,7 +132,7 @@ if ($funcao == "criaMapa") | ||
145 | //primeiro é necessário carregar o ms_configura.php para pegar a variável $locaplic | 132 | //primeiro é necessário carregar o ms_configura.php para pegar a variável $locaplic |
146 | // | 133 | // |
147 | $d = ""; | 134 | $d = ""; |
148 | - if(!file_exists($d."ms_configura.php")) | 135 | + if(!file_exists("ms_configura.php")) |
149 | $d = "../"; | 136 | $d = "../"; |
150 | include_once($d."ms_configura.php"); | 137 | include_once($d."ms_configura.php"); |
151 | // | 138 | // |
@@ -169,6 +156,12 @@ include_once("classe_vermultilayer.php"); | @@ -169,6 +156,12 @@ include_once("classe_vermultilayer.php"); | ||
169 | include_once("classe_estatistica.php"); | 156 | include_once("classe_estatistica.php"); |
170 | include_once("funcoes_gerais.php"); | 157 | include_once("funcoes_gerais.php"); |
171 | // | 158 | // |
159 | +//identifica qual a url do i3geo | ||
160 | +// | ||
161 | +$protocolo = explode("/",$_SERVER['SERVER_PROTOCOL']); | ||
162 | +$protocolo = $protocolo[0] . '://'.$_SERVER['SERVER_NAME'] .":". $_SERVER['SERVER_PORT']; | ||
163 | +$urli3geo = str_replace("/classesphp/mapa_controle.php","",$protocolo.$_SERVER["PHP_SELF"]); | ||
164 | +// | ||
172 | //substitui a string de conexão | 165 | //substitui a string de conexão |
173 | // | 166 | // |
174 | substituiCon($map_file,$postgis_mapa); | 167 | substituiCon($map_file,$postgis_mapa); |
@@ -1623,7 +1616,7 @@ Pega a lista de tags registrados nos menus de temas. | @@ -1623,7 +1616,7 @@ Pega a lista de tags registrados nos menus de temas. | ||
1623 | */ | 1616 | */ |
1624 | case "listaTags": | 1617 | case "listaTags": |
1625 | include_once("classe_menutemas.php"); | 1618 | include_once("classe_menutemas.php"); |
1626 | - $m = new Menutemas($map_file,$perfil,$locsistemas); | 1619 | + $m = new Menutemas($map_file,$perfil,$locsistemas,$locaplic,$menutemas,$urli3geo); |
1627 | $cp->set_data($m->listatags($rss,$nrss)); | 1620 | $cp->set_data($m->listatags($rss,$nrss)); |
1628 | break; | 1621 | break; |
1629 | /* | 1622 | /* |
@@ -1634,10 +1627,9 @@ Pega a lista de menus para incluir na guia adiciona. | @@ -1634,10 +1627,9 @@ Pega a lista de menus para incluir na guia adiciona. | ||
1634 | Parameters: | 1627 | Parameters: |
1635 | */ | 1628 | */ |
1636 | case "pegalistademenus": | 1629 | case "pegalistademenus": |
1637 | - $menutemas = ""; | ||
1638 | - if (file_exists("../ms_configura.php")) | ||
1639 | - {include_once("../ms_configura.php");} | ||
1640 | - $cp->set_data($menutemas); | 1630 | + include_once("classe_menutemas.php"); |
1631 | + $m = new Menutemas($map_file,$perfil,$locsistemas,$locaplic,$menutemas,$urli3geo); | ||
1632 | + $cp->set_data($m->pegaListaDeMenus()); | ||
1641 | break; | 1633 | break; |
1642 | /* | 1634 | /* |
1643 | Property: pegalistadegrupos | 1635 | Property: pegalistadegrupos |
@@ -1660,11 +1652,11 @@ Include: | @@ -1660,11 +1652,11 @@ Include: | ||
1660 | if (file_exists("../ms_configura.php")) | 1652 | if (file_exists("../ms_configura.php")) |
1661 | {include_once("../ms_configura.php");} | 1653 | {include_once("../ms_configura.php");} |
1662 | include_once("classe_menutemas.php"); | 1654 | include_once("classe_menutemas.php"); |
1663 | - $m = new Menutemas($map_file,$perfil,$locsistemas); | 1655 | + $m = new Menutemas($map_file,$perfil,$locsistemas,$locaplic,$menutemas,$urli3geo); |
1664 | if(!isset($idmenu)){$idmenu="";} | 1656 | if(!isset($idmenu)){$idmenu="";} |
1665 | if(!isset($listasistemas)){$listasistemas="nao";} | 1657 | if(!isset($listasistemas)){$listasistemas="nao";} |
1666 | - if(!isset($listasgrupos)){$listasgrupos="sim";} | ||
1667 | - $cp->set_data(array("grupos"=>$m->pegaListaDeGrupos($idmenu,$listasistemas,$listasgrupos,$menutemas))); | 1658 | + if(!isset($listasgrupos)){$listasgrupos="nao";} |
1659 | + $cp->set_data(array("grupos"=>$m->pegaListaDeGrupos($idmenu,$listasistemas,$listasgrupos))); | ||
1668 | break; | 1660 | break; |
1669 | /* | 1661 | /* |
1670 | Property: pegalistadeSubgrupos | 1662 | Property: pegalistadeSubgrupos |
@@ -1676,7 +1668,7 @@ Include: | @@ -1676,7 +1668,7 @@ Include: | ||
1676 | */ | 1668 | */ |
1677 | case "pegalistadeSubgrupos": | 1669 | case "pegalistadeSubgrupos": |
1678 | include_once("classe_menutemas.php"); | 1670 | include_once("classe_menutemas.php"); |
1679 | - $m = new Menutemas($map_file,$perfil,$locsistemas); | 1671 | + $m = new Menutemas($map_file,$perfil,$locsistemas,$locaplic,$menutemas,$urli3geo); |
1680 | $cp->set_data($m->pegaListaDeSubGrupos($grupo,$idmenu)); | 1672 | $cp->set_data($m->pegaListaDeSubGrupos($grupo,$idmenu)); |
1681 | break; | 1673 | break; |
1682 | /* | 1674 | /* |
@@ -1689,7 +1681,7 @@ Include: | @@ -1689,7 +1681,7 @@ Include: | ||
1689 | */ | 1681 | */ |
1690 | case "pegalistadetemas": | 1682 | case "pegalistadetemas": |
1691 | include_once("classe_menutemas.php"); | 1683 | include_once("classe_menutemas.php"); |
1692 | - $m = new Menutemas($map_file,$perfil,$locsistemas); | 1684 | + $m = new Menutemas($map_file,$perfil,$locsistemas,$locaplic,$menutemas,$urli3geo); |
1693 | $cp->set_data(array("temas"=>$m->pegaListaDeTemas($grupo,$subgrupo,$idmenu))); | 1685 | $cp->set_data(array("temas"=>$m->pegaListaDeTemas($grupo,$subgrupo,$idmenu))); |
1694 | break; | 1686 | break; |
1695 | /* | 1687 | /* |
@@ -1702,7 +1694,7 @@ Include: | @@ -1702,7 +1694,7 @@ Include: | ||
1702 | */ | 1694 | */ |
1703 | case "procurartemas": | 1695 | case "procurartemas": |
1704 | include_once("classe_menutemas.php"); | 1696 | include_once("classe_menutemas.php"); |
1705 | - $m = new Menutemas($map_file,$perfil); | 1697 | + $m = new Menutemas($map_file,$perfil,$locsistemas,$locaplic,$menutemas,$urli3geo); |
1706 | $cp->set_data($m->procurartemas($procurar)); | 1698 | $cp->set_data($m->procurartemas($procurar)); |
1707 | break; | 1699 | break; |
1708 | /* | 1700 | /* |
@@ -1717,7 +1709,7 @@ Include: | @@ -1717,7 +1709,7 @@ Include: | ||
1717 | */ | 1709 | */ |
1718 | case "pegaMapas": | 1710 | case "pegaMapas": |
1719 | include_once("classe_menutemas.php"); | 1711 | include_once("classe_menutemas.php"); |
1720 | - $m = new Menutemas($map_file,$perfil); | 1712 | + $m = new Menutemas($map_file,$perfil,$locsistemas,$locaplic,$menutemas,$urli3geo); |
1721 | $cp->set_data($m->pegaListaDeMapas($locmapas)); | 1713 | $cp->set_data($m->pegaListaDeMapas($locmapas)); |
1722 | break; | 1714 | break; |
1723 | /* | 1715 | /* |
classesphp/mapa_inicia.php
@@ -87,6 +87,17 @@ Se $expoeMapfile = "nao", o nome do mapfile não é retornado | @@ -87,6 +87,17 @@ Se $expoeMapfile = "nao", o nome do mapfile não é retornado | ||
87 | function iniciaMapa() | 87 | function iniciaMapa() |
88 | { | 88 | { |
89 | global $tituloInstituicao,$tempo,$navegadoresLocais,$locaplic,$cp,$embedLegenda,$map_file,$mapext,$w,$h,$locsistemas,$locidentifica,$R_path,$locmapas,$locmapserv,$postgis_con,$utilizacgi,$expoeMapfile; | 89 | global $tituloInstituicao,$tempo,$navegadoresLocais,$locaplic,$cp,$embedLegenda,$map_file,$mapext,$w,$h,$locsistemas,$locidentifica,$R_path,$locmapas,$locmapserv,$postgis_con,$utilizacgi,$expoeMapfile; |
90 | + // | ||
91 | + //pega o xml com os sietmas para identificação | ||
92 | + // | ||
93 | + $protocolo = explode("/",$_SERVER['SERVER_PROTOCOL']); | ||
94 | + $protocolo = $protocolo[0]; | ||
95 | + $protocolo = $protocolo . '://'.$_SERVER['SERVER_NAME'] .":". $_SERVER['SERVER_PORT']; | ||
96 | + $urli3geo = str_replace("/classesphp/mapa_controle.php","",$protocolo.$_SERVER["PHP_SELF"]); | ||
97 | + if($locidentifica == "") | ||
98 | + { | ||
99 | + $locidentifica = $urli3geo."/admin/xmlidentifica.php"; | ||
100 | + } | ||
90 | if (!file_exists($locaplic)) | 101 | if (!file_exists($locaplic)) |
91 | {$cp->set_data("erro. $locaplic nao existe (variavel locaplic - corrija o ms_configura.php)");return;} | 102 | {$cp->set_data("erro. $locaplic nao existe (variavel locaplic - corrija o ms_configura.php)");return;} |
92 | if (!file_exists($map_file)) | 103 | if (!file_exists($map_file)) |
@@ -127,8 +138,6 @@ function iniciaMapa() | @@ -127,8 +138,6 @@ function iniciaMapa() | ||
127 | } | 138 | } |
128 | } | 139 | } |
129 | } | 140 | } |
130 | - //if($utilizacgi == "sim") | ||
131 | - //{$m->ligaDesligaTemas("","todos");} | ||
132 | // | 141 | // |
133 | //cuidado ao mexer aqui | 142 | //cuidado ao mexer aqui |
134 | //o mapa precisa ser salvo para registrar a extensão geográfica | 143 | //o mapa precisa ser salvo para registrar a extensão geográfica |
datadownload.htm
@@ -56,7 +56,7 @@ O formato "shape file" &eacute; composto por tr&ecirc;s arquivos (shp, shx e dbf | @@ -56,7 +56,7 @@ O formato "shape file" &eacute; composto por tr&ecirc;s arquivos (shp, shx e dbf | ||
56 | </body> | 56 | </body> |
57 | <script> | 57 | <script> |
58 | /* | 58 | /* |
59 | -Title: Aplicativo para download de dados | 59 | +Title: datadownload.htm |
60 | 60 | ||
61 | Esse aplicativo permite ao usuário fazer o download de arquivos no formato shapefile. | 61 | Esse aplicativo permite ao usuário fazer o download de arquivos no formato shapefile. |
62 | 62 |
kml.php
@@ -28,18 +28,39 @@ Free Software Foundation, Inc., no endereço | @@ -28,18 +28,39 @@ Free Software Foundation, Inc., no endereço | ||
28 | 28 | ||
29 | File: i3geo/kml.php | 29 | File: i3geo/kml.php |
30 | 30 | ||
31 | +Parameter: | ||
32 | + | ||
33 | +perfil - perfis separados por espaços que indicam que menus serão utilizados | ||
31 | */ | 34 | */ |
32 | error_reporting(0); | 35 | error_reporting(0); |
33 | include_once ("classesphp/carrega_ext.php"); | 36 | include_once ("classesphp/carrega_ext.php"); |
37 | +include_once ("classesphp/classe_menutemas.php"); | ||
34 | include_once ("ms_configura.php"); | 38 | include_once ("ms_configura.php"); |
35 | echo '<?xml version="1.0" encoding="UTF-8"?>'; | 39 | echo '<?xml version="1.0" encoding="UTF-8"?>'; |
36 | echo "<kml xmlns='http://earth.google.com/kml/2.2'>\n"; | 40 | echo "<kml xmlns='http://earth.google.com/kml/2.2'>\n"; |
41 | +// | ||
42 | +//pega os endereços para compor a url de chamada do gerador de web services | ||
43 | +//ogc.php | ||
44 | +// | ||
37 | $protocolo = explode("/",$_SERVER['SERVER_PROTOCOL']); | 45 | $protocolo = explode("/",$_SERVER['SERVER_PROTOCOL']); |
38 | $protocolo = $protocolo[0]; | 46 | $protocolo = $protocolo[0]; |
39 | $protocolo1 = strtolower($protocolo . '://'.$_SERVER['SERVER_NAME']); | 47 | $protocolo1 = strtolower($protocolo . '://'.$_SERVER['SERVER_NAME']); |
40 | $protocolo = $protocolo . '://'.$_SERVER['SERVER_NAME'] .":". $_SERVER['SERVER_PORT']; | 48 | $protocolo = $protocolo . '://'.$_SERVER['SERVER_NAME'] .":". $_SERVER['SERVER_PORT']; |
49 | +$urli3geo = str_replace("/kml.php","",$protocolo.$_SERVER["PHP_SELF"]); | ||
50 | +// | ||
51 | +//pega a lista de menus que será processada | ||
52 | +//se a variável definida em ms_configura for = "", a busca é feita | ||
53 | +//pelo método Menutemas | ||
54 | +// | ||
55 | +if(!isset($perfil)){$perfil = "";} | ||
41 | if ($menutemas == "") | 56 | if ($menutemas == "") |
42 | -{$menus[] = "menutemas/menutemas.xml";} | 57 | +{ |
58 | + $m = new Menutemas("",$perfil,$locsistemas,$locaplic,"",$urli3geo); | ||
59 | + foreach($m->pegaListaDeMenus() as $menu) | ||
60 | + { | ||
61 | + $menus[] = $menu["url"]; | ||
62 | + } | ||
63 | +} | ||
43 | else | 64 | else |
44 | { | 65 | { |
45 | foreach($menutemas as $m) | 66 | foreach($menutemas as $m) |
@@ -49,7 +70,9 @@ else | @@ -49,7 +70,9 @@ else | ||
49 | } | 70 | } |
50 | if(!isset($menus)) | 71 | if(!isset($menus)) |
51 | $menus = array("/opt/www/html/i3geo/menutemas/menutemas.xml"); | 72 | $menus = array("/opt/www/html/i3geo/menutemas/menutemas.xml"); |
52 | - | 73 | +// |
74 | +//monta o xml | ||
75 | +// | ||
53 | echo "<Document><name>Menu i3geo</name><open>0</open><description></description><visibility>0</visibility>\n"; | 76 | echo "<Document><name>Menu i3geo</name><open>0</open><description></description><visibility>0</visibility>\n"; |
54 | foreach ($menus as $menu) | 77 | foreach ($menus as $menu) |
55 | { | 78 | { |
@@ -59,14 +82,14 @@ foreach ($menus as $menu) | @@ -59,14 +82,14 @@ foreach ($menus as $menu) | ||
59 | $nome = mb_convert_encoding($grupo->GTIPO,"auto","auto"); | 82 | $nome = mb_convert_encoding($grupo->GTIPO,"auto","auto"); |
60 | $desc = mb_convert_encoding($grupo->DTIPO,"auto","auto"); | 83 | $desc = mb_convert_encoding($grupo->DTIPO,"auto","auto"); |
61 | echo "<Folder>\n"; | 84 | echo "<Folder>\n"; |
62 | - echo "<name>$nome</name>\n"; | ||
63 | - echo "<description>$desc</description>\n"; | 85 | + echo "<name>".str_replace("&","&",$nome)."</name>\n"; |
86 | + echo "<description>".str_replace("&","&",$desc)."</description>\n"; | ||
64 | echo "<open>0</open><visibility>0</visibility>\n"; | 87 | echo "<open>0</open><visibility>0</visibility>\n"; |
65 | foreach($grupo->SGRUPO as $sgrupo) | 88 | foreach($grupo->SGRUPO as $sgrupo) |
66 | { | 89 | { |
67 | echo "<Folder>\n"; | 90 | echo "<Folder>\n"; |
68 | $nome = mb_convert_encoding($sgrupo->SDTIPO,"auto","auto"); | 91 | $nome = mb_convert_encoding($sgrupo->SDTIPO,"auto","auto"); |
69 | - echo "<name>$nome</name>\n"; | 92 | + echo "<name>".str_replace("&","&",$nome)."</name>\n"; |
70 | echo "<description></description>\n"; | 93 | echo "<description></description>\n"; |
71 | echo "<open>0</open><visibility>0</visibility>\n"; | 94 | echo "<open>0</open><visibility>0</visibility>\n"; |
72 | foreach($sgrupo->TEMA as $tema) | 95 | foreach($sgrupo->TEMA as $tema) |
@@ -86,9 +109,9 @@ foreach ($menus as $menu) | @@ -86,9 +109,9 @@ foreach ($menus as $menu) | ||
86 | if(strtolower($kml) != "nao" && strtolower($tipoa) != "wms") | 109 | if(strtolower($kml) != "nao" && strtolower($tipoa) != "wms") |
87 | { | 110 | { |
88 | echo "<GroundOverlay>\n"; | 111 | echo "<GroundOverlay>\n"; |
89 | - echo "<name>$nome</name>\n"; | ||
90 | - $fonte = "<a href='$fonte' >Fonte </a>"; | ||
91 | - $legenda = "<a href='$protocolo1/i3geo/ogc.php?tema=$id&layer=$id&request=getlegendgraphic&service=wms&format=image/jpeg' >Legenda </a>"; | 112 | + echo "<name>".str_replace("&","&",$nome)."</name>\n"; |
113 | + $fonte = "<a href='$fonte' >Fonte </a>"; | ||
114 | + $legenda = "<a href='$urli3geo/ogc.php?tema=$id&layer=$id&request=getlegendgraphic&service=wms&format=image/jpeg' >Legenda </a>"; | ||
92 | echo "<description><![CDATA[".$fonte.$legenda.$desc."]]></description>\n"; | 115 | echo "<description><![CDATA[".$fonte.$legenda.$desc."]]></description>\n"; |
93 | echo "<visibility>0</visibility>\n"; | 116 | echo "<visibility>0</visibility>\n"; |
94 | echo "<Icon>\n"; | 117 | echo "<Icon>\n"; |
menutemas/admin.db
No preview for this file type
mobile/adicionatema.php
@@ -71,9 +71,15 @@ h1 | @@ -71,9 +71,15 @@ h1 | ||
71 | </form> | 71 | </form> |
72 | <input type='button' value='retorna' style='cursor:pointer;' onclick='retorno()' /><br> | 72 | <input type='button' value='retorna' style='cursor:pointer;' onclick='retorno()' /><br> |
73 | <?php | 73 | <?php |
74 | +// | ||
75 | +//identifica qual a url do i3geo | ||
76 | +// | ||
77 | +$protocolo = explode("/",$_SERVER['SERVER_PROTOCOL']); | ||
78 | +$protocolo = $protocolo[0] . '://'.$_SERVER['SERVER_NAME'] .":". $_SERVER['SERVER_PORT']; | ||
79 | +$urli3geo = str_replace("/mobile/adicionatema.php","",$protocolo.$_SERVER["PHP_SELF"]); | ||
74 | if ($tipo == "listatemas") | 80 | if ($tipo == "listatemas") |
75 | { | 81 | { |
76 | - $m = new Menutemas($tmpfname,"","nao"); | 82 | + $m = new Menutemas("","",$locsistemas,$locaplic,"",$urli3geo); |
77 | $r = $m->pegaListaDeTemas($grupo,$subgrupo,""); | 83 | $r = $m->pegaListaDeTemas($grupo,$subgrupo,""); |
78 | echo "<h1>Escolha o tema:</h1>"; | 84 | echo "<h1>Escolha o tema:</h1>"; |
79 | foreach($r as $l) | 85 | foreach($r as $l) |
@@ -92,8 +98,8 @@ if($tipo == "adicionatema") | @@ -92,8 +98,8 @@ if($tipo == "adicionatema") | ||
92 | } | 98 | } |
93 | if ($tipo == "adicionar") | 99 | if ($tipo == "adicionar") |
94 | { | 100 | { |
95 | - $m = new Menutemas($tmpfname,"",$locsistemas); | ||
96 | - $r = $m->pegaListaDeGrupos("","nao"); | 101 | + $m = new Menutemas("","",$locsistemas,$locaplic,$menutemas,$urli3geo); |
102 | + $r = $m->pegaListaDeGrupos("","","sim"); | ||
97 | echo "<h1>Escolha o sub-grupo:</h1>"; | 103 | echo "<h1>Escolha o sub-grupo:</h1>"; |
98 | for($rid=0;$rid<count($r);$rid++) | 104 | for($rid=0;$rid<count($r);$rid++) |
99 | { | 105 | { |
ms_configura.default
@@ -43,7 +43,7 @@ Free Software Foundation, Inc., no endereço | @@ -43,7 +43,7 @@ Free Software Foundation, Inc., no endereço | ||
43 | 43 | ||
44 | Mensagem de inicialização mostrada pelo programa ms_criamapa.php | 44 | Mensagem de inicialização mostrada pelo programa ms_criamapa.php |
45 | */ | 45 | */ |
46 | -$mensagemInicia = "I3Geo versão 4.0"; | 46 | +$mensagemInicia = "I3Geo versão 4.1"; |
47 | /* | 47 | /* |
48 | Variable: $tituloInstituicao | 48 | Variable: $tituloInstituicao |
49 | 49 | ||
@@ -136,7 +136,7 @@ if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) | @@ -136,7 +136,7 @@ if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) | ||
136 | 136 | ||
137 | Veja a documentação específica do arquivo sistemas.xml para maiores detalhes. | 137 | Veja a documentação específica do arquivo sistemas.xml para maiores detalhes. |
138 | */ | 138 | */ |
139 | - $locsistemas = "http://localhost/i3geo/menutemas/sistemas.xml"; | 139 | + $locsistemas = "../menutemas/sistemas.xml"; |
140 | /* | 140 | /* |
141 | Variable: $locidentifica | 141 | Variable: $locidentifica |
142 | 142 | ||
@@ -162,7 +162,7 @@ if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) | @@ -162,7 +162,7 @@ if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) | ||
162 | 162 | ||
163 | Veja a documentação específica do arquivo mapas.xml para maiores detalhes. | 163 | Veja a documentação específica do arquivo mapas.xml para maiores detalhes. |
164 | */ | 164 | */ |
165 | - $locmapas = "http://localhost/i3geo/menutemas/mapas.xml"; | 165 | + $locmapas = "../menutemas/mapas.xml"; |
166 | /* | 166 | /* |
167 | Variable: $R_path | 167 | Variable: $R_path |
168 | 168 | ||
@@ -222,11 +222,11 @@ if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) | @@ -222,11 +222,11 @@ if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) | ||
222 | array("idmenu"=>2,"arquivo"=>"http://localhost/i3geo/menutemas/menutemas.xml","status"=>"aberto") | 222 | array("idmenu"=>2,"arquivo"=>"http://localhost/i3geo/menutemas/menutemas.xml","status"=>"aberto") |
223 | ); | 223 | ); |
224 | 224 | ||
225 | - Para usar o menu default, utilize apenas $menutemas = ""; | 225 | + Para usar o menu default, utilize apenas $menutemas = "";, nesse caso, os menus serão obtidos do banco de dados de administração. |
226 | */ | 226 | */ |
227 | $menutemas = array( | 227 | $menutemas = array( |
228 | - array("idmenu"=>"GEOPR","arquivo"=>"C:/ms4w/Apache/htdocs/i3geo/menutemas/geopr.xml","status"=>"fechado"), | ||
229 | - array("idmenu"=>"i3Geo","arquivo"=>"C:/ms4w/Apache/htdocs/i3geo/menutemas/menutemas.xml","status"=>"aberto") | 228 | + array("idmenu"=>"GEOPR","arquivo"=>"http://localhost/i3geo/admin/xmlmenutemas.php?id_menu=2","status"=>"fechado"), |
229 | + array("idmenu"=>"i3Geo","arquivo"=>"http://localhost/i3geo/admin/xmlmenutemas.php?id_menu=1","status"=>"aberto") | ||
230 | ); | 230 | ); |
231 | /* | 231 | /* |
232 | Variable: $utilizacgi | 232 | Variable: $utilizacgi |
@@ -277,7 +277,7 @@ if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) | @@ -277,7 +277,7 @@ if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) | ||
277 | O programa PHP que estabelece a conexão deve retornar objetos com nomes padronizados. Veja o arquivo i3geo/admin/conexao.php para maiores detalhes. | 277 | O programa PHP que estabelece a conexão deve retornar objetos com nomes padronizados. Veja o arquivo i3geo/admin/conexao.php para maiores detalhes. |
278 | 278 | ||
279 | */ | 279 | */ |
280 | - $conexaoadmin = ""; | 280 | + $conexaoadmin = ""; //$locaplic."/admin/conexaomma.php"; |
281 | } | 281 | } |
282 | else //se for linux | 282 | else //se for linux |
283 | { | 283 | { |
@@ -301,6 +301,6 @@ else //se for linux | @@ -301,6 +301,6 @@ else //se for linux | ||
301 | $utilizacgi = "nao"; | 301 | $utilizacgi = "nao"; |
302 | $atlasxml = "../menutemas/atlas.xml"; | 302 | $atlasxml = "../menutemas/atlas.xml"; |
303 | $expoeMapfile = "sim"; | 303 | $expoeMapfile = "sim"; |
304 | - $conexaoadmin = $locaplic."/admin/conexao.php"; | 304 | + $conexaoadmin = "";//$locaplic."/admin/conexaomma.php"; |
305 | } | 305 | } |
306 | ?> | 306 | ?> |
ms_configura.php
@@ -136,7 +136,7 @@ if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) | @@ -136,7 +136,7 @@ if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) | ||
136 | 136 | ||
137 | Veja a documentação específica do arquivo sistemas.xml para maiores detalhes. | 137 | Veja a documentação específica do arquivo sistemas.xml para maiores detalhes. |
138 | */ | 138 | */ |
139 | - $locsistemas = "../menutemas/sistemas.xml"; | 139 | + $locsistemas = $locaplic."/menutemas/sistemas.xml"; |
140 | /* | 140 | /* |
141 | Variable: $locidentifica | 141 | Variable: $locidentifica |
142 | 142 | ||
@@ -149,8 +149,11 @@ if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) | @@ -149,8 +149,11 @@ if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) | ||
149 | Por meio dessa lista pode-se disparar programas PHP que executam operações especiais para a obtenção de dados com base em um par de coordenadas xy. | 149 | Por meio dessa lista pode-se disparar programas PHP que executam operações especiais para a obtenção de dados com base em um par de coordenadas xy. |
150 | 150 | ||
151 | Veja a documentação específica do arquivo identifica.xml para maiores detalhes. | 151 | Veja a documentação específica do arquivo identifica.xml para maiores detalhes. |
152 | + | ||
153 | + Para usar as funções default, utilize apenas $menutemas = ""; nesse caso, as funções serão obtidas do banco de dados de administração. | ||
154 | + | ||
152 | */ | 155 | */ |
153 | - $locidentifica = "../../menutemas/identifica.xml"; | 156 | + $locidentifica = ""; |
154 | /* | 157 | /* |
155 | Variable: $locmapas | 158 | Variable: $locmapas |
156 | 159 | ||
@@ -218,16 +221,13 @@ if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) | @@ -218,16 +221,13 @@ if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) | ||
218 | Example: | 221 | Example: |
219 | 222 | ||
220 | $menutemas = array( | 223 | $menutemas = array( |
221 | - array("idmenu"=>1,"arquivo"=>"http://10.1.1.34/i3geo/menutemas/menutemas.xml","status"=>"fechado"), | ||
222 | - array("idmenu"=>2,"arquivo"=>"http://localhost/i3geo/menutemas/menutemas.xml","status"=>"aberto") | 224 | + array("idmenu"=>"GEOPR","arquivo"=>"http://localhost/i3geo/admin/xmlmenutemas.php?id_menu=2","status"=>"fechado"), |
225 | + array("idmenu"=>"i3Geo","arquivo"=>"http://localhost/i3geo/admin/xmlmenutemas.php?id_menu=1","status"=>"aberto") | ||
223 | ); | 226 | ); |
224 | 227 | ||
225 | Para usar o menu default, utilize apenas $menutemas = "";, nesse caso, os menus serão obtidos do banco de dados de administração. | 228 | Para usar o menu default, utilize apenas $menutemas = "";, nesse caso, os menus serão obtidos do banco de dados de administração. |
226 | */ | 229 | */ |
227 | - $menutemas = array( | ||
228 | - array("idmenu"=>"GEOPR","arquivo"=>"http://localhost/i3geo/admin/xmlmenutemas.php?id_menu=2","status"=>"fechado"), | ||
229 | - array("idmenu"=>"i3Geo","arquivo"=>"http://localhost/i3geo/admin/xmlmenutemas.php?id_menu=1","status"=>"aberto") | ||
230 | - ); | 230 | + $menutemas = ""; |
231 | /* | 231 | /* |
232 | Variable: $utilizacgi | 232 | Variable: $utilizacgi |
233 | 233 | ||
@@ -248,9 +248,9 @@ if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) | @@ -248,9 +248,9 @@ if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) | ||
248 | 248 | ||
249 | Indica o nome do arquivo xml que será utilizado na interface Atlas do i3geo. | 249 | Indica o nome do arquivo xml que será utilizado na interface Atlas do i3geo. |
250 | 250 | ||
251 | - Pode ser utilizado o caminho relativo, tendo como base i3geo/diretorio | 251 | + Para usar o menu default, utilize apenas $atlasxml = "";, nesse caso, os Atlas serão obtidos do banco de dados de administração. |
252 | */ | 252 | */ |
253 | - $atlasxml = "../menutemas/atlas.xml"; | 253 | + $atlasxml = ""; |
254 | /* | 254 | /* |
255 | Variable: $expoeMapfile | 255 | Variable: $expoeMapfile |
256 | 256 | ||
@@ -264,7 +264,7 @@ if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) | @@ -264,7 +264,7 @@ if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) | ||
264 | 264 | ||
265 | Arquivo PHP que define a string de conexão (PDO) com o banco de dados administrativo. | 265 | Arquivo PHP que define a string de conexão (PDO) com o banco de dados administrativo. |
266 | 266 | ||
267 | - Esse arquivo é incluído no programa i3geo/admin/conexao.php | 267 | + Esse arquivo é incluído no programa i3geo/admin/conexao.php e deve ser definido com o caminho completo. |
268 | 268 | ||
269 | O banco de dados administrativo é utilizado para definir coisas como a árvore de temas, árvore de mapas, etc. | 269 | O banco de dados administrativo é utilizado para definir coisas como a árvore de temas, árvore de mapas, etc. |
270 | 270 |
ogc.php
@@ -43,6 +43,8 @@ intervalo - valor inicial e final com o número de temas que serão mostrados no s | @@ -43,6 +43,8 @@ intervalo - valor inicial e final com o número de temas que serão mostrados no s | ||
43 | 43 | ||
44 | legenda - mostra a legenda no corpo do mapa sim|nao | 44 | legenda - mostra a legenda no corpo do mapa sim|nao |
45 | 45 | ||
46 | +perfil - perfil utilizado para escolher os menus | ||
47 | + | ||
46 | About: Exemplos | 48 | About: Exemplos |
47 | 49 | ||
48 | ogc.php?lista=temas | 50 | ogc.php?lista=temas |
@@ -65,41 +67,63 @@ if (!function_exists('ms_GetVersion')) | @@ -65,41 +67,63 @@ if (!function_exists('ms_GetVersion')) | ||
65 | require_once("classesphp/carrega_ext.php"); | 67 | require_once("classesphp/carrega_ext.php"); |
66 | include("ms_configura.php"); | 68 | include("ms_configura.php"); |
67 | include("classesphp/pega_variaveis.php"); | 69 | include("classesphp/pega_variaveis.php"); |
70 | +include("classesphp/classe_menutemas.php"); | ||
71 | +// | ||
72 | +//pega os endereços para compor a url de chamada do gerador de web services | ||
73 | +//ogc.php | ||
74 | +// | ||
75 | +$protocolo = explode("/",$_SERVER['SERVER_PROTOCOL']); | ||
76 | +$protocolo = $protocolo[0]; | ||
77 | +$protocolo1 = strtolower($protocolo . '://'.$_SERVER['SERVER_NAME']); | ||
78 | +$protocolo = $protocolo . '://'.$_SERVER['SERVER_NAME'] .":". $_SERVER['SERVER_PORT']; | ||
79 | +$urli3geo = str_replace("/ogc.php","",$protocolo.$_SERVER["PHP_SELF"]); | ||
80 | +// | ||
81 | +//pega a lista de menus que será processada | ||
82 | +//se a variável definida em ms_configura for = "", a busca é feita | ||
83 | +//pelo método Menutemas | ||
84 | +// | ||
85 | +if(!isset($perfil)){$perfil = "";} | ||
86 | +if ($menutemas == "") | ||
87 | +{ | ||
88 | + $m = new Menutemas("",$perfil,$locsistemas,$locaplic,"",$urli3geo); | ||
89 | + foreach($m->pegaListaDeMenus() as $menu) | ||
90 | + { | ||
91 | + $menus[] = $menu["url"]; | ||
92 | + } | ||
93 | +} | ||
94 | +else | ||
95 | +{ | ||
96 | + foreach($menutemas as $m) | ||
97 | + { | ||
98 | + $menus[] = $m["arquivo"]; | ||
99 | + } | ||
100 | +} | ||
101 | +if(!isset($menus)) | ||
102 | +$menus = array("/opt/www/html/i3geo/menutemas/menutemas.xml"); | ||
68 | //pega a lista de grupos | 103 | //pega a lista de grupos |
69 | if ($lista == "temas") | 104 | if ($lista == "temas") |
70 | { | 105 | { |
71 | - $xml = simplexml_load_file("menutemas/menutemas.xml"); | ||
72 | echo "<b>Lista de temas por grupos e subgrupos (os códigos dos temas estão em vermelho)</b><br><br>"; | 106 | echo "<b>Lista de temas por grupos e subgrupos (os códigos dos temas estão em vermelho)</b><br><br>"; |
73 | - foreach($xml->GRUPO as $grupo) | 107 | + foreach ($menus as $menu) |
74 | { | 108 | { |
75 | - echo "<br><b>".mb_convert_encoding($grupo->GTIPO,"HTML-ENTITIES","auto")."</b><br>"; | ||
76 | - foreach($grupo->SGRUPO as $sgrupo) | 109 | + $xml = simplexml_load_file($menu); |
110 | + foreach($xml->GRUPO as $grupo) | ||
77 | { | 111 | { |
78 | - echo " ".mb_convert_encoding($sgrupo->SDTIPO,"HTML-ENTITIES","auto")."<br>"; | ||
79 | - //echo 'kml_tema,ogc_tema,download_tema,tags_tema,tipoa_tema,link_tema,desc_tema,nome_tema,codigo_tema<br>'; | ||
80 | - | ||
81 | - foreach($sgrupo->TEMA as $tema) | 112 | + echo "<br><b>".mb_convert_encoding($grupo->GTIPO,"HTML-ENTITIES","auto")."</b><br>"; |
113 | + foreach($grupo->SGRUPO as $sgrupo) | ||
82 | { | 114 | { |
83 | - if (mb_convert_encoding($tema->OGC,"HTML-ENTITIES","auto") == "") | 115 | + echo " ".mb_convert_encoding($sgrupo->SDTIPO,"HTML-ENTITIES","auto")."<br>"; |
116 | + foreach($sgrupo->TEMA as $tema) | ||
84 | { | 117 | { |
85 | - | ||
86 | - echo " "; | ||
87 | - echo "<span style=color:red >".mb_convert_encoding($tema->TID,"HTML-ENTITIES","auto")."</span>"; | ||
88 | - echo " - ".mb_convert_encoding($tema->TNOME,"HTML-ENTITIES","auto")." - "; | ||
89 | - if (mb_convert_encoding($tema->TLINK,"HTML-ENTITIES","auto") != "") | ||
90 | - {echo "<a href='".mb_convert_encoding($tema->TLINK,"HTML-ENTITIES","auto")."' >fonte</a>";} | ||
91 | - echo "<br>"; | ||
92 | - /* | ||
93 | - echo '"'.($tema->KML).'",'; | ||
94 | - echo '"'.$tema->OGC.'",'; | ||
95 | - echo '"'.$tema->DOWNLOAD.'",'; | ||
96 | - echo '"'.mb_convert_encoding($tema->TAGS,"HTML-ENTITIES","auto").'",'; | ||
97 | - echo '"'.$tema->TIPOA.'",'; | ||
98 | - echo '"'.$tema->TLINK.'",'; | ||
99 | - echo '"'.mb_convert_encoding($tema->TDESC,"HTML-ENTITIES","auto").'",'; | ||
100 | - echo '"'.mb_convert_encoding($tema->TNOME,"HTML-ENTITIES","auto").'",'; | ||
101 | - echo '"'.$tema->TID.'"<br>'; | ||
102 | - */ | 118 | + if (mb_convert_encoding($tema->OGC,"HTML-ENTITIES","auto") == "") |
119 | + { | ||
120 | + echo " "; | ||
121 | + echo "<span style=color:red >".mb_convert_encoding($tema->TID,"HTML-ENTITIES","auto")."</span>"; | ||
122 | + echo " - ".mb_convert_encoding($tema->TNOME,"HTML-ENTITIES","auto")." - "; | ||
123 | + if (mb_convert_encoding($tema->TLINK,"HTML-ENTITIES","auto") != "") | ||
124 | + {echo "<a href='".mb_convert_encoding($tema->TLINK,"HTML-ENTITIES","auto")."' >fonte</a>";} | ||
125 | + echo "<br>"; | ||
126 | + } | ||
103 | } | 127 | } |
104 | } | 128 | } |
105 | } | 129 | } |
@@ -205,51 +229,60 @@ else | @@ -205,51 +229,60 @@ else | ||
205 | { | 229 | { |
206 | $conta = 0; | 230 | $conta = 0; |
207 | $int = explode(",",$intervalo); | 231 | $int = explode(",",$intervalo); |
208 | - $xml = simplexml_load_file("menutemas/menutemas.xml"); | ||
209 | - foreach($xml->GRUPO as $grupo) | ||
210 | - { | ||
211 | - foreach($grupo->SGRUPO as $sgrupo) | 232 | + foreach ($menus as $menu) |
233 | + { | ||
234 | + $xml = simplexml_load_file($menu); | ||
235 | + foreach($xml->GRUPO as $grupo) | ||
212 | { | 236 | { |
213 | - foreach($sgrupo->TEMA as $tm) | 237 | + foreach($grupo->SGRUPO as $sgrupo) |
214 | { | 238 | { |
215 | - if (iXml($tm->OGC,"OGC") == "") | 239 | + foreach($sgrupo->TEMA as $tm) |
216 | { | 240 | { |
217 | - if (@ms_newMapobj("temas/".(mb_convert_encoding($tm->TID,"HTML-ENTITIES","auto")).".map")) | 241 | + if (mb_convert_encoding($tm->OGC,"HTML-ENTITIES","auto") == "") |
218 | { | 242 | { |
219 | - $nmap = ms_newMapobj("temas/".(mb_convert_encoding($tm->TID,"HTML-ENTITIES","auto")).".map"); | ||
220 | - $ts = $nmap->getalllayernames(); | ||
221 | - if (count($ts) == 1) | ||
222 | - { | ||
223 | - foreach ($ts as $t) | ||
224 | - { | ||
225 | - $conta++; | ||
226 | - if (($conta >= $int[0]) && ($conta <= $int[1])) | 243 | + $codigoTema = mb_convert_encoding($tm->TID,"HTML-ENTITIES","auto"); |
244 | + if (@ms_newMapobj("temas/".$codigoTema.".map")) | ||
245 | + { | ||
246 | + $nmap = ms_newMapobj("temas/".$codigoTema.".map"); | ||
247 | + $ts = $nmap->getalllayernames(); | ||
248 | + if (count($ts) == 1) | ||
249 | + { | ||
250 | + foreach ($ts as $t) | ||
227 | { | 251 | { |
228 | - $l = $nmap->getlayerbyname($t); | ||
229 | - $l->setmetadata("ows_title",pegaNome($l));//mb_convert_encoding(pegaNome($l),"HTML-ENTITIES","auto")); | ||
230 | - $l->setmetadata("ows_srs","EPSG:4291 EPSG:4326"); | ||
231 | - $l->set("status",MS_OFF); | ||
232 | - $l->setmetadata("gml_include_items","all"); | ||
233 | - $l->set("dump",MS_TRUE); | ||
234 | - $l->setmetadata("WMS_INCLUDE_ITEMS","all"); | ||
235 | - $l->setmetadata("WFS_INCLUDE_ITEMS","all"); | ||
236 | - $l->setmetadata("ows_metadataurl_href",mb_convert_encoding($tm->TLINK,"HTML-ENTITIES","auto")); | ||
237 | - $l->setmetadata("ows_metadataurl_type","TC211"); | ||
238 | - $l->setmetadata("ows_metadataurl_format","text/html"); | ||
239 | - ms_newLayerObj($oMap, $l); | 252 | + if ($oMap->getlayerbyname($t) == "") |
253 | + { | ||
254 | + $conta++; | ||
255 | + if (($conta >= $int[0]) && ($conta <= $int[1])) | ||
256 | + { | ||
257 | + $l = $nmap->getlayerbyname($t); | ||
258 | + $l->setmetadata("ows_title",pegaNome($l)); | ||
259 | + $l->setmetadata("ows_srs","EPSG:4291 EPSG:4326"); | ||
260 | + $l->set("status",MS_OFF); | ||
261 | + $l->setmetadata("gml_include_items","all"); | ||
262 | + $l->set("dump",MS_TRUE); | ||
263 | + $l->setmetadata("WMS_INCLUDE_ITEMS","all"); | ||
264 | + $l->setmetadata("WFS_INCLUDE_ITEMS","all"); | ||
265 | + $l->setmetadata("ows_metadataurl_href",mb_convert_encoding($tm->TLINK,"HTML-ENTITIES","auto")); | ||
266 | + $l->setmetadata("ows_metadataurl_type","TC211"); | ||
267 | + $l->setmetadata("ows_metadataurl_format","text/html"); | ||
268 | + ms_newLayerObj($oMap, $l); | ||
269 | + } | ||
270 | + } | ||
240 | } | 271 | } |
241 | } | 272 | } |
242 | } | 273 | } |
243 | } | 274 | } |
244 | } | 275 | } |
245 | - } | ||
246 | - } | 276 | + } |
277 | + } | ||
247 | } | 278 | } |
248 | } | 279 | } |
280 | + | ||
249 | ms_ioinstallstdouttobuffer(); | 281 | ms_ioinstallstdouttobuffer(); |
250 | $oMap->owsdispatch($req); | 282 | $oMap->owsdispatch($req); |
251 | $contenttype = ms_iostripstdoutbuffercontenttype(); | 283 | $contenttype = ms_iostripstdoutbuffercontenttype(); |
252 | header("Content-type: $contenttype"); | 284 | header("Content-type: $contenttype"); |
253 | ms_iogetStdoutBufferBytes(); | 285 | ms_iogetStdoutBufferBytes(); |
254 | ms_ioresethandlers(); | 286 | ms_ioresethandlers(); |
287 | + | ||
255 | ?> | 288 | ?> |
256 | \ No newline at end of file | 289 | \ No newline at end of file |