Commit 7641fa594c5f165e8afb152e2fa26e7ac86af825
1 parent
33547218
Exists in
master
and in
7 other branches
Modificações em função da nova opção de acesso aos dados via kml vetorial.
Inclusão da opção de definiçao do acesso aos dados no formato KMZ. Validação da realização de querys, prevenindo erros devido a falta da coluna kmz_tema.
Showing
6 changed files
with
55 additions
and
29 deletions
Show diff stats
admin/js/listatemas.js
... | ... | @@ -95,6 +95,11 @@ function montaDivTemas(i) |
95 | 95 | ins += "<p>Permite acesso via kml?<br>" |
96 | 96 | ins += "<select id='kml_tema' >" |
97 | 97 | ins += core_combosimnao(i.kml_tema) |
98 | + ins += "</select></p>" | |
99 | + | |
100 | + ins += "<p>Permite acesso via kmz (kml com dados vetoriais)?<br>" | |
101 | + ins += "<select id='kmz_tema' >" | |
102 | + ins += core_combosimnao(i.kmz_tema) | |
98 | 103 | ins += "</select></p><br><br><br>" |
99 | 104 | |
100 | 105 | ins += "<input type=hidden id=codigo_tema value='"+i.codigo_tema+"'/>" |
... | ... | @@ -102,10 +107,20 @@ function montaDivTemas(i) |
102 | 107 | } |
103 | 108 | function gravaDadosTema(id) |
104 | 109 | { |
105 | - var campos = new Array("nome","desc","link","tags","tipo","ogc","download","kml","codigo") | |
110 | + //validacao | |
111 | + if($i("kml_tema") && $i("kmz_tema"){ | |
112 | + if($i("kmz_tema").value == "SIM") | |
113 | + {$i("kml_tema").value = "SIM";} | |
114 | + if($i("kml_tema").value == "NAO") | |
115 | + {$i("kmz_tema").value = "NAO";} | |
116 | + } | |
117 | + var campos = new Array("nome","desc","link","tags","tipo","ogc","download","kml","codigo","kmz") | |
106 | 118 | var par = "" |
107 | 119 | for (i=0;i<campos.length;i++) |
108 | - {par += "&"+campos[i]+"="+($i(campos[i]+"_tema").value)} | |
120 | + { | |
121 | + if($i(campos[i]+"_tema")) | |
122 | + par += "&"+campos[i]+"="+($i(campos[i]+"_tema").value) | |
123 | + } | |
109 | 124 | par += "&id="+id |
110 | 125 | core_carregando("ativa"); |
111 | 126 | core_carregando(" gravando o registro do id= "+id); | ... | ... |
admin/php/admin.php
... | ... | @@ -177,23 +177,28 @@ Executa um sql de busca de dados |
177 | 177 | */ |
178 | 178 | function pegaDados($sql,$locaplic="") |
179 | 179 | { |
180 | - try | |
181 | - { | |
182 | - $resultado = array(); | |
183 | - if($locaplic == "") | |
184 | - include("conexao.php"); | |
185 | - else | |
186 | - include("$locaplic/admin/php/conexao.php"); | |
187 | - $q = $dbh->query($sql,PDO::FETCH_ASSOC); | |
188 | - $resultado = $q->fetchAll(); | |
189 | - $dbh = null; | |
190 | - $dbhw = null; | |
191 | - return $resultado; | |
192 | - } | |
193 | - catch (PDOException $e) | |
194 | - { | |
195 | - return "Error!: " . $e->getMessage(); | |
196 | - } | |
180 | + $resultado = array(); | |
181 | + if($locaplic == "") | |
182 | + include("conexao.php"); | |
183 | + else | |
184 | + include("$locaplic/admin/php/conexao.php"); | |
185 | + error_reporting(E_ALL); | |
186 | + $q = $dbh->query($sql,PDO::FETCH_ASSOC); | |
187 | + if($q) | |
188 | + { | |
189 | + $resultado = $q->fetchAll(); | |
190 | + $dbh = null; | |
191 | + $dbhw = null; | |
192 | + //error_reporting(0); | |
193 | + return $resultado; | |
194 | + } | |
195 | + else | |
196 | + { | |
197 | + $e = $dbh->errorInfo(); | |
198 | + echo " erro: ".$e[2]; | |
199 | + //echo $sql; | |
200 | + return; | |
201 | + } | |
197 | 202 | } |
198 | 203 | /* |
199 | 204 | Function: verificaFilhos | ... | ... |
admin/php/conexao.php
admin/php/criabanco.php
... | ... | @@ -9,7 +9,7 @@ $tabelas = array( |
9 | 9 | "CREATE TABLE i3geoadmin_grupos (desc_grupo TEXT, id_grupo INTEGER PRIMARY KEY, nome_grupo TEXT)", |
10 | 10 | "CREATE TABLE i3geoadmin_sistemasf (abrir_funcao TEXT, h_funcao NUMERIC, id_funcao INTEGER PRIMARY KEY, id_sistema NUMERIC, nome_funcao TEXT, perfil_funcao TEXT, w_funcao NUMERIC)", |
11 | 11 | "CREATE TABLE i3geoadmin_subgrupos (desc_subgrupo TEXT, id_subgrupo INTEGER PRIMARY KEY, nome_subgrupo TEXT)", |
12 | -"CREATE TABLE i3geoadmin_temas (id_tema INTEGER PRIMARY KEY, nacessos INTEGER, kml_tema TEXT, ogc_tema TEXT, download_tema TEXT, tags_tema TEXT, tipoa_tema TEXT, link_tema TEXT, desc_tema TEXT, nome_tema TEXT, codigo_tema TEXT)", | |
12 | +"CREATE TABLE i3geoadmin_temas (id_tema INTEGER PRIMARY KEY, nacessos INTEGER, kml_tema TEXT, kmz_tema TEXT, ogc_tema TEXT, download_tema TEXT, tags_tema TEXT, tipoa_tema TEXT, link_tema TEXT, desc_tema TEXT, nome_tema TEXT, codigo_tema TEXT)", | |
13 | 13 | "CREATE TABLE i3geoadmin_ws (nacessos INTEGER, nacessosok INTEGER, autor_ws TEXT, desc_ws TEXT, id_ws INTEGER PRIMARY KEY, link_ws TEXT, nome_ws TEXT, tipo_ws TEXT)", |
14 | 14 | "CREATE TABLE i3geoadmin_tags (id_tag INTEGER PRIMARY KEY, nome TEXT)", |
15 | 15 | "CREATE TABLE i3geoadmin_perfis (id_perfil INTEGER PRIMARY KEY, perfil TEXT)", | ... | ... |
admin/php/editormapfile.php
... | ... | @@ -289,7 +289,7 @@ function criarNovoMap() |
289 | 289 | fwrite($fp,$dado."\n"); |
290 | 290 | } |
291 | 291 | require_once("conexao.php"); |
292 | - $dbhw->query("INSERT INTO i3geoadmin_temas (link_tema,kml_tema,ogc_tema,download_tema,desc_tema,tipoa_tema,tags_tema,nome_tema,codigo_tema) VALUES ('','', '','','','','','$nome','$codigo')"); | |
292 | + $dbhw->query("INSERT INTO i3geoadmin_temas (link_tema,kml_tema,kmz_tema,ogc_tema,download_tema,desc_tema,tipoa_tema,tags_tema,nome_tema,codigo_tema) VALUES ('','','', '','','','','','$nome','$codigo')"); | |
293 | 293 | $dbh = null; |
294 | 294 | $dbhw = null; |
295 | 295 | return "ok"; | ... | ... |
admin/php/menutemas.php
... | ... | @@ -135,12 +135,12 @@ switch ($funcao) |
135 | 135 | case "pegaTemaPorMapfile": |
136 | 136 | $sql = "SELECT * from i3geoadmin_temas where codigo_tema = '$codigo_tema'"; |
137 | 137 | $dados = pegaDados($sql); |
138 | - if(count($dados) == 0) | |
138 | + if(is_array($dados) && count($dados) == 0) | |
139 | 139 | { |
140 | 140 | registraTema(); |
141 | 141 | $dados = pegaDados($sql); |
142 | 142 | } |
143 | - if(count($dados) > 1) | |
143 | + if(is_array($dados) && count($dados) > 1) | |
144 | 144 | {$dados = "erro. Mais de um mapfile com mesmo código registrado no banco";} |
145 | 145 | retornaJSON($dados); |
146 | 146 | exit; |
... | ... | @@ -380,6 +380,7 @@ function pegaTemas() |
380 | 380 | "download_tema"=>$row['download_tema'], |
381 | 381 | "ogc_tema"=>$row['ogc_tema'], |
382 | 382 | "kml_tema"=>$row['kml_tema'], |
383 | + "kmz_tema"=>$row['kmz_tema'], | |
383 | 384 | "tags_tema"=>$row['tags_tema'] |
384 | 385 | ); |
385 | 386 | } |
... | ... | @@ -709,7 +710,7 @@ function registraTema() |
709 | 710 | $sql = "SELECT * from i3geoadmin_temas where codigo_tema = '$codigo_tema'"; |
710 | 711 | $dados = pegaDados($sql); |
711 | 712 | if(count($dados) == 0) |
712 | - {$dbhw->query("INSERT INTO i3geoadmin_temas (nome_tema,codigo_tema,kml_tema,ogc_tema,download_tema,tags_tema,link_tema,desc_tema) VALUES ('$codigo_tema','$codigo_tema','SIM','SIM','SIM','','','')");} | |
713 | + {$dbhw->query("INSERT INTO i3geoadmin_temas (nome_tema,codigo_tema,kml_tema,kmz_tema,ogc_tema,download_tema,tags_tema,link_tema,desc_tema) VALUES ('$codigo_tema','$codigo_tema','SIM','NAO','SIM','SIM','','','')");} | |
713 | 714 | $dbhw = null; |
714 | 715 | $dbh = null; |
715 | 716 | return "ok"; |
... | ... | @@ -727,7 +728,7 @@ Altera o registro de um tema. Se id for vazio acrescenta o registro |
727 | 728 | */ |
728 | 729 | function alteraTemas() |
729 | 730 | { |
730 | - global $nome,$desc,$id,$codigo,$tipoa,$download,$ogc,$kml,$link,$tags; | |
731 | + global $nome,$desc,$id,$codigo,$tipoa,$download,$ogc,$kml,$link,$tags,$kmz; | |
731 | 732 | //error_reporting(E_ALL); |
732 | 733 | try |
733 | 734 | { |
... | ... | @@ -741,7 +742,10 @@ function alteraTemas() |
741 | 742 | } |
742 | 743 | if($id != "") |
743 | 744 | { |
745 | + if(!isset($kmz)) | |
744 | 746 | $dbhw->query("UPDATE i3geoadmin_temas SET tags_tema='$tags', link_tema='$link', nome_tema ='$nome',desc_tema='$desc',codigo_tema='$codigo',tipoa_tema='$tipoa',download_tema='$download',ogc_tema='$ogc',kml_tema='$kml' WHERE id_tema = $id"); |
747 | + else | |
748 | + $dbhw->query("UPDATE i3geoadmin_temas SET tags_tema='$tags', link_tema='$link', nome_tema ='$nome',desc_tema='$desc',codigo_tema='$codigo',tipoa_tema='$tipoa',download_tema='$download',ogc_tema='$ogc',kml_tema='$kml',kmz_tema='$kmz' WHERE id_tema = $id"); | |
745 | 749 | $retorna = $id; |
746 | 750 | } |
747 | 751 | else |
... | ... | @@ -750,7 +754,10 @@ function alteraTemas() |
750 | 754 | $id = $dbh->query("SELECT * FROM i3geoadmin_temas WHERE nome_tema = 'xxxxxX'"); |
751 | 755 | $id = $id->fetchAll(); |
752 | 756 | $id = intval($id[0]['id_tema']); |
757 | + if(!isset($kmz)) | |
753 | 758 | $dbhw->query("UPDATE i3geoadmin_temas SET tags_tema='', link_tema='', nome_tema ='',desc_tema='',codigo_tema='',tipoa_tema='',download_tema='',ogc_tema='',kml_tema='' WHERE id_tema = $id"); |
759 | + else | |
760 | + $dbhw->query("UPDATE i3geoadmin_temas SET tags_tema='', link_tema='', nome_tema ='',desc_tema='',codigo_tema='',tipoa_tema='',download_tema='',ogc_tema='',kml_tema='',kmz_tema='' WHERE id_tema = $id"); | |
754 | 761 | $retorna = $id; |
755 | 762 | } |
756 | 763 | //verifica se é necessário adicionar algum tag novo |
... | ... | @@ -913,7 +920,7 @@ function importarXmlMenu() |
913 | 920 | { |
914 | 921 | $nome = str_replace("'","",$nome); |
915 | 922 | $descricao = str_replace("'","",$descricao); |
916 | - $dbhw->query("INSERT INTO i3geoadmin_temas (nacessos,kml_tema,ogc_tema,download_tema,tags_tema,tipoa_tema,link_tema,desc_tema,nome_tema,codigo_tema) VALUES (0,'$kml','$ogc','$down','$tags','$tipo','$link','$descricao','$nome','$codigo')"); | |
923 | + $dbhw->query("INSERT INTO i3geoadmin_temas (nacessos,kml_tema,kmz_tema,ogc_tema,download_tema,tags_tema,tipoa_tema,link_tema,desc_tema,nome_tema,codigo_tema) VALUES (0,'$kml','NAO','$ogc','$down','$tags','$tipo','$link','$descricao','$nome','$codigo')"); | |
917 | 924 | } |
918 | 925 | $temasExistentes[$codigo] = 0; |
919 | 926 | } |
... | ... | @@ -941,7 +948,7 @@ function importarXmlMenu() |
941 | 948 | { |
942 | 949 | $nome = str_replace("'","",$nome); |
943 | 950 | $descricao = str_replace("'","",$descricao); |
944 | - $dbhw->query("INSERT INTO i3geoadmin_temas (nacessos,kml_tema,ogc_tema,download_tema,tags_tema,tipoa_tema,link_tema,desc_tema,nome_tema,codigo_tema) VALUES (0,'$kml','$ogc','$down','$tags','$tipo','$link','$descricao','$nome','$codigo')"); | |
951 | + $dbhw->query("INSERT INTO i3geoadmin_temas (nacessos,kml_tema,kmz_tema,ogc_tema,download_tema,tags_tema,tipoa_tema,link_tema,desc_tema,nome_tema,codigo_tema) VALUES (0,'$kml','NAO','$ogc','$down','$tags','$tipo','$link','$descricao','$nome','$codigo')"); | |
945 | 952 | } |
946 | 953 | $temasExistentes[$codigo] = 0; |
947 | 954 | } |
... | ... | @@ -969,7 +976,7 @@ function importarXmlMenu() |
969 | 976 | { |
970 | 977 | $nome = str_replace("'","",$nome); |
971 | 978 | $descricao = str_replace("'","",$descricao); |
972 | - $dbhw->query("INSERT INTO i3geoadmin_temas (nacessos,kml_tema,ogc_tema,download_tema,tags_tema,tipoa_tema,link_tema,desc_tema,nome_tema,codigo_tema) VALUES (0,'$kml','$ogc','$down','$tags','$tipo','$link','$descricao','$nome','$codigo')"); | |
979 | + $dbhw->query("INSERT INTO i3geoadmin_temas (nacessos,kml_tema,kmz_tema,ogc_tema,download_tema,tags_tema,tipoa_tema,link_tema,desc_tema,nome_tema,codigo_tema) VALUES (0,'$kml','NAO','$ogc','$down','$tags','$tipo','$link','$descricao','$nome','$codigo')"); | |
973 | 980 | } |
974 | 981 | $temasExistentes[$codigo] = 0; |
975 | 982 | } | ... | ... |