Commit 1ce492752eb7add251a9e2e8317184a4f0193f27
1 parent
373d8e2c
Exists in
master
and in
7 other branches
Inclusão de mensagem de denied em camadas não disponíveis como OGC
Showing
1 changed file
with
38 additions
and
15 deletions
Show diff stats
ogc.php
... | ... | @@ -294,8 +294,7 @@ $cortePixels = 0; |
294 | 294 | if(file_exists($nomeMapfileTmp) && $tipo == ""){ |
295 | 295 | $oMap = ms_newMapobj($nomeMapfileTmp); |
296 | 296 | } |
297 | -else{ | |
298 | - | |
297 | +else{ | |
299 | 298 | if(empty($ogcwsmap)){ |
300 | 299 | $oMap = ms_newMapobj($locaplic."/aplicmap/ogcwsv".$versao.".map"); |
301 | 300 | } |
... | ... | @@ -328,7 +327,7 @@ else{ |
328 | 327 | } |
329 | 328 | $e = $oMap->extent; |
330 | 329 | $extensaoMap = ($e->minx)." ".($e->miny)." ".($e->maxx)." ".($e->maxy); |
331 | - | |
330 | + | |
332 | 331 | //gera o mapa |
333 | 332 | if ($tema != ""){ |
334 | 333 | $listatema = explode(" ",$tema); |
... | ... | @@ -341,7 +340,6 @@ else{ |
341 | 340 | $temai3geo = false; |
342 | 341 | $nmap->setmetadata("ows_enable_request","*"); |
343 | 342 | } |
344 | - | |
345 | 343 | foreach ($listatema as $tx){ |
346 | 344 | $extensao = ".map"; |
347 | 345 | if($temai3geo == true && file_exists($locaplic."/temas/".$tx.".php")){ |
... | ... | @@ -351,13 +349,10 @@ else{ |
351 | 349 | $extensao = ".gvp"; |
352 | 350 | } |
353 | 351 | if($extensao == ".map"){ |
354 | - | |
355 | 352 | //cria o mapfile com base no sistema de metadados estatisticos |
356 | 353 | //verifica se o id_medida_variavel existe no mapfile e nao foi passado como um parametro |
357 | 354 | if(!isset($id_medida_variavel) && $temai3geo == true){ |
358 | - | |
359 | - $nmap = ms_newMapobj($locaplic."/temas/".$tx.".map"); | |
360 | - | |
355 | + $nmap = ms_newMapobj($locaplic."/temas/".$tx.".map"); | |
361 | 356 | $l = $nmap->getlayer(0); |
362 | 357 | $teste = $l->getmetadata("METAESTAT_ID_MEDIDA_VARIAVEL"); |
363 | 358 | if($teste != "" && $l->data == ""){ |
... | ... | @@ -373,13 +368,11 @@ else{ |
373 | 368 | $nmap = ms_newMapobj($mapfileMetaestat["mapfile"]); |
374 | 369 | $nmap->setmetadata("ows_enable_request","*"); |
375 | 370 | $req->setParameter("LAYERS", "ogcmetaestat".$id_medida_variavel); |
376 | - } | |
377 | - | |
371 | + } | |
378 | 372 | if($temai3geo == true){ |
379 | 373 | $nmap = ms_newMapobj($locaplic."/temas/".$tx.".map"); |
380 | 374 | $nmap->setmetadata("ows_enable_request","*"); |
381 | 375 | } |
382 | - | |
383 | 376 | if($temai3geo == false || empty($layers)){ |
384 | 377 | $ts = $nmap->getalllayernames(); |
385 | 378 | $nmap->setmetadata("ows_enable_request","*"); |
... | ... | @@ -387,16 +380,13 @@ else{ |
387 | 380 | else{ |
388 | 381 | $ts = explode(",",str_replace(" ",",",$layers)); |
389 | 382 | } |
390 | - | |
391 | 383 | foreach ($ts as $t){ |
392 | 384 | $l = $nmap->getlayerbyname($t); |
393 | 385 | if($l == ""){ |
394 | 386 | $l = $nmap->getlayer(0); |
395 | 387 | } |
396 | - $permite = $l->getmetadata("permiteogc"); | |
397 | - | |
388 | + $permite = $l->getmetadata("permiteogc"); | |
398 | 389 | if(strtolower($permite) != "nao"){ |
399 | - | |
400 | 390 | //necessário pq o mapfile pode ter todos os layers como default |
401 | 391 | if($temai3geo == false){ |
402 | 392 | $l->set("status",MS_OFF); |
... | ... | @@ -476,6 +466,39 @@ else{ |
476 | 466 | $cache = false; |
477 | 467 | } |
478 | 468 | ms_newLayerObj($oMap, $l); |
469 | + } | |
470 | + else{ | |
471 | + //a camada nao pode ser usada como servico WMS, entao e enviada uma mensagem | |
472 | + $l->set("data",""); | |
473 | + $l->set("type",MS_POINT); | |
474 | + $l->setmetadata("cache","nao"); | |
475 | + //apaga as classes | |
476 | + $nclass = $l->numclasses; | |
477 | + for($i=0;$i<$nclass;$i++){ | |
478 | + $classe = $l->getclass($i); | |
479 | + $classe->set("status",MS_DELETE); | |
480 | + } | |
481 | + $l->updatefromstring(' | |
482 | + LAYER | |
483 | + SIZEUNITS PIXELS | |
484 | + TRANSFORM FALSE | |
485 | + CLASS | |
486 | + LABEL | |
487 | + SIZE 10 | |
488 | + TYPE truetype | |
489 | + FONT arial | |
490 | + COLOR 255 0 0 | |
491 | + POSITION cc | |
492 | + FORCE true | |
493 | + END | |
494 | + END | |
495 | + FEATURE POINTS 100 100 END | |
496 | + TEXT "OGC denied" END | |
497 | + FEATURE POINTS 100 120 END | |
498 | + TEXT "' . $l->name . '" END | |
499 | + END | |
500 | + '); | |
501 | + ms_newLayerObj($oMap, $l); | |
479 | 502 | } |
480 | 503 | } |
481 | 504 | } | ... | ... |