Commit 9710884c1a0a46ec5f80ee22975fc538a03727e0
1 parent
16af9afd
Exists in
master
and in
7 other branches
Correções na obtenção do protocolo HTTP. No linux é necessário incluir em caixa …
…baixa. Lateração na forma de leitura do menu de temas.
Showing
6 changed files
with
117 additions
and
135 deletions
Show diff stats
kml.php
| ... | ... | @@ -45,31 +45,41 @@ echo "<kml xmlns='http://earth.google.com/kml/2.2'>\n"; |
| 45 | 45 | // |
| 46 | 46 | $protocolo = explode("/",$_SERVER['SERVER_PROTOCOL']); |
| 47 | 47 | $protocolo = $protocolo[0]; |
| 48 | -$protocolo1 = strtolower($protocolo . '://'.$_SERVER['SERVER_NAME']); | |
| 49 | -$protocolo = $protocolo . '://'.$_SERVER['SERVER_NAME'] .":". $_SERVER['SERVER_PORT']; | |
| 48 | +$protocolo1 = strtolower($protocolo) . '://'.$_SERVER['SERVER_NAME']; | |
| 49 | +$protocolo = strtolower($protocolo) . '://'.$_SERVER['SERVER_NAME'] .":". $_SERVER['SERVER_PORT']; | |
| 50 | 50 | $urli3geo = str_replace("/kml.php","",$protocolo.$_SERVER["PHP_SELF"]); |
| 51 | 51 | //error_reporting(E_ALL); |
| 52 | 52 | if(!isset($perfil)){$perfil = "";} |
| 53 | + | |
| 53 | 54 | // |
| 54 | -//monta o xml | |
| 55 | -// | |
| 56 | -echo "<Document><name>Menu i3geo</name><open>0</open><description></description><visibility>0</visibility>\n"; | |
| 57 | -// | |
| 58 | -//no caso do arquivo com o menu vir de um arquivo XML | |
| 55 | +//pega a lista de menus que será processada | |
| 56 | +//se a variável definida em ms_configura for = "", a busca é feita | |
| 57 | +//pelo método Menutemas | |
| 59 | 58 | // |
| 60 | -if ($menutemas != "" || is_array($menutemas)) | |
| 59 | +if(!isset($perfil)){$perfil = "";} | |
| 60 | +if($menutemas != "" || is_array($menutemas)) | |
| 61 | +{ | |
| 62 | + foreach($menutemas as $m) | |
| 63 | + { | |
| 64 | + $menus[] = $m["arquivo"]; | |
| 65 | + } | |
| 66 | + | |
| 67 | +} | |
| 68 | +else | |
| 61 | 69 | { |
| 62 | - // | |
| 63 | - //para manter a compatibilidade entre as versões do i3geo | |
| 64 | - //é necessário verificar se a variável $menutemas é um array ou não | |
| 65 | - // | |
| 66 | - if(is_array($menutemas)) | |
| 70 | + $m = new Menutemas("",$perfil,$locsistemas,$locaplic,"",$urli3geo); | |
| 71 | + foreach($m->pegaListaDeMenus() as $menu) | |
| 67 | 72 | { |
| 68 | - foreach($menutemas as $m) | |
| 69 | - {$menus[] = $m["arquivo"];} | |
| 73 | + $menus[] = $menu["url"]; | |
| 70 | 74 | } |
| 71 | - else | |
| 72 | - $menu[] = $menutemas; | |
| 75 | +} | |
| 76 | +if(!isset($menus)) | |
| 77 | +$menus = array("/opt/www/html/i3geo/menutemas/menutemas.xml"); | |
| 78 | + | |
| 79 | +// | |
| 80 | +//monta o xml | |
| 81 | +// | |
| 82 | +echo "<Document><name>Menu i3geo</name><open>0</open><description></description><visibility>0</visibility>\n"; | |
| 73 | 83 | foreach ($menus as $menu) |
| 74 | 84 | { |
| 75 | 85 | $xml = simplexml_load_file($menu); |
| ... | ... | @@ -109,60 +119,7 @@ if ($menutemas != "" || is_array($menutemas)) |
| 109 | 119 | echo "</Folder>\n"; |
| 110 | 120 | } |
| 111 | 121 | } |
| 112 | -} | |
| 113 | -// | |
| 114 | -//no caso do menu vir do sistema de administração | |
| 115 | -// | |
| 116 | -if($menutemas == "") | |
| 117 | -{ | |
| 118 | - include("admin/php/admin.php"); | |
| 119 | - $menus = pegaDados("SELECT * from i3geoadmin_menus where publicado_menu != 'NAO' or publicado_menu isnull order by nome_menu "); | |
| 120 | - echo $sql; | |
| 121 | - foreach($menus as $menu) | |
| 122 | - { | |
| 123 | - echo $menu["nome_menu"]; | |
| 124 | - kml_cabecalho($menu["nome_menu"],$menu["desc_menu"]); | |
| 125 | - $id_menu = $menu["id_menu"]; | |
| 126 | - $grupos = pegaDados("SELECT nome_grupo,n1.id_grupo,gr.desc_grupo from i3geoadmin_n1 as n1,i3geoadmin_grupos as gr where n1.id_menu = '$id_menu' and n1.id_grupo = gr.id_grupo order by gr.nome_grupo"); | |
| 127 | - foreach($grupos as $grupo) | |
| 128 | - { | |
| 129 | - kml_cabecalho($grupo["nome_grupo"],$grupo["desc_grupo"]); | |
| 130 | - $id_grupo = $grupo["id_grupo"]; | |
| 131 | - $sql = "select s.nome_subgrupo,n2.id_n2 from i3geoadmin_n2 as n2,i3geoadmin_n1 as n1, i3geoadmin_subgrupos as s "; | |
| 132 | - $sql .= "where n1.id_grupo = '$id_grupo' and n2.id_subgrupo = s.id_subgrupo "; | |
| 133 | - $sql .= "and n2.id_n1 = n1.id_n1 "; | |
| 134 | - $sql .= "and n1.n1_perfil = '' and n2.n2_perfil = '' "; | |
| 135 | - $sql .= "order by s.nome_subgrupo"; | |
| 136 | - $subgrupos = pegaDados($sql); | |
| 137 | - foreach ($subgrupos as $subgrupo) | |
| 138 | - { | |
| 139 | - kml_folder($subgrupo["nome_subgrupo"]); | |
| 140 | - $id_n2 = $subgrupo["id_n2"]; | |
| 141 | - $sql = "select t.codigo_tema,t.nome_tema,t.link_tema, t.desc_tema from i3geoadmin_n3 as n3,i3geoadmin_temas as t where "; | |
| 142 | - $sql .= "n3.id_n2='$id_n2' "; | |
| 143 | - $sql .= "and n3.id_tema = t.id_tema "; | |
| 144 | - $sql .= "and n3_perfil = '' "; | |
| 145 | - $sql .= "and t.kml_tema != 'nao' "; | |
| 146 | - $sql .= "and t.tipoa_tema = ''"; | |
| 147 | - $temas = pegadados($sql); | |
| 148 | - foreach ($temas as $tema) | |
| 149 | - { | |
| 150 | - $fonte = $tema["link_tema"]; | |
| 151 | - $nome = $tema["nome_tema"]; | |
| 152 | - $id = $tema["codigo_tema"]; | |
| 153 | - $desc = $tema["desc_tema"]; | |
| 154 | - $fonte = "<a href='$fonte' >Fonte </a>"; | |
| 155 | - $legenda = "<a href='$urli3geo/ogc.php?tema=$id&layer=$id&request=getlegendgraphic&service=wms&format=image/jpeg' >Legenda </a>"; | |
| 156 | - $href = "$urli3geo/ogc.php?tema=$id&width=800&height=800&VERSION=1.1.1&REQUEST=GetMap&SRS=EPSG:4326&STYLES=&BGCOLOR=0xFFFFFF&FORMAT=image/png&TRANSPARENT=TRUE&layers=$id"; | |
| 157 | - kml_servico($nome,$fonte,$legenda,$desc,$href); | |
| 158 | - } | |
| 159 | - echo "</Folder>\n"; | |
| 160 | - } | |
| 161 | - echo "</Folder>\n"; | |
| 162 | - } | |
| 163 | - echo "</Folder>\n"; | |
| 164 | - } | |
| 165 | -} | |
| 122 | + | |
| 166 | 123 | echo "</Document></kml>\n"; |
| 167 | 124 | function kml_cabecalho($nome,$desc) |
| 168 | 125 | { | ... | ... |
mobile/adicionatema.php
| ... | ... | @@ -78,7 +78,7 @@ h1 |
| 78 | 78 | //identifica qual a url do i3geo |
| 79 | 79 | // |
| 80 | 80 | $protocolo = explode("/",$_SERVER['SERVER_PROTOCOL']); |
| 81 | -$protocolo = $protocolo[0] . '://'.$_SERVER['SERVER_NAME'] .":". $_SERVER['SERVER_PORT']; | |
| 81 | +$protocolo = strtolower($protocolo[0]) . '://'.$_SERVER['SERVER_NAME'] .":". $_SERVER['SERVER_PORT']; | |
| 82 | 82 | $urli3geo = str_replace("/mobile/adicionatema.php","",$protocolo.$_SERVER["PHP_SELF"]); |
| 83 | 83 | if ($tipo == "listatemas") |
| 84 | 84 | { | ... | ... |
mobile/ativatexto.php
| ... | ... | @@ -105,20 +105,12 @@ if ($tema == '') |
| 105 | 105 | include("../classesphp/classe_mapa.php"); |
| 106 | 106 | $m = New Mapa($tmpfname); |
| 107 | 107 | $par = $m->parametrosTemas(); |
| 108 | - //var_dump($par); | |
| 109 | - $par = mb_convert_encoding($par,"ISO-8859-1","UTF-8"); | |
| 110 | - $par = explode("'",$par); | |
| 111 | - $par = explode(";",$par[1]); | |
| 112 | 108 | echo "<h1>Escolha o tema que vc quer mostrar os textos no mapa:</h1>"; |
| 113 | - $existe = false; | |
| 114 | 109 | foreach($par as $p) |
| 115 | 110 | { |
| 116 | - $p = explode("*",$p); | |
| 117 | - if(($p[1] == 2) && ($p[4] < 3 )) | |
| 118 | - { | |
| 119 | - $existe=true; | |
| 120 | - echo "<input type=radio value='$p[0]' onclick='ativartema(this.value)' />".$p[2]."<br>"; | |
| 121 | - } | |
| 111 | + $existe=true; | |
| 112 | + $titulo = mb_convert_encoding($p["tema"],"ISO-8859-1","UTF-8"); | |
| 113 | + echo "<input type=radio value='".$p["name"]."' onclick='ativartema(this.value)' />".$titulo."<br>"; | |
| 122 | 114 | } |
| 123 | 115 | if (!$existe) |
| 124 | 116 | echo "<span style='color:red' >Nenhum tema disponível.</br>"; | ... | ... |
mobile/desligar.php
| ... | ... | @@ -78,19 +78,12 @@ if(isset($tema) && $tema != '') |
| 78 | 78 | } |
| 79 | 79 | $m = New Mapa($tmpfname); |
| 80 | 80 | $par = $m->parametrosTemas(); |
| 81 | -$par = mb_convert_encoding($par,"ISO-8859-1","UTF-8"); | |
| 82 | -$par = explode("'",$par); | |
| 83 | -$par = explode(";",$par[1]); | |
| 84 | 81 | echo "<h1>Escolha o tema que vc não quer ver no mapa:</h1>"; |
| 85 | -$existe = false; | |
| 86 | 82 | foreach($par as $p) |
| 87 | 83 | { |
| 88 | - $p = explode("*",$p); | |
| 89 | - if($p[1] == 2) | |
| 90 | - { | |
| 91 | - $existe=true; | |
| 92 | - echo "<input type=radio value='$p[0]' onclick='desligar(this.value)' />".$p[2]."<br>"; | |
| 93 | - } | |
| 84 | + $existe=true; | |
| 85 | + $titulo = mb_convert_encoding($p["tema"],"ISO-8859-1","UTF-8"); | |
| 86 | + echo "<input type=radio value='".$p["name"]."' onclick='desligar(this.value)' />".$titulo."<br>"; | |
| 94 | 87 | } |
| 95 | 88 | if (!$existe) |
| 96 | 89 | echo "<span style='color:red' >Nenhum tema disponível.</br>"; | ... | ... |
ms_criamapa.php
| ... | ... | @@ -345,7 +345,7 @@ Note: Configura os endereços corretos no mapfile. |
| 345 | 345 | |
| 346 | 346 | Altera as propriedades imagepath e imageurl corrigindo os caminhos padrão conforme o diretório criado para armazenar o mapa de trabalho. |
| 347 | 347 | */ |
| 348 | -$protocolo = explode("/",$_SERVER['SERVER_PROTOCOL']); | |
| 348 | +$protocolo = strtolower(explode("/",$_SERVER['SERVER_PROTOCOL'])); | |
| 349 | 349 | $w = $mapn->web; |
| 350 | 350 | $atual = $w->imagepath; |
| 351 | 351 | $w->set("imagepath",$atual.$diretorios[2]."/"); |
| ... | ... | @@ -620,6 +620,15 @@ Function: MostraAguarde |
| 620 | 620 | |
| 621 | 621 | Mostra a mensagem de aguarde |
| 622 | 622 | |
| 623 | +Globals: | |
| 624 | + | |
| 625 | +$interface | |
| 626 | + | |
| 627 | +$caminho | |
| 628 | + | |
| 629 | +$mensagemInicia | |
| 630 | + | |
| 631 | +$tituloInstituicao | |
| 623 | 632 | */ |
| 624 | 633 | function mostraAguarde() |
| 625 | 634 | { |
| ... | ... | @@ -643,6 +652,12 @@ function mostraAguarde() |
| 643 | 652 | Function: insereWKTUrl |
| 644 | 653 | |
| 645 | 654 | Insere elementos no mapa a partir de uma string definida em wkt |
| 655 | + | |
| 656 | +Globals: | |
| 657 | + | |
| 658 | +$wkt - string no formato wkt | |
| 659 | + | |
| 660 | +$nometemawkt - nome do tema que será criado | |
| 646 | 661 | */ |
| 647 | 662 | function insereWKTUrl() |
| 648 | 663 | { |
| ... | ... | @@ -708,7 +723,13 @@ function insereWKTUrl() |
| 708 | 723 | /* |
| 709 | 724 | Function: inserePontosUrl |
| 710 | 725 | |
| 711 | -Insere um novo tema com os pontos definidos na variável $pontos | |
| 726 | +Insere um tema do tipo ponto | |
| 727 | + | |
| 728 | +Globals: | |
| 729 | + | |
| 730 | +$pontos - lista de coordenadas x,y | |
| 731 | + | |
| 732 | +$nometemapontos - nome do tema que será criado | |
| 712 | 733 | |
| 713 | 734 | */ |
| 714 | 735 | function inserePontosUrl() |
| ... | ... | @@ -734,6 +755,8 @@ function inserePontosUrl() |
| 734 | 755 | $db=xbase_open($dbname,2); |
| 735 | 756 | $novoshpf = ms_newShapefileObj($nomeshp, $tipol); |
| 736 | 757 | $pontos = explode(" ",trim($pontos)); |
| 758 | + if(count($pontos) == 0) | |
| 759 | + $pontos = explode(",",trim($pontos)); | |
| 737 | 760 | foreach ($pontos as $p) |
| 738 | 761 | {if (is_numeric($p)){$pontosn[] = $p;}} |
| 739 | 762 | $pontos = $pontosn; |
| ... | ... | @@ -771,10 +794,15 @@ function inserePontosUrl() |
| 771 | 794 | /* |
| 772 | 795 | Function: insereLinhasUrl |
| 773 | 796 | |
| 774 | -Insere um novo tema com as linhas definidas na variável $linhas | |
| 797 | +Insere um tema do tipo linear | |
| 775 | 798 | |
| 776 | 799 | As linhas devem ter os pontos separados por espaços e cada linha separada por vírgula |
| 777 | 800 | |
| 801 | +Globals: | |
| 802 | + | |
| 803 | +$linhas - lista de coordenadas | |
| 804 | + | |
| 805 | +$nometemalinhas - nome do tema que será criado | |
| 778 | 806 | */ |
| 779 | 807 | function insereLinhasUrl() |
| 780 | 808 | { |
| ... | ... | @@ -846,10 +874,16 @@ function insereLinhasUrl() |
| 846 | 874 | /* |
| 847 | 875 | Function: inserePoligonosUrl |
| 848 | 876 | |
| 849 | -Insere um novo tema com os poligonos definidas na variável $poligonos | |
| 877 | +Insere um tema poligonal. | |
| 850 | 878 | |
| 851 | 879 | Os polígonos devem ter os pontos separados por espaços e cada polígono separado por vírgula |
| 852 | 880 | |
| 881 | +Globals: | |
| 882 | + | |
| 883 | +$poligonos - lista de coordenadas | |
| 884 | + | |
| 885 | +$nometemapoligonos - nome do tema que será criado | |
| 886 | + | |
| 853 | 887 | */ |
| 854 | 888 | function inserePoligonosUrl() |
| 855 | 889 | { | ... | ... |
ogc.php
| ... | ... | @@ -74,8 +74,8 @@ include("classesphp/classe_menutemas.php"); |
| 74 | 74 | // |
| 75 | 75 | $protocolo = explode("/",$_SERVER['SERVER_PROTOCOL']); |
| 76 | 76 | $protocolo = $protocolo[0]; |
| 77 | -$protocolo1 = strtolower($protocolo . '://'.$_SERVER['SERVER_NAME']); | |
| 78 | -$protocolo = $protocolo . '://'.$_SERVER['SERVER_NAME'] .":". $_SERVER['SERVER_PORT']; | |
| 77 | +$protocolo1 = strtolower($protocolo) . '://'.$_SERVER['SERVER_NAME']; | |
| 78 | +$protocolo = strtolower($protocolo) . '://'.$_SERVER['SERVER_NAME'] .":". $_SERVER['SERVER_PORT']; | |
| 79 | 79 | $urli3geo = str_replace("/ogc.php","",$protocolo.$_SERVER["PHP_SELF"]); |
| 80 | 80 | // |
| 81 | 81 | //pega a lista de menus que será processada |
| ... | ... | @@ -83,19 +83,20 @@ $urli3geo = str_replace("/ogc.php","",$protocolo.$_SERVER["PHP_SELF"]); |
| 83 | 83 | //pelo método Menutemas |
| 84 | 84 | // |
| 85 | 85 | if(!isset($perfil)){$perfil = "";} |
| 86 | -if ($menutemas == "") | |
| 86 | +if($menutemas != "" || is_array($menutemas)) | |
| 87 | 87 | { |
| 88 | - $m = new Menutemas("",$perfil,$locsistemas,$locaplic,"",$urli3geo); | |
| 89 | - foreach($m->pegaListaDeMenus() as $menu) | |
| 88 | + foreach($menutemas as $m) | |
| 90 | 89 | { |
| 91 | - $menus[] = $menu["url"]; | |
| 90 | + $menus[] = $m["arquivo"]; | |
| 92 | 91 | } |
| 92 | + | |
| 93 | 93 | } |
| 94 | 94 | else |
| 95 | 95 | { |
| 96 | - foreach($menutemas as $m) | |
| 96 | + $m = new Menutemas("",$perfil,$locsistemas,$locaplic,"",$urli3geo); | |
| 97 | + foreach($m->pegaListaDeMenus() as $menu) | |
| 97 | 98 | { |
| 98 | - $menus[] = $m["arquivo"]; | |
| 99 | + $menus[] = $menu["url"]; | |
| 99 | 100 | } |
| 100 | 101 | } |
| 101 | 102 | if(!isset($menus)) |
| ... | ... | @@ -245,6 +246,8 @@ else |
| 245 | 246 | { |
| 246 | 247 | $conta = 0; |
| 247 | 248 | $int = explode(",",$intervalo); |
| 249 | + $codigosTema = array(); | |
| 250 | + //var_dump($menus);exit; | |
| 248 | 251 | foreach ($menus as $menu) |
| 249 | 252 | { |
| 250 | 253 | $xml = simplexml_load_file($menu); |
| ... | ... | @@ -256,40 +259,43 @@ else |
| 256 | 259 | { |
| 257 | 260 | if (mb_convert_encoding($tm->OGC,"HTML-ENTITIES","auto") == "") |
| 258 | 261 | { |
| 259 | - $codigoTema = mb_convert_encoding($tm->TID,"HTML-ENTITIES","auto"); | |
| 260 | - if (@ms_newMapobj("temas/".$codigoTema.".map")) | |
| 262 | + $codigosTema[] = mb_convert_encoding($tm->TID,"HTML-ENTITIES","auto"); | |
| 263 | + } | |
| 264 | + } | |
| 265 | + } | |
| 266 | + } | |
| 267 | + } | |
| 268 | + foreach($codigosTema as $codigoTema) | |
| 269 | + { | |
| 270 | + if (@ms_newMapobj("temas/".$codigoTema.".map")) | |
| 271 | + { | |
| 272 | + $nmap = ms_newMapobj("temas/".$codigoTema.".map"); | |
| 273 | + $ts = $nmap->getalllayernames(); | |
| 274 | + if (count($ts) == 1) | |
| 275 | + { | |
| 276 | + foreach ($ts as $t) | |
| 277 | + { | |
| 278 | + if ($oMap->getlayerbyname($t) == "") | |
| 279 | + { | |
| 280 | + $conta++; | |
| 281 | + if (($conta >= $int[0]) && ($conta <= $int[1])) | |
| 261 | 282 | { |
| 262 | - $nmap = ms_newMapobj("temas/".$codigoTema.".map"); | |
| 263 | - $ts = $nmap->getalllayernames(); | |
| 264 | - if (count($ts) == 1) | |
| 265 | - { | |
| 266 | - foreach ($ts as $t) | |
| 267 | - { | |
| 268 | - if ($oMap->getlayerbyname($t) == "") | |
| 269 | - { | |
| 270 | - $conta++; | |
| 271 | - if (($conta >= $int[0]) && ($conta <= $int[1])) | |
| 272 | - { | |
| 273 | - $l = $nmap->getlayerbyname($t); | |
| 274 | - $l->setmetadata("ows_title",pegaNome($l)); | |
| 275 | - $l->setmetadata("ows_srs","EPSG:4291 EPSG:4326"); | |
| 276 | - $l->set("status",MS_OFF); | |
| 277 | - $l->setmetadata("gml_include_items","all"); | |
| 278 | - $l->set("dump",MS_TRUE); | |
| 279 | - $l->setmetadata("WMS_INCLUDE_ITEMS","all"); | |
| 280 | - $l->setmetadata("WFS_INCLUDE_ITEMS","all"); | |
| 281 | - $l->setmetadata("ows_metadataurl_href",mb_convert_encoding($tm->TLINK,"HTML-ENTITIES","auto")); | |
| 282 | - $l->setmetadata("ows_metadataurl_type","TC211"); | |
| 283 | - $l->setmetadata("ows_metadataurl_format","text/html"); | |
| 284 | - ms_newLayerObj($oMap, $l); | |
| 285 | - } | |
| 286 | - } | |
| 287 | - } | |
| 288 | - } | |
| 283 | + $l = $nmap->getlayerbyname($t); | |
| 284 | + $l->setmetadata("ows_title",pegaNome($l)); | |
| 285 | + $l->setmetadata("ows_srs","EPSG:4291 EPSG:4326"); | |
| 286 | + $l->set("status",MS_OFF); | |
| 287 | + $l->setmetadata("gml_include_items","all"); | |
| 288 | + $l->set("dump",MS_TRUE); | |
| 289 | + $l->setmetadata("WMS_INCLUDE_ITEMS","all"); | |
| 290 | + $l->setmetadata("WFS_INCLUDE_ITEMS","all"); | |
| 291 | + $l->setmetadata("ows_metadataurl_href",mb_convert_encoding($tm->TLINK,"HTML-ENTITIES","auto")); | |
| 292 | + $l->setmetadata("ows_metadataurl_type","TC211"); | |
| 293 | + $l->setmetadata("ows_metadataurl_format","text/html"); | |
| 294 | + ms_newLayerObj($oMap, $l); | |
| 289 | 295 | } |
| 290 | 296 | } |
| 291 | 297 | } |
| 292 | - } | |
| 298 | + } | |
| 293 | 299 | } |
| 294 | 300 | } |
| 295 | 301 | } | ... | ... |