exec.php
3.71 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
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
<?php
include(dirname(__FILE__)."/../safe.php");
verificaBlFerramentas(basename(dirname(__FILE__)),$i3geoBlFerramentas,false);
//
//faz a busca da função que deve ser executada
//
$retorno = ""; //string que será retornada ao browser via JSON
switch (strtoupper($funcao))
{
/*
Valor: TEMA2SLD
Mostra na tela o SLD de um tema
<Temas->sld>
*/
case "TEMA2SLD":
include_once(dirname(__FILE__)."/../../classesphp/classe_temas.php");
$m = new Temas($map_file,$tema);
$sld = $m->sld();
echo header('Content-Disposition: attachment; filename="'.$tema.'.sld"');
echo header("Content-type: application/xml");
echo $m->sld();
exit;
break;
/*
function: ADICIONALABELCLASSE
Adiciona LABEL em uma classe de um layer
<Temas->adicionaLabel>
*/
case "ADICIONALABELCLASSE":
include_once(dirname(__FILE__)."/../../classesphp/classe_temas.php");
$m = new Temas($map_file,$tema);
$l = $m->mapa->getlayerbyname($tema);
if(empty($item))
{$retorno = "erro";}
else{
//$l->set("labelitem",$item);
$novac = $l->getclass($_GET["classe"]);
$m->adicionaLabel($novac,$_GET["wrap"],$_GET["fonte"],$_GET["tamanho"],$_GET["angulo"],$_GET["fundo"],$_GET["sombra"],$_GET["cor"],$_GET["outlinecolor"],$_GET["shadowcolor"],$_GET["shadowsizex"],$_GET["shadowsizey"],$_GET["force"],$_GET["mindistance"],$_GET["minfeaturesize"],$_GET["offsetx"],$_GET["offsety"],$_GET["partials"],$_GET["position"],"[".$_GET["item"]."]");
$m->salva();
$retorno = "ok";
}
break;
/*
function: REMOVELABELCLASSE
Remove LABEL em uma classe de um layer
*/
case "REMOVELABELCLASSE":
include_once(dirname(__FILE__)."/../../classesphp/classe_temas.php");
$m = new Temas($map_file,$tema);
$m->removeLabel($_GET["classe"]);
$m->salva();
$retorno = "ok";
break;
/*
Valor: EDITALEGENDA
Cria elementos para construir uma legenda no formato de tabela em HTML.
<Legenda->tabelaLegenda>
*/
case "EDITALEGENDA":
include_once(dirname(__FILE__)."/../../classesphp/classe_legenda.php");
$m = new Legenda($map_file,$locaplic,$tema);
$r = $m->tabelaLegenda();
if (!$r){$r = "erro.Erro legenda nao disponivel";}
$retorno = $r;
break;
/*
Valor: CONTAGEMCLASSE
Acrescenta a contagem de elementos em cada classe.
<Legenda->tabelaLegenda>
*/
case "CONTAGEMCLASSE":
//apresenta erro com palavras acentuadas
include_once(dirname(__FILE__)."/../../classesphp/classe_legenda.php");
$m = new Legenda($map_file,$locaplic,$tema);
$r = $m->tabelaLegenda("sim");
$m->salva();
if (!$r){$r = "erro.Erro legenda nao disponivel";}
$retorno = $r;
break;
/*
Valor: APLICATODASCLASSES
Aplica um parametro a todas as classes
*/
case "APLICATODASCLASSES":
include_once(dirname(__FILE__)."/../../classesphp/classe_legenda.php");
$m = new Legenda($map_file,$locaplic,$tema);
$r = $m->aplicaTodasClasses($_GET["parametro"],$_GET["valor"]);
$m->salva();
if (!$r){$r = "erro.Erro legenda nao disponivel";}
$retorno = $r;
break;
case "APLICARCLUSTER":
include_once(dirname(__FILE__)."/../../classesphp/classe_temas.php");
$m = new Temas($map_file,$tema);
$l = $m->mapa->getlayerbyname($tema);
if($filter != ""){
//$filter = base64decode($filter);
}
$m->criaCluster($_GET["group"],$_GET["filter"],$_GET["maxdistance"],$_GET["region"],$_GET["buffer"]);
$m->salva();
$retorno = "ok";
break;
case "REMOVERCLUSTER":
include_once(dirname(__FILE__)."/../../classesphp/classe_temas.php");
$m = new Temas($map_file,$tema);
$l = $m->mapa->getlayerbyname($tema);
$m->removeCluster();
$m->salva();
$retorno = "ok";
break;
}
if(isset($map_file) && isset($postgis_mapa) && $map_file != ""){
restauraCon($map_file,$postgis_mapa);
}
cpjson($retorno);
?>