Commit 245fb615c84996287cdb2727d7807d396202eb3f

Authored by Edmar Moretti
1 parent 7ef009ff

-

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>&nbsp;"+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>&nbsp;"+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&ccedil;&atilde;o de gera&ccedil;&atilde;o dos gr&aacute;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";}
... ...