funcoes.php
2.45 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
<?php
namespace admin\catalogo\mapfile\cdados;
function listar($locaplic,$codigo){
// pega o nome registrado no mapfile
if (! file_exists ( $locaplic . "/temas/" . $codigo . ".map" )) {
header ( "HTTP/1.1 500 erro mapfile nao existe" );
exit ();
}
$mapa = ms_newMapObj ( $locaplic . "/temas/" . $codigo . ".map" );
$layer = $mapa->getlayerbyname ( $codigo );
if ($layer == "") {
header ( "HTTP/1.1 500 erro nao existe LAYER com o nome $codigo" );
exit ();
}
$dados = array ();
$dados["escala"] = $layer->getmetadata("escala");
$dados["extensao"] = $layer->getmetadata("extensao");
$versao = versao();
$versao = $versao["principal"];
if($versao >= 7){
$dados["encoding"] = $layer->encoding;
}
else {
$dados["encoding"] = "notInVersion";
}
$dados["status"] = $layer->status;
return $dados;
}
function alterar($locaplic, $id_tema, $codigo, $escala, $extensao, $encoding) {
$arq = $locaplic . "/temas/" . $codigo . ".map";
if (! file_exists ( $locaplic . "/temas/" . $codigo . ".map" )) {
return false;
}
$mapa = ms_newMapObj ( $arq );
$layer = @$mapa->getlayerbyname ( $codigo );
if ($layer == "") {
return false;
}
$layer->setmetadata ( "escala", $escala );
$layer->setmetadata ( "extensao", str_replace(","," ",$extensao) );
$versao = versao();
$versao = $versao["principal"];
if($versao >= 7){
$layer->set("encoding",$encoding);
}
try {
$mapa->save ( $arq );
include (dirname ( __FILE__ ) . "/../../../php/removeCabecalhoMapfile.php");
removeCabecalhoMapfile ( $arq );
return true;
} catch (Exception $e) {
return false;
}
}
function calculaExtensao($locaplic, $id_tema, $codigo){
global $postgis_mapa;
$arq = $locaplic . "/temas/" . $codigo . ".map";
if (! file_exists ( $locaplic . "/temas/" . $codigo . ".map" )) {
return false;
}
$mapa = ms_newMapObj ( $arq );
include (dirname ( __FILE__ ) . "/../../../php/substituiConObj.php");
substituiConObj($mapa,$postgis_mapa);
$extatual = $mapa->extent;
$extatual->setextent(-180,-90,180,90);
$layer = @$mapa->getlayerbyname ( $codigo );
if ($layer == "") {
return false;
}
$original = $layer->getmetadata("extensao");
$ret = $layer->getextent();
$ret = $ret->minx." ".$ret->miny." ".$ret->maxx." ".$ret->maxy;
if($ret != " "){
$layer->setmetadata ( "extensao", $ret);
}
try {
$mapa->save ( $arq );
include (dirname ( __FILE__ ) . "/../../../php/removeCabecalhoMapfile.php");
removeCabecalhoMapfile ( $arq );
return $ret;
} catch (Exception $e) {
return false;
}
}
?>