Commit 245fb615c84996287cdb2727d7807d396202eb3f
1 parent
7ef009ff
Exists in
master
and in
7 other branches
-
Showing
3 changed files
with
63 additions
and
45 deletions
Show diff stats
classesphp/classe_toponimia.php
| ... | ... | @@ -58,7 +58,7 @@ class Toponimia |
| 58 | 58 | |
| 59 | 59 | Objeto layer |
| 60 | 60 | */ |
| 61 | - protected $layer; | |
| 61 | + public $layer; | |
| 62 | 62 | /* |
| 63 | 63 | Variavel: $nome |
| 64 | 64 | |
| ... | ... | @@ -313,12 +313,15 @@ $item Lista de Itens separados por vírgula que serão utilizados. |
| 313 | 313 | { |
| 314 | 314 | if(!$this->layer){return "erro";} |
| 315 | 315 | $itens = $this->layer->getmetadata("ITENS"); |
| 316 | + $itens = explode(",",$itens); | |
| 316 | 317 | $itensdesc = $this->layer->getmetadata("ITENSDESC"); |
| 318 | + $itensdesc = explode(",",$itensdesc); | |
| 317 | 319 | $tips = $this->layer->getmetadata("TIP"); |
| 318 | 320 | $res = array( |
| 319 | - "itens"=>explode(",",$itens), | |
| 320 | - "itensdesc"=>explode(",",$itensdesc), | |
| 321 | - "tips"=>explode(",",$tips) | |
| 321 | + "itens"=>$itens, | |
| 322 | + "itensdesc"=>$itensdesc, | |
| 323 | + "tips"=>explode(",",$tips), | |
| 324 | + "comb"=>array_combine($itens,$itensdesc) | |
| 322 | 325 | ); |
| 323 | 326 | return($res); |
| 324 | 327 | } | ... | ... |
ferramentas/etiqueta/exec.php
| ... | ... | @@ -17,7 +17,8 @@ Ativa as etiquetas de um tema. |
| 17 | 17 | include_once(dirname(__FILE__)."/../../classesphp/classe_toponimia.php"); |
| 18 | 18 | copiaSeguranca($map_file); |
| 19 | 19 | $m = new Toponimia($map_file,$tema); |
| 20 | - $retorno = $m->ativaEtiquetas($item); | |
| 20 | + $retorno = $m->ativaEtiquetas($tips); | |
| 21 | + $m->layer->setmetadata("ITENS",$itens); | |
| 21 | 22 | $m->salva(); |
| 22 | 23 | $_SESSION["contadorsalva"]++; |
| 23 | 24 | break; | ... | ... |
ferramentas/etiqueta/index.js
| ... | ... | @@ -178,20 +178,12 @@ i3GEOF.etiqueta = { |
| 178 | 178 | i3GEO.php.listaItensTema(i3GEOF.etiqueta.montaListaItens,i3GEO.temaAtivo); |
| 179 | 179 | } |
| 180 | 180 | }, |
| 181 | - pegaDadosEtiquetas: function(){ | |
| 182 | - if(i3GEOF.etiqueta.aguarde.visibility === "visible") | |
| 183 | - {return;} | |
| 181 | + pegaDadosEtiquetas: function(funcao){ | |
| 184 | 182 | var cp = new cpaint(), |
| 185 | - temp, | |
| 186 | 183 | p; |
| 187 | - i3GEOF.etiqueta.aguarde.visibility = "visible"; | |
| 188 | - temp = function(retorno){ | |
| 189 | - i3GEOF.etiqueta.aguarde.visibility = "hidden"; | |
| 190 | - | |
| 191 | - }; | |
| 192 | 184 | p = i3GEO.configura.locaplic+"/ferramentas/etiqueta/exec.php?g_sid="+i3GEO.configura.sid+"&funcao=pegaDadosEtiquetas&tema="+i3GEO.temaAtivo; |
| 193 | 185 | cp.set_response_type("JSON"); |
| 194 | - cp.call(p,"etiqueta",temp); | |
| 186 | + cp.call(p,"etiqueta",funcao); | |
| 195 | 187 | }, |
| 196 | 188 | /* |
| 197 | 189 | Function: montaListaItens |
| ... | ... | @@ -203,29 +195,43 @@ i3GEOF.etiqueta = { |
| 203 | 195 | @TODO verificar quando um item ja esta na lista e marca-lo no checkbox |
| 204 | 196 | */ |
| 205 | 197 | montaListaItens: function(retorno){ |
| 206 | - var ins,i,n,itensatuais,item; | |
| 207 | - try{ | |
| 208 | - itensatuais = i3GEO.arvoreDeCamadas.pegaTema(i3GEO.temaAtivo); | |
| 209 | - itensatuais = itensatuais.etiquetas.split(","); | |
| 210 | - ins = []; | |
| 211 | - ins.push("<table class=lista >"); | |
| 212 | - n = retorno.data.valores.length; | |
| 213 | - for (i=0;i<n; i++){ | |
| 214 | - item = retorno.data.valores[i].item; | |
| 215 | - ins.push("<tr><td><input size=2 style='cursor:pointer' type=checkbox id=i3GEOetiqueta"+item+" /></td>"); | |
| 216 | - ins.push("<td> "+item+"</td>"); | |
| 217 | - } | |
| 218 | - $i("i3GEOetiquetalistai").innerHTML = ins.join(""); | |
| 219 | - n = itensatuais.length; | |
| 220 | - for (i=0;i<n; i++){ | |
| 221 | - item = $i("i3GEOetiqueta"+itensatuais[i]); | |
| 222 | - if(item) | |
| 223 | - {item.checked = true;} | |
| 198 | + var funcao = function(dadosItens){ | |
| 199 | + var ins,i,n,itensatuais,item,ck = '',lista; | |
| 200 | + lista = dadosItens.data.comb; | |
| 201 | + try{ | |
| 202 | + itensatuais = i3GEO.arvoreDeCamadas.pegaTema(i3GEO.temaAtivo); | |
| 203 | + itensatuais = itensatuais.etiquetas.split(","); | |
| 204 | + ins = []; | |
| 205 | + ins.push("<table class='lista6' >"); | |
| 206 | + ins.push("<tr><td>Coluna</td><td>Tip</td><td>Identifica</td>"); | |
| 207 | + n = retorno.data.valores.length; | |
| 208 | + for (i=0;i<n; i++){ | |
| 209 | + item = retorno.data.valores[i].item; | |
| 210 | + if(i3GEO.util.in_array(item,itensatuais)){ | |
| 211 | + ck = "checked"; | |
| 212 | + } | |
| 213 | + else{ | |
| 214 | + ck = ""; | |
| 215 | + } | |
| 216 | + ins.push("<tr>"); | |
| 217 | + ins.push("<td> "+item+"</td>"); | |
| 218 | + ins.push("<td><input style='cursor:pointer' "+ck+" type='checkbox' value='"+item+"' name='etiquetaTip' /></td>"); | |
| 219 | + if(lista[item]){ | |
| 220 | + ck = "checked"; | |
| 221 | + } | |
| 222 | + else{ | |
| 223 | + ck = ""; | |
| 224 | + } | |
| 225 | + ins.push("<td><input style='cursor:pointer' "+ck+" type='checkbox' value='"+item+"' name='identifica' /></td>"); | |
| 226 | + ins.push("</tr>"); | |
| 227 | + } | |
| 228 | + $i("i3GEOetiquetalistai").innerHTML = ins.join(""); | |
| 229 | + ins.push("</table>"); | |
| 224 | 230 | } |
| 225 | - ins.push("</table>"); | |
| 226 | - } | |
| 227 | - catch(e) | |
| 228 | - {$i("i3GEOetiquetalistai").innerHTML = "<p style=color:red >Erro<br>"+e;} | |
| 231 | + catch(e) | |
| 232 | + {$i("i3GEOetiquetalistai").innerHTML = "<p style=color:red >Erro<br>"+e;} | |
| 233 | + }; | |
| 234 | + i3GEOF.etiqueta.pegaDadosEtiquetas(funcao); | |
| 229 | 235 | }, |
| 230 | 236 | /* |
| 231 | 237 | Function: pegaItensMarcados |
| ... | ... | @@ -233,18 +239,22 @@ i3GEOF.etiqueta = { |
| 233 | 239 | Recupera os itens que foram marcados e monta uma lista para enviar como par�metro para a função de geração dos gráficos |
| 234 | 240 | */ |
| 235 | 241 | pegaItensMarcados: function(){ |
| 236 | - var listadeitens = [], | |
| 242 | + var tips = [], | |
| 243 | + itens = [], | |
| 237 | 244 | inputs = $i("i3GEOetiquetalistai").getElementsByTagName("input"), |
| 238 | 245 | i, |
| 239 | 246 | it, |
| 240 | 247 | n = inputs.length; |
| 241 | 248 | for (i=0;i<n; i++){ |
| 242 | - if (inputs[i].checked === true){ | |
| 243 | - it = inputs[i].id; | |
| 244 | - listadeitens.push(it.replace("i3GEOetiqueta","")); | |
| 249 | + it = inputs[i]; | |
| 250 | + if (it.checked === true && it.name === "etiquetaTip"){ | |
| 251 | + tips.push(it.value); | |
| 252 | + } | |
| 253 | + if (it.checked === true && it.name === "identifica"){ | |
| 254 | + itens.push(it.value); | |
| 245 | 255 | } |
| 246 | 256 | } |
| 247 | - return(listadeitens); | |
| 257 | + return([tips,itens]); | |
| 248 | 258 | }, |
| 249 | 259 | /* |
| 250 | 260 | Function: ativa |
| ... | ... | @@ -263,14 +273,18 @@ i3GEOF.etiqueta = { |
| 263 | 273 | cp = new cpaint(), |
| 264 | 274 | temp, |
| 265 | 275 | p; |
| 266 | - if(lista.length === 0) | |
| 267 | - {i3GEO.janela.tempoMsg("selecione um item");return;} | |
| 276 | + | |
| 268 | 277 | i3GEOF.etiqueta.aguarde.visibility = "visible"; |
| 269 | 278 | temp = function(retorno){ |
| 270 | 279 | i3GEOF.etiqueta.aguarde.visibility = "hidden"; |
| 271 | 280 | i3GEO.atualiza(retorno); |
| 272 | 281 | }; |
| 273 | - p = i3GEO.configura.locaplic+"/ferramentas/etiqueta/exec.php?g_sid="+i3GEO.configura.sid+"&funcao=ativaEtiquetas&tema="+i3GEO.temaAtivo+"&item="+lista.toString(","); | |
| 282 | + p = i3GEO.configura.locaplic+"/ferramentas/etiqueta/exec.php?g_sid=" | |
| 283 | + + i3GEO.configura.sid | |
| 284 | + + "&funcao=ativaEtiquetas&tema=" | |
| 285 | + + i3GEO.temaAtivo | |
| 286 | + + "&tips="+lista[0].toString(",") | |
| 287 | + + "&itens="+lista[1].toString(","); | |
| 274 | 288 | cp.set_response_type("JSON"); |
| 275 | 289 | cp.call(p,"etiqueta",temp); |
| 276 | 290 | }catch(e){i3GEO.janela.tempoMsg("Erro: "+e);i3GEOF.etiqueta.aguarde.visibility = "hidden";} | ... | ... |