Commit 3a36fa57da486d1dc968deac06d4b6e058c683dd

Authored by Edmar Moretti
1 parent 931e4cbf

Correção na árvore de temas KML usada no google earth

admin/admin.db
No preview for this file type
@@ -44,18 +44,15 @@ include_once ("classesphp/classe_menutemas.php"); @@ -44,18 +44,15 @@ include_once ("classesphp/classe_menutemas.php");
44 include_once ("ms_configura.php"); 44 include_once ("ms_configura.php");
45 include_once ("admin/php/conexao.php"); 45 include_once ("admin/php/conexao.php");
46 $encoding = "ISO-8859-1"; 46 $encoding = "ISO-8859-1";
47 -if($convUTF == true)  
48 -{$encoding = "UTF-8";}  
49 -if(!isset($idioma))  
50 -{$idioma = "pt";}  
51 -if(isset($_GET["tipoxml"]) && $_GET["tipoxml"] == "kml"){  
52 - echo header('Content-type: application/vnd.google-earth.kml+xml');  
53 - echo header('Content-Disposition: attachment; filename="i3geo.kml"'); 47 +if($convUTF == true){
  48 + $encoding = "UTF-8";
  49 +}
  50 +if(!isset($idioma)){
  51 + $idioma = "pt";
54 } 52 }
55 -else  
56 -{echo header("Content-type: application/xml");}  
57 -echo '<?xml version="1.0" encoding="'.$encoding.'"?>';  
58 -echo "<kml xmlns='http://earth.google.com/kml/2.2'>\n"; 53 +
  54 +$xml = '<?xml version="1.0" encoding="'.$encoding.'"?>';
  55 +$xml .= "<kml xmlns='http://earth.google.com/kml/2.2'>\n";
59 56
60 // 57 //
61 //pega os endere&ccedil;os para compor a url de chamada do gerador de web services 58 //pega os endere&ccedil;os para compor a url de chamada do gerador de web services
@@ -67,54 +64,69 @@ $protocolo1 = strtolower($protocolo . &#39;://&#39;.$_SERVER[&#39;SERVER_NAME&#39;]); @@ -67,54 +64,69 @@ $protocolo1 = strtolower($protocolo . &#39;://&#39;.$_SERVER[&#39;SERVER_NAME&#39;]);
67 $protocolo = $protocolo . '://'.$_SERVER['SERVER_NAME'] .":". $_SERVER['SERVER_PORT']; 64 $protocolo = $protocolo . '://'.$_SERVER['SERVER_NAME'] .":". $_SERVER['SERVER_PORT'];
68 $urli3geo = str_replace("/kml.php","",$protocolo.$_SERVER["PHP_SELF"]); 65 $urli3geo = str_replace("/kml.php","",$protocolo.$_SERVER["PHP_SELF"]);
69 //error_reporting(0); 66 //error_reporting(0);
70 -if(!isset($perfil)){$perfil = "";} 67 +if(!isset($perfil)){
  68 + $perfil = "";
  69 +}
71 // 70 //
72 //monta o xml 71 //monta o xml
73 // 72 //
74 -echo "<Document><name>Menu i3geo</name><open>0</open><description></description><visibility>0</visibility>\n"; 73 +$xml .= "<Document><name>Menu i3geo</name><open>0</open><description></description><visibility>0</visibility>\n";
75 include(dirname(__FILE__)."/admin/php/admin.php"); 74 include(dirname(__FILE__)."/admin/php/admin.php");
76 if(!empty($esquemaadmin)){ 75 if(!empty($esquemaadmin)){
77 $esquemaadmin = str_replace(".","",$esquemaadmin)."."; 76 $esquemaadmin = str_replace(".","",$esquemaadmin).".";
78 } 77 }
79 -if($idioma == "pt")  
80 -{$coluna = "nome_menu";}  
81 -else  
82 -{$coluna = $idioma;} 78 +if($idioma == "pt"){
  79 + $coluna = "nome_menu";
  80 +}
  81 +else{
  82 + $coluna = $idioma;
  83 +}
83 $menus = pegaDados("SELECT publicado_menu,perfil_menu,aberto,desc_menu,id_menu,$coluna as nome_menu from ".$esquemaadmin."i3geoadmin_menus where lower(publicado_menu) != 'nao' or publicado_menu is null order by nome_menu "); 84 $menus = pegaDados("SELECT publicado_menu,perfil_menu,aberto,desc_menu,id_menu,$coluna as nome_menu from ".$esquemaadmin."i3geoadmin_menus where lower(publicado_menu) != 'nao' or publicado_menu is null order by nome_menu ");
  85 +
  86 +//echo "<pre>menu - ".var_dump($menus);exit;
84 foreach($menus as $menu){ 87 foreach($menus as $menu){
85 - kml_cabecalho($menu["nome_menu"],$menu["desc_menu"]); 88 + $xml .= kml_cabecalho($menu["nome_menu"],$menu["desc_menu"]);
86 $id_menu = $menu["id_menu"]; 89 $id_menu = $menu["id_menu"];
87 //raiz 90 //raiz
88 - if($idioma == "pt")  
89 - {$coluna = "nome_tema";}  
90 - else  
91 - {$coluna = $idioma;} 91 + if($idioma == "pt") {
  92 + $coluna = "nome_tema";
  93 + }
  94 + else{
  95 + $coluna = $idioma;
  96 + }
  97 +
92 $sql = "select id_raiz,i3geoadmin_raiz.id_tema,$coluna as nome_tema,tipoa_tema,codigo_tema,kmz_tema FROM ".$esquemaadmin."i3geoadmin_raiz LEFT JOIN ".$esquemaadmin."i3geoadmin_temas ON i3geoadmin_temas.id_tema = i3geoadmin_raiz.id_tema where (lower(i3geoadmin_temas.tipoa_tema) != 'wms' or i3geoadmin_temas.tipoa_tema is null) and (lower(i3geoadmin_temas.kml_tema) != 'nao' or i3geoadmin_temas.kml_tema isnull) and i3geoadmin_temas.tipoa_tema != 'WMS' and i3geoadmin_temas.kml_tema != 'nao' and i3geoadmin_raiz.id_menu='$id_menu' and i3geoadmin_raiz.nivel = 0 and i3geoadmin_raiz.id_nivel = 0 order by ordem"; 98 $sql = "select id_raiz,i3geoadmin_raiz.id_tema,$coluna as nome_tema,tipoa_tema,codigo_tema,kmz_tema FROM ".$esquemaadmin."i3geoadmin_raiz LEFT JOIN ".$esquemaadmin."i3geoadmin_temas ON i3geoadmin_temas.id_tema = i3geoadmin_raiz.id_tema where (lower(i3geoadmin_temas.tipoa_tema) != 'wms' or i3geoadmin_temas.tipoa_tema is null) and (lower(i3geoadmin_temas.kml_tema) != 'nao' or i3geoadmin_temas.kml_tema isnull) and i3geoadmin_temas.tipoa_tema != 'WMS' and i3geoadmin_temas.kml_tema != 'nao' and i3geoadmin_raiz.id_menu='$id_menu' and i3geoadmin_raiz.nivel = 0 and i3geoadmin_raiz.id_nivel = 0 order by ordem";
93 $temas = pegaDados($sql); 99 $temas = pegaDados($sql);
94 if(count($temas) > 0){ 100 if(count($temas) > 0){
95 - foreach ($temas as $tema)  
96 - {kml_tema_bd($tema);} 101 + foreach ($temas as $tema){
  102 + $xml .= kml_tema_bd($tema);
  103 + }
97 } 104 }
  105 +
98 if($idioma == "pt"){ 106 if($idioma == "pt"){
99 $coluna = "nome_grupo"; 107 $coluna = "nome_grupo";
100 } 108 }
101 else{ 109 else{
102 $coluna = $idioma; 110 $coluna = $idioma;
103 } 111 }
  112 +
104 $grupos = pegaDados("SELECT $coluna as nome_grupo,n1.id_n1,n1.id_grupo,gr.desc_grupo from ".$esquemaadmin."i3geoadmin_n1 as n1,".$esquemaadmin."i3geoadmin_grupos as gr where (lower(n1.publicado) != 'nao' or n1.publicado is null) and n1.id_menu = '$id_menu' and n1.id_grupo = gr.id_grupo order by gr.nome_grupo"); 113 $grupos = pegaDados("SELECT $coluna as nome_grupo,n1.id_n1,n1.id_grupo,gr.desc_grupo from ".$esquemaadmin."i3geoadmin_n1 as n1,".$esquemaadmin."i3geoadmin_grupos as gr where (lower(n1.publicado) != 'nao' or n1.publicado is null) and n1.id_menu = '$id_menu' and n1.id_grupo = gr.id_grupo order by gr.nome_grupo");
105 foreach($grupos as $grupo){ 114 foreach($grupos as $grupo){
106 - kml_cabecalho($grupo["nome_grupo"],$grupo["desc_grupo"]); 115 + $xml .= kml_cabecalho($grupo["nome_grupo"],$grupo["desc_grupo"]);
107 $id_grupo = $grupo["id_grupo"]; 116 $id_grupo = $grupo["id_grupo"];
108 //raiz 117 //raiz
109 - if($idioma == "pt")  
110 - {$coluna = "nome_tema";}  
111 - else  
112 - {$coluna = $idioma;} 118 + if($idioma == "pt"){
  119 + $coluna = "nome_tema";
  120 + }
  121 + else{
  122 + $coluna = $idioma;
  123 + }
113 $sql = "select id_raiz,i3geoadmin_raiz.id_tema,$coluna as nome_tema,tipoa_tema,kml_tema,kmz_tema,codigo_tema FROM ".$esquemaadmin."i3geoadmin_raiz LEFT JOIN ".$esquemaadmin."i3geoadmin_temas ON i3geoadmin_temas.id_tema = i3geoadmin_raiz.id_tema where lower(i3geoadmin_temas.tipoa_tema) != 'wms' and lower(i3geoadmin_temas.kml_tema) != 'nao' and i3geoadmin_temas.tipoa_tema != 'WMS' and i3geoadmin_temas.kml_tema != 'nao' and i3geoadmin_raiz.id_menu='$id_menu' and i3geoadmin_raiz.nivel = 1 and i3geoadmin_raiz.id_nivel = ".$grupo["id_n1"]." order by ordem"; 124 $sql = "select id_raiz,i3geoadmin_raiz.id_tema,$coluna as nome_tema,tipoa_tema,kml_tema,kmz_tema,codigo_tema FROM ".$esquemaadmin."i3geoadmin_raiz LEFT JOIN ".$esquemaadmin."i3geoadmin_temas ON i3geoadmin_temas.id_tema = i3geoadmin_raiz.id_tema where lower(i3geoadmin_temas.tipoa_tema) != 'wms' and lower(i3geoadmin_temas.kml_tema) != 'nao' and i3geoadmin_temas.tipoa_tema != 'WMS' and i3geoadmin_temas.kml_tema != 'nao' and i3geoadmin_raiz.id_menu='$id_menu' and i3geoadmin_raiz.nivel = 1 and i3geoadmin_raiz.id_nivel = ".$grupo["id_n1"]." order by ordem";
114 $temas = pegaDados($sql); 125 $temas = pegaDados($sql);
115 if(count($temas) > 0){ 126 if(count($temas) > 0){
116 - foreach ($temas as $tema)  
117 - {kml_tema_bd($tema);} 127 + foreach ($temas as $tema){
  128 + $xml .= kml_tema_bd($tema);
  129 + }
118 } 130 }
119 if($idioma == "pt"){ 131 if($idioma == "pt"){
120 $coluna = "nome_subgrupo"; 132 $coluna = "nome_subgrupo";
@@ -123,12 +135,13 @@ foreach($menus as $menu){ @@ -123,12 +135,13 @@ foreach($menus as $menu){
123 $coluna = $idioma; 135 $coluna = $idioma;
124 } 136 }
125 $sql = "select s.$coluna as nome_subgrupo,n2.id_n2 from ".$esquemaadmin."i3geoadmin_n2 as n2,".$esquemaadmin."i3geoadmin_n1 as n1, ".$esquemaadmin."i3geoadmin_subgrupos as s "; 137 $sql = "select s.$coluna as nome_subgrupo,n2.id_n2 from ".$esquemaadmin."i3geoadmin_n2 as n2,".$esquemaadmin."i3geoadmin_n1 as n1, ".$esquemaadmin."i3geoadmin_subgrupos as s ";
126 - $sql .= "where n1.id_grupo = '$id_grupo' and n2.id_subgrupo = s.id_subgrupo "; 138 + $sql .= "where n1.id_menu = '$id_menu' and n1.id_grupo = '$id_grupo' and n2.id_subgrupo = s.id_subgrupo ";
127 $sql .= "and n2.id_n1 = n1.id_n1 "; 139 $sql .= "and n2.id_n1 = n1.id_n1 ";
128 $sql .= "and (n1.n1_perfil = '' or n1.n1_perfil is null) and (n2.n2_perfil = '' or n2.n2_perfil isnull) "; 140 $sql .= "and (n1.n1_perfil = '' or n1.n1_perfil is null) and (n2.n2_perfil = '' or n2.n2_perfil isnull) ";
129 $sql .= "and (lower(n2.publicado) != 'nao' or n2.publicado is null) "; 141 $sql .= "and (lower(n2.publicado) != 'nao' or n2.publicado is null) ";
130 $sql .= "order by s.nome_subgrupo"; 142 $sql .= "order by s.nome_subgrupo";
131 $subgrupos = pegaDados($sql); 143 $subgrupos = pegaDados($sql);
  144 + //var_dump($subgrupos);
132 if($idioma == "pt"){ 145 if($idioma == "pt"){
133 $coluna = "nome_tema"; 146 $coluna = "nome_tema";
134 } 147 }
@@ -145,20 +158,32 @@ foreach($menus as $menu){ @@ -145,20 +158,32 @@ foreach($menus as $menu){
145 $sql .= "and (lower(t.tipoa_tema) != 'wms' or t.tipoa_tema is null)"; 158 $sql .= "and (lower(t.tipoa_tema) != 'wms' or t.tipoa_tema is null)";
146 $sql .= "and (lower(n3.publicado) != 'nao' or n3.publicado is null) "; 159 $sql .= "and (lower(n3.publicado) != 'nao' or n3.publicado is null) ";
147 $temas = pegadados($sql); 160 $temas = pegadados($sql);
148 - kml_folder($subgrupo["nome_subgrupo"]); 161 + $xml .= kml_folder($subgrupo["nome_subgrupo"]);
149 if(count($temas) > 0){ 162 if(count($temas) > 0){
150 - foreach ($temas as $tema)  
151 - {kml_tema_bd($tema);} 163 + foreach ($temas as $tema){
  164 + $xml .= kml_tema_bd($tema);
  165 + }
152 } 166 }
153 - echo "</Folder>\n"; 167 + $xml .= "</Folder>\n";
154 } 168 }
155 - echo "</Folder>\n"; 169 + $xml .= "</Folder>\n";
156 } 170 }
157 - echo "</Folder>\n"; 171 + $xml .= "</Folder>\n";
158 } 172 }
159 -echo "</Document></kml>\n"; 173 +
  174 +$xml .= "</Document></kml>\n";
  175 +//exit;
  176 +if(isset($_GET["tipoxml"]) && $_GET["tipoxml"] == "kml"){
  177 + echo header('Content-type: application/vnd.google-earth.kml+xml');
  178 + echo header('Content-Disposition: attachment; filename="i3geo.kml"');
  179 +}
  180 +else{
  181 + echo header("Content-type: application/xml");
  182 +}
  183 +echo $xml;
160 function kml_tema_bd($tema){ 184 function kml_tema_bd($tema){
161 global $urli3geo; 185 global $urli3geo;
  186 + $xml = "";
162 $teste = array_keys($tema); 187 $teste = array_keys($tema);
163 if(in_array("link_tema",$teste)){ 188 if(in_array("link_tema",$teste)){
164 $fonte = $tema["link_tema"]; 189 $fonte = $tema["link_tema"];
@@ -176,29 +201,34 @@ function kml_tema_bd($tema){ @@ -176,29 +201,34 @@ function kml_tema_bd($tema){
176 } 201 }
177 $fonte = "<a href='$fonte' >Fonte </a>"; 202 $fonte = "<a href='$fonte' >Fonte </a>";
178 $legenda = "<a href='$urli3geo/ogc.php?tema=$id&layer=$id&request=getlegendgraphic&service=wms&format=image/jpeg' >Legenda </a>"; 203 $legenda = "<a href='$urli3geo/ogc.php?tema=$id&layer=$id&request=getlegendgraphic&service=wms&format=image/jpeg' >Legenda </a>";
179 - 204 + $urlLegenda = $urli3geo."/ogc.php?tema=$id&layer=$id&request=getlegendgraphic&service=wms&format=image/jpeg";
180 $href = "$urli3geo/ogc.php?tema=$id&amp;width=800&amp;height=800&amp;VERSION=1.1.1&amp;REQUEST=GetMap&amp;SRS=EPSG:4326&amp;STYLES=&amp;BGCOLOR=0xFFFFFF&amp;FORMAT=image/png&amp;TRANSPARENT=TRUE&amp;layers=$id"; 205 $href = "$urli3geo/ogc.php?tema=$id&amp;width=800&amp;height=800&amp;VERSION=1.1.1&amp;REQUEST=GetMap&amp;SRS=EPSG:4326&amp;STYLES=&amp;BGCOLOR=0xFFFFFF&amp;FORMAT=image/png&amp;TRANSPARENT=TRUE&amp;layers=$id";
181 - kml_servico($nome,$fonte,$legenda,$desc,$href); 206 +
  207 + $xml .= kml_servico($nome,$fonte,$legenda,$desc,$href,$urlLegenda);
182 208
183 if(strtolower($tema["kmz_tema"]) == "sim"){ 209 if(strtolower($tema["kmz_tema"]) == "sim"){
184 $href = "$urli3geo/pacotes/kmlmapserver/kmlservice.php?request=kmz&amp;map=$id&amp;typename=$id"; 210 $href = "$urli3geo/pacotes/kmlmapserver/kmlservice.php?request=kmz&amp;map=$id&amp;typename=$id";
185 - kml_networklink($nome." (vetorial)",$fonte,$legenda,$desc,$href); 211 + $xml .= kml_networklink($nome." (vetorial)",$fonte,$legenda,$desc,$href);
186 } 212 }
  213 + return $xml;
187 } 214 }
188 function kml_cabecalho($nome,$desc){ 215 function kml_cabecalho($nome,$desc){
189 - echo "<Folder>\n";  
190 - echo " <name>".str_replace("&","&amp;",kml_converteTexto($nome))."</name>\n";  
191 - echo " <description>".str_replace("&","&amp;",kml_converteTexto($desc))."</description>\n";  
192 - echo " <open>0</open><visibility>0</visibility>\n"; 216 + $xml = "<Folder>\n";
  217 + $xml .= " <name>".str_replace("&","&amp;",kml_converteTexto($nome))."</name>\n";
  218 + $xml .= " <description>".str_replace("&","&amp;",kml_converteTexto($desc))."</description>\n";
  219 + $xml .= " <open>0</open><visibility>0</visibility>\n";
  220 + return $xml;
193 } 221 }
194 -function kml_folder($nome){  
195 - echo " <Folder>\n";  
196 - echo " <name>".str_replace("&","&amp;",kml_converteTexto($nome))."</name>\n";  
197 - echo " <description></description>\n";  
198 - echo " <open>0</open><visibility>0</visibility>\n"; 222 +function kml_folder($nome,$open=0,$vis=0){
  223 + $xml = " <Folder>\n";
  224 + $xml .= " <name>".str_replace("&","&amp;",kml_converteTexto($nome))."</name>\n";
  225 + $xml .= " <description></description>\n";
  226 + $xml .= " <open>$open</open><visibility>$vis</visibility>\n";
  227 + return $xml;
199 } 228 }
200 function kml_tema($tema){ 229 function kml_tema($tema){
201 global $urli3geo; 230 global $urli3geo;
  231 + $xml = "";
202 $nome = kml_converteTexto($tema->TNOME); 232 $nome = kml_converteTexto($tema->TNOME);
203 $desc = kml_converteTexto($tema->TDESC); 233 $desc = kml_converteTexto($tema->TDESC);
204 $id = kml_converteTexto($tema->TID); 234 $id = kml_converteTexto($tema->TID);
@@ -218,31 +248,46 @@ function kml_tema($tema){ @@ -218,31 +248,46 @@ function kml_tema($tema){
218 248
219 $legenda = "<a href='$urli3geo/ogc.php?tema=$id&layer=$id&request=getlegendgraphic&service=wms&format=image/png' >Legenda </a>"; 249 $legenda = "<a href='$urli3geo/ogc.php?tema=$id&layer=$id&request=getlegendgraphic&service=wms&format=image/png' >Legenda </a>";
220 $href = "$urli3geo/ogc.php?tema=$id&amp;width=800&amp;height=800&amp;VERSION=1.1.1&amp;REQUEST=GetMap&amp;SRS=EPSG:4326&amp;STYLES=&amp;BGCOLOR=0xFFFFFF&amp;FORMAT=image/png&amp;TRANSPARENT=TRUE&amp;layers=$id"; 250 $href = "$urli3geo/ogc.php?tema=$id&amp;width=800&amp;height=800&amp;VERSION=1.1.1&amp;REQUEST=GetMap&amp;SRS=EPSG:4326&amp;STYLES=&amp;BGCOLOR=0xFFFFFF&amp;FORMAT=image/png&amp;TRANSPARENT=TRUE&amp;layers=$id";
221 - kml_servico($nome,$fonte,$legenda,$desc,$href); 251 + $xml .= kml_servico($nome,$fonte,$legenda,$desc,$href);
222 } 252 }
  253 + return $xml;
223 } 254 }
224 -function kml_servico($nome,$fonte,$legenda,$desc,$href){  
225 - echo " <GroundOverlay>\n";  
226 - echo " <name>".str_replace("&","&amp;",kml_converteTexto($nome))."</name>\n";  
227 - echo " <description><![CDATA[".$fonte.$legenda.$desc."]]></description>\n";  
228 - echo " <visibility>0</visibility>\n";  
229 - echo " <Icon>\n";  
230 - echo " <viewRefreshMode>onStop</viewRefreshMode>\n";  
231 - echo " <href>$href</href>\n";  
232 - echo " </Icon>\n";  
233 - echo " <LatLonBox><north>9.49014618085</north><south>-39.3925604735</south><east>-29.5851853</east><west>-76.5125927</west></LatLonBox>\n";  
234 - echo " </GroundOverlay>\n"; 255 +function kml_servico($nome,$fonte,$legenda,$desc,$href,$urlLegenda){
  256 + $xml = kml_folder($nome);
  257 + $xml .= "<ScreenOverlay>\n";
  258 + $xml .= "<name>Legenda</name>\n";
  259 + $xml .= "<visibility>0</visibility>\n";
  260 + $xml .= "<Icon>\n";
  261 + $xml .= "<href><![CDATA[".$urlLegenda."]]></href>\n";
  262 + $xml .= "</Icon>\n";
  263 + $xml .= "<overlayXY x='0.01' y='0.14' xunits='fraction' yunits='fraction'/>\n";
  264 + $xml .= "<screenXY x='0.01' y='0.14' xunits='fraction' yunits='fraction'/>\n";
  265 + $xml .= "<size x='-1' y='-1' xunits='pixels' yunits='pixels'/>\n";
  266 + $xml .= "</ScreenOverlay>\n";
  267 + $xml .= " <GroundOverlay>\n";
  268 + $xml .= " <name>".str_replace("&","&amp;",kml_converteTexto($nome))."</name>\n";
  269 + $xml .= " <description><![CDATA[".$fonte.$legenda.$desc."]]></description>\n";
  270 + $xml .= " <visibility>0</visibility>\n";
  271 + $xml .= " <Icon>\n";
  272 + $xml .= " <viewRefreshMode>onStop</viewRefreshMode>\n";
  273 + $xml .= " <href>$href</href>\n";
  274 + $xml .= " </Icon>\n";
  275 + $xml .= " <LatLonBox><north>9.49014618085</north><south>-39.3925604735</south><east>-29.5851853</east><west>-76.5125927</west></LatLonBox>\n";
  276 + $xml .= " </GroundOverlay>\n";
  277 + $xml .= "</Folder>";
  278 + return $xml;
235 } 279 }
236 function kml_networklink($nome,$fonte,$legenda,$desc,$href){ 280 function kml_networklink($nome,$fonte,$legenda,$desc,$href){
237 - echo " <NetworkLink>\n";  
238 - echo " <name>".str_replace("&","&amp;",kml_converteTexto($nome))."</name>\n";  
239 - echo " <description><![CDATA[".$fonte.$legenda.$desc."]]></description>\n";  
240 - echo " <visibility>0</visibility>\n";  
241 - echo " <Link>\n";  
242 - echo " <viewRefreshMode>never</viewRefreshMode>\n";  
243 - echo " <href>$href</href>\n";  
244 - echo " </Link>\n";  
245 - echo " </NetworkLink>\n"; 281 + $xml = " <NetworkLink>\n";
  282 + $xml .= " <name>".str_replace("&","&amp;",kml_converteTexto($nome))."</name>\n";
  283 + $xml .= " <description><![CDATA[".$fonte.$legenda.$desc."]]></description>\n";
  284 + $xml .= " <visibility>0</visibility>\n";
  285 + $xml .= " <Link>\n";
  286 + $xml .= " <viewRefreshMode>never</viewRefreshMode>\n";
  287 + $xml .= " <href>$href</href>\n";
  288 + $xml .= " </Link>\n";
  289 + $xml .= " </NetworkLink>\n";
  290 + return $xml;
246 } 291 }
247 function kml_converteTexto($i){ 292 function kml_converteTexto($i){
248 global $encoding; 293 global $encoding;
pacotes/kmlmapserver/classes/layerserver.class.php
@@ -212,8 +212,8 @@ class LayerServer { @@ -212,8 +212,8 @@ class LayerServer {
212 // Set endpoint 212 // Set endpoint
213 //die($_SERVER['REQUEST_URI']); 213 //die($_SERVER['REQUEST_URI']);
214 214
215 - $protocolo = explode("/",$_SERVER['SERVER_PROTOCOL']);  
216 - $protocolo = strtolower($protocolo[0]); 215 + $protocolo = explode("/",$_SERVER['SERVER_PROTOCOL']);
  216 + $protocolo = strtolower($protocolo[0]);
217 $this->endpoint = $protocolo . '://'.$_SERVER['SERVER_NAME'] . ($_SERVER['SERVER_PORT'] ? ':'.$_SERVER['SERVER_PORT'] : '') . $_SERVER['PHP_SELF']; 217 $this->endpoint = $protocolo . '://'.$_SERVER['SERVER_NAME'] . ($_SERVER['SERVER_PORT'] ? ':'.$_SERVER['SERVER_PORT'] : '') . $_SERVER['PHP_SELF'];
218 218
219 // Process request 219 // Process request
@@ -223,9 +223,7 @@ class LayerServer { @@ -223,9 +223,7 @@ class LayerServer {
223 if($this->has_error()){ 223 if($this->has_error()){
224 $this->add_errors(); 224 $this->add_errors();
225 } 225 }
226 -  
227 return $this->send_stream($this->get_kml()); 226 return $this->send_stream($this->get_kml());
228 -  
229 } 227 }
230 228
231 /** 229 /**