Commit 21baff3b6d0dc9648e110e16dc245f2413d82843

Authored by Edmar Moretti
1 parent 1427e2e1

Novos ícones no editor de mapfiles e mudanças no plugin parametrssql para permit…

…ir mudar variaveis apos adicionar a camada ao mapa
admin/admin.db
No preview for this file type
admin/imagens/i3geo2.jpg 0 → 100755

1.82 KB

admin/imagens/i3geo2editor.jpg 0 → 100755

2.11 KB

admin/js/editormapfile.js
... ... @@ -278,20 +278,21 @@ function montaNosRaiz(redesenha)
278 278 iconePlus = false;
279 279 conteudo += "<b>("+$mapfiles[i].extensao+") </b>";
280 280 }
281   - conteudo += "&nbsp;<img style=\"width:12px;position:relative;cursor:pointer;top:2px\" onclick=\"excluirMapfile('"+$mapfiles[i].codigo+"')\" title=excluir src=\"../imagens/01.png\" />";
  281 + conteudo += "&nbsp;<img style=\"margin-left:2px;width:12px;position:relative;cursor:pointer;top:2px\" onclick=\"excluirMapfile('"+$mapfiles[i].codigo+"')\" title=excluir src=\"../imagens/01.png\" />";
282 282 if(iconePlus)
283   - {conteudo += "&nbsp;<img style=\"width:12px;position:relative;cursor:pointer;top:2px\" onclick=\"clonarMapfile('"+$mapfiles[i].codigo+"')\" title='cria uma copia' src=\"../imagens/clonar.png\" />";}
284   - conteudo += "&nbsp;<img style=\"width:12px;position:relative;cursor:pointer;top:2px\" onclick=\"limparCacheMapfile('"+$mapfiles[i].codigo+"')\" title='limpa o cache de imagens se houver' src=\"../imagens/limparcache.png\" />";
285   - conteudo += "&nbsp;<img style=\"width:12px;position:relative;cursor:pointer;top:2px\" onclick=\"editorTemaMapfile('"+$mapfiles[i].codigo+"')\" title='editar tema associado' src=\"../imagens/03.png\" />";
  283 + {conteudo += "&nbsp;<img style=\"margin-left:2px;width:12px;position:relative;cursor:pointer;top:2px\" onclick=\"clonarMapfile('"+$mapfiles[i].codigo+"')\" title='cria uma copia' src=\"../imagens/clonar.png\" />";}
  284 + conteudo += "&nbsp;<img style=\"margin-left:2px;width:12px;position:relative;cursor:pointer;top:2px\" onclick=\"limparCacheMapfile('"+$mapfiles[i].codigo+"')\" title='limpa o cache de imagens se houver' src=\"../imagens/limparcache.png\" />";
  285 + conteudo += "&nbsp;<img style=\"margin-left:2px;width:12px;position:relative;cursor:pointer;top:2px\" onclick=\"editorTemaMapfile('"+$mapfiles[i].codigo+"')\" title='editar tema associado' src=\"../imagens/03.png\" />";
286 286 if(iconePlus){
287   - conteudo += "<a style='border:solid white 0px;text-decoration:none;' href='../php/editortexto.php?mapfile="+$mapfiles[i].codigo+"' target=_self >&nbsp;<img title='Editor de textos' style=\"border:0px solid white;width:12px;position:relative;cursor:pointer;top:2px\" src=\"../imagens/06.png\" /></a>";
  287 + conteudo += "<a style='margin-left:2px;border:solid white 0px;text-decoration:none;' href='../php/editortexto.php?mapfile="+$mapfiles[i].codigo+"' target=_self >&nbsp;<img title='Editor de textos' style=\"border:0px solid white;width:12px;position:relative;cursor:pointer;top:2px\" src=\"../imagens/06.png\" /></a>";
288 288 }
289 289 //opcao de download se for gvsig
290 290 if($mapfiles[i].extensao === "gvp"){
291   - conteudo += "&nbsp;<img style=\"width:12px;position:relative;cursor:pointer;top:2px\" onclick=\"downloadGvp('"+$mapfiles[i].codigo+"')\" title='download' src=\"../imagens/down1.gif\" />";
  291 + conteudo += "&nbsp;<img style=\"margin-left:2px;width:12px;position:relative;cursor:pointer;top:2px\" onclick=\"downloadGvp('"+$mapfiles[i].codigo+"')\" title='download' src=\"../imagens/down1.gif\" />";
292 292 }
293   - conteudo += "&nbsp;<img style=\"width:12px;position:relative;cursor:pointer;top:2px\" onclick=\"testarMapfile('"+$mapfiles[i].codigo+"','"+$mapfiles[i].extensao+"')\" title='testar!' src=\"../imagens/41.png\" />";
294   - conteudo += "&nbsp;<img width=20px style=\"position:relative;cursor:pointer;top:2px\" onclick=\"javascript:window.open('../../interface/black_editor.php?&temaEdicao="+$mapfiles[i].codigo+"')\" title='abrir no i3Geo' src=\"../../imagens/i3geo2.jpg\" />";
  293 + conteudo += "&nbsp;<img style=\"margin-left:2px;width:12px;position:relative;cursor:pointer;top:2px\" onclick=\"testarMapfile('"+$mapfiles[i].codigo+"','"+$mapfiles[i].extensao+"')\" title='testar!' src=\"../imagens/41.png\" />";
  294 + conteudo += "&nbsp;<img width=20px style=\"margin-left:2px;position:relative;cursor:pointer;top:2px\" onclick=\"javascript:window.open('../../interface/black_editor.php?&temaEdicao="+$mapfiles[i].codigo+"')\" title='editar no i3Geo' src=\"../imagens/i3geo2editor.jpg\" />";
  295 + conteudo += "&nbsp;<img width=20px style=\"margin-left:2px;position:relative;cursor:pointer;top:2px\" onclick=\"javascript:window.open('../../ms_criamapa.php?temasa="+$mapfiles[i].codigo+"&layers="+$mapfiles[i].codigo+"')\" title='testar no i3Geo' src=\"../imagens/i3geo2.jpg\" />";
295 296 conteudo += "<b>&nbsp;<span>"+$mapfiles[i].codigo+" <span style=color:gray id='idNome_"+$mapfiles[i].codigo+"'>"+$mapfiles[i].nome+"</span></span>";
296 297 if($mapfiles[i].imagem != "" && $i("mostraMini").checked == true){
297 298 conteudo += "</b><br><img src='../../temas/miniaturas/"+$mapfiles[i].imagem+"'/>";
... ...
admin/php/editormapfile.php
... ... @@ -137,7 +137,6 @@ switch (strtoupper($funcao))
137 137 retornaJSON($layer->getmetadata("PLUGINI3GEO"));
138 138 break;
139 139 case "GRAVAPLUGIN":
140   - //echo $plugin;exit;
141 140 $mapfile = $locaplic."/temas/".$codigoMap.".map";
142 141 $mapa = ms_newMapObj($mapfile);
143 142 $layer = $mapa->getlayerbyname($codigoLayer);
... ...
classesjs/classe_plugini3geo.js
... ... @@ -102,6 +102,13 @@ i3GEO.pluginI3geo =
102 102 formAdmin : function(plugin, configString) {
103 103 return i3GEO.pluginI3geo[plugin].formAdmin(configString);
104 104 },
  105 + /**
  106 + * Constroi um icone que sera adicionado na barra de icones do tema quando for adicionado na arvore de camadas
  107 + * Esse icone e utilizado para reabrir o formulario de parametros
  108 + */
  109 + iconeArvoreDeCamadas : function(nomecamada){
  110 + return i3GEO.pluginI3geo[plugin].iconeArvoreDeCamadas(nomecamada);
  111 + },
105 112 linkAjuda : function(plugin) {
106 113 return i3GEO.pluginI3geo[plugin].linkAjuda();
107 114 },
... ... @@ -234,6 +241,13 @@ i3GEO.pluginI3geo =
234 241 + " Veja o exemplo utilizado no tema _lmapadecalor.map</p>";
235 242 return ins;
236 243 },
  244 + /**
  245 + * Constroi um icone que sera adicionado na barra de icones do tema quando for adicionado na arvore de camadas
  246 + * Esse icone e utilizado para reabrir o formulario de parametros
  247 + */
  248 + iconeArvoreDeCamadas : function(nomecamada){
  249 + return false;
  250 + },
237 251 googlemaps : {
238 252 aplicaPropriedades : function(camada) {
239 253 camada.sel = "nao";
... ... @@ -511,6 +525,13 @@ i3GEO.pluginI3geo =
511 525  
512 526 return ins;
513 527 },
  528 + /**
  529 + * Constroi um icone que sera adicionado na barra de icones do tema quando for adicionado na arvore de camadas
  530 + * Esse icone e utilizado para reabrir o formulario de parametros
  531 + */
  532 + iconeArvoreDeCamadas : function(nomecamada){
  533 + return false;
  534 + },
514 535 googlemaps : {
515 536 aplicaPropriedades : function(camada) {
516 537 camada.sel = "nao";
... ... @@ -853,6 +874,13 @@ i3GEO.pluginI3geo =
853 874 + "<p>Veja o exemplo utilizado no tema _lmapakml.map</p>";
854 875 return ins;
855 876 },
  877 + /**
  878 + * Constroi um icone que sera adicionado na barra de icones do tema quando for adicionado na arvore de camadas
  879 + * Esse icone e utilizado para reabrir o formulario de parametros
  880 + */
  881 + iconeArvoreDeCamadas : function(nomecamada){
  882 + return false;
  883 + },
856 884 googlemaps : {
857 885 aplicaPropriedades : function(camada) {
858 886 camada.sel = "nao";
... ... @@ -996,6 +1024,8 @@ i3GEO.pluginI3geo =
996 1024 }
997 1025 }
998 1026 },
  1027 + //TODO incluir um marcador que indique se o formulario sera aberto ao adicionar a camada ou nao
  1028 + //TODO apos adicionar a camada, incluir icone que permita modificar os parametros
999 1029 /**
1000 1030 * Section: i3GEO.pluginI3geo.parametrossql
1001 1031 *
... ... @@ -1018,8 +1048,9 @@ i3GEO.pluginI3geo =
1018 1048 * Exemplo:
1019 1049 *
1020 1050 * "PLUGINI3GEO"
1021   - * '{"plugin":"parametrossql","parametros":{[{"titulo":"","tipo":"input|select","valores":[],"chave":"","php":""}]}}'
  1051 + * '{"plugin":"parametrossql","parametros":{[{"titulo":"","tipo":"input|select","valores":[],"chave":"","prog":"","ativo":sim|nao}]}}'
1022 1052 *
  1053 + * A op&ccedil;&atilde;o &quot;ativo&quot; indica se o formul&aacute;rio ser&aacute; aberto ou n&atilde;o quando a camada for adicionada ao mapa
1023 1054 */
1024 1055 parametrossql : {
1025 1056 linkAjuda : function() {
... ... @@ -1028,7 +1059,7 @@ i3GEO.pluginI3geo =
1028 1059 },
1029 1060 formAdmin : function(config) {
1030 1061 var n, i, parametros, ins = "", configDefault =
1031   - '{"plugin":"parametrossql","parametros":[{"titulo":"","tipo":"input","valores":[],"chave":"","prog":""},{"titulo":"","tipo":"input","valores":[],"chave":"","prog":""},{"titulo":"","tipo":"input","valores":[],"chave":"","prog":""},{"titulo":"","tipo":"input","valores":[],"chave":"","prog":""}]}';
  1062 + '{"plugin":"parametrossql","ativo":"sim","parametros":[{"titulo":"","tipo":"input","valores":[],"chave":"","prog":""},{"titulo":"","tipo":"input","valores":[],"chave":"","prog":""},{"titulo":"","tipo":"input","valores":[],"chave":"","prog":""},{"titulo":"","tipo":"input","valores":[],"chave":"","prog":""}]}';
1032 1063 if (config === "") {
1033 1064 config = configDefault;
1034 1065 }
... ... @@ -1038,7 +1069,18 @@ i3GEO.pluginI3geo =
1038 1069 }
1039 1070 parametros = config.parametros;
1040 1071 n = 4;
1041   - ins += "<table><tr><td>T&iacute;tulo</td><td>Chave</td><td>Tipo (input ou select)</td><td>Valores</td><td>PHP que retorna os valores (opcional)</td></tr>";
  1072 + if(config.ativo == undefined){
  1073 + config.ativo = "sim";
  1074 + }
  1075 + ins += "<p class='paragrafo'>Abre o formul&aacute;rio quando a camada &eacute; adicionada ao mapa: (true ou false)</p>";
  1076 + ins += "<select style='width:200px' id='parametrosSqlAtivo' ><option value='' ></option>";
  1077 + if(config.ativo === "nao"){
  1078 + ins += "<option value=sim >sim</option><option value=nao selected >nao</option></select>";
  1079 + } else{
  1080 + ins += "<option value=sim selected >sim</option><option value=nao >nao</option></select>";
  1081 + }
  1082 +
  1083 + ins += "<table><tr><td>T&iacute;tulo</td><td>Chave</td><td>Tipo (input ou select)</td><td>Valores</td><td>PHP que retorna os valores (opcional)</td></tr>";
1042 1084 for (i = 0; i < n; i++) {
1043 1085 ins += "<tr><td><input name='titulo' type=text size=20 value='"
1044 1086 + parametros[i].titulo
... ... @@ -1054,7 +1096,8 @@ i3GEO.pluginI3geo =
1054 1096 + "' /></td> "
1055 1097 + "<td><input name='prog' type=text size=20 value='"
1056 1098 + parametros[i].prog
1057   - + "' /></td></tr>";
  1099 + + "' /></td> "
  1100 + + "<td></tr>";
1058 1101 }
1059 1102 ins +=
1060 1103 "</table>"
... ... @@ -1063,6 +1106,7 @@ i3GEO.pluginI3geo =
1063 1106 + "<br>Ser&aacute; mostrado ao usu&aacute;rio um formul&aacute;rio com op&ccedil;&otilde;es. Cada op&ccedil;&atilde;o conter&aacute; um t&iacute;tulo e um campo de formul&aacute;rio"
1064 1107 + "<br>Cada campo de formul&aacute;rio pode ser dos tipos input (para digitar um valor) ou select (caixa de op&ccedil;&otilde;es)."
1065 1108 + "<br>Em valores deve ser definida a lista ou o valor default que ser&aacute; mostrado. No caso de listas, utilize v&iacute;rgula para separar os valores."
  1109 + + "<br>Em ativo, &eacute; indicado com sim ou nao se o formul&aacute;rio ser&aacute; aberto quando a camada for adicionada ao mapa."
1066 1110 + "<br>Como opcional, pode ser definido o endere&ccedil;o de um programa PHP que retorna a lista de nomes e valores que ser&atilde;o utilizados para preencher "
1067 1111 + "o campo de escolha. Para mais informa&ccedil;&otilde;es, veja o mapfile i3geo/temas/_llocaliphp.map. O caminho desse arquivo PHP &eacute; relativo &agrave; pasta i3geo.";
1068 1112 return ins;
... ... @@ -1075,7 +1119,7 @@ i3GEO.pluginI3geo =
1075 1119 for (j = 0; j < nlinhas; j++) {
1076 1120 temp = [];
1077 1121 for (i = 0; i < ncampos; i++) {
1078   - if(campos[campo]){
  1122 + if(campos[campo] && campos[campo].name != ""){
1079 1123 temp.push('"'+campos[campo].name
1080 1124 + '" : "'
1081 1125 + campos[campo].value
... ... @@ -1087,10 +1131,17 @@ i3GEO.pluginI3geo =
1087 1131 + temp.join(",")
1088 1132 + "}");
1089 1133 }
1090   - return '{"plugin":"parametrossql","parametros":['
  1134 + return '{"plugin":"parametrossql","ativo":"' + $i("parametrosSqlAtivo").value + '","parametros":['
1091 1135 + par.join(",")
1092 1136 + ']}';
1093 1137 },
  1138 + /**
  1139 + * Constroi um icone que sera adicionado na barra de icones do tema quando for adicionado na arvore de camadas
  1140 + * Esse icone e utilizado para reabrir o formulario de parametros
  1141 + */
  1142 + iconeArvoreDeCamadas : function(nomecamada){
  1143 + return false;
  1144 + },
1094 1145 inicia : function(camada) {
1095 1146 i3GEO.janela.fechaAguarde("aguardePlugin");
1096 1147 var iniciaform = function() {
... ...
ferramentas/conectarwms/index.js
... ... @@ -168,7 +168,7 @@ Veja:
168 168  
169 169 <TEMASWMS>
170 170 */
171   -function clickGuia3()
  171 +function clickGuia3(codLayer)
172 172 {
173 173 var listatemas = function(retorno)
174 174 {
... ... @@ -190,6 +190,8 @@ function clickGuia3()
190 190 $i("textoSLD").style.display = "block";
191 191 }
192 192 }
  193 + //ativa um layer caso tenha sido enviado como um parametro no inicio da ferramenta
  194 + ativaAutoLayer(codLayer);
193 195 }
194 196 else
195 197 {$i("listatemas").innerHTML = "erro";}
... ... @@ -209,6 +211,20 @@ function clickGuia3()
209 211 cp.call(p,"temaswms",listatemas);
210 212 }
211 213 }
  214 +function ativaAutoLayer(codLayer){
  215 + if(codLayer && codLayer != ""){
  216 + var container = $i("listatemas"),
  217 + rs = container.getElementsByTagName("input"),
  218 + nrs = re.lenght,
  219 + i,r;
  220 + for(i = 0; i < nrs; i++){
  221 + r = rs[i];
  222 + if(r.type === "radio" && r.name === codLayer){
  223 + r.onclick.call();
  224 + }
  225 + }
  226 + }
  227 +}
212 228 /*
213 229 Function: registraws
214 230  
... ...
ferramentas/conectarwms/listalayers.php
  1 +<?php
  2 +/**
  3 + * Este programa e utilizado pela ferramenta buscainde
  4 + * E uma copia da ferramenta conctarwms sem mostrar as guias de esolha de servico
  5 + * Isso pq o endereco do servico e um parametro obtido em $_GET["servico"]
  6 + */
  7 +?>
1 8 <html>
  9 +
2 10 <head>
3 11 <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-8859-1">
4 12 <link rel="stylesheet" type="text/css" href="../../css/i3geo_ferramentas6.css">
... ... @@ -43,11 +51,38 @@ p{
43 51 </div>
44 52 </div>
45 53 <input type=hidden id=servico value="<?php echo $_GET["servico"];?>" />
  54 +
46 55 <script src="../i3geo_tudo_compacto.js.php" type="text/javascript"></script>
47 56 <script type="text/javascript" src="index.js"></script>
  57 +
48 58 <script type="text/javascript" >
  59 +//
  60 +//tenta pegar o codigo do layer do endereco do servico
  61 +//
  62 +var buscarEm = ["LAYER","LAYERS","layer","layers","tema","typename","typeName"],
  63 + n = buscarEm.length,
  64 + i,s,partes,
  65 + b = [],
  66 + codLayer = "",
  67 + u = window.location.href;
  68 +
  69 +//acrescenta novas strings
  70 +for(i = 0; i < n; i++){
  71 + b.push("&" + buscarEm[i] + "=");
  72 + b.push("?" + buscarEm[i] + "=");
  73 +}
  74 +n = b.length;
  75 +//quebra as strings pra achar o padrao
  76 +for(i = 0; i < n; i++){
  77 + s = b[i];
  78 + partes = u.split(s);
  79 + if(partes.length > 1){
  80 + partes = partes[1].split("&");
  81 + codLayer = partes[0];
  82 + }
  83 +}
49 84 g_locaplic = "../..";
50   -clickGuia3();
  85 +clickGuia3(codLayer);
51 86 </script>
52 87 </body>
53 88 </html>
... ...
ferramentas/parametrossql/exec.php
... ... @@ -16,6 +16,8 @@ Aplica a substituicao de chaves pelos valores enviados
16 16 //pega o layer
17 17 $nomeLayer = "";
18 18 $c = $map->numlayers;
  19 + //obtem o layer existente no mapfile
  20 + //esse layer pode conter o nome no metadata nomeoriginal ou em NAME
19 21 for ($i=0;$i < $c;++$i){
20 22 $layer = $map->getlayer($i);
21 23 if($layer->name == $tema){
... ... @@ -31,68 +33,69 @@ Aplica a substituicao de chaves pelos valores enviados
31 33 }
32 34 else{
33 35 $layer = $map->getlayerbyname($nomeLayer);
34   - $data = $layer->data;
35   - //pega as chaves do proprio mapfile
36   - $c = $layer->getmetadata("PLUGINI3GEO");
37   - if($c == ""){
38   - //tenta pegar os parametros do arquivo mapfile original
39   - $map1 = ms_newMapObj($locaplic."/temas/".$nomeLayer.".map");
40   - $layer1 = $map1->getlayerbyname($nomeLayer);
41   - $c = $layer1->getmetadata("PLUGINI3GEO");
42   - if($c == ""){
43   - $retorno = "erro";
44   - }
  36 + //os parametros do plugin sao obtidos do mapfile original
  37 + //isso evita que o mapfile temporario contenha as informacoes
  38 + //sobre as variaveis de substituicao
  39 + if(file_exists($locaplic."/temas/".$nomeLayer.".map")){
  40 + $map1 = @ms_newMapObj($locaplic."/temas/".$nomeLayer.".map");
45 41 }
46   - if($c != ""){
47   - $cs = json_decode($c,true);
48   - $cs = $cs["parametros"];
49   - $chaves = array();
50   - foreach($cs as $c){
51   - $chaves[] = $c["chave"];
52   - }
53   - $chaves = implode(",",$chaves);
54   - //verifica se o layer ja teve os parametros substituidos anteriormente
55   - //nesse caso, o data he obtido do metadata que guarda o valor original
56   - if($layer->getmetadata("DATAORIGINAL") != ""){
57   - $data = $layer->getmetadata("DATAORIGINAL");
58   - }
59   - else{
60   - $layer->setmetadata("DATAORIGINAL",$data);
61   - }
62   - $filtro = $layer->getFilterString();
63   - if($layer->getmetadata("FILTROORIGINAL") != ""){
64   - $filtro = $layer->getmetadata("FILTROORIGINAL");
65   - }
66   - else{
67   - $layer->setmetadata("FILTROORIGINAL",$filtro);
68   - }
69   - $chaves = str_ireplace(array("and", "or", "select","from","where","update","delete","insert","--"),"",$chaves);
70   - $chaves = explode(",",$chaves);
71   - $valores = str_ireplace(array("and", "or", "select","from","where","update","delete","insert","--"),"",$valores);
72   - $valores = explode(",",strip_tags($valores));
73   - $n = count($chaves);
74   - for($i = 0; $i < $n; $i++){
75   - if($chaves[$i] != ""){
76   - $v = $valores[$i];
77   - $data = str_replace($chaves[$i],$v,$data);
78   - if($filtro != ""){
79   - $filtro = str_replace($chaves[$i],$v,$filtro);
  42 + elseif (file_exists($locaplic."/temas/".$layer->getmetadata("nomeoriginal").".map")){
  43 + $map1 = @ms_newMapObj($locaplic."/temas/".$layer->getmetadata("nomeoriginal").".map");
  44 + }
  45 + if($map1){
  46 + $layer1 = $map1->getlayerbyname($nomeLayer);
  47 + if($layer1 != ""){
  48 + $data = $layer1->data;
  49 + $c = $layer1->getmetadata("PLUGINI3GEO");
  50 + if($c == ""){
  51 + $retorno = "erro";
  52 + }
  53 + if($c != ""){
  54 + $cs = json_decode($c,true);
  55 + $cs = $cs["parametros"];
  56 + $chaves = array();
  57 + foreach($cs as $c){
  58 + $chaves[] = $c["chave"];
80 59 }
  60 + $chaves = implode(",",$chaves);
  61 + $filtro = $layer1->getFilterString();
  62 + if(!empty($valores)){
  63 + $chaves = str_ireplace(array("and", "or", "select","from","where","update","delete","insert","--"),"",$chaves);
  64 + $chaves = explode(",",$chaves);
  65 + $valores = str_ireplace(array("and", "or", "select","from","where","update","delete","insert","--"),"",$valores);
  66 + $valores = explode(",",strip_tags($valores));
  67 + $n = count($chaves);
  68 + for($i = 0; $i < $n; $i++){
  69 + if($chaves[$i] != ""){
  70 + $v = $valores[$i];
  71 + $data = str_replace($chaves[$i],$v,$data);
  72 + if($filtro != ""){
  73 + $filtro = str_replace($chaves[$i],$v,$filtro);
  74 + }
  75 + }
  76 + }
  77 + if($filtro != ""){
  78 + $layer->setfilter($filtro);
  79 + }
  80 + $layer->set("data",$data);
  81 + }
  82 + $layer->set("status",MS_DEFAULT);
  83 + $layer->setmetadata("PLUGINI3GEO",'{"plugin":"parametrossql","ativo":"sim","parametros":[{"titulo":"","tipo":"input","valores":[],"chave":"","prog":""}');
  84 + $layer->setmetadata("TEMA",$layer->getmetadata("TEMA")." - ".implode(",",$valores));
  85 + $layer->set("name","plugin".nomeRandomico());
  86 + if (connection_aborted()){
  87 + exit();
  88 + }
  89 + $salvo = $map->save($map_file);
  90 + $retorno = "ok";
81 91 }
82 92 }
83   - if($filtro != ""){
84   - $layer->setfilter($filtro);
  93 + else{
  94 + $retorno = "layer $nomeLayer nao encontrado";
85 95 }
86   - $layer->set("data",$data);
87   - $layer->set("status",MS_DEFAULT);
88   - $layer->setmetadata("PLUGINI3GEO","");
89   - $layer->setmetadata("TEMA",$layer->getmetadata("TEMA")." - ".implode(",",$valores));
90   - $layer->set("name","plugin".nomeRandomico());
91   - if (connection_aborted()){
92   - exit();
93   - }
94   - $salvo = $map->save($map_file);
95   - $retorno = "ok";
  96 + }
  97 + else{
  98 + $retorno = "mapfile nao encontrado em temas";
96 99 }
97 100 }
98 101 break;
... ...
ferramentas/parametrossql/index.js
... ... @@ -106,6 +106,20 @@ i3GEOF.parametrossql = {
106 106 Cria a janela flutuante para controle da ferramenta.
107 107 */
108 108 iniciaJanelaFlutuante: function(camada){
  109 + //verifica se deve ser aberto o formulario
  110 + if(camada.plugini3geo.ativo != undefined && camada.plugini3geo.ativo === "nao"){
  111 + fim = function(){
  112 + i3GEO.atualiza();
  113 + };
  114 + p = i3GEO.configura.locaplic+"/ferramentas/parametrossql/exec.php?g_sid="+i3GEO.configura.sid
  115 + + "&funcao=aplicar"
  116 + + "&tema=" + camada.name
  117 + + "&chaves=&valores=";
  118 + cp = new cpaint();
  119 + cp.set_response_type("JSON");
  120 + cp.call(p,"foo",fim);
  121 + return;
  122 + }
109 123 var minimiza,cabecalho,janela,divid,temp,titulo;
110 124 if($i("i3GEOF.parametrossql")){
111 125 i3GEOF.parametrossql.inicia("i3GEOF.parametrossql_corpo",camada);
... ...
temas/_llocaliphp.map
... ... @@ -4,6 +4,7 @@ MAP
4 4 LAYER
5 5 CONNECTION ""
6 6 DATA "/var/www/i3geo/aplicmap/dados/locali.shp"
  7 + FILTER (([ANOCRIA] = 1990))
7 8 METADATA
8 9 "METAESTAT_ID_MEDIDA_VARIAVEL" ""
9 10 "TIP" "TIPO,NOMELOC,ANOCRIA"
... ... @@ -35,7 +36,7 @@ MAP
35 36 "permitecomentario" "SIM"
36 37 "LTEMPOITEMICONE" ""
37 38 "metaestat" ""
38   - "PLUGINI3GEO" '{"plugin":"parametrossql","parametros":[{"titulo" : "Ano de criação","chave" : "1990","tipo" : "input","valores" : "","prog" : "aplicmap/dados/listaano.php"},{"titulo" : "","chave" : "","tipo" : "input","valores" : "","prog" : ""},{"titulo" : "","chave" : "","tipo" : "input","valores" : "","prog" : ""},{"titulo" : "","chave" : "","tipo" : "input","valores" : "","prog" : ""}]}'
  39 + "PLUGINI3GEO" '{"plugin":"parametrossql","ativo":"nao","parametros":[{"titulo" : "Ano de criação","chave" : "1990","tipo" : "input","valores" : "","prog" : "aplicmap/dados/listaano.php"},{"titulo" : "","chave" : "","tipo" : "input","valores" : "","prog" : ""},{"titulo" : "","chave" : "","tipo" : "input","valores" : "","prog" : ""},{"titulo" : "","chave" : "","tipo" : "input","valores" : "","prog" : ""}]}'
39 40 "download" "SIM"
40 41 "itembuscarapida" "NOMELOC"
41 42 "ITENS" "NOMEMUN,TIPO,NOMELOC,ANOCRIA"
... ... @@ -57,7 +58,6 @@ MAP
57 58 TEMPLATE "none.htm"
58 59 TILEITEM "location"
59 60 TYPE POINT
60   - FILTER (([ANOCRIA] = 1990))
61 61 UNITS METERS
62 62 CLASS
63 63 NAME "Vila"
... ...