diff --git a/ferramentas/saiku/cartograma.php b/ferramentas/saiku/cartograma.php index 9c46417..dfff92c 100644 --- a/ferramentas/saiku/cartograma.php +++ b/ferramentas/saiku/cartograma.php @@ -56,9 +56,7 @@ if($opcoes["tipo"] == "mapaPizzas" || $opcoes["tipo"] == "mapaBarras" || $opcoes $colunageo = $meta["colunacentroide"]; $sqlColunaGeo = $meta["colunacentroide"]; } - else{ - $sqlColunaGeo = "st_centroid(".$meta["colunageo"].")"; - } + $sqlColunaGeo = "st_centroid(".$colunageo.")"; $tipoLayer = "POINT"; if($opcoes["tipo"] == "mapaBarras" || $opcoes["tipo"] == "mapaPizzas"){ $tipoLayer = "CHART"; @@ -90,6 +88,15 @@ $sqldados = " from ".$meta["esquemadb"].".".$meta["tabela"]." INNER JOIN (values ".implode(",",$valores).') as dataset ("'.implode('","',$nomesColunas).'") ON geocodigo = '.$meta["identificador"]; $sqlmapa = $colunageo." from ($sqldados) as foo using unique gid using srid=$srid"; + +//para o tema com o outline caso o saiku tenha sido aberto de fora do i3Geo +$sqldados1 = " +select st_setsrid(".$meta["colunageo"].",".$srid.") as ".$meta["colunageo"].", ".implode(",",$colunastabela).",dataset.* +from ".$meta["esquemadb"].".".$meta["tabela"]." INNER JOIN +(values ".implode(",",$valores).') as dataset ("'.implode('","',$nomesColunas).'") ON geocodigo = '.$meta["identificador"]; + +$sqlmapa1 = $meta["colunageo"]." from ($sqldados1) as foo using unique gid using srid=$srid"; + $mapa = ms_newMapObj($map_file); $nlayers = $mapa->numlayers; for($i=0;$i<$nlayers;$i++){ @@ -151,6 +158,33 @@ $l .= PHP_EOL.'END'; //echo $l;exit; $layer->updateFromString($l); +//inclui o layer com o contorno se for o caso +if(empty($_GET["origem"]) && ($tipoLayer == "CHART" || $tipoLayer == "POINT")){ + $layer = ms_newLayerObj($mapa); + $nomeLayer = nomeRandomico(); + $l = array(); + $l[] = "LAYER"; + $l[] = ' NAME "'.$nomeLayer.'"'; + $l[] = " TYPE POLYGON"; + $l[] = " DATA '".$sqlmapa1."'"; + $l[] = ' CONNECTION "'.$conexao.'"'; + $l[] = ' CONNECTIONTYPE POSTGIS'; + $l[] = ' TEMPLATE "none.htm"'; + $l[] = ' STATUS DEFAULT'; + $l[] = ' METADATA'; + $l[] = ' TEMA "Limites"'; + $l[] = ' CLASSE "SIM"'; + $l[] = ' SAIKU "'.$opcoes["tipo"].'"'; + $l[] = ' METAESTAT_CODIGO_TIPO_REGIAO "'.$codigo_tipo_regiao.'"'; + $l[] = ' END '; + $l[] = ' CLASS '; + $l[] = ' OUTLINECOLOR 255 255 255 '; + $l[] = ' END '; + $l[] = 'END '; + $l = implode(PHP_EOL,$l); + $layer->updateFromString($l); +} + $mapa->save($map_file); if($opcoes["tipo"] == "coresChapadas"){ diff --git a/ferramentas/saiku/esquemaxml.php b/ferramentas/saiku/esquemaxml.php index 2d2bf6e..bb5cbb7 100644 --- a/ferramentas/saiku/esquemaxml.php +++ b/ferramentas/saiku/esquemaxml.php @@ -3,7 +3,7 @@ if(empty($_GET["g_sid"])){ include(dirname(__FILE__)."/../../ms_criamapa.php"); //reinicia a url - $urln = "?g_sid=".session_id()."&locaplic=".$_GET["locaplic"]."&mapext=".$mapext; + $urln = "?g_sid=".session_id()."&locaplic=".$_GET["locaplic"]."&mapext=".$mapext."&origem=".$_GET["origem"]; header("Location:".$urln); exit; } @@ -386,7 +386,7 @@ ob_end_clean(); //echo $xml;exit; gravaDados(array($xml),$arquivoXmlEsquema); -header("Location:".$saikuUrl."/?nomeConexao=".$nomeConexao."&locaplic=".$_GET["locaplic"]."&g_sid=".$_GET["g_sid"]."&mapext=".$_GET["mapext"]); +header("Location:".$saikuUrl."/?nomeConexao=".$nomeConexao."&locaplic=".$_GET["locaplic"]."&g_sid=".$_GET["g_sid"]."&mapext=".$_GET["mapext"]."&origem=".$_GET["origem"]); function converte($texto){ $texto = str_replace("&","&",htmlentities($texto)); diff --git a/ferramentas/saiku/index.js b/ferramentas/saiku/index.js index b6c93b2..f19dad1 100755 --- a/ferramentas/saiku/index.js +++ b/ferramentas/saiku/index.js @@ -154,7 +154,7 @@ i3GEOF.saiku = { }, aplicar: function(){ var mapext = i3GEO.util.extOSM2Geo(i3GEO.parametros.mapexten); - window.open(i3GEO.configura.locaplic+"/ferramentas/saiku/esquemaxml.php?g_sid="+i3GEO.configura.sid+"&locaplic="+i3GEO.configura.locaplic+"&mapext="+mapext); + window.open(i3GEO.configura.locaplic+"/ferramentas/saiku/esquemaxml.php?origem=i3geo&g_sid="+i3GEO.configura.sid+"&locaplic="+i3GEO.configura.locaplic+"&mapext="+mapext); }, atualizaMapa: function(){ i3GEO.atualiza(""); -- libgit2 0.21.2