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 | 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 | 125 | //faz a busca da função que deve ser executada |
118 | 126 | // |
119 | 127 | switch ($funcao) | ... | ... |
classesphp/classe_atlas.php
... | ... | @@ -33,11 +33,6 @@ Class: Atlas |
33 | 33 | */ |
34 | 34 | class Atlas |
35 | 35 | { |
36 | - /* | |
37 | - Variable: $atlas | |
38 | - | |
39 | - Objeto Atlas | |
40 | - */ | |
41 | 36 | public $atlas; |
42 | 37 | /* |
43 | 38 | Function: __construct |
... | ... | @@ -50,9 +45,9 @@ $atlasxml - Endereço do arquivo xml com as definições do Atlas. |
50 | 45 | */ |
51 | 46 | function __construct($atlasxml) |
52 | 47 | { |
53 | - | |
54 | - $this->arquivo = $atlasxml; | |
48 | + error_reporting(0); | |
55 | 49 | $this->xml = simplexml_load_file($atlasxml); |
50 | + $this->arquivo = $atlasxml; | |
56 | 51 | } |
57 | 52 | /* |
58 | 53 | Method: pegaListaDeAtlas |
... | ... | @@ -243,7 +238,5 @@ locaplic - localização do i3geo no servidor |
243 | 238 | if($h == ""){$h = 300;} |
244 | 239 | return (array("link"=>$link,"w"=>$w,"h"=>$h)); |
245 | 240 | } |
246 | - | |
247 | 241 | } |
248 | - | |
249 | 242 | ?> |
250 | 243 | \ No newline at end of file | ... | ... |
classesphp/classe_menutemas.php
... | ... | @@ -35,49 +35,35 @@ Class: Menutemas |
35 | 35 | */ |
36 | 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 | 39 | function: __construct |
70 | 40 | |
71 | 41 | Cria um objeto Menutemas |
72 | 42 | |
73 | 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 | 60 | $this->perfil = explode(",",$perfil); |
61 | + if(count($this->perfil) == 0) | |
62 | + $this->perfil = explode(" ",$perfil); | |
80 | 63 | $this->xmlsistemas = ""; |
64 | + $this->locaplic = $locaplic; | |
65 | + $this->menutemas = $menutemas; | |
66 | + $this->urli3geo = $urli3geo; | |
81 | 67 | if ($locsistemas != "") |
82 | 68 | $this->xmlsistemas = simplexml_load_file($locsistemas); |
83 | 69 | if (($map_file != "") && (file_exists($map_file))) |
... | ... | @@ -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 | 129 | function: pegaListaDeMapas |
97 | 130 | |
98 | 131 | Le o arquivo xml com a lista de mapas existente no xml $locmapas. |
... | ... | @@ -152,42 +185,36 @@ return: |
152 | 185 | |
153 | 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 | 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 | 211 | $sistemas = array(); |
187 | 212 | $grupos = array(); |
188 | 213 | $temasraiz = array(); |
214 | + // | |
189 | 215 | //pega os grupos |
190 | 216 | //verifica se existem temas na raiz do menu |
217 | + // | |
191 | 218 | foreach($this->xml->TEMA as $temar) |
192 | 219 | { |
193 | 220 | $down = "nao"; |
... | ... | @@ -329,29 +356,14 @@ array |
329 | 356 | function pegaListaDeSubGrupos($codgrupo,$idmenu="") |
330 | 357 | { |
331 | 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 | 368 | $conta = 0; |
357 | 369 | $subgrupos[] = array(); |
... | ... | @@ -433,22 +445,14 @@ array |
433 | 445 | function pegaListaDeTemas($grupo,$subgrupo,$idmenu) |
434 | 446 | { |
435 | 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 | 457 | $contagrupo = 0; |
454 | 458 | $temas = array(); |
... | ... | @@ -532,26 +536,18 @@ $procurar - String que será procurada. |
532 | 536 | function procurartemas($procurar) |
533 | 537 | { |
534 | 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 | 545 | $resultado = array(); |
552 | - $listadetemas = array(); | |
546 | + $texto = array(); | |
553 | 547 | foreach ($this->xml as $xml) |
554 | 548 | { |
549 | + $listadetemas = array(); | |
550 | + $subgrupo = array(); | |
555 | 551 | foreach($xml->GRUPO as $grupo) |
556 | 552 | { |
557 | 553 | $incluigrupo = TRUE; |
... | ... | @@ -595,23 +591,27 @@ $procurar - String que será procurada. |
595 | 591 | {$down = "sim";} |
596 | 592 | $link = ixml($tema,"TLINK"); |
597 | 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 | 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 | 619 | { |
620 | 620 | $subgrupo[] = array("subgrupo"=>(ixml($sgrupo,"SDTIPO")),"temas"=>$listadetemas); |
621 | 621 | } |
622 | + $listadetemas = array(); | |
622 | 623 | } |
623 | - $listadetemas = array(); | |
624 | + | |
624 | 625 | } |
625 | 626 | if (count($subgrupo) > 0) |
626 | 627 | { |
... | ... | @@ -659,21 +660,13 @@ nrss - (opcional) número de registros no rss que serão considerados |
659 | 660 | } |
660 | 661 | } |
661 | 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 | 668 | else |
676 | - {$this->xml[] = simplexml_load_file("menutemas/menutemas.xml");} | |
669 | + $this->xml[] = simplexml_load_file($m["arquivo"]); | |
677 | 670 | } |
678 | 671 | $resultado = array(); |
679 | 672 | $noticias = array(); |
... | ... | @@ -722,7 +715,7 @@ nrss - (opcional) número de registros no rss que serão considerados |
722 | 715 | { |
723 | 716 | if($tag != "") |
724 | 717 | { |
725 | - if(!$resultado[$tag]) | |
718 | + if(!isset($resultado[$tag])) | |
726 | 719 | { |
727 | 720 | $resultado[$tag] = array($tid); |
728 | 721 | //busca noticias |
... | ... | @@ -735,7 +728,7 @@ nrss - (opcional) número de registros no rss que serão considerados |
735 | 728 | if(in_array(strtolower($t),$titulo)) |
736 | 729 | { |
737 | 730 | //echo $noticia["link"]."<br>"; |
738 | - if(!$noticias[$tag]) | |
731 | + if(!isset($noticias[$tag])) | |
739 | 732 | $noticias[$tag] = array("titulo"=>$noticia["titulo"],"link"=>$noticia["link"]); |
740 | 733 | else |
741 | 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 | 753 | foreach(array_keys($resultado) as $k) |
761 | 754 | { |
762 | 755 | |
763 | - if($noticias[$k]) | |
756 | + if(isset($noticias[$k])) | |
764 | 757 | {$not = array($noticias[$k]);} |
765 | 758 | else |
766 | 759 | {$not = array();} |
... | ... | @@ -804,6 +797,5 @@ nrss - (opcional) número de registros no rss que serão considerados |
804 | 797 | //Return FALSE if none of the values from $needle are found in $haystack |
805 | 798 | return FALSE; |
806 | 799 | } |
807 | - | |
808 | 800 | } |
809 | 801 | ?> |
810 | 802 | \ No newline at end of file | ... | ... |
classesphp/mapa_controle.php
... | ... | @@ -125,19 +125,6 @@ include_once("../pacotes/cpaint/cpaint2.inc.php"); |
125 | 125 | // |
126 | 126 | $cp = new cpaint(); |
127 | 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 | 128 | if ($funcao == "criaMapa") |
142 | 129 | { |
143 | 130 | session_destroy(); |
... | ... | @@ -145,7 +132,7 @@ if ($funcao == "criaMapa") |
145 | 132 | //primeiro é necessário carregar o ms_configura.php para pegar a variável $locaplic |
146 | 133 | // |
147 | 134 | $d = ""; |
148 | - if(!file_exists($d."ms_configura.php")) | |
135 | + if(!file_exists("ms_configura.php")) | |
149 | 136 | $d = "../"; |
150 | 137 | include_once($d."ms_configura.php"); |
151 | 138 | // |
... | ... | @@ -169,6 +156,12 @@ include_once("classe_vermultilayer.php"); |
169 | 156 | include_once("classe_estatistica.php"); |
170 | 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 | 165 | //substitui a string de conexão |
173 | 166 | // |
174 | 167 | substituiCon($map_file,$postgis_mapa); |
... | ... | @@ -1623,7 +1616,7 @@ Pega a lista de tags registrados nos menus de temas. |
1623 | 1616 | */ |
1624 | 1617 | case "listaTags": |
1625 | 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 | 1620 | $cp->set_data($m->listatags($rss,$nrss)); |
1628 | 1621 | break; |
1629 | 1622 | /* |
... | ... | @@ -1634,10 +1627,9 @@ Pega a lista de menus para incluir na guia adiciona. |
1634 | 1627 | Parameters: |
1635 | 1628 | */ |
1636 | 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 | 1633 | break; |
1642 | 1634 | /* |
1643 | 1635 | Property: pegalistadegrupos |
... | ... | @@ -1660,11 +1652,11 @@ Include: |
1660 | 1652 | if (file_exists("../ms_configura.php")) |
1661 | 1653 | {include_once("../ms_configura.php");} |
1662 | 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 | 1656 | if(!isset($idmenu)){$idmenu="";} |
1665 | 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 | 1660 | break; |
1669 | 1661 | /* |
1670 | 1662 | Property: pegalistadeSubgrupos |
... | ... | @@ -1676,7 +1668,7 @@ Include: |
1676 | 1668 | */ |
1677 | 1669 | case "pegalistadeSubgrupos": |
1678 | 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 | 1672 | $cp->set_data($m->pegaListaDeSubGrupos($grupo,$idmenu)); |
1681 | 1673 | break; |
1682 | 1674 | /* |
... | ... | @@ -1689,7 +1681,7 @@ Include: |
1689 | 1681 | */ |
1690 | 1682 | case "pegalistadetemas": |
1691 | 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 | 1685 | $cp->set_data(array("temas"=>$m->pegaListaDeTemas($grupo,$subgrupo,$idmenu))); |
1694 | 1686 | break; |
1695 | 1687 | /* |
... | ... | @@ -1702,7 +1694,7 @@ Include: |
1702 | 1694 | */ |
1703 | 1695 | case "procurartemas": |
1704 | 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 | 1698 | $cp->set_data($m->procurartemas($procurar)); |
1707 | 1699 | break; |
1708 | 1700 | /* |
... | ... | @@ -1717,7 +1709,7 @@ Include: |
1717 | 1709 | */ |
1718 | 1710 | case "pegaMapas": |
1719 | 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 | 1713 | $cp->set_data($m->pegaListaDeMapas($locmapas)); |
1722 | 1714 | break; |
1723 | 1715 | /* | ... | ... |
classesphp/mapa_inicia.php
... | ... | @@ -87,6 +87,17 @@ Se $expoeMapfile = "nao", o nome do mapfile não é retornado |
87 | 87 | function iniciaMapa() |
88 | 88 | { |
89 | 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 | 101 | if (!file_exists($locaplic)) |
91 | 102 | {$cp->set_data("erro. $locaplic nao existe (variavel locaplic - corrija o ms_configura.php)");return;} |
92 | 103 | if (!file_exists($map_file)) |
... | ... | @@ -127,8 +138,6 @@ function iniciaMapa() |
127 | 138 | } |
128 | 139 | } |
129 | 140 | } |
130 | - //if($utilizacgi == "sim") | |
131 | - //{$m->ligaDesligaTemas("","todos");} | |
132 | 141 | // |
133 | 142 | //cuidado ao mexer aqui |
134 | 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 | 56 | </body> |
57 | 57 | <script> |
58 | 58 | /* |
59 | -Title: Aplicativo para download de dados | |
59 | +Title: datadownload.htm | |
60 | 60 | |
61 | 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 | 28 | |
29 | 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 | 35 | error_reporting(0); |
33 | 36 | include_once ("classesphp/carrega_ext.php"); |
37 | +include_once ("classesphp/classe_menutemas.php"); | |
34 | 38 | include_once ("ms_configura.php"); |
35 | 39 | echo '<?xml version="1.0" encoding="UTF-8"?>'; |
36 | 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 | 45 | $protocolo = explode("/",$_SERVER['SERVER_PROTOCOL']); |
38 | 46 | $protocolo = $protocolo[0]; |
39 | 47 | $protocolo1 = strtolower($protocolo . '://'.$_SERVER['SERVER_NAME']); |
40 | 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 | 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 | 64 | else |
44 | 65 | { |
45 | 66 | foreach($menutemas as $m) |
... | ... | @@ -49,7 +70,9 @@ else |
49 | 70 | } |
50 | 71 | if(!isset($menus)) |
51 | 72 | $menus = array("/opt/www/html/i3geo/menutemas/menutemas.xml"); |
52 | - | |
73 | +// | |
74 | +//monta o xml | |
75 | +// | |
53 | 76 | echo "<Document><name>Menu i3geo</name><open>0</open><description></description><visibility>0</visibility>\n"; |
54 | 77 | foreach ($menus as $menu) |
55 | 78 | { |
... | ... | @@ -59,14 +82,14 @@ foreach ($menus as $menu) |
59 | 82 | $nome = mb_convert_encoding($grupo->GTIPO,"auto","auto"); |
60 | 83 | $desc = mb_convert_encoding($grupo->DTIPO,"auto","auto"); |
61 | 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 | 87 | echo "<open>0</open><visibility>0</visibility>\n"; |
65 | 88 | foreach($grupo->SGRUPO as $sgrupo) |
66 | 89 | { |
67 | 90 | echo "<Folder>\n"; |
68 | 91 | $nome = mb_convert_encoding($sgrupo->SDTIPO,"auto","auto"); |
69 | - echo "<name>$nome</name>\n"; | |
92 | + echo "<name>".str_replace("&","&",$nome)."</name>\n"; | |
70 | 93 | echo "<description></description>\n"; |
71 | 94 | echo "<open>0</open><visibility>0</visibility>\n"; |
72 | 95 | foreach($sgrupo->TEMA as $tema) |
... | ... | @@ -86,9 +109,9 @@ foreach ($menus as $menu) |
86 | 109 | if(strtolower($kml) != "nao" && strtolower($tipoa) != "wms") |
87 | 110 | { |
88 | 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 | 115 | echo "<description><![CDATA[".$fonte.$legenda.$desc."]]></description>\n"; |
93 | 116 | echo "<visibility>0</visibility>\n"; |
94 | 117 | echo "<Icon>\n"; | ... | ... |
menutemas/admin.db
No preview for this file type
mobile/adicionatema.php
... | ... | @@ -71,9 +71,15 @@ h1 |
71 | 71 | </form> |
72 | 72 | <input type='button' value='retorna' style='cursor:pointer;' onclick='retorno()' /><br> |
73 | 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 | 80 | if ($tipo == "listatemas") |
75 | 81 | { |
76 | - $m = new Menutemas($tmpfname,"","nao"); | |
82 | + $m = new Menutemas("","",$locsistemas,$locaplic,"",$urli3geo); | |
77 | 83 | $r = $m->pegaListaDeTemas($grupo,$subgrupo,""); |
78 | 84 | echo "<h1>Escolha o tema:</h1>"; |
79 | 85 | foreach($r as $l) |
... | ... | @@ -92,8 +98,8 @@ if($tipo == "adicionatema") |
92 | 98 | } |
93 | 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 | 103 | echo "<h1>Escolha o sub-grupo:</h1>"; |
98 | 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 | 43 | |
44 | 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 | 48 | Variable: $tituloInstituicao |
49 | 49 | |
... | ... | @@ -136,7 +136,7 @@ if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) |
136 | 136 | |
137 | 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 | 141 | Variable: $locidentifica |
142 | 142 | |
... | ... | @@ -162,7 +162,7 @@ if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) |
162 | 162 | |
163 | 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 | 167 | Variable: $R_path |
168 | 168 | |
... | ... | @@ -222,11 +222,11 @@ if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) |
222 | 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 | 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 | 232 | Variable: $utilizacgi |
... | ... | @@ -277,7 +277,7 @@ if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) |
277 | 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 | 282 | else //se for linux |
283 | 283 | { |
... | ... | @@ -301,6 +301,6 @@ else //se for linux |
301 | 301 | $utilizacgi = "nao"; |
302 | 302 | $atlasxml = "../menutemas/atlas.xml"; |
303 | 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 | 136 | |
137 | 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 | 141 | Variable: $locidentifica |
142 | 142 | |
... | ... | @@ -149,8 +149,11 @@ if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) |
149 | 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 | 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 | 158 | Variable: $locmapas |
156 | 159 | |
... | ... | @@ -218,16 +221,13 @@ if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) |
218 | 221 | Example: |
219 | 222 | |
220 | 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 | 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 | 232 | Variable: $utilizacgi |
233 | 233 | |
... | ... | @@ -248,9 +248,9 @@ if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) |
248 | 248 | |
249 | 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 | 255 | Variable: $expoeMapfile |
256 | 256 | |
... | ... | @@ -264,7 +264,7 @@ if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) |
264 | 264 | |
265 | 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 | 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 | 43 | |
44 | 44 | legenda - mostra a legenda no corpo do mapa sim|nao |
45 | 45 | |
46 | +perfil - perfil utilizado para escolher os menus | |
47 | + | |
46 | 48 | About: Exemplos |
47 | 49 | |
48 | 50 | ogc.php?lista=temas |
... | ... | @@ -65,41 +67,63 @@ if (!function_exists('ms_GetVersion')) |
65 | 67 | require_once("classesphp/carrega_ext.php"); |
66 | 68 | include("ms_configura.php"); |
67 | 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 | 103 | //pega a lista de grupos |
69 | 104 | if ($lista == "temas") |
70 | 105 | { |
71 | - $xml = simplexml_load_file("menutemas/menutemas.xml"); | |
72 | 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 | 229 | { |
206 | 230 | $conta = 0; |
207 | 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 | 281 | ms_ioinstallstdouttobuffer(); |
250 | 282 | $oMap->owsdispatch($req); |
251 | 283 | $contenttype = ms_iostripstdoutbuffercontenttype(); |
252 | 284 | header("Content-type: $contenttype"); |
253 | 285 | ms_iogetStdoutBufferBytes(); |
254 | 286 | ms_ioresethandlers(); |
287 | + | |
255 | 288 | ?> |
256 | 289 | \ No newline at end of file | ... | ... |