From db3d8e126306fb1530265cefff2cb27beab2a3a9 Mon Sep 17 00:00:00 2001 From: Edmar Moretti Date: Mon, 25 Sep 2017 23:45:24 -0300 Subject: [PATCH] Remoção de programas não utilizados da pasta i3geo/admin. Remoção da funcionalidade de edição vetorial na interface Google Maps --- admin/php/admin.php | 1 - admin/php/metaestat.php | 1727 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- admin/php/webservices.php | 166 ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- admin/php/xxxmetaestat.php | 1728 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ admin/php/xxxwebservices.php | 167 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ classesphp/classe_metaestatinfo.php | 24 ++++++++++++------------ classesphp/metaestat_controle.php | 501 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ css/i3geo7.css.php | 0 ferramentas/editorgm/editorgm.js | 2050 ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ferramentas/editorgm/editorgm_compacto.js | 1 - ferramentas/editorol/editorol_compacto.js | 0 ferramentas/identifica/index.js | 2 +- ferramentas/metaestat/index.js | 94 ++-------------------------------------------------------------------------------------------- ferramentas/metaestat/listamapas.js | 8 ++++---- ferramentas/navegapostgis/index.js | 8 ++++---- js/caixaDeFerramentas.js | 9 +++++++++ js/compactados/ajuda_compacto.js | 0 js/compactados/analise_compacto.js | 0 js/compactados/arvoredecamadas_compacto.js | 0 js/compactados/arvoredetemas_compacto.js | 0 js/compactados/base64_compacto.js | 0 js/compactados/busca_compacto.js | 0 js/compactados/caixaDeFerramentas_compacto.js | 2 +- js/compactados/calculo_compacto.js | 0 js/compactados/catalogoDir_compacto.js | 0 js/compactados/catalogoEstrelas_compacto.js | 0 js/compactados/catalogoInde_compacto.js | 0 js/compactados/catalogoMapas_compacto.js | 0 js/compactados/catalogoMenus_compacto.js | 0 js/compactados/catalogoMetaestat_compacto.js | 0 js/compactados/catalogoOgc_compacto.js | 0 js/compactados/catalogoRegioes_compacto.js | 0 js/compactados/catalogoSistemas_compacto.js | 0 js/compactados/configura_compacto.js | 0 js/compactados/coordenadas_compacto.js | 0 js/compactados/desenho_compacto.js | 0 js/compactados/dicionario_ajuda_compacto.js | 0 js/compactados/dicionario_compacto.js | 0 js/compactados/editor_compacto.js | 2 +- js/compactados/eventos_compacto.js | 0 js/compactados/guias_compacto.js | 0 js/compactados/idioma_compacto.js | 0 js/compactados/ini_i3geo_compacto.js | 0 js/compactados/interface_compacto.js | 0 js/compactados/janela_compacto.js | 0 js/compactados/legenda_compacto.js | 0 js/compactados/login_compacto.js | 0 js/compactados/mapa_compacto.js | 0 js/compactados/maparef_compacto.js | 0 js/compactados/marcador_compacto.js | 0 js/compactados/mustache.js | 0 js/compactados/navega_compacto.js | 0 js/compactados/php_compacto.js | 0 js/compactados/plugini3geo_compacto.js | 0 js/compactados/proj4js.js | 0 js/compactados/social_compacto.js | 0 js/compactados/tema_compacto.js | 0 js/compactados/util_compacto.js | 0 js/compactados/wicket.js | 0 js/editor.js | 49 ++----------------------------------------------- js/i3geo_tudo_compacto7.js | 4 ++-- js/i3geo_tudo_compacto7.js.php | 4 ++-- js/listaDeFerramentas.js | 3 ++- pacotes/cpaint/cpaint2_compacto.inc.js | 0 pacotes/mobileesp/mdetect_compacto.js | 0 pacotes/yui290/build/carousel/carousel_compacto.js | 0 pacotes/yui290/build/container/container_compacto.js | 0 pacotes/yui290/build/container/container_core_compacto.js | 0 pacotes/yui290/build/resize/resize_compacto.js | 0 pacotes/yui290/build/treeview/treeview_compacto.js | 0 pacotes/yui290/build/utilities/utilities_compacto.js | 0 71 files changed, 2234 insertions(+), 4316 deletions(-) delete mode 100755 admin/php/metaestat.php delete mode 100755 admin/php/webservices.php create mode 100755 admin/php/xxxmetaestat.php create mode 100755 admin/php/xxxwebservices.php mode change 100755 => 100644 css/i3geo7.css.php mode change 100755 => 100644 ferramentas/editorgm/editorgm_compacto.js mode change 100755 => 100644 ferramentas/editorol/editorol_compacto.js mode change 100755 => 100644 js/compactados/ajuda_compacto.js mode change 100755 => 100644 js/compactados/analise_compacto.js mode change 100755 => 100644 js/compactados/arvoredecamadas_compacto.js mode change 100755 => 100644 js/compactados/arvoredetemas_compacto.js mode change 100755 => 100644 js/compactados/base64_compacto.js mode change 100755 => 100644 js/compactados/busca_compacto.js mode change 100755 => 100644 js/compactados/caixaDeFerramentas_compacto.js mode change 100755 => 100644 js/compactados/calculo_compacto.js mode change 100755 => 100644 js/compactados/catalogoDir_compacto.js mode change 100755 => 100644 js/compactados/catalogoEstrelas_compacto.js mode change 100755 => 100644 js/compactados/catalogoInde_compacto.js mode change 100755 => 100644 js/compactados/catalogoMapas_compacto.js mode change 100755 => 100644 js/compactados/catalogoMenus_compacto.js mode change 100755 => 100644 js/compactados/catalogoMetaestat_compacto.js mode change 100755 => 100644 js/compactados/catalogoOgc_compacto.js mode change 100755 => 100644 js/compactados/catalogoRegioes_compacto.js mode change 100755 => 100644 js/compactados/catalogoSistemas_compacto.js mode change 100755 => 100644 js/compactados/configura_compacto.js mode change 100755 => 100644 js/compactados/coordenadas_compacto.js mode change 100755 => 100644 js/compactados/desenho_compacto.js mode change 100755 => 100644 js/compactados/dicionario_ajuda_compacto.js mode change 100755 => 100644 js/compactados/dicionario_compacto.js mode change 100755 => 100644 js/compactados/editor_compacto.js mode change 100755 => 100644 js/compactados/eventos_compacto.js mode change 100755 => 100644 js/compactados/guias_compacto.js mode change 100755 => 100644 js/compactados/idioma_compacto.js mode change 100755 => 100644 js/compactados/ini_i3geo_compacto.js mode change 100755 => 100644 js/compactados/interface_compacto.js mode change 100755 => 100644 js/compactados/janela_compacto.js mode change 100755 => 100644 js/compactados/legenda_compacto.js mode change 100755 => 100644 js/compactados/login_compacto.js mode change 100755 => 100644 js/compactados/mapa_compacto.js mode change 100755 => 100644 js/compactados/maparef_compacto.js mode change 100755 => 100644 js/compactados/marcador_compacto.js mode change 100755 => 100644 js/compactados/mustache.js mode change 100755 => 100644 js/compactados/navega_compacto.js mode change 100755 => 100644 js/compactados/php_compacto.js mode change 100755 => 100644 js/compactados/plugini3geo_compacto.js mode change 100755 => 100644 js/compactados/proj4js.js mode change 100755 => 100644 js/compactados/social_compacto.js mode change 100755 => 100644 js/compactados/tema_compacto.js mode change 100755 => 100644 js/compactados/util_compacto.js mode change 100755 => 100644 js/compactados/wicket.js mode change 100755 => 100644 js/i3geo_tudo_compacto7.js.php mode change 100755 => 100644 pacotes/cpaint/cpaint2_compacto.inc.js mode change 100755 => 100644 pacotes/mobileesp/mdetect_compacto.js mode change 100755 => 100644 pacotes/yui290/build/carousel/carousel_compacto.js mode change 100755 => 100644 pacotes/yui290/build/container/container_compacto.js mode change 100755 => 100644 pacotes/yui290/build/container/container_core_compacto.js mode change 100755 => 100644 pacotes/yui290/build/resize/resize_compacto.js mode change 100755 => 100644 pacotes/yui290/build/treeview/treeview_compacto.js mode change 100755 => 100644 pacotes/yui290/build/utilities/utilities_compacto.js diff --git a/admin/php/admin.php b/admin/php/admin.php index f05e8b4..0bb6b70 100755 --- a/admin/php/admin.php +++ b/admin/php/admin.php @@ -354,7 +354,6 @@ function i3GeoAdminOrdena($pdo,$ordem,$tabela,$colunaid){ return true; } //$logTransacoes vem do ms_configura.php -//ver tambem classe_metaestat.php function i3GeoAdminInsertLog($pdo,$sql,$data=array()){ global $esquemaadmin, $logTransacoes; if($logTransacoes == "" || $logTransacoes !== true){ diff --git a/admin/php/metaestat.php b/admin/php/metaestat.php deleted file mode 100755 index c06ce1f..0000000 --- a/admin/php/metaestat.php +++ /dev/null @@ -1,1727 +0,0 @@ -0,"esquema"=>"public")); - retornaJSON($esquema);exit; - } - if(strtoupper($funcao) == "TABELASESQUEMA"){ - if($_GET["nome_esquema"] != "public"){ - retornaJSON("Vc nao pode realizar essa operacao.");exit; - } - } - if(strtoupper($funcao) != "ESQUEMASCONEXAO" && strtoupper($funcao) != "TABELASESQUEMA"){ - retornaJSON("Vc nao pode realizar essa operacao.");exit; - } - } -} -//verifica as funcoes que manipulam o banco de dados -$funcoesEdicao = array( - "CRIATABELADB", - "CRIAESQUEMADB", - "ALTERANOMETABELADB", - "ALTERANOMEESQUEMADB", - "COPIATABELADB", - "CRIACOLUNADB", - "ALTERANOMECOLUNADB", -); -if(in_array(strtoupper($funcao),$funcoesEdicao)){ - if(verificaOperacaoSessao("admin/metaestat/editorbanco") == false){ - retornaJSON("Vc nao pode realizar essa operacao.");exit; - } -} - -include(dirname(__FILE__)."/classe_metaestat.php"); -//error_reporting(0); -//faz a busca da função que deve ser executada -switch (strtoupper($funcao)) -{ - /* - Note: - - Valores que o parâmetro &funcao pode receber. Os parâmetros devem ser enviados na requisição em AJAX. - */ - /* - Valor: LISTACONEXAO - - Lista de conexoes - - Retorno: - - {JSON} - */ - case "LISTACONEXAO": - $m = new Metaestat(); - retornaJSON($m->listaConexao($codigo_estat_conexao)); - exit; - break; - /* - Valor: LISTAVARIAVEL - - Lista de variaveis - - Retorno: - - {JSON} - */ - case "LISTAVARIAVEL": - $m = new Metaestat(); - if(empty($_GET["filtro_esquema"])){ - $_GET["filtro_esquema"] = ""; - } - retornaJSON($m->listaVariavel($codigo_variavel,$_GET["filtro_esquema"])); - exit; - break; - /* - Valor: LISTACLASSIFICACAOMEDIDA - - Lista as classificacoes de uma medida de uma variavel - - Retorno: - - {JSON} - */ - case "LISTACLASSIFICACAOMEDIDA": - $m = new Metaestat(); - retornaJSON($m->listaClassificacaoMedida($id_medida_variavel,$id_classificacao)); - exit; - break; - case "LISTALINKMEDIDA": - $m = new Metaestat(); - retornaJSON($m->listaLinkMedida($id_medida_variavel,$id_link)); - exit; - break; - /* - Valor: LISTACLASSECLASSIFICACAO - - Lista as classes de uma classificacoes - - Retorno: - - {JSON} - */ - case "LISTACLASSECLASSIFICACAO": - $m = new Metaestat(); - retornaJSON($m->listaClasseClassificacao($id_classificacao,$id_classe)); - exit; - break; - /* - Valor: LISTAMEDIDAVARIAVEL - - Lista das medidas de uma variavel - - Retorno: - - {JSON} - */ - case "LISTAMEDIDAVARIAVEL": - $m = new Metaestat(); - retornaJSON($m->listaMedidaVariavel($codigo_variavel,$id_medida_variavel)); - exit; - break; - /* - Valor: LISTAPARAMETRO - - Lista de parametros - - Retorno: - - {JSON} - */ - case "LISTAPARAMETRO": - $m = new Metaestat(); - retornaJSON($m->listaParametro($id_medida_variavel,$id_parametro_medida)); - exit; - break; - case "LISTAVALORESPARAMETRO": - $m = new Metaestat(); - retornaJSON($m->listaValoresParametro($id_parametro_medida)); - exit; - break; - /* - Valor: LISTAUNIDADEMEDIDA - - Lista de unidades de medida - - Retorno: - - {JSON} - */ - case "LISTAUNIDADEMEDIDA": - $m = new Metaestat(); - retornaJSON($m->listaUnidadeMedida($codigo_unidade_medida)); - exit; - break; - case "LISTAFONTEINFO": - $m = new Metaestat(); - retornaJSON($m->listaFonteinfo($id_fonteinfo)); - exit; - break; - case "LISTAFONTEINFOMEDIDA": - $m = new Metaestat(); - retornaJSON($m->listaFonteinfoMedida($id_medida_variavel)); - exit; - break; - /* - Valor: LISTATIPOPERIODO - - Lista de unidades de medida - - Retorno: - - {JSON} - */ - case "LISTATIPOPERIODO": - $m = new Metaestat(); - retornaJSON($m->listaTipoPeriodo($codigo_tipo_periodo)); - exit; - break; - /* - Valor: LISTATIPOREGIAO - - Lista de tipos de regiao - - Retorno: - - {JSON} - */ - case "LISTATIPOREGIAO": - $m = new Metaestat(); - retornaJSON($m->listaTipoRegiao($codigo_tipo_regiao)); - exit; - break; - case "LISTAHIERARQUIAREGIOES": - $m = new Metaestat(); - $regioes = $m->listaHierarquiaRegioes($codigo_tipo_regiao); - $valores = ""; - //se achou apenas uma regiao, pega os valores - if(count($regioes) < 2 && $codigo_tipo_regiao != ""){ - $valores = $m->listaDadosRegiao($codigo_tipo_regiao,$_GET["codigoregiaopai"],$_GET["valorregiaopai"]); - } - retornaJSON(array("regiaopai"=>$codigo_tipo_regiao,"regioes"=>$regioes,"valores"=>$valores)); - exit; - break; - case "LISTAREGIOESMEDIDA": - $m = new Metaestat(); - retornaJSON($m->listaRegioesMedida($id_medida_variavel)); - exit; - break; - case "LISTAAGREGAREGIAO": - $m = new Metaestat(); - if(empty($codigo_tipo_regiao)){ - $codigo_tipo_regiao = ""; - } - retornaJSON($m->listaAgregaRegiao($codigo_tipo_regiao,$id_agregaregiao)); - exit; - case "LISTAMAPAS": - $m = new Metaestat(); - if(empty($id_mapa)){ - $id_mapa = ""; - } - retornaJSON($m->listaMapas($id_mapa)); - exit; - break; - case "LISTAGRUPOSMAPA": - $m = new Metaestat(); - retornaJSON($m->listaGruposMapa($id_mapa,$id_mapa_grupo)); - exit; - break; - case "LISTATEMASMAPA": - $m = new Metaestat(); - retornaJSON($m->listaTemasMapa($id_mapa_grupo,$id_mapa_tema)); - exit; - break; - //lista os templates que o usuario pode escolher para publicar mapas - //a pasta com alista e definida na variavel $metaestatTemplates localizada no ms_configura.php - case "LISTATEMPLATESMAPA": - if(empty($metaestatTemplates)){ - $d = dirname(__FILE__)."/../../ferramentas/metaestat/templates"; - } - else{ - $d = $locaplic.$metaestatTemplates; - } - $arq = listaArquivos($d); - $arq["metaestatTemplates"] = $metaestatTemplates; - retornaJSON($arq); - exit; - break; - //lista os logos que o usuario pode escolher para publicar mapas - //a pasta com alista e definida na variavel $metaestatTemplates/logos localizada no ms_configura.php - case "LISTALOGOSMAPA": - if(empty($metaestatTemplates)){ - $metaestatTemplates = dirname(__FILE__)."/../../ferramentas/metaestat/templates"; - } - else{ - $metaestatTemplates = $locaplic.$metaestatTemplates; - } - retornaJSON(listaArquivos($metaestatTemplates."/logos")); - exit; - break; - /* - Valor: ALTERARVARIAVEL - - Altera os dados de uma variavel - */ - case "ALTERAVARIAVEL": - $m = new Metaestat(); - if(empty($codigo_variavel)){ - //isso ira criar um novo registro - $codigo_variavel = $m->alteraVariavel(); - if(!empty($nome)){ - $m->alteraVariavel($codigo_variavel,$nome,$descricao); - } - } - else{ - $codigo_variavel = $m->alteraVariavel($codigo_variavel,$_GET["nome"],$_GET["descricao"]); - } - retornaJSON($m->listaVariavel($codigo_variavel)); - exit; - break; - /* - Valor: ALTERAMEDIDAVARIAVEL - - Altera os dados de uma medida de uma variavel - - Retorno: - - {JSON} - */ - case "ALTERAMEDIDAVARIAVEL": - $filtro = $_GET["filtro"]; - $filtro = str_replace("'",'"',$filtro); - $m = new Metaestat(); - $default = false; - //verifica se a criacao da medida esta sendo feita na tabela default - if($codigo_tipo_periodo < 5 && $esquemadb == "i3geo_metaestat" && $_GET["colunaidgeo"] == "codigoregiao" && $_GET["tabela"] = "dados_medidas"){ - $default = true; - } - if(empty($id_medida_variavel)){ - //isso ira criar um novo registro - $id_medida_variavel = $m->alteraMedidaVariavel($codigo_variavel); - //o filtro e necessario para permitir a selecao dos registros apenas do que pertence a medida da variavel escolhida - //se a tabela nao for a default, o filtro nao se aplica - if($default == true && $filtro == ""){ - $filtro = " id_medida_variavel = $id_medida_variavel "; - } - if(!empty($nomemedida)){ - $m->alteraMedidaVariavel("",$id_medida_variavel,$codigo_unidade_medida,$codigo_tipo_periodo,$codigo_tipo_regiao,$codigo_estat_conexao,$_GET["esquemadb"],$_GET["tabela"],$_GET["colunavalor"],$_GET["colunaidgeo"],$_GET["colunaidunico"],$filtro,$_GET["nomemedida"]); - } - } - else{ - //o filtro e necessario para permitir a selecao dos registros apenas do que pertence a medida da variavel escolhida - if($default == true && $filtro == ""){ - $filtro = " id_medida_variavel = $id_medida_variavel "; - } - $m->alteraMedidaVariavel("",$id_medida_variavel,$codigo_unidade_medida,$codigo_tipo_periodo,$codigo_tipo_regiao,$codigo_estat_conexao,$_GET["esquemadb"],$_GET["tabela"],$_GET["colunavalor"],$_GET["colunaidgeo"],$_GET["colunaidunico"],$filtro,$_GET["nomemedida"]); - } - if(!empty($_GET["colunaAno"]) || !empty($_GET["colunaMes"]) || !empty($_GET["colunaDia"]) || !empty($_GET["colunaHora"])){ - $default = true; - } - //adiciona os parametros de tempo conforme o tipo de periodo escolhido - // - //se os nomes das colunas com os parametros de tempo forem definidas - //os parametros sao criados - //isso acontece se a criacao da medida estiver sendo feita em uma tabela que nao e a default - // - if($default == true){ - $m->excluirRegistro("i3geoestat_parametro_medida","id_medida_variavel",$id_medida_variavel); - $id_pai = 0; - //anual - if($codigo_tipo_periodo >= 1){ - if(empty($_GET["colunaAno"])){ - $_GET["colunaAno"] = "ano"; - } - $id_parametro_medida = $m->alteraParametroMedida($id_medida_variavel,"","","","","",""); - $m->alteraParametroMedida($id_medida_variavel,$id_parametro_medida,"Ano","",$_GET["colunaAno"],$id_pai,1); - $id_pai = $id_parametro_medida; - } - //mensal - if($codigo_tipo_periodo >= 2){ - $id_parametro_medida = $m->alteraParametroMedida($id_medida_variavel,"","","","","",""); - if(empty($_GET["colunaMes"])){ - $_GET["colunaMes"] = "mes"; - } - $m->alteraParametroMedida($id_medida_variavel,$id_parametro_medida,"Mes","",$_GET["colunaMes"],$id_pai,2); - $id_pai = $id_parametro_medida; - } - //diario - if($codigo_tipo_periodo >= 3){ - $id_parametro_medida = $m->alteraParametroMedida($id_medida_variavel,"","","","","",""); - if(empty($colunaDia)){ - $colunaDia = "dia"; - } - $m->alteraParametroMedida($id_medida_variavel,$id_parametro_medida,"Dia","",$_GET["colunaDia"],$id_pai,3); - $id_pai = $id_parametro_medida; - } - //horario - if($codigo_tipo_periodo == 4){ - $id_parametro_medida = $m->alteraParametroMedida($id_medida_variavel,"","","","","",""); - if(empty($_GET["colunaHora"])){ - $_GET["colunaHora"] = "hora"; - } - $m->alteraParametroMedida($id_medida_variavel,$id_parametro_medida,"Hora","",$_GET["colunaHora"],$id_pai,4); - } - } - retornaJSON($m->listaMedidaVariavel("",$id_medida_variavel)); - exit; - break; - /* - Valor: ALTERAPARAMETROMEDIDA - - Altera os dados de uma parametro de uma medida - - Retorno: - - {JSON} - */ - case "ALTERAPARAMETROMEDIDA": - $m = new Metaestat(); - if(empty($id_parametro_medida)){ - //isso ira criar um novo registro - $id_parametro_medida = $m->alteraParametroMedida($id_medida_variavel); - } - else{ - $m->alteraParametroMedida("",$id_parametro_medida,$_GET["nome"],$_GET["descricao"],$_GET["coluna"],$id_pai,$_GET["tipo"]); - } - retornaJSON($m->listaParametro($id_medida_variavel,$id_parametro_medida)); - exit; - break; - /* - Valor: ALTERACLASSIFICACAOMEDIDA - - Altera os dados de uma classificacao de uma medida - - Retorno: - - {JSON} - */ - case "ALTERACLASSIFICACAOMEDIDA": - $m = new Metaestat(); - if(empty($id_classificacao)){ - //isso ira criar um novo registro - $id_classificacao = $m->alteraClassificacaoMedida($id_medida_variavel); - if(!empty($nome)){ - $m->alteraClassificacaoMedida($id_classificacao,$id_classificacao,$_GET["nome"],$_GET["observacao"]); - } - } - else{ - $m->alteraClassificacaoMedida("",$id_classificacao,$_GET["nome"],$_GET["observacao"]); - } - retornaJSON($m->listaClassificacaoMedida($id_medida_variavel,$id_classificacao)); - exit; - break; - case "CALCULACLASSIFICACAO": - $cores = $_GET["cores"]; - $limite = $_GET["limite"]; - $numintervalos = $_GET["numintervalos"]; - $tipo = $_GET["tipo"]; - //as cores vem no formato rgb(0,0,0); - if(!empty($cores)){ - $cores = str_replace("rgb(","",$cores); - $cores = str_replace(")","",$cores); - $cores = explode("|",$cores); - } - if(empty($limite)){ - $limite = ""; - } - - if($tipo == "quebrasnaturais"){ - $m = new Metaestat(); - $dados = $m->dadosMedidaVariavel($id_medida_variavel,"",0,"",$limite,true); - $metaVariavel = $m->listaMedidaVariavel("",$id_medida_variavel); - $colunavalor = $metaVariavel["colunavalor"]; - $valores = array(); - - foreach($dados as $d){ - if($d[$colunavalor]){ - $valores[] = $d[$colunavalor]; - } - } - include(dirname(__FILE__)."/../../pacotes/jenks-master/jenks.php"); - $intervalos = getJenksClasses($numintervalos, $valores); - $m->excluirRegistro("i3geoestat_classes","id_classificacao",$id_classificacao); - for ($i=0; $i < $numintervalos; ++$i){ - if ($i == $numintervalos - 1){ - $expressao = "(([".$colunavalor."]>=".$intervalos[$i]."))"; - $titulo = ">= ".$intervalos[$i]; - } - else{ - $expressao = "(([".$colunavalor."]>=".$intervalos[$i].")and([".$colunavalor."]<".$intervalos[$i+1]."))"; - $titulo = ">= ".$intervalos[$i]." e < que ".($intervalos[$i+1]); - } - $id_classe = $m->alteraClasseClassificacao($id_classificacao); - if(!empty($cores)){ - $cor = explode(",",$cores[$i]); - $vermelho = $cor[0]; - $verde = $cor[1]; - $azul = $cor[2]; - } - $m->alteraClasseClassificacao("",$id_classe,$titulo,$expressao,$vermelho,$verde,$azul,"","","255","255","255","2"); - } - retornaJSON("ok"); - exit; - } - if($tipo == "quartil"){ - $m = new Metaestat(); - $dados = $m->sumarioMedidaVariavel($id_medida_variavel,"","",$limite,true); - if($dados == false){ - retornaJSON("erro"); - exit; - } - $dados = $dados["quartis"]; - $n = count($dados["expressoes"]); - $m->excluirRegistro("i3geoestat_classes","id_classificacao",$id_classificacao); - for($i=0;$i<$n;++$i){ - $id_classe = $m->alteraClasseClassificacao($id_classificacao); - $expressao = $dados["expressoes"][$i]; - $titulo = $dados["nomes"][$i]; - if(!empty($cores)){ - $cor = explode(",",$cores[$i]); - $vermelho = $cor[0]; - $verde = $cor[1]; - $azul = $cor[2]; - } - $m->alteraClasseClassificacao("",$id_classe,$titulo,$expressao,$vermelho,$verde,$azul,"","","255","255","255","2"); - } - exit; - retornaJSON("ok"); - exit; - } - //para efeitos de compatibilidade com o nome de $tipo - if(empty($numintervalos) || $tipo == "intiguais5"){ - $numintervalos = 5; - } - if($tipo == "intiguais5" || $tipo == "intiguais"){ - $m = new Metaestat(); - $dados = $m->sumarioMedidaVariavel($id_medida_variavel,"","",$limite,true); - if($dados == false){ - retornaJSON("erro"); - exit; - } - $min = $dados["menor"]; - $max = $dados["maior"]; - $item = $dados["colunavalor"]; - $intervalo = ($max - $min) / $numintervalos; - //adiciona as classes novas - $intatual = $min; - $m->excluirRegistro("i3geoestat_classes","id_classificacao",$id_classificacao); - for ($i=0; $i < $numintervalos; ++$i){ - if ($i == $numintervalos - 1){ - $expressao = "(([".$item."]>=".$intatual.")and([".$item."]<=".($intatual+$intervalo)."))"; - } - else{ - $expressao = "(([".$item."]>=".$intatual.")and([".$item."]<".($intatual+$intervalo)."))"; - } - $titulo = ">= ".$intatual." e < que ".($intatual+$intervalo); - $intatual = $intatual + $intervalo; - $id_classe = $m->alteraClasseClassificacao($id_classificacao); - if(!empty($cores)){ - $cor = explode(",",$cores[$i]); - $vermelho = $cor[0]; - $verde = $cor[1]; - $azul = $cor[2]; - } - $m->alteraClasseClassificacao("",$id_classe,$titulo,$expressao,$vermelho,$verde,$azul,"","","255","255","255","2"); - } - retornaJSON("ok"); - exit; - } - //o menor e o maior valor sao enviados como parametro ($min e $max) - //para efeitos de compatibilidade com o nome de $tipo - if(empty($numintervalos) || $tipo == "intiguais5mm"){ - $numintervalos = 5; - } - if($tipo == "intiguais5mm" || $tipo == "intiguaismm"){ - $m = new Metaestat(); - $metaVariavel = $m->listaMedidaVariavel("",$id_medida_variavel); - $item = $metaVariavel["colunavalor"]; - $intervalo = ($max - $min) / $numintervalos; - //adiciona as classes novas - $intatual = $min; - $m->excluirRegistro("i3geoestat_classes","id_classificacao",$id_classificacao); - for ($i=0; $i < $numintervalos; ++$i){ - if ($i == $numintervalos - 1){ - $expressao = "(([".$item."]>=".$intatual.")and([".$item."]<=".($intatual+$intervalo)."))"; - } - else{ - $expressao = "(([".$item."]>=".$intatual.")and([".$item."]<".($intatual+$intervalo)."))"; - } - $titulo = ">= ".$intatual." e < que ".($intatual+$intervalo); - $intatual = $intatual + $intervalo; - $id_classe = $m->alteraClasseClassificacao($id_classificacao); - if(!empty($cores)){ - $cor = explode(",",$cores[$i]); - $vermelho = $cor[0]; - $verde = $cor[1]; - $azul = $cor[2]; - } - $m->alteraClasseClassificacao("",$id_classe,$titulo,$expressao,$vermelho,$verde,$azul,"","","255","255","255","2"); - } - retornaJSON("ok"); - exit; - } - retornaJSON("ok"); - exit; - break; - case "ALTERAESTILOSCLASSIFICACAO": - $tipo = $_GET["tipo"]; - $aumentar = $_GET["aumentar"]; - if($tipo == "tamanho"){ - $m = new Metaestat(); - $classes = $m->listaClasseClassificacao($id_classificacao); - $nclasses = count($classes); - $tamanhoini -= $aumentar; - for($i=0;$i<$nclasses;$i++){ - $c = $classes[$i]; - $m->alteraClasseClassificacao( - $id_classificacao, - $c["id_classe"], - $c["titulo"], - $c["expressao"], - $c["vermelho"], - $c["verde"], - $c["azul"], - $tamanhoini + $aumentar, - $c["simbolo"], - $c["overmelho"], - $c["overde"], - $c["oazul"], - $tamanhoini + $aumentar - ); - $tamanhoini += $aumentar; - } - retornaJSON("ok"); - exit; - } - retornaJSON("ok"); - exit; - break; - - /* - Valor: ALTERACLASSECLASSIFICACAO - - Altera os dados de uma classe de uma classificacao - - Retorno: - - {JSON} - */ - case "ALTERACLASSECLASSIFICACAO": - $m = new Metaestat(); - if(empty($id_classe)){ - //isso ira criar um novo registro - $id_classe = $m->alteraClasseClassificacao($id_classificacao); - } - else{ - $titulo = $_GET["titulo"]; - $expressao = $_GET["expressao"]; - $m->alteraClasseClassificacao("",$id_classe,$titulo,$expressao,$_GET["vermelho"],$_GET["verde"],$_GET["azul"],$_GET["tamanho"],$_GET["simbolo"],$_GET["overmelho"],$_GET["overde"],$_GET["oazul"],$_GET["otamanho"]); - } - retornaJSON($m->listaClasseClassificacao($id_classificacao,$id_classe)); - exit; - break; - case "ALTERALINKMEDIDA": - $m = new Metaestat(); - if(empty($id_link)){ - //isso ira criar um novo registro - $id_link = $m->alteraLinkMedida($id_medida_variavel); - } - else{ - $m->alteraLinkMedida("",$id_link,$_GET["nome"],$_GET["link"]); - } - retornaJSON($m->listaLinkMedida($id_medida_variavel,$id_link)); - exit; - break; - case "ALTERAFONTEINFO": - $m = new Metaestat(); - if(empty($id_fonteinfo)){ - //isso ira criar um novo registro - $id_fonteinfo = $m->alteraFonteinfo(); - } - else{ - $m->alteraFonteinfo($id_fonteinfo,$_GET["titulo"],$_GET["link"]); - } - retornaJSON($m->listaFonteinfo($id_fonteinfo)); - exit; - break; - case "ADICIONAFONTEINFOMEDIDA": - $m = new Metaestat(); - //echo $id_medida_variavel;exit; - $m->adicinaFonteinfoMedida($id_medida_variavel,$id_fonteinfo); - retornaJSON($m->listaFonteInfo($id_fonteinfo)); - exit; - break; - /* - Valor: ALTERARUNIDADEMEDIDA - - Altera a tabela de unidades de medida - - Retorno: - - {JSON} - */ - case "ALTERARUNIDADEMEDIDA": - $m = new Metaestat(); - if(empty($codigo_unidade_medida)){ - $codigo_unidade_medida = $m->alteraUnidadeMedida(); - } - else{ - $codigo_unidade_medida = $m->alteraUnidadeMedida($codigo_unidade_medida,$_GET["nome"],$_GET["sigla"],$_GET["permitesoma"],$_GET["permitemedia"]); - } - retornaJSON($m->listaUnidadeMedida($codigo_unidade_medida)); - exit; - break; - /* - Valor: ALTERARCONEXAO - - Altera a tabela de conexoes - - Retorno: - - {JSON} - */ - case "ALTERARCONEXAO": - $m = new Metaestat(); - if(empty($codigo_estat_conexao)){ - $codigo_estat_conexao = $m->alteraConexao(); - } - else{ - $codigo_estat_conexao = $m->alteraConexao($codigo_estat_conexao,$_GET["bancodedados"],$_GET["host"],$_GET["porta"],$_GET["usuario"]); - } - retornaJSON($m->listaConexao($codigo_estat_conexao)); - exit; - break; - /* - Valor: ALTERARTIPOREGIAO - - Altera a tabela de regioes - - Retorno: - - {JSON} - */ - case "ALTERARTIPOREGIAO": - $m = new Metaestat(); - if(empty($codigo_tipo_regiao)){ - $codigo_tipo_regiao = $m->alteraTipoRegiao(); - } - else{ - $codigo_tipo_regiao = $m->alteraTipoRegiao($codigo_tipo_regiao,$_GET["nome_tipo_regiao"],$_GET["descricao_tipo_regiao"],$_GET["esquemadb"],$_GET["tabela"],$_GET["colunageo"],$_GET["colunacentroide"],$_GET["data"],$_GET["identificador"],$_GET["colunanomeregiao"],$_GET["srid"],$codigo_estat_conexao,$_GET["colunasvisiveis"],$_GET["apelidos"]); - } - retornaJSON($m->listaTipoRegiao($codigo_tipo_regiao)); - exit; - break; - case "ALTERAAGREGAREGIAO": - $m = new Metaestat(); - if(empty($id_agregaregiao)){ - $id_agregaregiao = $m->alteraAgregaRegiao($codigo_tipo_regiao); - } - else{ - $id_agregaregiao = $m->alteraAgregaRegiao("",$id_agregaregiao,$codigo_tipo_regiao_pai,$_GET["colunaligacao_regiaopai"]); - $codigo_tipo_regiao = ""; - } - retornaJSON($m->listaAgregaRegiao($codigo_tipo_regiao,$id_agregaregiao)); - exit; - break; - /* - Valor: ALTERARTIPOPERIODO - - Altera a tabela de tipos de periodo - - Retorno: - - {JSON} - */ - case "ALTERARTIPOPERIODO": - $m = new Metaestat(); - if(empty($codigo_tipo_periodo)){ - $codigo_tipo_periodo = $m->alteraTipoPeriodo(); - } - else{ - //impede a alteracao dos valores reservados - if($codigo_tipo_periodo > 4){ - $codigo_unidade_medida = $m->alteraTipoPeriodo($codigo_tipo_periodo,$_GET["nome"],$_GET["descricao"]); - } - } - retornaJSON($m->listaTipoPeriodo($codigo_tipo_periodo)); - exit; - break; - /* - Valor: ALTERAMAPA - - Altera a tabela de mapas para publicacao - - Retorno: - - {JSON} - */ - case "ALTERAMAPA": - $m = new Metaestat(); - if(empty($id_mapa)){ - $id_mapa = $m->alteraMapa(); - } - else{ - $id_mapa = $m->alteraMapa($id_mapa,$_GET["titulo"],$_GET["template"],$_GET["logoesquerdo"],$_GET["logodireito"],$_GET["publicado"]); - } - retornaJSON($m->listaMapas($id_mapa)); - exit; - break; - /* - Valor: ALTERAMAPAGRUPO - - Altera a tabela de grupos para publicacao - - Retorno: - - {JSON} - */ - case "ALTERAMAPAGRUPO": - $m = new Metaestat(); - if(empty($id_mapa_grupo)){ - $id_mapa_grupo = $m->alteraMapaGrupo($id_mapa); - } - else{ - $id_mapa_grupo = $m->alteraMapaGrupo($id_mapa,$id_mapa_grupo,$_GET["titulo"]); - } - retornaJSON($m->listaGruposMapa($id_mapa,$id_mapa_grupo)); - exit; - break; - case "ALTERAMAPATEMA": - $m = new Metaestat(); - if(empty($id_mapa_tema)){ - $id_mapa_tema = $m->alteraMapaTema($id_mapa_grupo); - } - else{ - $id_mapa_tema = $m->alteraMapaTema($id_mapa_grupo,$id_mapa_tema,$_GET["titulo"],$id_medida_variavel); - } - retornaJSON($m->listaTemasMapa($id_mapa_grupo,$id_mapa_tema)); - exit; - break; - /* - Valor: EXCLUIRMAPA - - Exclui um mapa do publicador - - */ - case "EXCLUIRMAPA": - $tabela = "i3geoestat_mapa"; - $id = $id_mapa; - $f = verificaFilhos(); - if(!$f){ - $m = new Metaestat(); - retornaJSON($m->excluirRegistro("i3geoestat_mapa","id_mapa",$id)); - } - else - retornaJSON("erro"); - exit; - break; - case "EXCLUIRMAPAGRUPO": - $tabela = "i3geoestat_mapa_grupo"; - $id = $id_mapa_grupo; - $f = verificaFilhos(); - if(!$f){ - $m = new Metaestat(); - retornaJSON($m->excluirRegistro("i3geoestat_mapa_grupo","id_mapa_grupo",$id)); - } - else - retornaJSON("erro"); - exit; - break; - case "EXCLUIRMAPATEMA": - $tabela = "i3geoestat_mapa_tema"; - $id = $id_mapa_tema; - $m = new Metaestat(); - retornaJSON($m->excluirRegistro("i3geoestat_mapa_tema","id_mapa_tema",$id)); - exit; - break; - /* - Valor: EXCLUIRVARIAVEL - - Exclui uma variavel - - Parametros: - - codigo_variavel - - Retorno: - - {JSON} - */ - case "EXCLUIRVARIAVEL": - $tabela = "i3geoestat_variavel"; - $id = $codigo_variavel; - $f = verificaFilhos(); - if(!$f){ - $m = new Metaestat(); - retornaJSON($m->excluirRegistro("i3geoestat_variavel","codigo_variavel",$id)); - } - else - retornaJSON("erro"); - exit; - break; - /* - Valor: EXCLUIRTIPOPERIODO - - Exclui uma variavel - - Parametros: - - codigo_variavel - - Retorno: - - {JSON} - */ - case "EXCLUIRTIPOPERIODO": - //impede a alteracao dos valores reservados - if($codigo_tipo_periodo > 4){ - $tabela = "i3geoestat_tipo_periodo"; - $id = $codigo_tipo_periodo; - $f = verificaFilhos(); - if(!$f){ - $m = new Metaestat(); - retornaJSON($m->excluirRegistro("i3geoestat_tipo_periodo","codigo_tipo_periodo",$id)); - } - else{ - retornaJSON("erro"); - } - } - else{ - retornaJSON("erro"); - } - exit; - break; - /* - Valor: EXCLUIRUNIDADEMEDIDA - - Exclui uma unidade de medida"Dados inseridos" - - Retorno: - - {JSON} - */ - case "EXCLUIRUNIDADEMEDIDA": - $tabela = "i3geoestat_unidade_medida"; - $id = $codigo_unidade_medida; - $f = verificaFilhos(); - - if(!$f){ - $m = new Metaestat(); - retornaJSON($m->excluirRegistro("i3geoestat_unidade_medida","codigo_unidade_medida",$id)); - } - else - retornaJSON("erro"); - exit; - break; - case "EXCLUIRFONTEINFO": - $tabela = "i3geoestat_fonteinfo"; - $id = $id_fonteinfo; - $f = verificaFilhos(); - - if(!$f){ - $m = new Metaestat(); - retornaJSON($m->excluirRegistro("i3geoestat_fonteinfo","id_fonteinfo",$id)); - } - else - retornaJSON("erro"); - exit; - break; - case "EXCLUIRFONTEINFOMEDIDA": - $m = new Metaestat(); - retornaJSON($m->excluirFonteinfoMedida($id_medida_variavel,$id_fonteinfo)); - exit; - break; - /* - Valor: EXCLUIRCONEXAO - - Exclui uma conexao - - Retorno: - - {JSON} - */ - case "EXCLUIRCONEXAO": - //impede a alteracao dos valores reservados - if($codigo_estat_conexao > 0){ - $tabela = "i3geoestat_conexao"; - $id = $codigo_estat_conexao; - $f = verificaFilhos(); - if(!$f){ - $m = new Metaestat(); - retornaJSON($m->excluirRegistro("i3geoestat_conexao","codigo_estat_conexao",$id)); - } - else{ - retornaJSON("erro"); - } - } - else{ - retornaJSON("erro"); - } - exit; - break; - /* - Valor: EXCLUIRTIPOREGIAO - - Exclui uma regiao - - Retorno: - - {JSON} - */ - case "EXCLUIRTIPOREGIAO": - $tabela = "i3geoestat_tipo_regiao"; - $id = $codigo_tipo_regiao; - $f = verificaFilhos(); - if(!$f){ - $m = new Metaestat(); - retornaJSON($m->excluirRegistro("i3geoestat_tipo_regiao","codigo_tipo_regiao",$id)); - } - else - retornaJSON("erro"); - exit; - break; - case "EXCLUIRAGREGAREGIAO": - $tabela = "i3geoestat_agregaregiao"; - $id = $id_agregaregiao; - $m = new Metaestat(); - retornaJSON($m->excluirRegistro("i3geoestat_agregaregiao","id_agregaregiao",$id)); - exit; - break; - /* - Valor: EXCLUIRMEDIDAVARIAVEL - - Exclui uma medida da variavel - - Parametros: - - codigo_variavel - - Retorno: - - {JSON} - */ - case "EXCLUIRMEDIDAVARIAVEL": - $tabela = "i3geoestat_medida_variavel"; - $id = $id_medida_variavel; - $f = verificaFilhos(); - if(!$f){ - $m = new Metaestat(); - retornaJSON($m->excluirRegistro("i3geoestat_medida_variavel","id_medida_variavel",$id)); - $m->negativaValoresMedidaVariavel($id); - } - else - retornaJSON("erro"); - exit; - break; - /* - Valor: EXCLUIRPARAMETROMEDIDA - - Exclui uma medida da variavel - - Parametros: - - id_parametro_medida - - Retorno: - - {JSON} - */ - case "EXCLUIRPARAMETROMEDIDA": - $m = new Metaestat(); - retornaJSON($m->excluirRegistro("i3geoestat_parametro_medida","id_parametro_medida",$id_parametro_medida)); - exit; - break; - /* - Valor: EXCLUIRCLASSIFICACAOMEDIDA - - Exclui uma classificacao de uma medida da variavel - - Parametros: - - id_classificacao - - Retorno: - - {JSON} - */ - case "EXCLUIRCLASSIFICACAOMEDIDA": - $tabela = "i3geoestat_classificacao"; - $id = $id_classificacao; - $f = verificaFilhos(); - if(!$f){ - $m = new Metaestat(); - retornaJSON($m->excluirRegistro("i3geoestat_classificacao","id_classificacao",$id)); - } - else - retornaJSON("erro"); - exit; - break; - /* - Valor: EXCLUIRCLASSECLASSIFICACAO - - Exclui uma classe de uma classificacao - - Parametros: - - id_classe - - Retorno: - - {JSON} - */ - case "EXCLUIRCLASSECLASSIFICACAO": - $m = new Metaestat(); - retornaJSON($m->excluirRegistro("i3geoestat_classes","id_classe",$id_classe)); - exit; - break; - case "EXCLUIRLINKMEDIDA": - $m = new Metaestat(); - retornaJSON($m->excluirRegistro("i3geoestat_medida_variavel_link","id_link",$id_link)); - exit; - break; - /* - Valor: LISTADADOSTABELASAUXILIARES - - Lista os valores das tabelas auxiliares - - Retorno: - - {JSON} - */ - case "LISTADADOSTABELASAUXILIARES": - $m = new Metaestat(); - $resultado = array(); - $resultado["tipo_periodo"] = $m->listaTipoPeriodo(); - $resultado["unidade_medida"] = $m->listaUnidadeMedida(); - $resultado["tipo_regiao"] = $m->listaTipoRegiao(); - $resultado["conexao"] = $m->listaConexao(); - $resultado["conexaoregistrada"] = $m->listaConexao("",false,false); - $resultado["fonteinfo"] = $m->listaFonteinfo(); - retornaJSON($resultado); - break; - /* - Valor: SQLMEDIDAVARIAVEL - - Sql para acessar os dados de uma medida de uma variavel - - Retorno: - - {JSON} - */ - case "SQLMEDIDAVARIAVEL": - $m = new Metaestat(); - $dados = $m->sqlMedidaVariavel($id_medida_variavel); - retornaJSON($dados); - exit; - break; - /* - Valor: DADOSMEDIDAVARIAVEL - - Mostra os dados de uma media de uma variavel - - Parametros: - - formato - - filtro - - agruparpor - - todasascolunas - 0 ou 1 - - Retorno: - - {JSON} - */ - case "DADOSMEDIDAVARIAVEL": - $m = new Metaestat(); - $dados = $m->dadosMedidaVariavel($id_medida_variavel,$_GET["filtro"],$_GET["todasascolunas"],$_GET["agruparpor"]); - if($_GET["formato"] == "json"){ - retornaJSON($dados); - } - if($_GET["formato"] == "xml"){ - header("Content-type: application/xml"); - echo($m->formataXML($dados)); - } - if($_GET["formato"] == "csv"){ - require_once(dirname(__FILE__)."/../../pacotes/parsecsv/parsecsv.lib.php"); - $csv = new parseCSV(); - $csv->titles = array_keys($dados[0]); - $csv->output(true, 'mvar'.$id_medida_variavel.'_'.date('dmY').'.csv', $dados); - } - exit; - break; - /* - Valor: MAPFILEMEDIDAVARIAVEL - - Cria o mapfile de uma media de uma variavel - - Parametros: - - formato - - filtro - - agruparpor - - todasascolunas - 0 ou 1 - - Retorno: - - {JSON} - */ - case "MAPFILEMEDIDAVARIAVEL": - //$filtro usa aspas duplas para enviar os parametros - $filtro = str_replace('"',"'",$_GET["filtro"]); - $m = new Metaestat(); - if(!isset($codigo_tipo_regiao)){ - $codigo_tipo_regiao = ""; - } - if(!isset($_GET["opacidade"])){ - $_GET["opacidade"] = ""; - } - if($_GET["cachemapfile"] === "nao"){ - $_GET["cachemapfile"] = false; - } - else{ - $_GET["cachemapfile"] = true; - } - if($_GET["formato"] == "json"){ - retornaJSON($m->mapfileMedidaVariavel($id_medida_variavel,$filtro,$_GET["todasascolunas"],$_GET["tipolayer"],$_GET["titulolayer"],$id_classificacao,$_GET["agruparpor"],$codigo_tipo_regiao,$_GET["opacidade"],false,$_GET["cachemapfile"])); - } - exit; - break; - /* - Valor: MAPFILETIPOREGIAO - - Gera um mapfile de um tipo de regiao - - */ - case "MAPFILETIPOREGIAO": - $m = new Metaestat(); - if(empty($_GET["outlinecolor"])){ - $_GET["outlinecolor"] = "255,0,0"; - } - if(empty($_GET["width"])){ - $_GET["width"] = 1; - } - if(empty($_GET["nomes"])){ - $_GET["nomes"] = "nao"; - } - retornaJSON($m->mapfileTipoRegiao($codigo_tipo_regiao,$_GET["outlinecolor"],$_GET["width"],$_GET["nomes"])); - exit; - break; - /* - Valor: KMLMEDIDAVARIAVEL - - Gera um arquivo kml que pode ser aberto no googleearth - - */ - case "KMLMEDIDAVARIAVEL": - $m = new Metaestat(); - $r = $m->mapfileMedidaVariavel($id_medida_variavel,$_GET["filtro"],$_GET["todasascolunas"],$_GET["tipolayer"],$_GET["titulolayer"],$id_classificacao,$_GET["agruparpor"]); - //cria um mapfile completo, que inclui a camada no mapfile de inicializacao do i3geo - $mapfile = $m->mapfileCompleto($r["mapfile"]); - $formato = $_GET["formato"]; - if($formato == "kml" || $formato == "kmz"){ - //define as variaveis necessarias ao pacote kmlserver - set_time_limit(0); - $_REQUEST["map"] = $mapfile; - $_REQUEST["typename"] = $r["layer"]; - $_REQUEST["request"] = $formato; - //$_REQUEST["service"] = "icon"; - include (dirname(__FILE__)."/../../pacotes/kmlmapserver/classes/kmlserver.class.php"); - $server = new KmlServer(); - }else{//3d com tme - if(!isset($dir_tmp)){ - include(dirname(__FILE__)."/../../ms_configura.php"); - } - $verificaSID = false; - $mv = $m->listaMedidaVariavel("",$id_medida_variavel); - $reg = $m->listaTipoRegiao($mv["codigo_tipo_regiao"]); - $_GET["nomelayer"] = $r["layer"]; - $_GET["colunasvalor"] = $mv["colunavalor"]; - $_GET["colunanomeregiao"] = $reg["colunanomeregiao"]; - $_GET["titulo"] = $r["titulolayer"]; - $_GET["descricao"] = $mv["colunavalor"]; - $_SESSION["map_file"] = $mapfile; - $_SESSION["postgis_mapa"] = ""; - $_SESSION["tmpurl"] = ""; - $_SESSION["mapext"] = ""; - $download = true; - $parametersTME = array( - 'mapType' => 'bar', - 'indicator' => 'valores', - 'year' => "", - 'classification' => 'equal', - 'mapTitle' => $r["titulolayer"], - 'timeType' => "slider", //para mais de um ano, escolha slider ou series - 'dirtmp' => $dir_tmp, - 'barSize'=> 5000 - ); - include (dirname(__FILE__)."/../../pacotes/tme/TME_i3geo.php"); - } - exit; - break; - /* - Valor: SUMARIOMEDIDAVARIAVEL - - Sumario estatistico media de uma variavel - - Parametros: - - formato - - filtro - - Retorno: - - {JSON} - */ - case "SUMARIOMEDIDAVARIAVEL": - $m = new Metaestat(); - $dados = $m->sumarioMedidaVariavel($id_medida_variavel,$_GET["filtro"],$_GET["agruparpor"]); - if($_GET["formato"] == "json"){ - retornaJSON($dados); - } - if($_GET["formato"] == "xml"){ - header("Content-type: application/xml"); - echo($m->formataXML($dados["grupos"])); - } - exit; - break; - /* - Valor: ESQUEMASCONEXAO - - Lista os esquemas de uma conexao - - Parametros: - - formato - - codigo_estat_conexao - - Retorno: - - {JSON} - */ - case "ESQUEMASCONEXAO": - $m = new Metaestat(); - if($_GET["formato"] == "json"){ - retornaJSON($m->esquemasConexao($codigo_estat_conexao)); - } - exit; - break; - /* - Valor: TABELASESQUEMA - - Lista as tabelas de um esquema - - Parametros: - - formato - - codigo_estat_conexao - - nome_esquema - - Retorno: - - {JSON} - */ - case "TABELASESQUEMA": - $m = new Metaestat(); - if(empty($_GET["excluigeom"])){ - $_GET["excluigeom"] = ""; - } - if($_GET["formato"] == "json"){ - retornaJSON($m->tabelasEsquema($codigo_estat_conexao,$_GET["nome_esquema"],$_GET["excluigeom"])); - } - exit; - break; - case "CRIATABELADB": - $m = new Metaestat(); - if($nome_esquema != "i3geo_metaestat"){ - retornaJSON("erro"); - exit; - } - retornaJSON($m->criaTabelaDB($codigo_estat_conexao,$_GET["nome_esquema"],$_GET["nome_tabela"],$_GET["comentario"])); - exit; - break; - case "CRIAESQUEMADB": - $m = new Metaestat(); - retornaJSON($m->criaEsquemaDB($codigo_estat_conexao,$_GET["nome_esquema"])); - exit; - break; - case "ALTERANOMETABELADB": - $m = new Metaestat(); - if($_GET["nome_esquema"] != "i3geo_metaestat"){ - retornaJSON("erro"); - exit; - } - retornaJSON($m->alteraNomeTabelaDB($codigo_estat_conexao,$_GET["nome_esquema"],$_GET["nome_tabela"],$_GET["novonome_tabela"])); - exit; - break; - case "ALTERANOMEESQUEMADB": - $m = new Metaestat(); - retornaJSON($m->alteraNomeEsquemaDB($codigo_estat_conexao,$_GET["nome_esquema"],$_GET["novonome_esquema"])); - exit; - break; - case "COPIATABELADB": - $m = new Metaestat(); - if($_GET["nome_esquema"] != "i3geo_metaestat"){ - retornaJSON("erro"); - exit; - } - retornaJSON($m->copiaTabelaDB($codigo_estat_conexao,$_GET["nome_esquema"],$_GET["nome_tabela"],$_GET["novonome_tabela"])); - exit; - break; - /* - Valor: COLUNASTABELA - - Lista as colunas de uma tabela - - Parametros: - - formato - - codigo_estat_conexao - - nome_esquema - - nome_tabela - - Retorno: - - {JSON} - */ - case "COLUNASTABELA": - $m = new Metaestat(); - if(empty($_GET["tipo"])){ - $_GET["tipo"] = ""; - } - if($_GET["formato"] == "json"){ - retornaJSON($m->colunasTabela($codigo_estat_conexao,$_GET["nome_esquema"],$_GET["nome_tabela"],$_GET["tipo"])); - } - exit; - break; - case "INFOTABELA": - $m = new Metaestat(); - $colunas = $m->colunasTabela($codigo_estat_conexao,$_GET["nome_esquema"],$_GET["nome_tabela"],""); - $comentario = $m->comentarioTabela($codigo_estat_conexao,$_GET["nome_esquema"],$_GET["nome_tabela"]); - if($_GET["formato"] == "json"){ - retornaJSON(array( - "colunas"=>$colunas, - "comentario"=>$comentario - )); - } - exit; - case "CRIACOLUNADB": - $m = new Metaestat(); - if($_GET["nome_esquema"] != "i3geo_metaestat"){ - retornaJSON("erro"); - exit; - } - retornaJSON($m->criaColunaDB($codigo_estat_conexao,$_GET["nome_esquema"],$_GET["nome_tabela"],$_GET["nova_coluna"],$_GET["tipo"])); - exit; - break; - case "ALTERANOMECOLUNADB": - $m = new Metaestat(); - if($_GET["nome_esquema"] != "i3geo_metaestat"){ - retornaJSON("erro"); - exit; - } - retornaJSON($m->alteraNomeColunaDB($codigo_estat_conexao,$_GET["nome_esquema"],$_GET["nome_tabela"],$_GET["nome_coluna"],$_GET["novonome_coluna"])); - exit; - break; - case "OBTEMDADOSTABELADB": - $m = new Metaestat(); - if($_GET["formato"] == "json"){ - retornaJSON($m->obtemDadosTabelaDB($codigo_estat_conexao,$_GET["nome_esquema"],$_GET["nome_tabela"],$_GET["geo"],$_GET["nreg"])); - } - if($_GET["formato"] == "csv"){ - $dados = $m->obtemDadosTabelaDB($codigo_estat_conexao,$_GET["nome_esquema"],$_GET["nome_tabela"],$_GET["geo"],$_GET["nreg"]); - require_once(dirname(__FILE__)."/../../pacotes/parsecsv/parsecsv.lib.php"); - $csv = new parseCSV(); - //$csv->encoding('UTF-16', 'UTF-8'); - $csv->titles = $dados["nomescolunas"]; - $csv->output(true, 'mvar'.$_GET["nome_tabela"].'_'.date('dmY').'.csv', $dados["linhas"]); - } - exit; - break; - /* - Valor: DESCREVECOLUNASTABELA - - Lista as colunas de uma tabela - - Parametros: - - formato - - codigo_estat_conexao - - nome_esquema - - nome_tabela - - Retorno: - - {JSON} - */ - case "DESCREVECOLUNASTABELA": - $m = new Metaestat(); - if($_GET["formato"] == "json"){ - $c = $m->descreveColunasTabela($codigo_estat_conexao,$_GET["nome_esquema"],$_GET["nome_tabela"]); - $s = $m->listaTabelaSerial($codigo_estat_conexao,$_GET["nome_esquema"],$_GET["nome_tabela"]); - for($i=0;$irelatorioCompleto($codigo_variavel,$_GET["dadosGerenciais"]); - retornaJSON($dados); - exit; - break; - case "RELATORIOCOMPLETO": - $m = new Metaestat(); - if(empty($codigo_variavel)){ - $codigo_variavel = ""; - } - $dados = $m->relatorioCompleto($codigo_variavel,$_GET["dadosGerenciais"]); - if(empty($_GET["detalhes"])){ - $_GET["detalhes"] = "sim"; - } - $dados = $m->formataRelatorioHtml($dados,$_GET["detalhes"]); - retornaJSON($dados); - exit; - break; - //insere dados com base em um arquivo csv ja existente no servidor - case "INSERIRDADOS": - $m = new Metaestat(); - retornaJSON($m->inserirDados($nomearquivoserv,$id_medida_variavel,$_GET["codigoregiao"],$_GET["valor"],$_GET["tipoinclusao"],$_GET["ano"],$_GET["mes"],$_GET["dia"],$_GET["hora"])); - exit; - break; - //grava ou cria um registro de uma regiao - case "MANTEMDADOSREGIAO": - $m = new Metaestat(); - retornaJSON($m->mantemDadosRegiao($codigo_tipo_regiao,$_GET["identificador"],$_GET["identificadornovo"],$_GET["nome"],$_GET["wkt"],$_GET["tipo"])); - exit; - break; - case "LISTAATRIBUTOSMEDIDAVARIAVELXY": - $m = new Metaestat(); - $regiao = $m->xy2regiao($codigo_tipo_regiao, $_GET["x"], $_GET["y"]); - $identificador_regiao = $regiao["identificador_regiao"]; - $resultado = array(); - if($regiao != ""){ - $dados = $m->listaAtributosMedidaVariavelRegiao($identificador_regiao, $id_medida_variavel); - $resultado = array( - "atributos"=>$dados, - "regiao"=>$regiao - ); - } - retornaJSON($resultado); - exit; - break; - case "LISTATODOSATRIBUTOSMEDIDAVARIAVELXY": - $lista = array(); - $m = new Metaestat(); - $regiao = $m->xy2regiao($codigo_tipo_regiao, $_GET["x"], $_GET["y"]); - $identificador_regiao = $regiao["identificador_regiao"]; - $variaveis = $m->listaVariavel(); - $dadosVariavel = array(); - - foreach($variaveis as $variavel){ - $medidas = $m->listaMedidaVariavel($variavel["codigo_variavel"]); - $valores = array(); - foreach($medidas as $medida){ - $dadosMedida = $m->listaAtributosMedidaVariavelRegiao($identificador_regiao,$medida["id_medida_variavel"]); - if($dadosMedida != ""){ - $valores[] = array( - "medida" => $medida["nomemedida"], - "dados" => $dadosMedida - ); - } - } - if(!empty($valores)){ - $dadosVariavel[] = array( - "variavel" => $variavel["nome"], - "dados" => $valores - ); - } - } - retornaJSON($dadosVariavel); - exit; - break; - case "SALVAATRIBUTOSMEDIDAVARIAVEL": - /* "&codigo_tipo_regiao="+codigo_tipo_regiao+"&identificador_regiao="+identificador_regiao+"&id_medida_variavel="+id_medida_variavel+"&colunas="+colunasT[0]+"&valores="+valoresT.join("|")+"&idsunicos="+idsunicosT[0] - */ - $_GET["valores"] = explode("#",$_GET["valores"]);//array de uma lista de strings com valores separados por ; - $_GET["idsunicos"] = explode("|",$_GET["idsunicos"]);//array - $_GET["colunas"] = explode("|",$_GET["colunas"]);//array - $m = new Metaestat(); - $resultado = $m->salvaAtributosMedidaVariavel($id_medida_variavel,$codigo_tipo_regiao,$_GET["identificador_regiao"],$_GET["idsunicos"],$_GET["colunas"],$_GET["valores"]); - retornaJSON($resultado); - exit; - break; - //utilizado na ferramenta de identificacao - case "SALVAATRIBUTOSTIPOREGIAO": - $m = new Metaestat(); - $resultado = $m->mantemDadosRegiao($codigo_tipo_regiao,$_GET["identificador_regiao"],$_GET["identificador_regiao"],$_GET["valores"],"","alterar",$_GET["colunas"]); - retornaJSON($resultado); - exit; - break; - case "EXCLUIATRIBUTOSMEDIDAVARIAVEL": - $m = new Metaestat(); - $resultado = $m->excluiAtributosMedidaVariavel($id_medida_variavel,$codigo_tipo_regiao,$_GET["identificador_regiao"],$id); - retornaJSON($resultado); - exit; - break; - case "REGIAO2SHP": - $m = new Metaestat(); - $shp = $m->regiao2shp($codigo_tipo_regiao); - include(dirname(__FILE__)."/../../pacotes/kmlmapserver/classes/zip.class.php"); - - $handle = fopen($shp.".shp", "r"); - $contentsshp = fread($handle, filesize($shp.".shp")); - fclose($handle); - - $handle = fopen($shp.".shp", "r"); - $contentsdbf = fread($handle, filesize($shp.".dbf")); - fclose($handle); - - $handle = fopen($shp.".shp", "r"); - $contentsshx = fread($handle, filesize($shp.".shx")); - fclose($handle); - - $ziper = new zipfile(); - - $ziper->addFile($contentsshp, basename($shp).'.shp'); - $ziper->addFile($contentsshx, basename($shp).'.shx'); - $ziper->addFile($contentsdbf, basename($shp).'.dbf'); - $arq = $shp.".zip"; - $ziper->output($arq); - $dirtmp = basename(dirname($arq)); - $d = "/ms_tmp/".basename($arq); - echo ""; - break; -} -?> diff --git a/admin/php/webservices.php b/admin/php/webservices.php deleted file mode 100755 index db79da8..0000000 --- a/admin/php/webservices.php +++ /dev/null @@ -1,166 +0,0 @@ - \ No newline at end of file diff --git a/admin/php/xxxmetaestat.php b/admin/php/xxxmetaestat.php new file mode 100755 index 0000000..84ee180 --- /dev/null +++ b/admin/php/xxxmetaestat.php @@ -0,0 +1,1728 @@ +0,"esquema"=>"public")); + retornaJSON($esquema);exit; + } + if(strtoupper($funcao) == "TABELASESQUEMA"){ + if($_GET["nome_esquema"] != "public"){ + retornaJSON("Vc nao pode realizar essa operacao.");exit; + } + } + if(strtoupper($funcao) != "ESQUEMASCONEXAO" && strtoupper($funcao) != "TABELASESQUEMA"){ + retornaJSON("Vc nao pode realizar essa operacao.");exit; + } + } +} +//verifica as funcoes que manipulam o banco de dados +$funcoesEdicao = array( + "CRIATABELADB", + "CRIAESQUEMADB", + "ALTERANOMETABELADB", + "ALTERANOMEESQUEMADB", + "COPIATABELADB", + "CRIACOLUNADB", + "ALTERANOMECOLUNADB", +); +if(in_array(strtoupper($funcao),$funcoesEdicao)){ + if(verificaOperacaoSessao("admin/metaestat/editorbanco") == false){ + retornaJSON("Vc nao pode realizar essa operacao.");exit; + } +} + +include(dirname(__FILE__)."/classe_metaestat.php"); +//error_reporting(0); +//faz a busca da função que deve ser executada +switch (strtoupper($funcao)) +{ + /* + Note: + + Valores que o parâmetro &funcao pode receber. Os parâmetros devem ser enviados na requisição em AJAX. + */ + /* + Valor: LISTACONEXAO + + Lista de conexoes + + Retorno: + + {JSON} + */ + case "LISTACONEXAO": + $m = new Metaestat(); + retornaJSON($m->listaConexao($codigo_estat_conexao)); + exit; + break; + /* + Valor: LISTAVARIAVEL + + Lista de variaveis + + Retorno: + + {JSON} + */ + case "LISTAVARIAVEL": + $m = new Metaestat(); + if(empty($_GET["filtro_esquema"])){ + $_GET["filtro_esquema"] = ""; + } + retornaJSON($m->listaVariavel($codigo_variavel,$_GET["filtro_esquema"])); + exit; + break; + /* + Valor: LISTACLASSIFICACAOMEDIDA + + Lista as classificacoes de uma medida de uma variavel + + Retorno: + + {JSON} + */ + case "LISTACLASSIFICACAOMEDIDA": + $m = new Metaestat(); + retornaJSON($m->listaClassificacaoMedida($id_medida_variavel,$id_classificacao)); + exit; + break; + case "LISTALINKMEDIDA": + $m = new Metaestat(); + retornaJSON($m->listaLinkMedida($id_medida_variavel,$id_link)); + exit; + break; + /* + Valor: LISTACLASSECLASSIFICACAO + + Lista as classes de uma classificacoes + + Retorno: + + {JSON} + */ + case "LISTACLASSECLASSIFICACAO": + $m = new Metaestat(); + retornaJSON($m->listaClasseClassificacao($id_classificacao,$id_classe)); + exit; + break; + /* + Valor: LISTAMEDIDAVARIAVEL + + Lista das medidas de uma variavel + + Retorno: + + {JSON} + */ + case "LISTAMEDIDAVARIAVEL": + $m = new Metaestat(); + retornaJSON($m->listaMedidaVariavel($codigo_variavel,$id_medida_variavel)); + exit; + break; + /* + Valor: LISTAPARAMETRO + + Lista de parametros + + Retorno: + + {JSON} + */ + case "LISTAPARAMETRO": + $m = new Metaestat(); + retornaJSON($m->listaParametro($id_medida_variavel,$id_parametro_medida)); + exit; + break; + case "LISTAVALORESPARAMETRO": + $m = new Metaestat(); + retornaJSON($m->listaValoresParametro($id_parametro_medida)); + exit; + break; + /* + Valor: LISTAUNIDADEMEDIDA + + Lista de unidades de medida + + Retorno: + + {JSON} + */ + case "LISTAUNIDADEMEDIDA": + $m = new Metaestat(); + retornaJSON($m->listaUnidadeMedida($codigo_unidade_medida)); + exit; + break; + case "LISTAFONTEINFO": + $m = new Metaestat(); + retornaJSON($m->listaFonteinfo($id_fonteinfo)); + exit; + break; + case "LISTAFONTEINFOMEDIDA": + $m = new Metaestat(); + retornaJSON($m->listaFonteinfoMedida($id_medida_variavel)); + exit; + break; + /* + Valor: LISTATIPOPERIODO + + Lista de unidades de medida + + Retorno: + + {JSON} + */ + case "LISTATIPOPERIODO": + $m = new Metaestat(); + retornaJSON($m->listaTipoPeriodo($codigo_tipo_periodo)); + exit; + break; + /* + Valor: LISTATIPOREGIAO + + Lista de tipos de regiao + + Retorno: + + {JSON} + */ + case "LISTATIPOREGIAO": + $m = new Metaestat(); + retornaJSON($m->listaTipoRegiao($codigo_tipo_regiao)); + exit; + break; + case "LISTAHIERARQUIAREGIOES": + $m = new Metaestat(); + $regioes = $m->listaHierarquiaRegioes($codigo_tipo_regiao); + $valores = ""; + //se achou apenas uma regiao, pega os valores + if(count($regioes) < 2 && $codigo_tipo_regiao != ""){ + $valores = $m->listaDadosRegiao($codigo_tipo_regiao,$_GET["codigoregiaopai"],$_GET["valorregiaopai"]); + } + retornaJSON(array("regiaopai"=>$codigo_tipo_regiao,"regioes"=>$regioes,"valores"=>$valores)); + exit; + break; + case "LISTAREGIOESMEDIDA": + $m = new Metaestat(); + retornaJSON($m->listaRegioesMedida($id_medida_variavel)); + exit; + break; + case "LISTAAGREGAREGIAO": + $m = new Metaestat(); + if(empty($codigo_tipo_regiao)){ + $codigo_tipo_regiao = ""; + } + retornaJSON($m->listaAgregaRegiao($codigo_tipo_regiao,$id_agregaregiao)); + exit; + case "LISTAMAPAS": + $m = new Metaestat(); + if(empty($id_mapa)){ + $id_mapa = ""; + } + retornaJSON($m->listaMapas($id_mapa)); + exit; + break; + case "LISTAGRUPOSMAPA": + $m = new Metaestat(); + retornaJSON($m->listaGruposMapa($id_mapa,$id_mapa_grupo)); + exit; + break; + case "LISTATEMASMAPA": + $m = new Metaestat(); + retornaJSON($m->listaTemasMapa($id_mapa_grupo,$id_mapa_tema)); + exit; + break; + //lista os templates que o usuario pode escolher para publicar mapas + //a pasta com alista e definida na variavel $metaestatTemplates localizada no ms_configura.php + case "LISTATEMPLATESMAPA": + if(empty($metaestatTemplates)){ + $d = dirname(__FILE__)."/../../ferramentas/metaestat/templates"; + } + else{ + $d = $locaplic.$metaestatTemplates; + } + $arq = listaArquivos($d); + $arq["metaestatTemplates"] = $metaestatTemplates; + retornaJSON($arq); + exit; + break; + //lista os logos que o usuario pode escolher para publicar mapas + //a pasta com alista e definida na variavel $metaestatTemplates/logos localizada no ms_configura.php + case "LISTALOGOSMAPA": + if(empty($metaestatTemplates)){ + $metaestatTemplates = dirname(__FILE__)."/../../ferramentas/metaestat/templates"; + } + else{ + $metaestatTemplates = $locaplic.$metaestatTemplates; + } + retornaJSON(listaArquivos($metaestatTemplates."/logos")); + exit; + break; + /* + Valor: ALTERARVARIAVEL + + Altera os dados de uma variavel + */ + case "ALTERAVARIAVEL": + $m = new Metaestat(); + if(empty($codigo_variavel)){ + //isso ira criar um novo registro + $codigo_variavel = $m->alteraVariavel(); + if(!empty($nome)){ + $m->alteraVariavel($codigo_variavel,$nome,$descricao); + } + } + else{ + $codigo_variavel = $m->alteraVariavel($codigo_variavel,$_GET["nome"],$_GET["descricao"]); + } + retornaJSON($m->listaVariavel($codigo_variavel)); + exit; + break; + /* + Valor: ALTERAMEDIDAVARIAVEL + + Altera os dados de uma medida de uma variavel + + Retorno: + + {JSON} + */ + case "ALTERAMEDIDAVARIAVEL": + $filtro = $_GET["filtro"]; + $filtro = str_replace("'",'"',$filtro); + $m = new Metaestat(); + $default = false; + //verifica se a criacao da medida esta sendo feita na tabela default + if($codigo_tipo_periodo < 5 && $esquemadb == "i3geo_metaestat" && $_GET["colunaidgeo"] == "codigoregiao" && $_GET["tabela"] = "dados_medidas"){ + $default = true; + } + if(empty($id_medida_variavel)){ + //isso ira criar um novo registro + $id_medida_variavel = $m->alteraMedidaVariavel($codigo_variavel); + //o filtro e necessario para permitir a selecao dos registros apenas do que pertence a medida da variavel escolhida + //se a tabela nao for a default, o filtro nao se aplica + if($default == true && $filtro == ""){ + $filtro = " id_medida_variavel = $id_medida_variavel "; + } + if(!empty($nomemedida)){ + $m->alteraMedidaVariavel("",$id_medida_variavel,$codigo_unidade_medida,$codigo_tipo_periodo,$codigo_tipo_regiao,$codigo_estat_conexao,$_GET["esquemadb"],$_GET["tabela"],$_GET["colunavalor"],$_GET["colunaidgeo"],$_GET["colunaidunico"],$filtro,$_GET["nomemedida"]); + } + } + else{ + //o filtro e necessario para permitir a selecao dos registros apenas do que pertence a medida da variavel escolhida + if($default == true && $filtro == ""){ + $filtro = " id_medida_variavel = $id_medida_variavel "; + } + $m->alteraMedidaVariavel("",$id_medida_variavel,$codigo_unidade_medida,$codigo_tipo_periodo,$codigo_tipo_regiao,$codigo_estat_conexao,$_GET["esquemadb"],$_GET["tabela"],$_GET["colunavalor"],$_GET["colunaidgeo"],$_GET["colunaidunico"],$filtro,$_GET["nomemedida"]); + } + if(!empty($_GET["colunaAno"]) || !empty($_GET["colunaMes"]) || !empty($_GET["colunaDia"]) || !empty($_GET["colunaHora"])){ + $default = true; + } + //adiciona os parametros de tempo conforme o tipo de periodo escolhido + // + //se os nomes das colunas com os parametros de tempo forem definidas + //os parametros sao criados + //isso acontece se a criacao da medida estiver sendo feita em uma tabela que nao e a default + // + if($default == true){ + $m->excluirRegistro("i3geoestat_parametro_medida","id_medida_variavel",$id_medida_variavel); + $id_pai = 0; + //anual + if($codigo_tipo_periodo >= 1){ + if(empty($_GET["colunaAno"])){ + $_GET["colunaAno"] = "ano"; + } + $id_parametro_medida = $m->alteraParametroMedida($id_medida_variavel,"","","","","",""); + $m->alteraParametroMedida($id_medida_variavel,$id_parametro_medida,"Ano","",$_GET["colunaAno"],$id_pai,1); + $id_pai = $id_parametro_medida; + } + //mensal + if($codigo_tipo_periodo >= 2){ + $id_parametro_medida = $m->alteraParametroMedida($id_medida_variavel,"","","","","",""); + if(empty($_GET["colunaMes"])){ + $_GET["colunaMes"] = "mes"; + } + $m->alteraParametroMedida($id_medida_variavel,$id_parametro_medida,"Mes","",$_GET["colunaMes"],$id_pai,2); + $id_pai = $id_parametro_medida; + } + //diario + if($codigo_tipo_periodo >= 3){ + $id_parametro_medida = $m->alteraParametroMedida($id_medida_variavel,"","","","","",""); + if(empty($colunaDia)){ + $colunaDia = "dia"; + } + $m->alteraParametroMedida($id_medida_variavel,$id_parametro_medida,"Dia","",$_GET["colunaDia"],$id_pai,3); + $id_pai = $id_parametro_medida; + } + //horario + if($codigo_tipo_periodo == 4){ + $id_parametro_medida = $m->alteraParametroMedida($id_medida_variavel,"","","","","",""); + if(empty($_GET["colunaHora"])){ + $_GET["colunaHora"] = "hora"; + } + $m->alteraParametroMedida($id_medida_variavel,$id_parametro_medida,"Hora","",$_GET["colunaHora"],$id_pai,4); + } + } + retornaJSON($m->listaMedidaVariavel("",$id_medida_variavel)); + exit; + break; + /* + Valor: ALTERAPARAMETROMEDIDA + + Altera os dados de uma parametro de uma medida + + Retorno: + + {JSON} + */ + case "ALTERAPARAMETROMEDIDA": + $m = new Metaestat(); + if(empty($id_parametro_medida)){ + //isso ira criar um novo registro + $id_parametro_medida = $m->alteraParametroMedida($id_medida_variavel); + } + else{ + $m->alteraParametroMedida("",$id_parametro_medida,$_GET["nome"],$_GET["descricao"],$_GET["coluna"],$id_pai,$_GET["tipo"]); + } + retornaJSON($m->listaParametro($id_medida_variavel,$id_parametro_medida)); + exit; + break; + /* + Valor: ALTERACLASSIFICACAOMEDIDA + + Altera os dados de uma classificacao de uma medida + + Retorno: + + {JSON} + */ + case "ALTERACLASSIFICACAOMEDIDA": + $m = new Metaestat(); + if(empty($id_classificacao)){ + //isso ira criar um novo registro + $id_classificacao = $m->alteraClassificacaoMedida($id_medida_variavel); + if(!empty($nome)){ + $m->alteraClassificacaoMedida($id_classificacao,$id_classificacao,$_GET["nome"],$_GET["observacao"]); + } + } + else{ + $m->alteraClassificacaoMedida("",$id_classificacao,$_GET["nome"],$_GET["observacao"]); + } + retornaJSON($m->listaClassificacaoMedida($id_medida_variavel,$id_classificacao)); + exit; + break; + case "CALCULACLASSIFICACAO": + $cores = $_GET["cores"]; + $limite = $_GET["limite"]; + $numintervalos = $_GET["numintervalos"]; + $tipo = $_GET["tipo"]; + //as cores vem no formato rgb(0,0,0); + if(!empty($cores)){ + $cores = str_replace("rgb(","",$cores); + $cores = str_replace(")","",$cores); + $cores = explode("|",$cores); + } + if(empty($limite)){ + $limite = ""; + } + + if($tipo == "quebrasnaturais"){ + $m = new Metaestat(); + $dados = $m->dadosMedidaVariavel($id_medida_variavel,"",0,"",$limite,true); + $metaVariavel = $m->listaMedidaVariavel("",$id_medida_variavel); + $colunavalor = $metaVariavel["colunavalor"]; + $valores = array(); + + foreach($dados as $d){ + if($d[$colunavalor]){ + $valores[] = $d[$colunavalor]; + } + } + include(dirname(__FILE__)."/../../pacotes/jenks-master/jenks.php"); + $intervalos = getJenksClasses($numintervalos, $valores); + $m->excluirRegistro("i3geoestat_classes","id_classificacao",$id_classificacao); + for ($i=0; $i < $numintervalos; ++$i){ + if ($i == $numintervalos - 1){ + $expressao = "(([".$colunavalor."]>=".$intervalos[$i]."))"; + $titulo = ">= ".$intervalos[$i]; + } + else{ + $expressao = "(([".$colunavalor."]>=".$intervalos[$i].")and([".$colunavalor."]<".$intervalos[$i+1]."))"; + $titulo = ">= ".$intervalos[$i]." e < que ".($intervalos[$i+1]); + } + $id_classe = $m->alteraClasseClassificacao($id_classificacao); + if(!empty($cores)){ + $cor = explode(",",$cores[$i]); + $vermelho = $cor[0]; + $verde = $cor[1]; + $azul = $cor[2]; + } + $m->alteraClasseClassificacao("",$id_classe,$titulo,$expressao,$vermelho,$verde,$azul,"","","255","255","255","2"); + } + retornaJSON("ok"); + exit; + } + if($tipo == "quartil"){ + $m = new Metaestat(); + $dados = $m->sumarioMedidaVariavel($id_medida_variavel,"","",$limite,true); + if($dados == false){ + retornaJSON("erro"); + exit; + } + $dados = $dados["quartis"]; + $n = count($dados["expressoes"]); + $m->excluirRegistro("i3geoestat_classes","id_classificacao",$id_classificacao); + for($i=0;$i<$n;++$i){ + $id_classe = $m->alteraClasseClassificacao($id_classificacao); + $expressao = $dados["expressoes"][$i]; + $titulo = $dados["nomes"][$i]; + if(!empty($cores)){ + $cor = explode(",",$cores[$i]); + $vermelho = $cor[0]; + $verde = $cor[1]; + $azul = $cor[2]; + } + $m->alteraClasseClassificacao("",$id_classe,$titulo,$expressao,$vermelho,$verde,$azul,"","","255","255","255","2"); + } + exit; + retornaJSON("ok"); + exit; + } + //para efeitos de compatibilidade com o nome de $tipo + if(empty($numintervalos) || $tipo == "intiguais5"){ + $numintervalos = 5; + } + if($tipo == "intiguais5" || $tipo == "intiguais"){ + $m = new Metaestat(); + $dados = $m->sumarioMedidaVariavel($id_medida_variavel,"","",$limite,true); + if($dados == false){ + retornaJSON("erro"); + exit; + } + $min = $dados["menor"]; + $max = $dados["maior"]; + $item = $dados["colunavalor"]; + $intervalo = ($max - $min) / $numintervalos; + //adiciona as classes novas + $intatual = $min; + $m->excluirRegistro("i3geoestat_classes","id_classificacao",$id_classificacao); + for ($i=0; $i < $numintervalos; ++$i){ + if ($i == $numintervalos - 1){ + $expressao = "(([".$item."]>=".$intatual.")and([".$item."]<=".($intatual+$intervalo)."))"; + } + else{ + $expressao = "(([".$item."]>=".$intatual.")and([".$item."]<".($intatual+$intervalo)."))"; + } + $titulo = ">= ".$intatual." e < que ".($intatual+$intervalo); + $intatual = $intatual + $intervalo; + $id_classe = $m->alteraClasseClassificacao($id_classificacao); + if(!empty($cores)){ + $cor = explode(",",$cores[$i]); + $vermelho = $cor[0]; + $verde = $cor[1]; + $azul = $cor[2]; + } + $m->alteraClasseClassificacao("",$id_classe,$titulo,$expressao,$vermelho,$verde,$azul,"","","255","255","255","2"); + } + retornaJSON("ok"); + exit; + } + //o menor e o maior valor sao enviados como parametro ($min e $max) + //para efeitos de compatibilidade com o nome de $tipo + if(empty($numintervalos) || $tipo == "intiguais5mm"){ + $numintervalos = 5; + } + if($tipo == "intiguais5mm" || $tipo == "intiguaismm"){ + $m = new Metaestat(); + $metaVariavel = $m->listaMedidaVariavel("",$id_medida_variavel); + $item = $metaVariavel["colunavalor"]; + $intervalo = ($max - $min) / $numintervalos; + //adiciona as classes novas + $intatual = $min; + $m->excluirRegistro("i3geoestat_classes","id_classificacao",$id_classificacao); + for ($i=0; $i < $numintervalos; ++$i){ + if ($i == $numintervalos - 1){ + $expressao = "(([".$item."]>=".$intatual.")and([".$item."]<=".($intatual+$intervalo)."))"; + } + else{ + $expressao = "(([".$item."]>=".$intatual.")and([".$item."]<".($intatual+$intervalo)."))"; + } + $titulo = ">= ".$intatual." e < que ".($intatual+$intervalo); + $intatual = $intatual + $intervalo; + $id_classe = $m->alteraClasseClassificacao($id_classificacao); + if(!empty($cores)){ + $cor = explode(",",$cores[$i]); + $vermelho = $cor[0]; + $verde = $cor[1]; + $azul = $cor[2]; + } + $m->alteraClasseClassificacao("",$id_classe,$titulo,$expressao,$vermelho,$verde,$azul,"","","255","255","255","2"); + } + retornaJSON("ok"); + exit; + } + retornaJSON("ok"); + exit; + break; + case "ALTERAESTILOSCLASSIFICACAO": + $tipo = $_GET["tipo"]; + $aumentar = $_GET["aumentar"]; + if($tipo == "tamanho"){ + $m = new Metaestat(); + $classes = $m->listaClasseClassificacao($id_classificacao); + $nclasses = count($classes); + $tamanhoini -= $aumentar; + for($i=0;$i<$nclasses;$i++){ + $c = $classes[$i]; + $m->alteraClasseClassificacao( + $id_classificacao, + $c["id_classe"], + $c["titulo"], + $c["expressao"], + $c["vermelho"], + $c["verde"], + $c["azul"], + $tamanhoini + $aumentar, + $c["simbolo"], + $c["overmelho"], + $c["overde"], + $c["oazul"], + $tamanhoini + $aumentar + ); + $tamanhoini += $aumentar; + } + retornaJSON("ok"); + exit; + } + retornaJSON("ok"); + exit; + break; + + /* + Valor: ALTERACLASSECLASSIFICACAO + + Altera os dados de uma classe de uma classificacao + + Retorno: + + {JSON} + */ + case "ALTERACLASSECLASSIFICACAO": + $m = new Metaestat(); + if(empty($id_classe)){ + //isso ira criar um novo registro + $id_classe = $m->alteraClasseClassificacao($id_classificacao); + } + else{ + $titulo = $_GET["titulo"]; + $expressao = $_GET["expressao"]; + $m->alteraClasseClassificacao("",$id_classe,$titulo,$expressao,$_GET["vermelho"],$_GET["verde"],$_GET["azul"],$_GET["tamanho"],$_GET["simbolo"],$_GET["overmelho"],$_GET["overde"],$_GET["oazul"],$_GET["otamanho"]); + } + retornaJSON($m->listaClasseClassificacao($id_classificacao,$id_classe)); + exit; + break; + case "ALTERALINKMEDIDA": + $m = new Metaestat(); + if(empty($id_link)){ + //isso ira criar um novo registro + $id_link = $m->alteraLinkMedida($id_medida_variavel); + } + else{ + $m->alteraLinkMedida("",$id_link,$_GET["nome"],$_GET["link"]); + } + retornaJSON($m->listaLinkMedida($id_medida_variavel,$id_link)); + exit; + break; + case "ALTERAFONTEINFO": + $m = new Metaestat(); + if(empty($id_fonteinfo)){ + //isso ira criar um novo registro + $id_fonteinfo = $m->alteraFonteinfo(); + } + else{ + $m->alteraFonteinfo($id_fonteinfo,$_GET["titulo"],$_GET["link"]); + } + retornaJSON($m->listaFonteinfo($id_fonteinfo)); + exit; + break; + case "ADICIONAFONTEINFOMEDIDA": + $m = new Metaestat(); + //echo $id_medida_variavel;exit; + $m->adicinaFonteinfoMedida($id_medida_variavel,$id_fonteinfo); + retornaJSON($m->listaFonteInfo($id_fonteinfo)); + exit; + break; + /* + Valor: ALTERARUNIDADEMEDIDA + + Altera a tabela de unidades de medida + + Retorno: + + {JSON} + */ + case "ALTERARUNIDADEMEDIDA": + $m = new Metaestat(); + if(empty($codigo_unidade_medida)){ + $codigo_unidade_medida = $m->alteraUnidadeMedida(); + } + else{ + $codigo_unidade_medida = $m->alteraUnidadeMedida($codigo_unidade_medida,$_GET["nome"],$_GET["sigla"],$_GET["permitesoma"],$_GET["permitemedia"]); + } + retornaJSON($m->listaUnidadeMedida($codigo_unidade_medida)); + exit; + break; + /* + Valor: ALTERARCONEXAO + + Altera a tabela de conexoes + + Retorno: + + {JSON} + */ + case "ALTERARCONEXAO": + $m = new Metaestat(); + if(empty($codigo_estat_conexao)){ + $codigo_estat_conexao = $m->alteraConexao(); + } + else{ + $codigo_estat_conexao = $m->alteraConexao($codigo_estat_conexao,$_GET["bancodedados"],$_GET["host"],$_GET["porta"],$_GET["usuario"]); + } + retornaJSON($m->listaConexao($codigo_estat_conexao)); + exit; + break; + /* + Valor: ALTERARTIPOREGIAO + + Altera a tabela de regioes + + Retorno: + + {JSON} + */ + case "ALTERARTIPOREGIAO": + $m = new Metaestat(); + if(empty($codigo_tipo_regiao)){ + $codigo_tipo_regiao = $m->alteraTipoRegiao(); + } + else{ + $codigo_tipo_regiao = $m->alteraTipoRegiao($codigo_tipo_regiao,$_GET["nome_tipo_regiao"],$_GET["descricao_tipo_regiao"],$_GET["esquemadb"],$_GET["tabela"],$_GET["colunageo"],$_GET["colunacentroide"],$_GET["data"],$_GET["identificador"],$_GET["colunanomeregiao"],$_GET["srid"],$codigo_estat_conexao,$_GET["colunasvisiveis"],$_GET["apelidos"]); + } + retornaJSON($m->listaTipoRegiao($codigo_tipo_regiao)); + exit; + break; + case "ALTERAAGREGAREGIAO": + $m = new Metaestat(); + if(empty($id_agregaregiao)){ + $id_agregaregiao = $m->alteraAgregaRegiao($codigo_tipo_regiao); + } + else{ + $id_agregaregiao = $m->alteraAgregaRegiao("",$id_agregaregiao,$codigo_tipo_regiao_pai,$_GET["colunaligacao_regiaopai"]); + $codigo_tipo_regiao = ""; + } + retornaJSON($m->listaAgregaRegiao($codigo_tipo_regiao,$id_agregaregiao)); + exit; + break; + /* + Valor: ALTERARTIPOPERIODO + + Altera a tabela de tipos de periodo + + Retorno: + + {JSON} + */ + case "ALTERARTIPOPERIODO": + $m = new Metaestat(); + if(empty($codigo_tipo_periodo)){ + $codigo_tipo_periodo = $m->alteraTipoPeriodo(); + } + else{ + //impede a alteracao dos valores reservados + if($codigo_tipo_periodo > 4){ + $codigo_unidade_medida = $m->alteraTipoPeriodo($codigo_tipo_periodo,$_GET["nome"],$_GET["descricao"]); + } + } + retornaJSON($m->listaTipoPeriodo($codigo_tipo_periodo)); + exit; + break; + /* + Valor: ALTERAMAPA + + Altera a tabela de mapas para publicacao + + Retorno: + + {JSON} + */ + case "ALTERAMAPA": + $m = new Metaestat(); + if(empty($id_mapa)){ + $id_mapa = $m->alteraMapa(); + } + else{ + $id_mapa = $m->alteraMapa($id_mapa,$_GET["titulo"],$_GET["template"],$_GET["logoesquerdo"],$_GET["logodireito"],$_GET["publicado"]); + } + retornaJSON($m->listaMapas($id_mapa)); + exit; + break; + /* + Valor: ALTERAMAPAGRUPO + + Altera a tabela de grupos para publicacao + + Retorno: + + {JSON} + */ + case "ALTERAMAPAGRUPO": + $m = new Metaestat(); + if(empty($id_mapa_grupo)){ + $id_mapa_grupo = $m->alteraMapaGrupo($id_mapa); + } + else{ + $id_mapa_grupo = $m->alteraMapaGrupo($id_mapa,$id_mapa_grupo,$_GET["titulo"]); + } + retornaJSON($m->listaGruposMapa($id_mapa,$id_mapa_grupo)); + exit; + break; + case "ALTERAMAPATEMA": + $m = new Metaestat(); + if(empty($id_mapa_tema)){ + $id_mapa_tema = $m->alteraMapaTema($id_mapa_grupo); + } + else{ + $id_mapa_tema = $m->alteraMapaTema($id_mapa_grupo,$id_mapa_tema,$_GET["titulo"],$id_medida_variavel); + } + retornaJSON($m->listaTemasMapa($id_mapa_grupo,$id_mapa_tema)); + exit; + break; + /* + Valor: EXCLUIRMAPA + + Exclui um mapa do publicador + + */ + case "EXCLUIRMAPA": + $tabela = "i3geoestat_mapa"; + $id = $id_mapa; + $f = verificaFilhos(); + if(!$f){ + $m = new Metaestat(); + retornaJSON($m->excluirRegistro("i3geoestat_mapa","id_mapa",$id)); + } + else + retornaJSON("erro"); + exit; + break; + case "EXCLUIRMAPAGRUPO": + $tabela = "i3geoestat_mapa_grupo"; + $id = $id_mapa_grupo; + $f = verificaFilhos(); + if(!$f){ + $m = new Metaestat(); + retornaJSON($m->excluirRegistro("i3geoestat_mapa_grupo","id_mapa_grupo",$id)); + } + else + retornaJSON("erro"); + exit; + break; + case "EXCLUIRMAPATEMA": + $tabela = "i3geoestat_mapa_tema"; + $id = $id_mapa_tema; + $m = new Metaestat(); + retornaJSON($m->excluirRegistro("i3geoestat_mapa_tema","id_mapa_tema",$id)); + exit; + break; + /* + Valor: EXCLUIRVARIAVEL + + Exclui uma variavel + + Parametros: + + codigo_variavel + + Retorno: + + {JSON} + */ + case "EXCLUIRVARIAVEL": + $tabela = "i3geoestat_variavel"; + $id = $codigo_variavel; + $f = verificaFilhos(); + if(!$f){ + $m = new Metaestat(); + retornaJSON($m->excluirRegistro("i3geoestat_variavel","codigo_variavel",$id)); + } + else + retornaJSON("erro"); + exit; + break; + /* + Valor: EXCLUIRTIPOPERIODO + + Exclui uma variavel + + Parametros: + + codigo_variavel + + Retorno: + + {JSON} + */ + case "EXCLUIRTIPOPERIODO": + //impede a alteracao dos valores reservados + if($codigo_tipo_periodo > 4){ + $tabela = "i3geoestat_tipo_periodo"; + $id = $codigo_tipo_periodo; + $f = verificaFilhos(); + if(!$f){ + $m = new Metaestat(); + retornaJSON($m->excluirRegistro("i3geoestat_tipo_periodo","codigo_tipo_periodo",$id)); + } + else{ + retornaJSON("erro"); + } + } + else{ + retornaJSON("erro"); + } + exit; + break; + /* + Valor: EXCLUIRUNIDADEMEDIDA + + Exclui uma unidade de medida"Dados inseridos" + + Retorno: + + {JSON} + */ + case "EXCLUIRUNIDADEMEDIDA": + $tabela = "i3geoestat_unidade_medida"; + $id = $codigo_unidade_medida; + $f = verificaFilhos(); + + if(!$f){ + $m = new Metaestat(); + retornaJSON($m->excluirRegistro("i3geoestat_unidade_medida","codigo_unidade_medida",$id)); + } + else + retornaJSON("erro"); + exit; + break; + case "EXCLUIRFONTEINFO": + $tabela = "i3geoestat_fonteinfo"; + $id = $id_fonteinfo; + $f = verificaFilhos(); + + if(!$f){ + $m = new Metaestat(); + retornaJSON($m->excluirRegistro("i3geoestat_fonteinfo","id_fonteinfo",$id)); + } + else + retornaJSON("erro"); + exit; + break; + case "EXCLUIRFONTEINFOMEDIDA": + $m = new Metaestat(); + retornaJSON($m->excluirFonteinfoMedida($id_medida_variavel,$id_fonteinfo)); + exit; + break; + /* + Valor: EXCLUIRCONEXAO + + Exclui uma conexao + + Retorno: + + {JSON} + */ + case "EXCLUIRCONEXAO": + //impede a alteracao dos valores reservados + if($codigo_estat_conexao > 0){ + $tabela = "i3geoestat_conexao"; + $id = $codigo_estat_conexao; + $f = verificaFilhos(); + if(!$f){ + $m = new Metaestat(); + retornaJSON($m->excluirRegistro("i3geoestat_conexao","codigo_estat_conexao",$id)); + } + else{ + retornaJSON("erro"); + } + } + else{ + retornaJSON("erro"); + } + exit; + break; + /* + Valor: EXCLUIRTIPOREGIAO + + Exclui uma regiao + + Retorno: + + {JSON} + */ + case "EXCLUIRTIPOREGIAO": + $tabela = "i3geoestat_tipo_regiao"; + $id = $codigo_tipo_regiao; + $f = verificaFilhos(); + if(!$f){ + $m = new Metaestat(); + retornaJSON($m->excluirRegistro("i3geoestat_tipo_regiao","codigo_tipo_regiao",$id)); + } + else + retornaJSON("erro"); + exit; + break; + case "EXCLUIRAGREGAREGIAO": + $tabela = "i3geoestat_agregaregiao"; + $id = $id_agregaregiao; + $m = new Metaestat(); + retornaJSON($m->excluirRegistro("i3geoestat_agregaregiao","id_agregaregiao",$id)); + exit; + break; + /* + Valor: EXCLUIRMEDIDAVARIAVEL + + Exclui uma medida da variavel + + Parametros: + + codigo_variavel + + Retorno: + + {JSON} + */ + case "EXCLUIRMEDIDAVARIAVEL": + $tabela = "i3geoestat_medida_variavel"; + $id = $id_medida_variavel; + $f = verificaFilhos(); + if(!$f){ + $m = new Metaestat(); + retornaJSON($m->excluirRegistro("i3geoestat_medida_variavel","id_medida_variavel",$id)); + $m->negativaValoresMedidaVariavel($id); + } + else + retornaJSON("erro"); + exit; + break; + /* + Valor: EXCLUIRPARAMETROMEDIDA + + Exclui uma medida da variavel + + Parametros: + + id_parametro_medida + + Retorno: + + {JSON} + */ + case "EXCLUIRPARAMETROMEDIDA": + $m = new Metaestat(); + retornaJSON($m->excluirRegistro("i3geoestat_parametro_medida","id_parametro_medida",$id_parametro_medida)); + exit; + break; + /* + Valor: EXCLUIRCLASSIFICACAOMEDIDA + + Exclui uma classificacao de uma medida da variavel + + Parametros: + + id_classificacao + + Retorno: + + {JSON} + */ + case "EXCLUIRCLASSIFICACAOMEDIDA": + $tabela = "i3geoestat_classificacao"; + $id = $id_classificacao; + $f = verificaFilhos(); + if(!$f){ + $m = new Metaestat(); + retornaJSON($m->excluirRegistro("i3geoestat_classificacao","id_classificacao",$id)); + } + else + retornaJSON("erro"); + exit; + break; + /* + Valor: EXCLUIRCLASSECLASSIFICACAO + + Exclui uma classe de uma classificacao + + Parametros: + + id_classe + + Retorno: + + {JSON} + */ + case "EXCLUIRCLASSECLASSIFICACAO": + $m = new Metaestat(); + retornaJSON($m->excluirRegistro("i3geoestat_classes","id_classe",$id_classe)); + exit; + break; + case "EXCLUIRLINKMEDIDA": + $m = new Metaestat(); + retornaJSON($m->excluirRegistro("i3geoestat_medida_variavel_link","id_link",$id_link)); + exit; + break; + /* + Valor: LISTADADOSTABELASAUXILIARES + + Lista os valores das tabelas auxiliares + + Retorno: + + {JSON} + */ + case "LISTADADOSTABELASAUXILIARES": + $m = new Metaestat(); + $resultado = array(); + $resultado["tipo_periodo"] = $m->listaTipoPeriodo(); + $resultado["unidade_medida"] = $m->listaUnidadeMedida(); + $resultado["tipo_regiao"] = $m->listaTipoRegiao(); + $resultado["conexao"] = $m->listaConexao(); + $resultado["conexaoregistrada"] = $m->listaConexao("",false,false); + $resultado["fonteinfo"] = $m->listaFonteinfo(); + retornaJSON($resultado); + break; + /* + Valor: SQLMEDIDAVARIAVEL + + Sql para acessar os dados de uma medida de uma variavel + + Retorno: + + {JSON} + */ + case "SQLMEDIDAVARIAVEL": + $m = new Metaestat(); + $dados = $m->sqlMedidaVariavel($id_medida_variavel); + retornaJSON($dados); + exit; + break; + /* + Valor: DADOSMEDIDAVARIAVEL + + Mostra os dados de uma media de uma variavel + + Parametros: + + formato + + filtro + + agruparpor + + todasascolunas - 0 ou 1 + + Retorno: + + {JSON} + */ + case "DADOSMEDIDAVARIAVEL": + $m = new Metaestat(); + $dados = $m->dadosMedidaVariavel($id_medida_variavel,$_GET["filtro"],$_GET["todasascolunas"],$_GET["agruparpor"]); + if($_GET["formato"] == "json"){ + retornaJSON($dados); + } + if($_GET["formato"] == "xml"){ + header("Content-type: application/xml"); + echo($m->formataXML($dados)); + } + if($_GET["formato"] == "csv"){ + require_once(dirname(__FILE__)."/../../pacotes/parsecsv/parsecsv.lib.php"); + $csv = new parseCSV(); + $csv->titles = array_keys($dados[0]); + $csv->output(true, 'mvar'.$id_medida_variavel.'_'.date('dmY').'.csv', $dados); + } + exit; + break; + /* + Valor: MAPFILEMEDIDAVARIAVEL + + Cria o mapfile de uma media de uma variavel + + Parametros: + + formato + + filtro + + agruparpor + + todasascolunas - 0 ou 1 + + Retorno: + + {JSON} + */ + case "MAPFILEMEDIDAVARIAVEL": + //$filtro usa aspas duplas para enviar os parametros + $filtro = str_replace('"',"'",$_GET["filtro"]); + $m = new Metaestat(); + if(!isset($codigo_tipo_regiao)){ + $codigo_tipo_regiao = ""; + } + if(!isset($_GET["opacidade"])){ + $_GET["opacidade"] = ""; + } + if($_GET["cachemapfile"] === "nao"){ + $_GET["cachemapfile"] = false; + } + else{ + $_GET["cachemapfile"] = true; + } + if($_GET["formato"] == "json"){ + retornaJSON($m->mapfileMedidaVariavel($id_medida_variavel,$filtro,$_GET["todasascolunas"],$_GET["tipolayer"],$_GET["titulolayer"],$id_classificacao,$_GET["agruparpor"],$codigo_tipo_regiao,$_GET["opacidade"],false,$_GET["cachemapfile"])); + } + exit; + break; + /* + Valor: MAPFILETIPOREGIAO + + Gera um mapfile de um tipo de regiao + + */ + case "MAPFILETIPOREGIAO": + $m = new Metaestat(); + if(empty($_GET["outlinecolor"])){ + $_GET["outlinecolor"] = "255,0,0"; + } + if(empty($_GET["width"])){ + $_GET["width"] = 1; + } + if(empty($_GET["nomes"])){ + $_GET["nomes"] = "nao"; + } + retornaJSON($m->mapfileTipoRegiao($codigo_tipo_regiao,$_GET["outlinecolor"],$_GET["width"],$_GET["nomes"])); + exit; + break; + /* + Valor: KMLMEDIDAVARIAVEL + + Gera um arquivo kml que pode ser aberto no googleearth + + */ + case "KMLMEDIDAVARIAVEL": + $m = new Metaestat(); + $r = $m->mapfileMedidaVariavel($id_medida_variavel,$_GET["filtro"],$_GET["todasascolunas"],$_GET["tipolayer"],$_GET["titulolayer"],$id_classificacao,$_GET["agruparpor"]); + //cria um mapfile completo, que inclui a camada no mapfile de inicializacao do i3geo + $mapfile = $m->mapfileCompleto($r["mapfile"]); + $formato = $_GET["formato"]; + if($formato == "kml" || $formato == "kmz"){ + //define as variaveis necessarias ao pacote kmlserver + set_time_limit(0); + $_REQUEST["map"] = $mapfile; + $_REQUEST["typename"] = $r["layer"]; + $_REQUEST["request"] = $formato; + //$_REQUEST["service"] = "icon"; + include (dirname(__FILE__)."/../../pacotes/kmlmapserver/classes/kmlserver.class.php"); + $server = new KmlServer(); + }else{//3d com tme + if(!isset($dir_tmp)){ + include(dirname(__FILE__)."/../../ms_configura.php"); + } + $verificaSID = false; + $mv = $m->listaMedidaVariavel("",$id_medida_variavel); + $reg = $m->listaTipoRegiao($mv["codigo_tipo_regiao"]); + $_GET["nomelayer"] = $r["layer"]; + $_GET["colunasvalor"] = $mv["colunavalor"]; + $_GET["colunanomeregiao"] = $reg["colunanomeregiao"]; + $_GET["titulo"] = $r["titulolayer"]; + $_GET["descricao"] = $mv["colunavalor"]; + $_SESSION["map_file"] = $mapfile; + $_SESSION["postgis_mapa"] = ""; + $_SESSION["tmpurl"] = ""; + $_SESSION["mapext"] = ""; + $download = true; + $parametersTME = array( + 'mapType' => 'bar', + 'indicator' => 'valores', + 'year' => "", + 'classification' => 'equal', + 'mapTitle' => $r["titulolayer"], + 'timeType' => "slider", //para mais de um ano, escolha slider ou series + 'dirtmp' => $dir_tmp, + 'barSize'=> 5000 + ); + include (dirname(__FILE__)."/../../pacotes/tme/TME_i3geo.php"); + } + exit; + break; + /* + Valor: SUMARIOMEDIDAVARIAVEL + + Sumario estatistico media de uma variavel + + Parametros: + + formato + + filtro + + Retorno: + + {JSON} + */ + case "SUMARIOMEDIDAVARIAVEL": + $m = new Metaestat(); + $dados = $m->sumarioMedidaVariavel($id_medida_variavel,$_GET["filtro"],$_GET["agruparpor"]); + if($_GET["formato"] == "json"){ + retornaJSON($dados); + } + if($_GET["formato"] == "xml"){ + header("Content-type: application/xml"); + echo($m->formataXML($dados["grupos"])); + } + exit; + break; + /* + Valor: ESQUEMASCONEXAO + + Lista os esquemas de uma conexao + + Parametros: + + formato + + codigo_estat_conexao + + Retorno: + + {JSON} + */ + case "ESQUEMASCONEXAO": + $m = new Metaestat(); + if($_GET["formato"] == "json"){ + retornaJSON($m->esquemasConexao($codigo_estat_conexao)); + } + exit; + break; + /* + Valor: TABELASESQUEMA + + Lista as tabelas de um esquema + + Parametros: + + formato + + codigo_estat_conexao + + nome_esquema + + Retorno: + + {JSON} + */ + case "TABELASESQUEMA": + $m = new Metaestat(); + if(empty($_GET["excluigeom"])){ + $_GET["excluigeom"] = ""; + } + if($_GET["formato"] == "json"){ + retornaJSON($m->tabelasEsquema($codigo_estat_conexao,$_GET["nome_esquema"],$_GET["excluigeom"])); + } + exit; + break; + case "CRIATABELADB": + $m = new Metaestat(); + if($nome_esquema != "i3geo_metaestat"){ + retornaJSON("erro"); + exit; + } + retornaJSON($m->criaTabelaDB($codigo_estat_conexao,$_GET["nome_esquema"],$_GET["nome_tabela"],$_GET["comentario"])); + exit; + break; + case "CRIAESQUEMADB": + $m = new Metaestat(); + retornaJSON($m->criaEsquemaDB($codigo_estat_conexao,$_GET["nome_esquema"])); + exit; + break; + case "ALTERANOMETABELADB": + $m = new Metaestat(); + if($_GET["nome_esquema"] != "i3geo_metaestat"){ + retornaJSON("erro"); + exit; + } + retornaJSON($m->alteraNomeTabelaDB($codigo_estat_conexao,$_GET["nome_esquema"],$_GET["nome_tabela"],$_GET["novonome_tabela"])); + exit; + break; + case "ALTERANOMEESQUEMADB": + $m = new Metaestat(); + retornaJSON($m->alteraNomeEsquemaDB($codigo_estat_conexao,$_GET["nome_esquema"],$_GET["novonome_esquema"])); + exit; + break; + case "COPIATABELADB": + $m = new Metaestat(); + if($_GET["nome_esquema"] != "i3geo_metaestat"){ + retornaJSON("erro"); + exit; + } + retornaJSON($m->copiaTabelaDB($codigo_estat_conexao,$_GET["nome_esquema"],$_GET["nome_tabela"],$_GET["novonome_tabela"])); + exit; + break; + /* + Valor: COLUNASTABELA + + Lista as colunas de uma tabela + + Parametros: + + formato + + codigo_estat_conexao + + nome_esquema + + nome_tabela + + Retorno: + + {JSON} + */ + case "COLUNASTABELA": + $m = new Metaestat(); + if(empty($_GET["tipo"])){ + $_GET["tipo"] = ""; + } + if($_GET["formato"] == "json"){ + retornaJSON($m->colunasTabela($codigo_estat_conexao,$_GET["nome_esquema"],$_GET["nome_tabela"],$_GET["tipo"])); + } + exit; + break; + case "INFOTABELA": + $m = new Metaestat(); + $colunas = $m->colunasTabela($codigo_estat_conexao,$_GET["nome_esquema"],$_GET["nome_tabela"],""); + $comentario = $m->comentarioTabela($codigo_estat_conexao,$_GET["nome_esquema"],$_GET["nome_tabela"]); + if($_GET["formato"] == "json"){ + retornaJSON(array( + "colunas"=>$colunas, + "comentario"=>$comentario + )); + } + exit; + case "CRIACOLUNADB": + $m = new Metaestat(); + if($_GET["nome_esquema"] != "i3geo_metaestat"){ + retornaJSON("erro"); + exit; + } + retornaJSON($m->criaColunaDB($codigo_estat_conexao,$_GET["nome_esquema"],$_GET["nome_tabela"],$_GET["nova_coluna"],$_GET["tipo"])); + exit; + break; + case "ALTERANOMECOLUNADB": + $m = new Metaestat(); + if($_GET["nome_esquema"] != "i3geo_metaestat"){ + retornaJSON("erro"); + exit; + } + retornaJSON($m->alteraNomeColunaDB($codigo_estat_conexao,$_GET["nome_esquema"],$_GET["nome_tabela"],$_GET["nome_coluna"],$_GET["novonome_coluna"])); + exit; + break; + case "OBTEMDADOSTABELADB": + $m = new Metaestat(); + if($_GET["formato"] == "json"){ + retornaJSON($m->obtemDadosTabelaDB($codigo_estat_conexao,$_GET["nome_esquema"],$_GET["nome_tabela"],$_GET["geo"],$_GET["nreg"])); + } + if($_GET["formato"] == "csv"){ + $dados = $m->obtemDadosTabelaDB($codigo_estat_conexao,$_GET["nome_esquema"],$_GET["nome_tabela"],$_GET["geo"],$_GET["nreg"]); + require_once(dirname(__FILE__)."/../../pacotes/parsecsv/parsecsv.lib.php"); + $csv = new parseCSV(); + //$csv->encoding('UTF-16', 'UTF-8'); + $csv->titles = $dados["nomescolunas"]; + $csv->output(true, 'mvar'.$_GET["nome_tabela"].'_'.date('dmY').'.csv', $dados["linhas"]); + } + exit; + break; + /* + Valor: DESCREVECOLUNASTABELA + + Lista as colunas de uma tabela + + Parametros: + + formato + + codigo_estat_conexao + + nome_esquema + + nome_tabela + + Retorno: + + {JSON} + */ + case "DESCREVECOLUNASTABELA": + $m = new Metaestat(); + if($_GET["formato"] == "json"){ + $c = $m->descreveColunasTabela($codigo_estat_conexao,$_GET["nome_esquema"],$_GET["nome_tabela"]); + $s = $m->listaTabelaSerial($codigo_estat_conexao,$_GET["nome_esquema"],$_GET["nome_tabela"]); + for($i=0;$irelatorioCompleto($codigo_variavel,$_GET["dadosGerenciais"]); + retornaJSON($dados); + exit; + break; + case "RELATORIOCOMPLETO": + $m = new Metaestat(); + if(empty($codigo_variavel)){ + $codigo_variavel = ""; + } + $dados = $m->relatorioCompleto($codigo_variavel,$_GET["dadosGerenciais"]); + if(empty($_GET["detalhes"])){ + $_GET["detalhes"] = "sim"; + } + $dados = $m->formataRelatorioHtml($dados,$_GET["detalhes"]); + retornaJSON($dados); + exit; + break; + //insere dados com base em um arquivo csv ja existente no servidor + case "INSERIRDADOS": + $m = new Metaestat(); + retornaJSON($m->inserirDados($nomearquivoserv,$id_medida_variavel,$_GET["codigoregiao"],$_GET["valor"],$_GET["tipoinclusao"],$_GET["ano"],$_GET["mes"],$_GET["dia"],$_GET["hora"])); + exit; + break; + //grava ou cria um registro de uma regiao + case "MANTEMDADOSREGIAO": + $m = new Metaestat(); + retornaJSON($m->mantemDadosRegiao($codigo_tipo_regiao,$_GET["identificador"],$_GET["identificadornovo"],$_GET["nome"],$_GET["wkt"],$_GET["tipo"])); + exit; + break; + case "LISTAATRIBUTOSMEDIDAVARIAVELXY": + $m = new Metaestat(); + $regiao = $m->xy2regiao($codigo_tipo_regiao, $_GET["x"], $_GET["y"]); + $identificador_regiao = $regiao["identificador_regiao"]; + $resultado = array(); + if($regiao != ""){ + $dados = $m->listaAtributosMedidaVariavelRegiao($identificador_regiao, $id_medida_variavel); + $resultado = array( + "atributos"=>$dados, + "regiao"=>$regiao + ); + } + retornaJSON($resultado); + exit; + break; + case "LISTATODOSATRIBUTOSMEDIDAVARIAVELXY": + $lista = array(); + $m = new Metaestat(); + $regiao = $m->xy2regiao($codigo_tipo_regiao, $_GET["x"], $_GET["y"]); + $identificador_regiao = $regiao["identificador_regiao"]; + $variaveis = $m->listaVariavel(); + $dadosVariavel = array(); + + foreach($variaveis as $variavel){ + $medidas = $m->listaMedidaVariavel($variavel["codigo_variavel"]); + $valores = array(); + foreach($medidas as $medida){ + $dadosMedida = $m->listaAtributosMedidaVariavelRegiao($identificador_regiao,$medida["id_medida_variavel"]); + if($dadosMedida != ""){ + $valores[] = array( + "medida" => $medida["nomemedida"], + "dados" => $dadosMedida + ); + } + } + if(!empty($valores)){ + $dadosVariavel[] = array( + "variavel" => $variavel["nome"], + "dados" => $valores + ); + } + } + retornaJSON($dadosVariavel); + exit; + break; + case "SALVAATRIBUTOSMEDIDAVARIAVEL": + /* "&codigo_tipo_regiao="+codigo_tipo_regiao+"&identificador_regiao="+identificador_regiao+"&id_medida_variavel="+id_medida_variavel+"&colunas="+colunasT[0]+"&valores="+valoresT.join("|")+"&idsunicos="+idsunicosT[0] + */ + $_GET["valores"] = explode("#",$_GET["valores"]);//array de uma lista de strings com valores separados por ; + $_GET["idsunicos"] = explode("|",$_GET["idsunicos"]);//array + $_GET["colunas"] = explode("|",$_GET["colunas"]);//array + $m = new Metaestat(); + $resultado = $m->salvaAtributosMedidaVariavel($id_medida_variavel,$codigo_tipo_regiao,$_GET["identificador_regiao"],$_GET["idsunicos"],$_GET["colunas"],$_GET["valores"]); + retornaJSON($resultado); + exit; + break; + //utilizado na ferramenta de identificacao + case "SALVAATRIBUTOSTIPOREGIAO": + $m = new Metaestat(); + $resultado = $m->mantemDadosRegiao($codigo_tipo_regiao,$_GET["identificador_regiao"],$_GET["identificador_regiao"],$_GET["valores"],"","alterar",$_GET["colunas"]); + retornaJSON($resultado); + exit; + break; + case "EXCLUIATRIBUTOSMEDIDAVARIAVEL": + $m = new Metaestat(); + $resultado = $m->excluiAtributosMedidaVariavel($id_medida_variavel,$codigo_tipo_regiao,$_GET["identificador_regiao"],$id); + retornaJSON($resultado); + exit; + break; + case "REGIAO2SHP": + $m = new Metaestat(); + $shp = $m->regiao2shp($codigo_tipo_regiao); + include(dirname(__FILE__)."/../../pacotes/kmlmapserver/classes/zip.class.php"); + + $handle = fopen($shp.".shp", "r"); + $contentsshp = fread($handle, filesize($shp.".shp")); + fclose($handle); + + $handle = fopen($shp.".shp", "r"); + $contentsdbf = fread($handle, filesize($shp.".dbf")); + fclose($handle); + + $handle = fopen($shp.".shp", "r"); + $contentsshx = fread($handle, filesize($shp.".shx")); + fclose($handle); + + $ziper = new zipfile(); + + $ziper->addFile($contentsshp, basename($shp).'.shp'); + $ziper->addFile($contentsshx, basename($shp).'.shx'); + $ziper->addFile($contentsdbf, basename($shp).'.dbf'); + $arq = $shp.".zip"; + $ziper->output($arq); + $dirtmp = basename(dirname($arq)); + $d = "/ms_tmp/".basename($arq); + echo ""; + break; +} +?> diff --git a/admin/php/xxxwebservices.php b/admin/php/xxxwebservices.php new file mode 100755 index 0000000..97597f0 --- /dev/null +++ b/admin/php/xxxwebservices.php @@ -0,0 +1,167 @@ + \ No newline at end of file diff --git a/classesphp/classe_metaestatinfo.php b/classesphp/classe_metaestatinfo.php index 8f1745b..fea5f4d 100755 --- a/classesphp/classe_metaestatinfo.php +++ b/classesphp/classe_metaestatinfo.php @@ -189,7 +189,7 @@ class MetaestatInfo{ * Executa um SQL no banco de dados definido em uma conexao cadastrada no sistema de admnistracao * @param codigo da conexao * @param tring sql - * @return resultado de execSQL + * @return string */ function execSQLDB($codigo_estat_conexao,$sql){ $buscar = array("drop","update","insert","delete"); @@ -929,7 +929,7 @@ class MetaestatInfo{ * Complementa um mapfile resumido inserindo seus layers em um mapfile completo, contendo todos os elementos necessarios para uso * Usado na geracao de WMS e outros servicos * @param mapfile resumido - * @return nome do arquivo com o mapfile completo + * @return string */ function mapfileCompleto($mapfile){ $f = $this->base; @@ -983,7 +983,7 @@ class MetaestatInfo{ * @param coluna de agrupamento * @param limite do numero de registros * @param le os dados diretamente da tabela sem nenhum tipo de agrupamento, seja por data ou outro parametro - * @return execSQL + * @return string */ function dadosMedidaVariavel($id_medida_variavel,$filtro="",$todasascolunas = 0,$agruparpor = "",$limite="",$direto=false){ set_time_limit(0); @@ -1014,7 +1014,7 @@ class MetaestatInfo{ * Lista as ocorrencias de valores em uma coluna de uma medida de variavel * @param id da medida de variavel * @param coluna - * @return execSQL + * @return array */ function valorUnicoMedidaVariavel($id_medida_variavel,$coluna){ $sqlf = $this->sqlMedidaVariavel($id_medida_variavel,0,$coluna); @@ -1651,7 +1651,7 @@ class MetaestatInfo{ /** * Lista os esquemas em um banco de dados * @param codigo da conexao - * @return execSQLDB + * @return array */ function esquemasConexao($codigo_estat_conexao){ return $this->execSQLDB($codigo_estat_conexao,"SELECT oid,nspname as esquema FROM pg_namespace WHERE nspname NOT LIKE 'pg_%' AND nspname NOT LIKE '%_schema%' group by nspname,oid order by nspname"); @@ -1661,7 +1661,7 @@ class MetaestatInfo{ * @param codigo da conexao * @param nome do esquema * @param sim|nao exclui da lista as tabelas que contem geometria - * @return execSQLDB + * @return string */ function tabelasEsquema($codigo_estat_conexao,$nome_esquema,$excluigeom=""){ $sql = "SELECT table_name as tabela FROM information_schema.tables where table_schema = '$nome_esquema' AND table_schema NOT LIKE 'i3geo%' AND table_schema NOT LIKE 'pg_%' AND table_schema NOT LIKE '%_schema%'"; @@ -1677,7 +1677,7 @@ class MetaestatInfo{ * @param nome da tabela * @param tipo de coluna (opcional) * @param tipo de tratamento do parametro tipo, pode ser =|!= - * @return execSQLDB + * @return string */ function colunasTabela($codigo_estat_conexao,$nome_esquema,$nome_tabela,$tipo="",$tipotratamento="="){ $colunas = array(); @@ -1695,7 +1695,7 @@ class MetaestatInfo{ * @param codigo da conexao * @param nome do esquema * @param nome da tabela - * @return execSQLDB + * @return string */ function comentarioTabela($codigo_estat_conexao,$nome_esquema,$nome_tabela){ $colunas = array(); @@ -1720,7 +1720,7 @@ class MetaestatInfo{ * @param nome do esquema * @param nome da tabela * @param nome da coluna (opcional) - * @return execSQLDB + * @return string */ function descreveColunasTabela($codigo_estat_conexao,$nome_esquema,$nome_tabela,$nome_coluna=""){ if($nome_coluna == ""){ @@ -1738,7 +1738,7 @@ class MetaestatInfo{ * @param nome da tabela * @param sim|nao inclui o WKT da geometria de colunas geo * @param (opcional) numero de registros que serao listados - * @return execSQLDB + * @return array */ function obtemDadosTabelaDB($codigo_estat_conexao,$nome_esquema,$nome_tabela,$geo="nao",$nreg=""){ $desccolunas = $this->descreveColunasTabela($codigo_estat_conexao, $nome_esquema, $nome_tabela); @@ -2003,9 +2003,9 @@ class MetaestatInfo{ return array("dados"=>$r,"aliascolunas"=>$alias,"colunas"=>$colunas,"descricao"=>$descricao); } /** - * Converte um tipo de regiao em shapefile + * Converte um tipo de regiao em shapefile e retorna o nome do arquivo * @param codigo do tipo de regiao - * @return nome do arquivo criado + * @return string */ function regiao2shp($codigo_tipo_regiao){ $regiao = $this->listaTipoRegiao($codigo_tipo_regiao); diff --git a/classesphp/metaestat_controle.php b/classesphp/metaestat_controle.php index a149aa7..17b1db3 100755 --- a/classesphp/metaestat_controle.php +++ b/classesphp/metaestat_controle.php @@ -1,218 +1,311 @@ relatorioCompleto($_pg ["codigo_variavel"],$_pg ["dadosGerenciais"]); - if(empty($_pg["detalhes"])){ - $_pg["detalhes"] = "sim"; - } - $dados = $m->formataRelatorioHtml($dados,$_pg["detalhes"]); - retornaJSON($dados); - break; - case "LISTATIPOREGIAO" : - $m = new MetaestatInfo (); - $retorno = $m->listaTipoRegiao ( $_pg ["codigo_tipo_regiao"], false ); - retornaJSON ( $retorno ); - exit (); - break; - case "LISTAVARIAVEL" : - $m = new MetaestatInfo (); - if (empty ( $_pg ["filtro_esquema"] )) { - $_pg ["filtro_esquema"] = ""; - } - retornaJSON ( $m->listaVariavel ( $_pg ["codigo_variavel"], $_pg ["filtro_esquema"] ) ); - exit (); - break; - case "LISTAMEDIDAVARIAVEL" : - $m = new MetaestatInfo (); - retornaJSON ( $m->listaMedidaVariavel ( $_pg ["codigo_variavel"], $_pg ["id_medida_variavel"] ) ); - exit (); - break; - case "LISTAPARAMETRO" : - $m = new MetaestatInfo (); - retornaJSON ( $m->listaParametro ( $_pg ["id_medida_variavel"], $_pg ["id_parametro_medida"] ) ); - exit (); - break; - case "LISTAVALORESPARAMETRO" : - $m = new MetaestatInfo (); - retornaJSON ( $m->listaValoresParametro ( $_pg ["id_parametro_medida"] ) ); - exit (); - break; - case "LISTAUNIDADEMEDIDA" : - $m = new MetaestatInfo (); - retornaJSON ( $m->listaUnidadeMedida ( $_pg ["codigo_unidade_medida"] ) ); - exit (); - break; - case "LISTAFONTEINFO" : - $m = new MetaestatInfo (); - retornaJSON ( $m->listaFonteinfo ( $_pg ["id_fonteinfo"] ) ); - exit (); - break; - case "LISTAFONTEINFOMEDIDA" : - $m = new MetaestatInfo (); - retornaJSON ( $m->listaFonteinfoMedida ( $_pg ["id_medida_variavel"] ) ); - exit (); - break; - case "LISTATIPOPERIODO" : - $m = new MetaestatInfo (); - retornaJSON ( $m->listaTipoPeriodo ( $_pg ["codigo_tipo_periodo"] ) ); - exit (); - break; - case "LISTATIPOREGIAO" : - $m = new MetaestatInfo (); - retornaJSON ( $m->listaTipoRegiao ( $_pg ["codigo_tipo_regiao"] ) ); - exit (); - break; - case "LISTAHIERARQUIAREGIOES" : - $m = new MetaestatInfo (); - $regioes = $m->listaHierarquiaRegioes ( $_pg ["codigo_tipo_regiao"] ); - $valores = ""; - // se achou apenas uma regiao, pega os valores - if (count ( $regioes ) < 2 && $_pg ["codigo_tipo_regiao"] != "") { - $valores = $m->listaDadosRegiao ( $_pg ["codigo_tipo_regiao"], $_pg ["codigoregiaopai"], $_pg ["valorregiaopai"] ); - } - retornaJSON ( array ( - "regiaopai" => $_pg ["codigo_tipo_regiao"], - "regioes" => $regioes, - "valores" => $valores - ) ); - exit (); - break; - case "LISTAREGIOESMEDIDA" : - $m = new MetaestatInfo (); - retornaJSON ( $m->listaRegioesMedida ( $_pg ["id_medida_variavel"] ) ); - exit (); - break; - case "LISTAAGREGAREGIAO" : - $m = new MetaestatInfo (); - if (empty ( $_pg ["codigo_tipo_regiao"] )) { - $_pg ["codigo_tipo_regiao"] = ""; - } - retornaJSON ( $m->listaAgregaRegiao ( $_pg ["codigo_tipo_regiao"], $_pg ["id_agregaregiao"] ) ); - exit (); - case "LISTAMAPAS" : - $m = new MetaestatInfo (); - if (empty ( $_pg ["id_mapa"] )) { - $_pg ["id_mapa"] = ""; - } - retornaJSON ( $m->listaMapas ( $_pg ["id_mapa"] ) ); - exit (); - break; - case "LISTAGRUPOSMAPA" : - $m = new MetaestatInfo (); - retornaJSON ( $m->listaGruposMapa ( $_pg ["id_mapa"], $_pg ["id_mapa_grupo"] ) ); - exit (); - break; - case "LISTATEMASMAPA" : - $m = new MetaestatInfo (); - retornaJSON ( $m->listaTemasMapa ( $_pg ["id_mapa_grupo"], $_pg ["id_mapa_tema"] ) ); - exit (); - break; - // lista os templates que o usuario pode escolher para publicar mapas - // a pasta com alista e definida na variavel $metaestatTemplates localizada no ms_configura.php - case "LISTATEMPLATESMAPA" : - if (empty ( $metaestatTemplates )) { - $d = dirname ( __FILE__ ) . "/../../ferramentas/metaestat/templates"; - } else { - $d = $locaplic . $metaestatTemplates; - } - $arq = listaArquivos ( $d ); - $arq ["metaestatTemplates"] = $metaestatTemplates; - retornaJSON ( $arq ); - exit (); - break; - // lista os logos que o usuario pode escolher para publicar mapas - // a pasta com alista e definida na variavel $metaestatTemplates/logos localizada no ms_configura.php - case "LISTALOGOSMAPA" : - if (empty ( $metaestatTemplates )) { - $metaestatTemplates = dirname ( __FILE__ ) . "/../../ferramentas/metaestat/templates"; - } else { - $metaestatTemplates = $locaplic . $metaestatTemplates; - } - retornaJSON ( listaArquivos ( $metaestatTemplates . "/logos" ) ); - exit (); - break; - case "LISTACLASSIFICACAOMEDIDA" : - $m = new MetaestatInfo (); - $lista = $m->listaClassificacaoMedida ( $_pg ["id_medida_variavel"], $_pg ["id_classificacao"] ); - if(count($lista) == 0){ - $lista = array(array("id_classificacao"=>"","nome"=>"default")); - } - retornaJSON ( $lista ); - exit (); - break; - case "MAPFILEMEDIDAVARIAVEL" : - // $filtro usa aspas duplas para enviar os parametros - $_pg["filtro"] = str_replace ( '"', "'", $_pg ["filtro"] ); - $m = new MetaestatInfo (); - if (! isset ( $_pg["codigo_tipo_regiao"] )) { - $_pg["codigo_tipo_regiao"] = ""; - } - if (! isset ( $_pg["opacidade"] )) { - $_pg["opacidade"] = ""; - } - if ($_pg["cachemapfile"] === "nao") { - $_pg["cachemapfile"] = false; - } else { - $_pg["cachemapfile"] = true; - } - if ($_pg["formato"] == "json") { - retornaJSON ( $m->mapfileMedidaVariavel ( $_pg["id_medida_variavel"], $_pg["filtro"], $_GET ["todasascolunas"], $_GET ["tipolayer"], $_GET ["titulolayer"], $_pg["id_classificacao"], $_GET ["agruparpor"], $_pg["codigo_tipo_regiao"], $_GET ["opacidade"], false, $_GET ["cachemapfile"] ) ); - } - exit (); - break; +switch (strtoupper($funcao)) { + case "LAYERS2CSV": + $layers = explode(",", $_pg["layers"]); + $map = ms_newMapObj($map_file); + break; + case "RELATORIOCOMPLETO": + $m = new MetaestatInfo(); + if (empty($_pg["codigo_variavel"])) { + $_pg["codigo_variavel"] = ""; + } + $dados = $m->relatorioCompleto($_pg["codigo_variavel"], $_pg["dadosGerenciais"]); + if (empty($_pg["detalhes"])) { + $_pg["detalhes"] = "sim"; + } + $dados = $m->formataRelatorioHtml($dados, $_pg["detalhes"]); + retornaJSON($dados); + break; + case "LISTATIPOREGIAO": + $m = new MetaestatInfo(); + $retorno = $m->listaTipoRegiao($_pg["codigo_tipo_regiao"], false); + retornaJSON($retorno); + exit(); + break; + case "LISTAVARIAVEL": + $m = new MetaestatInfo(); + if (empty($_pg["filtro_esquema"])) { + $_pg["filtro_esquema"] = ""; + } + retornaJSON($m->listaVariavel($_pg["codigo_variavel"], $_pg["filtro_esquema"])); + exit(); + break; + case "LISTAMEDIDAVARIAVEL": + $m = new MetaestatInfo(); + retornaJSON($m->listaMedidaVariavel($_pg["codigo_variavel"], $_pg["id_medida_variavel"])); + exit(); + break; + case "LISTAPARAMETRO": + $m = new MetaestatInfo(); + retornaJSON($m->listaParametro($_pg["id_medida_variavel"], $_pg["id_parametro_medida"])); + exit(); + break; + case "LISTAVALORESPARAMETRO": + $m = new MetaestatInfo(); + retornaJSON($m->listaValoresParametro($_pg["id_parametro_medida"])); + exit(); + break; + case "LISTAUNIDADEMEDIDA": + $m = new MetaestatInfo(); + retornaJSON($m->listaUnidadeMedida($_pg["codigo_unidade_medida"])); + exit(); + break; + case "LISTAFONTEINFO": + $m = new MetaestatInfo(); + retornaJSON($m->listaFonteinfo($_pg["id_fonteinfo"])); + exit(); + break; + case "LISTAFONTEINFOMEDIDA": + $m = new MetaestatInfo(); + retornaJSON($m->listaFonteinfoMedida($_pg["id_medida_variavel"])); + exit(); + break; + case "LISTATIPOPERIODO": + $m = new MetaestatInfo(); + retornaJSON($m->listaTipoPeriodo($_pg["codigo_tipo_periodo"])); + exit(); + break; + case "LISTATIPOREGIAO": + $m = new MetaestatInfo(); + retornaJSON($m->listaTipoRegiao($_pg["codigo_tipo_regiao"])); + exit(); + break; + case "LISTAHIERARQUIAREGIOES": + $m = new MetaestatInfo(); + $regioes = $m->listaHierarquiaRegioes($_pg["codigo_tipo_regiao"]); + $valores = ""; + // se achou apenas uma regiao, pega os valores + if (count($regioes) < 2 && $_pg["codigo_tipo_regiao"] != "") { + $valores = $m->listaDadosRegiao($_pg["codigo_tipo_regiao"], $_pg["codigoregiaopai"], $_pg["valorregiaopai"]); + } + retornaJSON(array( + "regiaopai" => $_pg["codigo_tipo_regiao"], + "regioes" => $regioes, + "valores" => $valores + )); + exit(); + break; + case "LISTAREGIOESMEDIDA": + $m = new MetaestatInfo(); + retornaJSON($m->listaRegioesMedida($_pg["id_medida_variavel"])); + exit(); + break; + case "LISTAAGREGAREGIAO": + $m = new MetaestatInfo(); + if (empty($_pg["codigo_tipo_regiao"])) { + $_pg["codigo_tipo_regiao"] = ""; + } + retornaJSON($m->listaAgregaRegiao($_pg["codigo_tipo_regiao"], $_pg["id_agregaregiao"])); + exit(); + case "LISTAMAPAS": + $m = new MetaestatInfo(); + if (empty($_pg["id_mapa"])) { + $_pg["id_mapa"] = ""; + } + retornaJSON($m->listaMapas($_pg["id_mapa"])); + exit(); + break; + case "LISTAGRUPOSMAPA": + $m = new MetaestatInfo(); + retornaJSON($m->listaGruposMapa($_pg["id_mapa"], $_pg["id_mapa_grupo"])); + exit(); + break; + case "LISTATEMASMAPA": + $m = new MetaestatInfo(); + retornaJSON($m->listaTemasMapa($_pg["id_mapa_grupo"], $_pg["id_mapa_tema"])); + exit(); + break; + // lista os templates que o usuario pode escolher para publicar mapas + // a pasta com alista e definida na variavel $metaestatTemplates localizada no ms_configura.php + case "LISTATEMPLATESMAPA": + if (empty($metaestatTemplates)) { + $d = dirname(__FILE__) . "/../../ferramentas/metaestat/templates"; + } else { + $d = $locaplic . $metaestatTemplates; + } + $arq = listaArquivos($d); + $arq["metaestatTemplates"] = $metaestatTemplates; + retornaJSON($arq); + exit(); + break; + // lista os logos que o usuario pode escolher para publicar mapas + // a pasta com alista e definida na variavel $metaestatTemplates/logos localizada no ms_configura.php + case "LISTALOGOSMAPA": + if (empty($metaestatTemplates)) { + $metaestatTemplates = dirname(__FILE__) . "/../../ferramentas/metaestat/templates"; + } else { + $metaestatTemplates = $locaplic . $metaestatTemplates; + } + retornaJSON(listaArquivos($metaestatTemplates . "/logos")); + exit(); + break; + case "LISTACLASSIFICACAOMEDIDA": + $m = new MetaestatInfo(); + $lista = $m->listaClassificacaoMedida($_pg["id_medida_variavel"], $_pg["id_classificacao"]); + if (count($lista) == 0) { + $lista = array( + array( + "id_classificacao" => "", + "nome" => "default" + ) + ); + } + retornaJSON($lista); + exit(); + break; + case "MAPFILEMEDIDAVARIAVEL": + // $filtro usa aspas duplas para enviar os parametros + $_pg["filtro"] = str_replace('"', "'", $_pg["filtro"]); + $m = new MetaestatInfo(); + if (! isset($_pg["codigo_tipo_regiao"])) { + $_pg["codigo_tipo_regiao"] = ""; + } + if (! isset($_pg["opacidade"])) { + $_pg["opacidade"] = ""; + } + if ($_pg["cachemapfile"] === "nao") { + $_pg["cachemapfile"] = false; + } else { + $_pg["cachemapfile"] = true; + } + if ($_pg["formato"] == "json") { + retornaJSON($m->mapfileMedidaVariavel($_pg["id_medida_variavel"], $_pg["filtro"], $_GET["todasascolunas"], $_GET["tipolayer"], $_GET["titulolayer"], $_pg["id_classificacao"], $_GET["agruparpor"], $_pg["codigo_tipo_regiao"], $_GET["opacidade"], false, $_GET["cachemapfile"])); + } + exit(); + break; + case "LISTATODOSATRIBUTOSMEDIDAVARIAVELXY": + $lista = array(); + $m = new MetaestatInfo(); + $regiao = $m->xy2regiao($codigo_tipo_regiao, $_pg["x"], $_pg["y"]); + $identificador_regiao = $regiao["identificador_regiao"]; + $variaveis = $m->listaVariavel(); + $dadosVariavel = array(); + + foreach ($variaveis as $variavel) { + $medidas = $m->listaMedidaVariavel($variavel["codigo_variavel"]); + $valores = array(); + foreach ($medidas as $medida) { + $dadosMedida = $m->listaAtributosMedidaVariavelRegiao($identificador_regiao, $medida["id_medida_variavel"]); + if ($dadosMedida != "") { + $valores[] = array( + "medida" => $medida["nomemedida"], + "dados" => $dadosMedida + ); + } + } + if (! empty($valores)) { + $dadosVariavel[] = array( + "variavel" => $variavel["nome"], + "dados" => $valores + ); + } + } + retornaJSON($dadosVariavel); + exit(); + break; + case "LISTACONEXAO": + $m = new MetaestatInfo(); + retornaJSON($m->listaConexao($_pg["codigo_estat_conexao"])); + exit(); + break; + case "ESQUEMASCONEXAO": + $m = new MetaestatInfo(); + if ($_pg["formato"] == "json") { + retornaJSON($m->esquemasConexao($_pg["codigo_estat_conexao"])); + } + exit(); + break; + case "TABELASESQUEMA": + $m = new MetaestatInfo(); + if (empty($_pg["excluigeom"])) { + $_pg["excluigeom"] = ""; + } + if ($_pg["formato"] == "json") { + retornaJSON($m->tabelasEsquema($_pg["codigo_estat_conexao"], $_pg["nome_esquema"], $_pg["excluigeom"])); + } + exit(); + break; + case "DESCREVECOLUNASTABELA": + $m = new MetaestatInfo(); + if ($_pg["formato"] == "json") { + $c = $m->descreveColunasTabela($codigo_estat_conexao, $_pg["nome_esquema"], $_pg["nome_tabela"]); + $s = $m->listaTabelaSerial($codigo_estat_conexao, $_pg["nome_esquema"], $_pg["nome_tabela"]); + for ($i = 0; $i < count($c); $i ++) { + if ($c[$i]["field"] == $s) { + $c[$i]["serial"] = true; + } else { + $c[$i]["serial"] = false; + } + } + retornaJSON($c); + } + exit(); + break; + case "DADOSMEDIDAVARIAVEL": + $m = new MetaestatInfo(); + $dados = $m->dadosMedidaVariavel($id_medida_variavel, $_pg["filtro"], $_pg["todasascolunas"], $_pg["agruparpor"]); + if ($_pg["formato"] == "json") { + retornaJSON($dados); + } + if ($_pg["formato"] == "xml") { + header("Content-type: application/xml"); + echo ($m->formataXML($dados)); + } + if ($_pg["formato"] == "csv") { + require_once (dirname(__FILE__) . "/../pacotes/parsecsv/parsecsv.lib.php"); + $csv = new parseCSV(); + $csv->titles = array_keys($dados[0]); + $csv->output(true, 'mvar' . $id_medida_variavel . '_' . date('dmY') . '.csv', $dados); + } + exit(); + break; } -function retornaJSON($obj) { - global $locaplic; - include_once ($locaplic . "/pacotes/cpaint/JSON/json2.php"); - //error_reporting ( 0 ); - ob_end_clean (); - $j = new Services_JSON (); - $texto = $j->encode ( $obj ); - if (! mb_detect_encoding ( $texto, "UTF-8", true )) { - $texto = utf8_encode ( $texto ); - } - echo $texto; + +function retornaJSON($obj) +{ + global $locaplic; + include_once ($locaplic . "/pacotes/cpaint/JSON/json2.php"); + // error_reporting ( 0 ); + ob_end_clean(); + $j = new Services_JSON(); + $texto = $j->encode($obj); + if (! mb_detect_encoding($texto, "UTF-8", true)) { + $texto = utf8_encode($texto); + } + echo $texto; } ?> diff --git a/css/i3geo7.css.php b/css/i3geo7.css.php old mode 100755 new mode 100644 index c8602db..c8602db --- a/css/i3geo7.css.php +++ b/css/i3geo7.css.php diff --git a/ferramentas/editorgm/editorgm.js b/ferramentas/editorgm/editorgm.js index fa0e3aa..e69de29 100755 --- a/ferramentas/editorgm/editorgm.js +++ b/ferramentas/editorgm/editorgm.js @@ -1,2050 +0,0 @@ -//TODO documentar -//TODO incluir balao de informacoes como um elemento grafico de desenho -//TODO incluir caixas de texto -//TODO incluir undo na edicao - -/* - Editor vetorial de limites para a interface google maps - - Utilizado em i3geo/metaestat/editorlimites.php - - Utiliza a API do Google Maps e pacotes/wicket/wicket.js (que cria o objeto Wkt com funcoes para processamento de Wkt) - - Licenca: - - GPL2 - - i3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet - - Direitos Autorais Reservados (c) 2006 Ministério do Meio Ambiente Brasil - Desenvolvedor: Edmar Moretti edmar.moretti@gmail.com - - Esse programa utiliza parcialmente os codigos da aplicacao calculadora de carbono desenvolvido pelo - IPAM - Instituto de Pesquisa Ambiental da Amazonia - - Este programa e software livre; voce pode redistribui-lo - e/ou modifica-lo sob os termos da Licenca Publica Geral - GNU conforme publicada pela Free Software Foundation; - - Este programa e distribuido na expectativa de que seja util, - porem, SEM NENHUMA GARANTIA; nem mesmo a garantia implicita - de COMERCIABILIDADE OU ADEQUACAO A UMA FINALIDADE ESPECIFICA. - Consulte a Licenca Publica Geral do GNU para mais detalhes. - Voce deve ter recebido uma copia da Licenca Publica Geral do - GNU junto com este programa; se nao, escreva para a - Free Software Foundation, Inc., no endereco - 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. - */ -// -if (typeof (i3GEO) === 'undefined') { - var i3GEO = {}; -} -/* - * Classe i3GEO.editorGM - * - * Funções de edição vetorial utilizadas pelo editor de regiões do sistema METAESTAT - */ -i3GEO.editorGM = - { - iconePonto : function(sel) { - if (sel) { - return i3GEO.configura.locaplic + "/imagens/google/symbol_middot_y.png"; - } else { - return i3GEO.configura.locaplic + "/imagens/google/symbol_middot.png"; - } - }, - /** - * Objeto DOM com a imagem de aguarde existente no cabecalho da janela - * - */ - aguarde : "", - /** - * Guarda o Id do DIV que recebera o conteudo HTML do editor - */ - iddiv : "", - /** - * Objeto criado com new google.maps.drawing.DrawingManager - */ - drawingManager : "", - selectedShape : null, - /** - * guarda o mapeamento entre o codigo da regiao e o codigo do layer adicionado ao mapa - */ - regioestemas : {}, - /** - * Guarda o mapeamento entre o codigo da regiao e o codigo do layer adicionado ao mapa - */ - temasregioes : {}, - /** - * Guarda os dados descritivos sobre cada regiao obtidos na formacao no combo de escolha de regioes - */ - descregioes : [], - /** - * Inicia o editor - * - * Cria o objeto da API do Google Maps com new google.maps.drawing.DrawingManager A janela flutuante que recebera os componentes do - * editor ja deve estar aberta (veja editorlimites.php) Executa i3GEO.editorGM.html - * - * @param Id - * do DIV que recebera o conteudo HTML do editor - */ - inicia : function(iddiv) { - var i, n, ics; - // mensagem - // i3GEO.janela.tempoMsg("Atenção: apenas tabelas no esquema i3geo_metaestat podem ser editadas."); - i3GEO.editorGM.iddiv = iddiv; - $i(iddiv).innerHTML = i3GEO.editorGM.html(); - ics = $i(iddiv).getElementsByTagName("button"); - n = ics.length; - //i3GEO.barraDeBotoes.ativaBotoes(); - i3GEO.editorGM.comboRegiaoEditavel(); - for (i = 0; i < n; i++) { - ics[i].style.backgroundColor = "white"; - ics[i].className = "iconeGuiaMovel"; - ics[i].onmouseout = function() { - this.className = "iconeGuiaMovel iconeGuiaMovelMouseOut"; - }; - ics[i].onmouseover = function() { - this.className = "iconeGuiaMovel iconeGuiaMovelMouseOver"; - }; - ics[i].style.backgroundImage = "none"; - ics[i].style.height = "32px"; - ics[i].style.width = "32px"; - ics[i].style.border = "1px solid gray"; - ics[i].style.margin = "0px"; - } - i3GEO.editorGM.drawingManager = - new google.maps.drawing.DrawingManager({ - drawingMode : google.maps.drawing.OverlayType.POLYGON, - drawingControl : false, - drawingControlOptions : { - position : google.maps.ControlPosition.TOP_CENTER, - drawingModes : [ - google.maps.drawing.OverlayType.POLYGON, - google.maps.drawing.OverlayType.MARKER, - google.maps.drawing.OverlayType.POLYLINE - ] - }, - markerOptions : { - icon : i3GEO.editorGM.iconePonto(), - clickable : true, - zIndex : 1, - draggable : true, - tema : "", - colunaid : "", - valorid : "", - colunanome : "", - valornome : "", - editable : false - }, - polygonOptions : { - fillColor : '#ffff00', - fillOpacity : .5, - strokeWeight : 2, - clickable : true, - zIndex : 1, - editable : true, - tema : "", - colunaid : "", - valorid : "", - colunanome : "", - valornome : "" - } - }); - i3GEO.editorGM.drawingManager.setMap(i3GeoMap); - i3GEO.editorGM.drawingManager.setDrawingMode(null); - google.maps.event.addListener(i3GEO.editorGM.drawingManager, 'overlaycomplete', function(e) { - // if (e.type != google.maps.drawing.OverlayType.MARKER) { - i3GEO.editorGM.drawingManager.setDrawingMode(null); - i3GEO.editorGM.mudaicone(); - var newShape = e.overlay; - newShape.type = e.type; - newShape.tema = $i("i3geoCartoRegioesEditaveis").value; - newShape.colunaid = ""; - newShape.valorid = ""; - newShape.colunanome = ""; - newShape.valornome = ""; - google.maps.event.addListener(newShape, 'click', function() { - i3GEO.editorGM.setSelection(newShape); - }); - i3GEO.editorGM.setSelection(newShape); - i3GEO.desenho.googlemaps.shapes.push(newShape); - // } - }); - google.maps.event.addListener(i3GEO.editorGM.drawingManager, 'drawingmode_changed', i3GEO.editorGM.clearSelection); - google.maps.event.addListener(i3GeoMap, 'click', i3GEO.editorGM.clearSelection); - }, - /** - * Atualiza as camadas do mapa que sao oriundas do sistema METAESTAT Busca a lista de camadas com - * ferramentas/metaestat/analise.php?funcao=LISTACAMADASMETAESTAT Faz um loop para atualizar cada camada - */ - atualizaCamadasMetaestat : function() { - var p = - i3GEO.configura.locaplic + "/ferramentas/metaestat/analise.php?funcao=LISTACAMADASMETAESTAT&g_sid=" + i3GEO.configura.sid, temp = - function(retorno) { - var n = retorno.data.length, i; - for (i = 0; i < n; i++) { - i3GEO.Interface.atualizaTema("", retorno.data[i]); - } - }; - cpJSON.call(p, "foo", temp); - }, - /** - * Monta o codigo HTML com o conteudo da ferramenta Define os botoes e demais elementos que serao preenchidos via codigo - * - * @return html - */ - html : function() { - var ins = - '
' + ' ' - + ' ' - + ' ' - + ' ' - + ' ' - + ' ' - + ' ' - + ' ' - + ' ' - + '
'; // combo para escolher a regiao - return ins; - }, - /** - * Atualiza a ferramenta quando a janela flutuante tem seu foco ativado - */ - ativaFoco : function() { - i3GEO.editorGM.mudaicone(); - i3GEO.Interface.googlemaps.recalcPar(); - }, - /** - * Marca uma figura como selecionada - * - * @param objeto - * shape que sera marcado - */ - setSelection : function(shape) { - if (shape.setEditable) { - shape.setEditable(!shape.editable); - } else { - shape.editable = true; - shape.setIcon({ - url : i3GEO.editorGM.iconePonto(true) - }); - } - }, - /** - * Marca todas as figuras como nao selecionadas As figuras existentes no mapa sao mantidas na variavel - * i3GEO.desenho.googlemaps.shapes - */ - clearSelection : function() { - var i, n = i3GEO.desenho.googlemaps.shapes.length; - for (i = 0; i < n; i++) { - if (i3GEO.desenho.googlemaps.shapes[i] != "" && i3GEO.desenho.googlemaps.shapes[i].setEditable) { - i3GEO.desenho.googlemaps.shapes[i].setEditable(false); - } else if (i3GEO.desenho.googlemaps.shapes[i] != "") {// caso for ponto - i3GEO.desenho.googlemaps.shapes[i].editable = false; - if (i3GEO.desenho.googlemaps.shapes[i].setIcon) { - i3GEO.desenho.googlemaps.shapes[i].setIcon({ - url : i3GEO.editorGM.iconePonto(false) - }); - } - } - } - }, - /** - * Marca todas as figuras como selecionadas As figuras existentes no mapa sao mantidas na variavel i3GEO.desenho.googlemaps.shapes - */ - selectAll : function() { - var i, n = i3GEO.desenho.googlemaps.shapes.length; - for (i = 0; i < n; i++) { - if (i3GEO.desenho.googlemaps.shapes[i] != "" && i3GEO.desenho.googlemaps.shapes[i].setEditable) { - i3GEO.desenho.googlemaps.shapes[i].setEditable(true); - } else if (i3GEO.desenho.googlemaps.shapes[i] != "") {// caso for ponto - i3GEO.desenho.googlemaps.shapes[i].editable = true; - i3GEO.desenho.googlemaps.shapes[i].setIcon({ - url : i3GEO.editorGM.iconePonto(true) - }); - } - } - }, - /** - * Remove do mapa as figuras que estiverem selecionadas - * - * @param boolean - * indica se deve ser feita uma confirmacao ou nao antes de apagar - */ - deleteSelectedShape : function(naoconfirma) { - i3GEO.janela.tempoMsg($trad("meneditor1")); - if (!naoconfirma) { - naoconfirma = false; - } - var i, n = i3GEO.desenho.googlemaps.shapes.length; - if (n > 0) { - if (naoconfirma === false) { - var x = window.confirm($trad("excsel") + "?"); - } else { - x = true; - } - if (x) { - for (i = 0; i < n; i++) { - if (i3GEO.desenho.googlemaps.shapes[i] != "" && i3GEO.desenho.googlemaps.shapes[i].editable - && i3GEO.desenho.googlemaps.shapes[i].editable === true) { - i3GEO.desenho.googlemaps.shapes[i].setMap(null); - i3GEO.desenho.googlemaps.shapes[i] = ""; - } - } - } - } else { - i3GEO.janela.tempoMsg($trad("selum")); - } - }, - /** - * Lista as figuras que estao marcadas como selecionadas - * - * @return array de shapes - */ - selectedShapes : function() { - var i, s = [], n = i3GEO.desenho.googlemaps.shapes.length; - for (i = 0; i < n; i++) { - if (i3GEO.desenho.googlemaps.shapes[i] != "" && i3GEO.desenho.googlemaps.shapes[i].editable === true) { - s.push(i3GEO.desenho.googlemaps.shapes[i]); - } - } - return s; - }, - /** - * Lista as coordenadas de todas as figuras existentes - * - * @return objeto contendo a indicacao do tipo de figura e o array com a lista de coordenadas - */ - getCoordenadas : function() { - var coordenadas = [], lista = [], n = i3GEO.desenho.googlemaps.shapes.length, tipo = "", ps, nps, j, p, i, r; - - for (i = 0; i < n; i++) { - coordenadas = []; - if (i3GEO.desenho.googlemaps.shapes[i] != "" && i3GEO.desenho.googlemaps.shapes[i].editable === true) { - if (tipo == "") { - tipo = i3GEO.desenho.googlemaps.shapes[i].type; - } - ps = i3GEO.desenho.googlemaps.shapes[i].getPath(); - nps = ps.getLength(); - for (j = 0; j < nps; j++) { - p = ps.getAt(j); - coordenadas.push([ - p.lng() + " " + p.lat() - ]); - } - lista.push(coordenadas); - } - } - r = { - "tipo" : tipo, - "coordenadas" : lista - }; - return r; - }, - /** - * Converte um objeto shape em uma string WKT - * - * @param shape - */ - toWKT : function(obj) { - var wkt = new Wkt.Wkt(); - wkt.fromObject(obj); - return wkt.write(); - }, - merge : function(geoms) { - var n = geoms.length, w = new Wkt.Wkt(), g, m, i; - w.read(geoms[0].toString()); - if (n > 1) { - for (i = 1; i < n; i++) { - g = geoms[i].toString(); - m = new Wkt.Wkt(); - m.read(g); - w.merge(m); - } - } - return w.write(); - }, - /** - * Funcoes que controlam o processo de obtencao das coordenadas de um componente de uma camada existente no mapa - */ - capturaPoligonoTema : { - /** - * Ativa a operaco de captura definindo o evento que sera executado no onclick do mouse sobre o mapa O evento executa - * i3GEO.editorGM.capturaPoligonoTema.captura - * - * @param botao - * da interface que foi pressionado - */ - ativa : function(botao) { - i3GEO.editorGM.mudaicone(botao); - i3GEO.eventos.cliquePerm.desativa(); - i3GEO.eventos.adicionaEventos("MOUSECLIQUE", [ - "i3GEO.editorGM.capturaPoligonoTema.captura()" - ]); - }, - desativa : function() { - }, - /** - * Realiza a captura de um componente do mapa quando o usuario faz o clique A captura e feita com - * classesphp/mapa_controle.php&funcao=identifica3 O resultado e adicionado ao mapa como um novo objeto shape - */ - captura : function() { - var temp, tema = "", regiao = "", p, par, aguarde = $i("i3GEOjanelaEditor_imagemCabecalho"); - if (!$i("i3geoCartoRegioesEditaveis")) { - i3GEO.eventos.removeEventos("MOUSECLIQUE", [ - "i3GEO.editorGM.capturaPoligonoTema.captura()" - ]); - } else { - temp = - function(retorno) { - var temp, n, i, WicketWkt, wkt = "", colunaid = "", valorid = "", colunanome = "", valornome = "", aguarde = - $i("i3GEOjanelaEditor_imagemCabecalho"); - if (i3GEO.editorGM.descregioes["a_" + regiao]["identificador"]) { - colunaid = i3GEO.editorGM.descregioes["a_" + regiao]["identificador"]; - } - if (i3GEO.editorGM.descregioes["a_" + regiao]["colunanomeregiao"]) { - colunanome = i3GEO.editorGM.descregioes["a_" + regiao]["colunanomeregiao"]; - } - if (aguarde) { - aguarde.style.visibility = "hidden"; - } - // obtem os dados buscando nos itens que vem da requisicao ao wms - temp = retorno.data[0].resultado[0]; - if (temp === " ") { - i3GEO.janela.tempoMsg($trad("meneditor2")); - return; - } - i3GEO.editorGM.mudaicone(); - n = temp.length; - for (i = 0; i < n; i++) { - if (temp[i].alias == "wkt") { - wkt = temp[i].valor; - } - if (temp[i].alias == colunaid || temp[i].item == colunaid) { - valorid = temp[i].valor; - } - if (temp[i].alias == colunanome || temp[i].item == colunanome) { - valornome = temp[i].valor; - } - } - // objeto do wicket ver pacotes/wicket - WicketWkt = new Wkt.Wkt(); - // wkt = "MULTIPOLYGON (((40 40, 20 45, 45 30, 40 40)), ((20 35, 45 20, 30 5, 10 10, 10 30, 20 35), (30 20, 20 - // 25, 20 15, 30 20)))"; - try { // Catch any malformed WKT strings - WicketWkt.read(wkt); - } catch (e1) { - try { - wkt.read(wkt.replace('\n', '').replace('\r', '').replace('\t', '')); - } catch (e2) { - if (e2.name === 'WKTError') { - alert('Wicket could not understand the WKT string you entered. Check that you have parentheses balanced, and try removing tabs and newline characters.'); - return; - } - } - } - obj = WicketWkt.toObject(i3GeoMap.defaults); - // obj.setMap(i3GeoMap); // Add it to the map - // i3GEO.desenho.googlemaps.shapes.push(obj); - i3GEO.editorGM.adicionaPoligonos(obj, tema, colunaid, valorid, colunanome, valornome); - i3GEO.eventos.MOUSECLIQUE = []; - }; - regiao = $i("i3geoCartoRegioesEditaveis").value; - if (regiao != "") { - tema = i3GEO.editorGM.regioestemas["a" + regiao]; - if (aguarde && aguarde.style.visibility == "hidden") { - aguarde.style.visibility = "visible"; - p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php"; - par = - "funcao=identifica3&opcao=tema&xy=" + objposicaocursor.ddx - + "," - + objposicaocursor.ddy - + "&resolucao=5&g_sid=" - + i3GEO.configura.sid - + "&ext=" - + i3GEO.parametros.mapexten - + "&listaDeTemas=&wkt=sim&tema=" - + tema; - cpJSON.call(p, "identifica", temp, par); - } - } - } - } - }, - /** - * Monta um combo com a lista de regioes cadastradas e que podem ser editadas pelo editor A regiao em edicao sera a escolhida nesse - * combo Ao ser escolhida, e adicionada uma camada no mapa - * - * @param opcional - * codigo da regiao no cadastro. Se nao for definido, busca todas - */ - comboRegiaoEditavel : function(codigo_tipo_regiao) { - if (!codigo_tipo_regiao) { - codigo_tipo_regiao = ""; - } - var onde = $i("i3geoCartoRegioesEditaveisDiv"), temp = - function(dados) { - var n = dados.length, ins = '

' + $trad("camedit") + ':

', i; - ins += - ""; - if (onde) { - onde.innerHTML = ins; - } - return ins; - }; - i3GEO.php.listaTipoRegiao(temp, codigo_tipo_regiao); - }, - /** - * Funcao ativada no evento onchange do combo criado com comboRegiaoEditavel Executa i3GEO.php.mapfileTipoRegiao - */ - comboRegiaoEditavelOnchange : function(combo) { - if (combo.value === "") { - return; - } - i3GEO.editorGM.editarAtributos.desativa(); - // caso a camada escolhida seja uma camada normal, vinda de um mapfile - if (i3GEO.arvoreDeCamadas.pegaTema(combo.value) != "") { - i3GEO.editorGM.regioestemas["a" + combo.value] = combo.value; - i3GEO.editorGM.temasregioes[combo.value] = combo.value; - } else { - var temp = function(retorno) { - if (i3GEO.arvoreDeCamadas.pegaTema(retorno.layer) == "") { - i3GEO.php.adtema(i3GEO.atualiza, retorno.mapfile); - // guarda o codigo e relaciona com a regiao - i3GEO.editorGM.regioestemas["a" + combo.value] = retorno.layer; - i3GEO.editorGM.temasregioes[retorno.layer] = combo.value; - } - }; - i3GEO.php.mapfileTipoRegiao(temp, combo.value); - } - }, - /** - * Altera as bordas dos icones e desativa eventos Desativa todos os botoes e ativa o indicado - * - * @param objeto - * DOM que representa o botao que sera focado - */ - mudaicone : function(botao) { - var c = $i(i3GEO.editorGM.iddiv), ci = c.getElementsByTagName("img"), n = ci.length, i; - for (i = 0; i < n; i++) { - ci[i].parentNode.style.backgroundColor = "#F5F5F5"; - } - i3GEO.eventos.MOUSECLIQUE = []; - i3GEO.editorGM.capturaPoligonoTema.desativa(); - i3GEO.editorGM.editarAtributos.desativa(); - if (botao && botao.style) { - botao.style.backgroundColor = "#cedff2"; - } - }, - /** - * Ativa a digitalizacao de poligono - * - * @param objeto - * DOM que representa o botao que sera focado - */ - digitalizaPol : function(botao) { - i3GEO.editorGM.mudaicone(botao); - i3GEO.editorGM.drawingManager.setOptions({ - drawingMode : google.maps.drawing.OverlayType.POLYGON - }); - }, - /** - * Ativa a digitalizacao de ponto - * - * @param objeto - * DOM que representa o botao que sera focado - */ - digitalizaPt : function(botao) { - i3GEO.editorGM.mudaicone(botao); - i3GEO.editorGM.drawingManager.setOptions({ - drawingMode : google.maps.drawing.OverlayType.MARKER - }); - }, - /** - * Ativa a selecao de figuras - * - * @param objeto - * DOM que representa o botao que sera focado - */ - seleciona : function(botao) { - i3GEO.editorGM.mudaicone(botao); - i3GEO.editorGM.drawingManager.setOptions({ - drawingMode : null - }); - }, - /** - * Adiciona uma nova figura ao mapa (shape) Pode ser poligono ou ponto - * - * @param objeto - * shape (API do Google) - * @param codigo - * do layer que sera vinculado ao shape - * @param coluna - * do tema que contem os identificadores de cada um de seus elementos (registros) - * @param valor - * do identificador - * @param coluna - * que cntem os nomes das regioes - * @param nome - * da regiao a ser adicionada - */ - adicionaPoligonos : function(obj, tema, colunaid, valorid, colunanome, valornome) { - if (!tema) { - tema = $i("i3geoCartoRegioesEditaveis").value; - } - if (!colunaid) { - colunaid = ""; - } - if (!valorid) { - valorid = ""; - } - if (!colunanome) { - colunanome = ""; - } - if (!valornome) { - valornome = ""; - } - var pol; - if (Wkt.isArray(obj)) { // Distinguish multigeometries (Arrays) from objects - for (i in obj) { - if (obj.hasOwnProperty(i) && !Wkt.isArray(obj[i])) { - pol = new google.maps.Polygon({ - path : obj[i].getPath(), - map : i3GeoMap, - fillColor : '#ffff00', - fillOpacity : .5, - strokeWeight : 2, - clickable : true, - zIndex : 1, - editable : true, - tema : tema, - colunaid : colunaid, - valorid : valorid, - colunanome : colunanome, - valornome : valornome - }); - google.maps.event.addListener(pol, 'click', function() { - i3GEO.editorGM.setSelection(pol); - }); - i3GEO.desenho.googlemaps.shapes.push(pol); - } - } - return; - } - if (obj.type === 'polygon' || obj.type === 'linestring') { - pol = new google.maps.Polygon({ - paths : obj.getPaths(), - map : i3GeoMap, - fillColor : '#ffff00', - fillOpacity : .5, - strokeWeight : 2, - clickable : true, - zIndex : 1, - editable : true, - tema : tema, - colunaid : colunaid, - valorid : valorid, - colunanome : colunanome, - valornome : valornome - }); - google.maps.event.addListener(pol, 'click', function() { - i3GEO.editorGM.setSelection(pol); - }); - i3GEO.desenho.googlemaps.shapes.push(pol); - return; - } - if (obj.type === 'marker') { - i3GEO.editorGM.selectAll(); - if (i3GEO.desenho.googlemaps.shapes.length > 0) { - i3GEO.editorGM.deleteSelectedShape(true); - } - pol = new google.maps.Marker({ - position : new google.maps.LatLng(obj.getPosition().ob, obj.getPosition().pb), - map : i3GeoMap, - icon : { - url : i3GEO.editorGM.iconePonto(false) - }, - clickable : true, - zIndex : 1, - draggable : true, - tema : tema, - colunaid : colunaid, - valorid : valorid, - colunanome : colunanome, - valornome : valornome, - editable : false - }); - google.maps.event.addListener(pol, 'click', function() { - i3GEO.editorGM.setSelection(pol); - }); - i3GEO.desenho.googlemaps.shapes.push(pol); - return; - } - }, - /** - * Salva um poligono no banco de dados - */ - salvaLimite : { - /** - * Inicia a ferramenta definindo as funcoes dos botoes Executa i3GEO.editorGM.salvaLimite.criaJanelaFlutuante - */ - inicia : function() { - if (i3GEO.login.verificaCookieLogin() === false) { - i3GEO.janela.tempoMsg($trad("meneditor3")); - if (i3GEO.editorGM.selectedShapes().length > 0) { - var temp = i3GEO.editorGM.toWKT(i3GEO.editorGM.selectedShapes()[0]); - i3GEO.mapa.dialogo.wkt2layer(temp); - } - return; - } - var wkt, temp, s = i3GEO.editorGM.selectedShapes(), n = s.length, janela = YAHOO.i3GEO.janela.manager.find("salvaLimite"); - if (janela) { - janela.destroy(); - } - if (n == 1) { - s = s[0]; - temp = function(retorno) { - i3GEO.editorGM.deleteSelectedShape(true); - i3GEO.Interface.redesenha(); - }; - // verifica se e uma regiao cadastrada ou um tema comum editavel - if (i3GEO.editorGM.descregioes["a_" + $i("i3geoCartoRegioesEditaveis").value].tema != undefined) { - wkt = i3GEO.editorGM.toWKT(i3GEO.editorGM.selectedShapes()[0]); - if (wkt && wkt != "") { - // cria um novo registro - if (s.valorid == "") { - p = - i3GEO.configura.locaplic + "/ferramentas/editortema/exec.php?funcao=adicionaGeometria&g_sid=" - + i3GEO.configura.sid; - cpJSON.call(p, "foo", temp, "&tema=" + $i("i3geoCartoRegioesEditaveis").value + "&wkt=" + wkt); - } else { - // atualiza a geometria - p = - i3GEO.configura.locaplic + "/ferramentas/editortema/exec.php?funcao=atualizaGeometria&g_sid=" - + i3GEO.configura.sid; - cpJSON.call(p, "foo", temp, "&idunico=" + s.valorid - + "&tema=" - + $i("i3geoCartoRegioesEditaveis").value - + "&wkt=" - + wkt); - } - } - } else { - // formulario para o caso de ser um tema cadastrado como regiao no sistema metaestat - i3GEO.editorGM.salvaLimite.criaJanelaFlutuante(i3GEO.editorGM.salvaLimite.html( - s.colunaid, - s.valorid, - s.colunanome, - s.valornome)); - new YAHOO.widget.Button("i3GEOFmetaestati3GEO.editorGMBotao1", { - onclick : { - fn : function() { - i3GEO.editorGM.salvaLimite.gravaDados(true); - } - } - }); - new YAHOO.widget.Button("i3GEOFmetaestati3GEO.editorGMBotao2", { - onclick : { - fn : function() { - i3GEO.editorGM.salvaLimite.gravaDados(false); - } - } - }); - new YAHOO.widget.Button("i3GEOFmetaestati3GEO.editorGMBotao3", { - onclick : { - fn : function() { - i3GEO.editorGM.salvaLimite.excluiPoligono(); - } - } - }); - } - } else { - i3GEO.janela.tempoMsg("Selecione uma figura"); - } - }, - /** - * Monta o HTML para o formulario que permite salvar os dados - */ - html : function(colunaIdElemento, valorIdElemento, colunaNomeElemento, valorNomeElemento) { - var ins = - '' + '

Se o valor do código for vazio, será criado um novo elemento. Caso contrário, os valores atualmente registrados serão atualizados.

' - + '

Edite os atributos:

' - + '' - + '' - + '' - + '' - + '

Código:

' - + '

' - + '

Nome:

' - + '

' - + '

Escolha a operação desejada:

' - + '' - + ' ' - + '

'; - return ins; - }, - /** - * Cria a janela flutuante para receber os componentes da ferramenta - * - * @param html - * com o conteudo da ferramenta - */ - criaJanelaFlutuante : function(html) { - var titulo, cabecalho, minimiza, janela; - cabecalho = function() { - }; - minimiza = function() { - i3GEO.janela.minimiza("salvaLimite"); - }; - titulo = "
" + $trad("sdados") + "
"; - janela = i3GEO.janela.cria("300px", "265px", "", "", "", titulo, "salvaLimite", true, "hd", cabecalho, minimiza); - $i("salvaLimite_corpo").style.backgroundColor = "white"; - $i("salvaLimite_corpo").innerHTML = html; - YAHOO.util.Event.addListener(janela[0].close, "click", i3GEO.editorGM.mudaicone); - }, - /** - * Aplica a operacao de salvar os dados no banco para o shape selecionado Executa - * admin/php/metaestat.php?funcao=mantemDadosRegiao - * - * @param boolean - * indica se as coordenadas serao salvas tambem - */ - gravaDados : function(comwkt) { - if (i3GEO.login.verificaCookieLogin() === false) { - i3GEO.janela.tempoMsg($trad("meneditor3")); - return; - } - if (!window.confirm($trad("sdados") + "?")) { - return; - } - var p, codigo_tipo_regiao = $i("i3geoCartoRegioesEditaveis").value, identificadornovo = - $i("inputIdentificadorNovoElemento").value, identificador = $i("inputIdentificadorElemento").value, nome = - $i("inputNomeNovoElemento").value, wkt = "", temp = function(retorno) { - i3GEO.editorGM.deleteSelectedShape(true); - var janela = YAHOO.i3GEO.janela.manager.find("salvaLimite"); - if (janela) { - janela.destroy(); - } - i3GEO.Interface.redesenha(); - }; - if (comwkt === true) { - wkt = i3GEO.editorGM.toWKT(i3GEO.editorGM.selectedShapes()[0]); - } else { - if (identificadornovo === identificador && $i("inputNomeElemento").value === nome) { - i3GEO.janela.tempoMsg($trad("meneditor4")); - return; - } - } - p = i3GEO.configura.locaplic + "/admin/php/metaestat.php?funcao=mantemDadosRegiao&tipo="; - cpJSON.call(p, "foo", temp, "&codigo_tipo_regiao=" + codigo_tipo_regiao - + "&identificadornovo=" - + identificadornovo - + "&identificador=" - + identificador - + "&nome=" - + nome - + "&wkt=" - + wkt); - }, - /** - * Exclui um registro do banco de dados Executa admin/php/metaestat.php?funcao=mantemDadosRegiao&tipo=excluir - */ - excluiPoligono : function() { - if (i3GEO.login.verificaCookieLogin() === false) { - i3GEO.janela.tempoMsg($trad("meneditor3")); - return; - } - if (!window.confirm($trad("excsel") + "?")) { - return; - } - var codigo_tipo_regiao = $i("i3geoCartoRegioesEditaveis").value, identificador = $i("inputIdentificadorElemento").value, temp = - function(retorno) { - i3GEO.editorGM.deleteSelectedShape(true); - var janela = YAHOO.i3GEO.janela.manager.find("salvaLimite"); - if (janela) { - janela.destroy(); - } - i3GEO.Interface.redesenha(); - }, p = i3GEO.configura.locaplic + "/admin/php/metaestat.php?funcao=mantemDadosRegiao&tipo=excluir"; - if (identificador === "") { - i3GEO.janela.tempoMsg($trad("meneditor5")); - } else { - cpJSON.call(p, "foo", temp, "&codigo_tipo_regiao=" + codigo_tipo_regiao + "&identificador=" + identificador); - } - } - }, - /** - * Funcoes que controlam o processo de edicao de atributos de um shape - */ - editarAtributos : { - aliascolunas : "", // guarda os nomes das colunas e seus aliases para permitir a criacao de novos registros - x : "", - y : "", - /** - * Ativa a ferramenta Define os eventos de onclick para abrir formulario quando o usuario clica no mapa Para cada regiao sao - * obtidas todas as variaveis cadastradas Executa i3GEO.editorGM.editarAtributos.criaJanelaFlutuante Executa - * i3GEO.editorGM.editarAtributos.comboVariaveis(); - */ - ativa : function(botao) { - if ($i("i3geoCartoRegioesEditaveis").value == "") { - i3GEO.janela.tempoMsg("Escolha uma regiao"); - return; - } - i3GEO.editorGM.mudaicone(botao); - i3GEO.eventos.adicionaEventos("MOUSECLIQUE", [ - "i3GEO.editorGM.editarAtributos.captura()" - ]); - var janela = YAHOO.i3GEO.janela.manager.find("editaAtributos"); - if (janela) { - $i("editarAtributosForm").innerHTML = ""; - } else { - i3GEO.editorGM.editarAtributos.criaJanelaFlutuante(i3GEO.editorGM.editarAtributos.html()); - i3GEO.editorGM.editarAtributos.comboVariaveis(); - } - }, - /** - * Fecha a janela de edicao - */ - desativa : function() { - var janela = YAHOO.i3GEO.janela.manager.find("editaAtributos"); - if (janela) { - janela.destroy(); - } - }, - criaJanelaFlutuante : function(html) { - var janela, titulo, cabecalho, minimiza; - cabecalho = function() { - }; - minimiza = function() { - i3GEO.janela.minimiza("editaAtributos"); - }; - titulo = "
" + $trad("atrib") + "
"; - janela = i3GEO.janela.cria("250px", "265px", "", "", "", titulo, "editaAtributos", false, "hd", cabecalho, minimiza); - $i("editaAtributos_corpo").style.backgroundColor = "white"; - $i("editaAtributos_corpo").innerHTML = html; - i3GEO.janela.tempoMsg($trad("meneditor6")); - YAHOO.util.Event.addListener(janela[0].close, "click", i3GEO.editorGM.mudaicone); - }, - /** - * Fornece o HTML com os objetos que receberao os componentes da ferramenta - * - * @return html - */ - html : function() { - var ins = - '' + '

' - + '

' - + '

' - + '

' - + ''; - return ins; - }, - /** - * Monta um combo para escolha de uma variavel que sera editada Executa i3GEO.php.listaVariavel - */ - comboVariaveis : function() { - var temp = - function(dados) { - var i, n = dados.length, ins = ''; - ins += '

Escolha uma variável para editar

'; - ins += - ""; - $i("editarAtributosVariaveis").innerHTML = ins; - }; - i3GEO.php.listaVariavel(temp, "i3geo_metaestat"); - }, - /** - * Monta um combo com as medidas de uma variavel Executa i3GEO.php.listaMedidaVariavel - * - * @param objeto - * DOM do tipo select que contem a lista de variaveis - */ - comboMedidasVariavel : function(comboMedidas) { - var temp = - function(dados) { - var i, n = dados.length, ins = ''; - ins += '

Escolha uma medida da variável para editar

'; - ins += - ""; - $i("editarAtributosMedidasVariavel").innerHTML = ins; - }; - if (comboMedidas.value !== "") { - i3GEO.php.listaMedidaVariavel(comboMedidas.value, temp); - } - }, - /** - * Captura os atributos de um elemento do mapa Executa i3GEO.editorGM.editarAtributos.pegaDados(); - */ - captura : function() { - if (!YAHOO.i3GEO.janela.manager.find("editaAtributos")) { - i3GEO.editorGM.mudaicone(botao); - return; - } - i3GEO.editorGM.editarAtributos.x = objposicaocursor.ddx; - i3GEO.editorGM.editarAtributos.y = objposicaocursor.ddy; - i3GEO.editorGM.editarAtributos.pegaDados(); - }, - /** - * Obtem os dados de um elemento de uma regiao Monta o formulario para edicao Executa - * admin/php/metaestat.php?funcao=listaAtributosMedidaVariavelXY - */ - pegaDados : function() { - var p = i3GEO.configura.locaplic + "/admin/php/metaestat.php?funcao=listaAtributosMedidaVariavelXY", codigo_tipo_regiao = - $i("i3geoCartoRegioesEditaveis").value, id_medida_variavel = $i("editarAtributosComboMedidas").value, temp = - function(retorno) { - var atr = retorno.atributos, i = 0, n = atr.dados.length, j = 0, idunico = "", nj = atr.aliascolunas.length, ins = - "" + '

Limite geográfico escolhido:

' - + '

Nome: ' - + retorno.regiao.nomeregiao - + '

' - + '

Código: ' - + retorno.regiao.identificador_regiao - + '

' - + '' - + '

Atributos:

' - + '' - + ' '; - $i("editarAtributosRegiao").innerHTML = ins; - ins = ""; - // registros - for (i = 0; i < n; i++) { - // descobre qual o indice que corresponde ao idunico do registro - for (j = 0; j < nj; j++) { - if (atr.aliascolunas[j] == "idunico") { - idunico = atr.dados[i][atr.colunas[j]]; - } - } - ins += - "

excluir

"; - // colunas - for (j = 0; j < nj; j++) { - if (atr.aliascolunas[j] !== "idunico") { - ins += - '

' + atr.aliascolunas[j] - + ':
' - + '

'; - } - } - } - $i("editarAtributosForm").innerHTML = ins; - new YAHOO.widget.Button("editarAtributosAdicionar", { - onclick : { - fn : function() { - var novoel = document.createElement("div"), ins = "

"; - for (j = 0; j < nj; j++) { - if (atr.aliascolunas[j] !== "idunico") { - ins += - '

' + atr.aliascolunas[j] - + ' - ' - + atr.descricao[j] - + ':
' - + '

'; - } - } - ins += "
"; - novoel.innerHTML = ins; - $i("editarAtributosForm").appendChild(novoel); - } - } - }); - new YAHOO.widget.Button("editarAtributosSalvar", { - onclick : { - fn : function() { - i3GEO.editorGM.editarAtributos.salva(); - } - } - }); - }; - cpJSON.call(p, "foo", temp, "&codigo_tipo_regiao=" + codigo_tipo_regiao - + "&id_medida_variavel=" - + id_medida_variavel - + "&x=" - + i3GEO.editorGM.editarAtributos.x - + "&y=" - + i3GEO.editorGM.editarAtributos.y); - }, - // FIXME redesenhar as camadas que sofrerem alteracoes em funcao do salvar ou excluir - /** - * Exclui o valor de uma medida de variavel para o componente de uma regiao - */ - excluir : function(id) { - if (i3GEO.login.verificaCookieLogin() === false) { - i3GEO.janela.tempoMsg("Você precisa fazer login para usar essa opção"); - return; - } - var p = i3GEO.configura.locaplic + "/admin/php/metaestat.php?funcao=excluiAtributosMedidaVariavel", codigo_tipo_regiao = - $i("i3geoCartoRegioesEditaveis").value, id_medida_variavel = $i("editarAtributosComboMedidas").value, identificador_regiao = - $i("editarAtributosidentificador_regiao").value, temp = function(retorno) { - i3GEO.editorGM.editarAtributos.pegaDados(); - i3GEO.janela.fechaAguarde("aguardeSalvaAtributos"); - }; - i3GEO.janela.AGUARDEMODAL = true; - i3GEO.janela.abreAguarde("aguardeSalvaAtributos", "Salvando..."); - i3GEO.janela.AGUARDEMODAL = false; - cpJSON.call(p, "foo", temp, "&codigo_tipo_regiao=" + codigo_tipo_regiao - + "&identificador_regiao=" - + identificador_regiao - + "&id_medida_variavel=" - + id_medida_variavel - + "&id=" - + id); - - }, - /** - * Salva os valores digitados - */ - salva : function() { - if (i3GEO.login.verificaCookieLogin() === false) { - i3GEO.janela.tempoMsg("Você precisa fazer login para usar essa opção"); - return; - } - var container = $i("editarAtributosForm"), divsT = container.getElementsByTagName("div"), n = divsT.length, i = 0, dv = "", inputs = - "", codigo_tipo_regiao = $i("i3geoCartoRegioesEditaveis").value, id_medida_variavel = - $i("editarAtributosComboMedidas").value, identificador_regiao = $i("editarAtributosidentificador_regiao").value, nj, j, colunas = - [], colunasT = [], valores = [], valoresT = [], idsunicosT = [], p = - i3GEO.configura.locaplic + "/admin/php/metaestat.php?funcao=salvaAtributosMedidaVariavel", re = - new RegExp("idunico_", "g"), // prefixo usado para marcar o id dos elementos input que contem os valores que se quer - // obter - temp = function(retorno) { - i3GEO.editorGM.editarAtributos.pegaDados(); - i3GEO.editorGM.atualizaCamadasMetaestat(); - i3GEO.janela.fechaAguarde("aguardeSalvaAtributos"); - }; - if (codigo_tipo_regiao == "") { - i3GEO.janela.tempoMsg("Problemas com o codigo da regiao"); - return; - } - if (id_medida_variavel == "") { - i3GEO.janela.tempoMsg("Escolha uma medida"); - return; - } - if (identificador_regiao == "") { - i3GEO.janela.tempoMsg("Problemas com o identificador da regiao"); - return; - } - for (i = 0; i < n; i++) { - dv = divsT[i]; - inputs = dv.getElementsByTagName("input"); - nj = inputs.length; - colunas = []; - valores = []; - for (j = 0; j < nj; j++) { - colunas.push(inputs[j].name); - valores.push(inputs[j].value); - } - idsunicosT.push(inputs[0].id.replace(re, '')); - colunasT.push(colunas.join("|")); - valoresT.push(valores.join("|")); - } - i3GEO.janela.AGUARDEMODAL = true; - i3GEO.janela.abreAguarde("aguardeSalvaAtributos", "Salvando..."); - i3GEO.janela.AGUARDEMODAL = false; - cpJSON.call(p, "foo", temp, "&codigo_tipo_regiao=" + codigo_tipo_regiao - + "&identificador_regiao=" - + identificador_regiao - + "&id_medida_variavel=" - + id_medida_variavel - + "&colunas=" - + colunasT[0] - + "&valores=" - + valoresT.join("#") - + "&idsunicos=" - + idsunicosT.join("|")); - } - }, - /** - * Abre a janela de ajuda sobre a operacao dos botoes do editor - */ - ajuda : function() { - var titulo, cabecalho, minimiza, html = ""; - cabecalho = function() { - }; - minimiza = function() { - i3GEO.janela.minimiza("editaAtributosAjuda"); - }; - titulo = "
Ajuda 
"; - i3GEO.janela.cria("400px", "350px", "", "", "", titulo, "editaAtributosAjuda", false, "hd", cabecalho, minimiza); - $i("editaAtributosAjuda_corpo").style.backgroundColor = "white"; - html += - "" + "" - + "" - + "" - + "" - + "" - + "" - + "" - + "" - + "" - + "" - + "" - + "" - + "
Clique no mapa para traçar um polígono novo. Cada clique corresponde a um vértice do polígono. Para encerrar o traçado utilize um duplo clique. Após traçar um novo polígono pode-se selecioná-lo novamente e editar os vértices, se for necessário, ou mesmo apagar o polígono por completo. O novo polígono só será salvo por meio da opção específica para isso.
Utilize essa opção para capturar os vértices de um polígono existente. O resultado da captura é uma figura que pode ser editada, ou seja, os vértices podem ser modificados de posição ou mesmo removidos. Após editar, salve o novo polígono.
Após ativar essa opção clique no mapa sobre uma figura existente (que tenha sido capturada ou digtalizada). A figura passará então para o estado de 'selecionada' podendo ser utilizada por outras ferramentas de edição.
Remove da tela a figura que estiver selecionada. Essa operação não apaga o polígono do banco de dados, apenas remove do modo de edição.
Salva no banco de dados a figura que estiver selecionada. Essa opção altera apenas os atributos do limite geográfico, não afetando os valores armazenados em cada medida de variável.
Abre um formulário que permite alterar os valores de uma medida de variável relacionada a uma determinada região. Após abrir o formulário, clique no mapa sobre a região desejada, mas escolha a medida da variável primeiro. Os valores já existentes poderão então ser alterados ou podem ser adicionados novos.
"; - $i("editaAtributosAjuda_corpo").innerHTML = html; - } - }; - -// copia do original de pacotes/wicket - -/* global Wkt, google, document, window, console */ -google.maps.Marker.prototype.type = 'marker'; -google.maps.Polyline.prototype.type = 'polyline'; -google.maps.Polygon.prototype.type = 'polygon'; -google.maps.Rectangle.prototype.type = 'rectangle'; -google.maps.Circle.prototype.type = 'circle'; - -/** - * @license - * - * Copyright (C) 2012 K. Arthur Endsley (kaendsle@mtu.edu) Michigan Tech Research Institute (MTRI) 3600 Green Court, Suite 100, Ann Arbor, - * MI, 48105 - * - * This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with this program. If not, see . - * - */ -(function(Wkt) { - - /** - * @augments Wkt.Wkt A framework-dependent flag, set for each Wkt.Wkt() instance, that indicates whether or not a closed polygon - * geometry should be interpreted as a rectangle. - */ - Wkt.Wkt.prototype.isRectangle = false; - - /** - * @augments Wkt.Wkt An object of framework-dependent construction methods used to generate objects belonging to the various geometry - * classes of the framework. - */ - Wkt.Wkt.prototype.construct = { - /** - * Creates the framework's equivalent point geometry object. - * - * @param config - * {Object} An optional properties hash the object should use - * @param component - * {Object} An optional component to build from - * @return {google.maps.Marker} - */ - point : function(config, component) { - var c = component || this.components; - - config = config || {}; - - config.position = new google.maps.LatLng(c[0].y, c[0].x); - - return new google.maps.Marker(config); - }, - - /** - * Creates the framework's equivalent multipoint geometry object. - * - * @param config - * {Object} An optional properties hash the object should use - * @return {Array} Array containing multiple google.maps.Marker - */ - multipoint : function(config) { - var i, c, arr; - - c = this.components; - - config = config || {}; - - arr = []; - - for (i = 0; i < c.length; i += 1) { - arr.push(this.construct.point(config, c[i])); - } - - return arr; - }, - - /** - * Creates the framework's equivalent linestring geometry object. - * - * @param config - * {Object} An optional properties hash the object should use - * @param component - * {Object} An optional component to build from - * @return {google.maps.Polyline} - */ - linestring : function(config, component) { - var i, c; - - c = component || this.components; - - config = config || { - editable : false - }; - - config.path = []; - - for (i = 0; i < c.length; i += 1) { - config.path.push(new google.maps.LatLng(c[i].y, c[i].x)); - } - - return new google.maps.Polyline(config); - }, - - /** - * Creates the framework's equivalent multilinestring geometry object. - * - * @param config - * {Object} An optional properties hash the object should use - * @return {Array} Array containing multiple google.maps.Polyline instances - */ - multilinestring : function(config) { - var i, c, arr; - - c = this.components; - - config = config || { - editable : false - }; - - config.path = []; - - arr = []; - - for (i = 0; i < c.length; i += 1) { - arr.push(this.construct.linestring(config, c[i])); - } - - return arr; - }, - - /** - * Creates the framework's equivalent Box or Rectangle geometry object. - * - * @param config - * {Object} An optional properties hash the object should use - * @param component - * {Object} An optional component to build from - * @return {google.maps.Rectangle} - */ - box : function(config, component) { - var c = component || this.components; - - config = config || {}; - - config.bounds = new google.maps.LatLngBounds(new google.maps.LatLng(c[0].y, c[0].x), new google.maps.LatLng(c[1].y, c[1].x)); - - return new google.maps.Rectangle(config); - }, - - /** - * Creates the framework's equivalent polygon geometry object. - * - * @param config - * {Object} An optional properties hash the object should use - * @param component - * {Object} An optional component to build from - * @return {google.maps.Polygon} - */ - polygon : function(config, component) { - var j, k, c, rings, verts; - - c = component || this.components; - - config = config || { - editable : false - // Editable geometry off by default - }; - - config.paths = []; - - rings = []; - for (j = 0; j < c.length; j += 1) { // For each ring... - - verts = []; - // NOTE: We iterate to one (1) less than the Array length to skip the last vertex - for (k = 0; k < c[j].length - 1; k += 1) { // For each vertex... - verts.push(new google.maps.LatLng(c[j][k].y, c[j][k].x)); - - } // eo for each vertex - - if (j !== 0) { // Reverse the order of coordinates in inner rings - if (config.reverseInnerPolygons == null || config.reverseInnerPolygons) { - verts.reverse(); - } - } - - rings.push(verts); - } // eo for each ring - - config.paths = config.paths.concat(rings); - - if (this.isRectangle) { - return (function() { - var bounds, v = 0; - - bounds = new google.maps.LatLngBounds(); - - for (v in rings[0]) { // Ought to be only 1 ring in a Rectangle - if (rings[0].hasOwnProperty(v)) { - bounds.extend(rings[0][v]); - } - } - - return new google.maps.Rectangle({ - bounds : bounds - }); - }()); - } else { - return new google.maps.Polygon(config); - } - }, - - /** - * Creates the framework's equivalent multipolygon geometry object. - * - * @param config - * {Object} An optional properties hash the object should use - * @return {Array} Array containing multiple google.maps.Polygon - */ - multipolygon : function(config) { - var i, c, arr; - - c = this.components; - - config = config || { - editable : false - }; - - config.path = []; - - arr = []; - - for (i = 0; i < c.length; i += 1) { - arr.push(this.construct.polygon(config, c[i])); - } - - return arr; - } - - }; - - /** - * @augments Wkt.Wkt A framework-dependent deconstruction method used to generate internal geometric representations from instances of - * framework geometry. This method uses object detection to attempt to classify members of framework geometry classes into the - * standard WKT types. - * @param obj - * {Object} An instance of one of the framework's geometry classes - * @param multiFlag - * {Boolean} If true, then the deconstructor will be forced to return a MultiGeometry (multipoint, multilinestring or - * multipolygon) - * @return {Object} A hash of the 'type' and 'components' thus derived, plus the WKT string of the feature. - */ - Wkt.Wkt.prototype.deconstruct = - function(obj, multiFlag) { - var features, i, j, verts, rings, sign, tmp, response, lat, lng; - - // Shortcut to signed area function (determines clockwise vs counter-clock) - if (google.maps.geometry) { - sign = google.maps.geometry.spherical.computeSignedArea; - } - ; - - // google.maps.LatLng ////////////////////////////////////////////////////// - if (obj.constructor === google.maps.LatLng) { - - response = { - type : 'point', - components : [ - { - x : obj.lng(), - y : obj.lat() - } - ] - }; - return response; - } - - // google.maps.Point ////////////////////////////////////////////////////// - if (obj.constructor === google.maps.Point) { - response = { - type : 'point', - components : [ - { - x : obj.x, - y : obj.y - } - ] - }; - return response; - } - - // google.maps.Marker ////////////////////////////////////////////////////// - if (obj.constructor === google.maps.Marker) { - response = { - type : 'point', - components : [ - { - x : obj.getPosition().lng(), - y : obj.getPosition().lat() - } - ] - }; - return response; - } - - // google.maps.Polyline //////////////////////////////////////////////////// - if (obj.constructor === google.maps.Polyline) { - - verts = []; - for (i = 0; i < obj.getPath().length; i += 1) { - tmp = obj.getPath().getAt(i); - verts.push({ - x : tmp.lng(), - y : tmp.lat() - }); - } - response = { - type : 'linestring', - components : verts - }; - return response; - - } - - // google.maps.Polygon ///////////////////////////////////////////////////// - if (obj.constructor === google.maps.Polygon) { - - rings = []; - - if (multiFlag === undefined) { - multiFlag = (function() { - var areas, l; - - l = obj.getPaths().length; - if (l <= 1) { // Trivial; this is a single polygon - return false; - } - - if (l === 2) { - // If clockwise*clockwise or counter*counter, i.e. - // (-1)*(-1) or (1)*(1), then result would be positive - if (sign(obj.getPaths().getAt(0)) * sign(obj.getPaths().getAt(1)) < 0) { - return false; // Most likely single polygon with 1 hole - } - - return true; - } - - // Must be longer than 3 polygons at this point... - areas = obj.getPaths().getArray().map(function(k) { - return sign(k) / Math.abs(sign(k)); // Unit normalization (outputs 1 or -1) - }); - - // If two clockwise or two counter-clockwise rings are found - // (at different indices)... - if (areas.indexOf(areas[0]) !== areas.lastIndexOf(areas[0])) { - multiFlag = true; // Flag for holes in one or more polygons - return true; - } - - return false; - - }()); - } - - for (i = 0; i < obj.getPaths().length; i += 1) { // For each polygon (ring)... - tmp = obj.getPaths().getAt(i); - verts = []; - for (j = 0; j < obj.getPaths().getAt(i).length; j += 1) { // For each vertex... - verts.push({ - x : tmp.getAt(j).lng(), - y : tmp.getAt(j).lat() - }); - - } - - if (!tmp.getAt(tmp.length - 1).equals(tmp.getAt(0))) { - if (i % 2 !== 0) { // In inner rings, coordinates are reversed... - verts.unshift({ // Add the first coordinate again for closure - x : tmp.getAt(tmp.length - 1).lng(), - y : tmp.getAt(tmp.length - 1).lat() - }); - - } else { - verts.push({ // Add the first coordinate again for closure - x : tmp.getAt(0).lng(), - y : tmp.getAt(0).lat() - }); - - } - - } - - if (obj.getPaths().length > 1 && i > 0) { - // If this and the last ring have the same signs... - if (sign(obj.getPaths().getAt(i)) > 0 && sign(obj.getPaths().getAt(i - 1)) > 0 - || sign(obj.getPaths().getAt(i)) < 0 - && sign(obj.getPaths().getAt(i - 1)) < 0 - && !multiFlag) { - // ...They must both be inner rings (or both be outer rings, in a multipolygon) - verts = [ - verts - ]; // Wrap multipolygons once more (collection) - } - - } - - if (i % 2 !== 0) { // In inner rings, coordinates are reversed... - verts.reverse(); - } - rings.push(verts); - } - - response = { - type : (multiFlag) ? 'multipolygon' : 'polygon', - components : rings - }; - return response; - - } - - // google.maps.Circle ////////////////////////////////////////////////////// - if (obj.constructor === google.maps.Circle) { - var point = obj.getCenter(); - var radius = obj.getRadius(); - verts = []; - var d2r = Math.PI / 180; // degrees to radians - var r2d = 180 / Math.PI; // radians to degrees - radius = radius / 1609; // meters to miles - var earthsradius = 3963; // 3963 is the radius of the earth in miles - var num_seg = 32; // number of segments used to approximate a circle - var rlat = (radius / earthsradius) * r2d; - var rlng = rlat / Math.cos(point.lat() * d2r); - - for (var n = 0; n <= num_seg; n++) { - var theta = Math.PI * (n / (num_seg / 2)); - lng = point.lng() + (rlng * Math.cos(theta)); // center a + radius x * cos(theta) - lat = point.lat() + (rlat * Math.sin(theta)); // center b + radius y * sin(theta) - verts.push({ - x : lng, - y : lat - }); - } - - response = { - type : 'polygon', - components : [ - verts - ] - }; - - return response; - - } - - // google.maps.LatLngBounds /////////////////////////////////////////////////// - if (obj.constructor === google.maps.LatLngBounds) { - - tmp = obj; - verts = []; - verts.push({ // NW corner - x : tmp.getSouthWest().lng(), - y : tmp.getNorthEast().lat() - }); - - verts.push({ // NE corner - x : tmp.getNorthEast().lng(), - y : tmp.getNorthEast().lat() - }); - - verts.push({ // SE corner - x : tmp.getNorthEast().lng(), - y : tmp.getSouthWest().lat() - }); - - verts.push({ // SW corner - x : tmp.getSouthWest().lng(), - y : tmp.getSouthWest().lat() - }); - - verts.push({ // NW corner (again, for closure) - x : tmp.getSouthWest().lng(), - y : tmp.getNorthEast().lat() - }); - - response = { - type : 'polygon', - isRectangle : true, - components : [ - verts - ] - }; - - return response; - - } - - // google.maps.Rectangle /////////////////////////////////////////////////// - if (obj.constructor === google.maps.Rectangle) { - - tmp = obj.getBounds(); - verts = []; - verts.push({ // NW corner - x : tmp.getSouthWest().lng(), - y : tmp.getNorthEast().lat() - }); - - verts.push({ // NE corner - x : tmp.getNorthEast().lng(), - y : tmp.getNorthEast().lat() - }); - - verts.push({ // SE corner - x : tmp.getNorthEast().lng(), - y : tmp.getSouthWest().lat() - }); - - verts.push({ // SW corner - x : tmp.getSouthWest().lng(), - y : tmp.getSouthWest().lat() - }); - - verts.push({ // NW corner (again, for closure) - x : tmp.getSouthWest().lng(), - y : tmp.getNorthEast().lat() - }); - - response = { - type : 'polygon', - isRectangle : true, - components : [ - verts - ] - }; - - return response; - - } - - // google.maps.Data Geometry Types ///////////////////////////////////////////////////// - - // google.maps.Data.Feature ///////////////////////////////////////////////////// - if (obj.constructor === google.maps.Data.Feature) { - return this.deconstruct.call(this, obj.getGeometry()); - } - - // google.maps.Data.Point ///////////////////////////////////////////////////// - if (obj.constructor === google.maps.Data.Point) { - // console.log('It is a google.maps.Data.Point'); - response = { - type : 'point', - components : [ - { - x : obj.get().lng(), - y : obj.get().lat() - } - ] - }; - return response; - } - - // google.maps.Data.LineString ///////////////////////////////////////////////////// - if (obj.constructor === google.maps.Data.LineString) { - verts = []; - // console.log('It is a google.maps.Data.LineString'); - for (i = 0; i < obj.getLength(); i += 1) { - vertex = obj.getAt(i); - verts.push({ - x : vertex.lng(), - y : vertex.lat() - }); - } - response = { - type : 'linestring', - components : verts - }; - return response; - } - - // google.maps.Data.Polygon ///////////////////////////////////////////////////// - if (obj.constructor === google.maps.Data.Polygon) { - var rings = []; - // console.log('It is a google.maps.Data.Polygon'); - for (i = 0; i < obj.getLength(); i += 1) { // For each ring... - ring = obj.getAt(i); - var verts = []; - for (j = 0; j < ring.getLength(); j += 1) { // For each vertex... - vertex = ring.getAt(j); - verts.push({ - x : vertex.lng(), - y : vertex.lat() - }); - } - verts.push({ - x : ring.getAt(0).lng(), - y : ring.getAt(0).lat() - }); - - rings.push(verts); - } - response = { - type : 'polygon', - components : rings - }; - - return response; - } - - // google.maps.Data.MultiPoint ///////////////////////////////////////////////////// - if (obj.constructor === google.maps.Data.MultiPoint) { - verts = []; - for (i = 0; i < obj.getLength(); i += 1) { - vertex = obj.getAt(i); - verts.push([ - { - x : vertex.lng(), - y : vertex.lat() - } - ]); - } - response = { - type : 'multipoint', - components : verts - }; - return response; - } - - // google.maps.Data.MultiLineString ///////////////////////////////////////////////////// - if (obj.constructor === google.maps.Data.MultiLineString) { - linestrings = []; - for (i = 0; i < obj.getLength(); i += 1) { - verts = []; - var linestring = obj.getAt(i); - for (j = 0; j < linestring.getLength(); j += 1) { - vertex = linestring.getAt(j); - verts.push({ - x : vertex.lng(), - y : vertex.lat() - }); - } - linestrings.push(verts); - } - response = { - type : 'multilinestring', - components : linestrings - }; - return response; - } - - // google.maps.Data.MultiPolygon ///////////////////////////////////////////////////// - if (obj.constructor === google.maps.Data.MultiPolygon) { - - var k = 0, polygons = []; - - // console.log('It is a google.maps.Data.MultiPolygon'); - for (k = 0; k < obj.getLength(); k += 1) { // For each multipolygon - var polygon = obj.getAt(k); - var rings = []; - for (i = 0; i < polygon.getLength(); i += 1) { // For each ring... - ring = polygon.getAt(i); - var verts = []; - for (j = 0; j < ring.getLength(); j += 1) { // For each vertex... - vertex = ring.getAt(j); - verts.push({ - x : vertex.lng(), - y : vertex.lat() - }); - } - verts.push({ - x : ring.getAt(0).lng(), - y : ring.getAt(0).lat() - }); - - rings.push(verts); - } - polygons.push(rings); - } - - response = { - type : 'multipolygon', - components : polygons - }; - return response; - } - - // google.maps.Data.GeometryCollection ///////////////////////////////////////////////////// - if (obj.constructor === google.maps.Data.GeometryCollection) { - - var objects = []; - for (k = 0; k < obj.getLength(); k += 1) { // For each multipolygon - var object = obj.getAt(k); - objects.push(this.deconstruct.call(this, object)); - } - // console.log('It is a google.maps.Data.GeometryCollection', objects); - response = { - type : 'geometrycollection', - components : objects - }; - return response; - } - - // Array /////////////////////////////////////////////////////////////////// - if (Wkt.isArray(obj)) { - features = []; - - for (i = 0; i < obj.length; i += 1) { - features.push(this.deconstruct.call(this, obj[i], true)); - } - - response = { - - type : (function() { - var k, type = obj[0].constructor; - - for (k = 0; k < obj.length; k += 1) { - // Check that all items have the same constructor as the first item - if (obj[k].constructor !== type) { - // If they don't, type is heterogeneous geometry collection - return 'geometrycollection'; - } - } - - switch (type) { - case google.maps.Marker: - return 'multipoint'; - case google.maps.Polyline: - return 'multilinestring'; - case google.maps.Polygon: - return 'multipolygon'; - default: - return 'geometrycollection'; - } - - }()), - components : (function() { - // Pluck the components from each Wkt - var i, comps; - - comps = []; - for (i = 0; i < features.length; i += 1) { - if (features[i].components) { - comps.push(features[i].components); - } - } - - return { - "comps" : comps - }; - }()) - - }; - response.components = response.components.comps; - return response; - - } - }; -}(Wkt || require('./wicket'))); diff --git a/ferramentas/editorgm/editorgm_compacto.js b/ferramentas/editorgm/editorgm_compacto.js old mode 100755 new mode 100644 index cc66aa6..e69de29 --- a/ferramentas/editorgm/editorgm_compacto.js +++ b/ferramentas/editorgm/editorgm_compacto.js @@ -1 +0,0 @@ -if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.editorGM={iconePonto:function(sel){if(sel){return i3GEO.configura.locaplic+"/imagens/google/symbol_middot_y.png"}else{return i3GEO.configura.locaplic+"/imagens/google/symbol_middot.png"}},aguarde:"",iddiv:"",drawingManager:"",selectedShape:null,regioestemas:{},temasregioes:{},descregioes:[],inicia:function(iddiv){var i,n,ics;i3GEO.editorGM.iddiv=iddiv;$i(iddiv).innerHTML=i3GEO.editorGM.html();ics=$i(iddiv).getElementsByTagName("button");n=ics.length;i3GEO.editorGM.comboRegiaoEditavel();for(i=0;i'+' '+' '+' '+' '+' '+' '+' '+' '+'
';return ins},ativaFoco:function(){i3GEO.editorGM.mudaicone();i3GEO.Interface.googlemaps.recalcPar()},setSelection:function(shape){if(shape.setEditable){shape.setEditable(!shape.editable)}else{shape.editable=true;shape.setIcon({url:i3GEO.editorGM.iconePonto(true)})}},clearSelection:function(){var i,n=i3GEO.desenho.googlemaps.shapes.length;for(i=0;i0){if(naoconfirma===false){var x=window.confirm($trad("excsel")+"?")}else{x=true}if(x){for(i=0;i1){for(i=1;i

'+$trad("camedit")+':

',i;ins+="";if(onde){onde.innerHTML=ins}return ins};i3GEO.php.listaTipoRegiao(temp,codigo_tipo_regiao)},comboRegiaoEditavelOnchange:function(combo){if(combo.value===""){return}i3GEO.editorGM.editarAtributos.desativa();if(i3GEO.arvoreDeCamadas.pegaTema(combo.value)!=""){i3GEO.editorGM.regioestemas["a"+combo.value]=combo.value;i3GEO.editorGM.temasregioes[combo.value]=combo.value}else{var temp=function(retorno){if(i3GEO.arvoreDeCamadas.pegaTema(retorno.layer)==""){i3GEO.php.adtema(i3GEO.atualiza,retorno.mapfile);i3GEO.editorGM.regioestemas["a"+combo.value]=retorno.layer;i3GEO.editorGM.temasregioes[retorno.layer]=combo.value}};i3GEO.php.mapfileTipoRegiao(temp,combo.value)}},mudaicone:function(botao){var c=$i(i3GEO.editorGM.iddiv),ci=c.getElementsByTagName("img"),n=ci.length,i;for(i=0;i0){i3GEO.editorGM.deleteSelectedShape(true)}pol=new google.maps.Marker({position:new google.maps.LatLng(obj.getPosition().ob,obj.getPosition().pb),map:i3GeoMap,icon:{url:i3GEO.editorGM.iconePonto(false)},clickable:true,zIndex:1,draggable:true,tema:tema,colunaid:colunaid,valorid:valorid,colunanome:colunanome,valornome:valornome,editable:false});google.maps.event.addListener(pol,'click',function(){i3GEO.editorGM.setSelection(pol)});i3GEO.desenho.googlemaps.shapes.push(pol);return}},salvaLimite:{inicia:function(){if(i3GEO.login.verificaCookieLogin()===false){i3GEO.janela.tempoMsg($trad("meneditor3"));if(i3GEO.editorGM.selectedShapes().length>0){var temp=i3GEO.editorGM.toWKT(i3GEO.editorGM.selectedShapes()[0]);i3GEO.mapa.dialogo.wkt2layer(temp)}return}var wkt,temp,s=i3GEO.editorGM.selectedShapes(),n=s.length,janela=YAHOO.i3GEO.janela.manager.find("salvaLimite");if(janela){janela.destroy()}if(n==1){s=s[0];temp=function(retorno){i3GEO.editorGM.deleteSelectedShape(true);i3GEO.Interface.redesenha()};if(i3GEO.editorGM.descregioes["a_"+$i("i3geoCartoRegioesEditaveis").value].tema!=undefined){wkt=i3GEO.editorGM.toWKT(i3GEO.editorGM.selectedShapes()[0]);if(wkt&&wkt!=""){if(s.valorid==""){p=i3GEO.configura.locaplic+"/ferramentas/editortema/exec.php?funcao=adicionaGeometria&g_sid="+i3GEO.configura.sid;cpJSON.call(p,"foo",temp,"&tema="+$i("i3geoCartoRegioesEditaveis").value+"&wkt="+wkt)}else{p=i3GEO.configura.locaplic+"/ferramentas/editortema/exec.php?funcao=atualizaGeometria&g_sid="+i3GEO.configura.sid;cpJSON.call(p,"foo",temp,"&idunico="+s.valorid+"&tema="+$i("i3geoCartoRegioesEditaveis").value+"&wkt="+wkt)}}}else{i3GEO.editorGM.salvaLimite.criaJanelaFlutuante(i3GEO.editorGM.salvaLimite.html(s.colunaid,s.valorid,s.colunanome,s.valornome));new YAHOO.widget.Button("i3GEOFmetaestati3GEO.editorGMBotao1",{onclick:{fn:function(){i3GEO.editorGM.salvaLimite.gravaDados(true)}}});new YAHOO.widget.Button("i3GEOFmetaestati3GEO.editorGMBotao2",{onclick:{fn:function(){i3GEO.editorGM.salvaLimite.gravaDados(false)}}});new YAHOO.widget.Button("i3GEOFmetaestati3GEO.editorGMBotao3",{onclick:{fn:function(){i3GEO.editorGM.salvaLimite.excluiPoligono()}}})}}else{i3GEO.janela.tempoMsg("Selecione uma figura")}},html:function(colunaIdElemento,valorIdElemento,colunaNomeElemento,valorNomeElemento){var ins=''+'

Se o valor do código for vazio, será criado um novo elemento. Caso contrário, os valores atualmente registrados serão atualizados.

'+'

Edite os atributos:

'+''+''+''+''+'

Código:

'+'

'+'

Nome:

'+'

'+'

Escolha a operação desejada:

'+''+' '+'

';return ins},criaJanelaFlutuante:function(html){var titulo,cabecalho,minimiza,janela;cabecalho=function(){};minimiza=function(){i3GEO.janela.minimiza("salvaLimite")};titulo="
"+$trad("sdados")+"
";janela=i3GEO.janela.cria("300px","265px","","","",titulo,"salvaLimite",true,"hd",cabecalho,minimiza);$i("salvaLimite_corpo").style.backgroundColor="white";$i("salvaLimite_corpo").innerHTML=html;YAHOO.util.Event.addListener(janela[0].close,"click",i3GEO.editorGM.mudaicone)},gravaDados:function(comwkt){if(i3GEO.login.verificaCookieLogin()===false){i3GEO.janela.tempoMsg($trad("meneditor3"));return}if(!window.confirm($trad("sdados")+"?")){return}var p,codigo_tipo_regiao=$i("i3geoCartoRegioesEditaveis").value,identificadornovo=$i("inputIdentificadorNovoElemento").value,identificador=$i("inputIdentificadorElemento").value,nome=$i("inputNomeNovoElemento").value,wkt="",temp=function(retorno){i3GEO.editorGM.deleteSelectedShape(true);var janela=YAHOO.i3GEO.janela.manager.find("salvaLimite");if(janela){janela.destroy()}i3GEO.Interface.redesenha()};if(comwkt===true){wkt=i3GEO.editorGM.toWKT(i3GEO.editorGM.selectedShapes()[0])}else{if(identificadornovo===identificador&&$i("inputNomeElemento").value===nome){i3GEO.janela.tempoMsg($trad("meneditor4"));return}}p=i3GEO.configura.locaplic+"/admin/php/metaestat.php?funcao=mantemDadosRegiao&tipo=";cpJSON.call(p,"foo",temp,"&codigo_tipo_regiao="+codigo_tipo_regiao+"&identificadornovo="+identificadornovo+"&identificador="+identificador+"&nome="+nome+"&wkt="+wkt)},excluiPoligono:function(){if(i3GEO.login.verificaCookieLogin()===false){i3GEO.janela.tempoMsg($trad("meneditor3"));return}if(!window.confirm($trad("excsel")+"?")){return}var codigo_tipo_regiao=$i("i3geoCartoRegioesEditaveis").value,identificador=$i("inputIdentificadorElemento").value,temp=function(retorno){i3GEO.editorGM.deleteSelectedShape(true);var janela=YAHOO.i3GEO.janela.manager.find("salvaLimite");if(janela){janela.destroy()}i3GEO.Interface.redesenha()},p=i3GEO.configura.locaplic+"/admin/php/metaestat.php?funcao=mantemDadosRegiao&tipo=excluir";if(identificador===""){i3GEO.janela.tempoMsg($trad("meneditor5"))}else{cpJSON.call(p,"foo",temp,"&codigo_tipo_regiao="+codigo_tipo_regiao+"&identificador="+identificador)}}},editarAtributos:{aliascolunas:"",x:"",y:"",ativa:function(botao){if($i("i3geoCartoRegioesEditaveis").value==""){i3GEO.janela.tempoMsg("Escolha uma regiao");return}i3GEO.editorGM.mudaicone(botao);i3GEO.eventos.adicionaEventos("MOUSECLIQUE",["i3GEO.editorGM.editarAtributos.captura()"]);var janela=YAHOO.i3GEO.janela.manager.find("editaAtributos");if(janela){$i("editarAtributosForm").innerHTML=""}else{i3GEO.editorGM.editarAtributos.criaJanelaFlutuante(i3GEO.editorGM.editarAtributos.html());i3GEO.editorGM.editarAtributos.comboVariaveis()}},desativa:function(){var janela=YAHOO.i3GEO.janela.manager.find("editaAtributos");if(janela){janela.destroy()}},criaJanelaFlutuante:function(html){var janela,titulo,cabecalho,minimiza;cabecalho=function(){};minimiza=function(){i3GEO.janela.minimiza("editaAtributos")};titulo="
"+$trad("atrib")+"
";janela=i3GEO.janela.cria("250px","265px","","","",titulo,"editaAtributos",false,"hd",cabecalho,minimiza);$i("editaAtributos_corpo").style.backgroundColor="white";$i("editaAtributos_corpo").innerHTML=html;i3GEO.janela.tempoMsg($trad("meneditor6"));YAHOO.util.Event.addListener(janela[0].close,"click",i3GEO.editorGM.mudaicone)},html:function(){var ins=''+'

'+'

'+'

'+'

'+'';return ins},comboVariaveis:function(){var temp=function(dados){var i,n=dados.length,ins='';ins+='

Escolha uma variável para editar

';ins+="";$i("editarAtributosVariaveis").innerHTML=ins};i3GEO.php.listaVariavel(temp,"i3geo_metaestat")},comboMedidasVariavel:function(comboMedidas){var temp=function(dados){var i,n=dados.length,ins='';ins+='

Escolha uma medida da variável para editar

';ins+="";$i("editarAtributosMedidasVariavel").innerHTML=ins};if(comboMedidas.value!==""){i3GEO.php.listaMedidaVariavel(comboMedidas.value,temp)}},captura:function(){if(!YAHOO.i3GEO.janela.manager.find("editaAtributos")){i3GEO.editorGM.mudaicone(botao);return}i3GEO.editorGM.editarAtributos.x=objposicaocursor.ddx;i3GEO.editorGM.editarAtributos.y=objposicaocursor.ddy;i3GEO.editorGM.editarAtributos.pegaDados()},pegaDados:function(){var p=i3GEO.configura.locaplic+"/admin/php/metaestat.php?funcao=listaAtributosMedidaVariavelXY",codigo_tipo_regiao=$i("i3geoCartoRegioesEditaveis").value,id_medida_variavel=$i("editarAtributosComboMedidas").value,temp=function(retorno){var atr=retorno.atributos,i=0,n=atr.dados.length,j=0,idunico="",nj=atr.aliascolunas.length,ins=""+'

Limite geográfico escolhido:

'+'

Nome: '+retorno.regiao.nomeregiao+'

'+'

Código: '+retorno.regiao.identificador_regiao+'

'+''+'

Atributos:

'+''+' ';$i("editarAtributosRegiao").innerHTML=ins;ins="";for(i=0;i

excluir

";for(j=0;j'+atr.aliascolunas[j]+':
'+'

'}}}$i("editarAtributosForm").innerHTML=ins;new YAHOO.widget.Button("editarAtributosAdicionar",{onclick:{fn:function(){var novoel=document.createElement("div"),ins="

";for(j=0;j'+atr.aliascolunas[j]+' - '+atr.descricao[j]+':
'+'

'}}ins+="
";novoel.innerHTML=ins;$i("editarAtributosForm").appendChild(novoel)}}});new YAHOO.widget.Button("editarAtributosSalvar",{onclick:{fn:function(){i3GEO.editorGM.editarAtributos.salva()}}})};cpJSON.call(p,"foo",temp,"&codigo_tipo_regiao="+codigo_tipo_regiao+"&id_medida_variavel="+id_medida_variavel+"&x="+i3GEO.editorGM.editarAtributos.x+"&y="+i3GEO.editorGM.editarAtributos.y)},excluir:function(id){if(i3GEO.login.verificaCookieLogin()===false){i3GEO.janela.tempoMsg("Você precisa fazer login para usar essa opção");return}var p=i3GEO.configura.locaplic+"/admin/php/metaestat.php?funcao=excluiAtributosMedidaVariavel",codigo_tipo_regiao=$i("i3geoCartoRegioesEditaveis").value,id_medida_variavel=$i("editarAtributosComboMedidas").value,identificador_regiao=$i("editarAtributosidentificador_regiao").value,temp=function(retorno){i3GEO.editorGM.editarAtributos.pegaDados();i3GEO.janela.fechaAguarde("aguardeSalvaAtributos")};i3GEO.janela.AGUARDEMODAL=true;i3GEO.janela.abreAguarde("aguardeSalvaAtributos","Salvando...");i3GEO.janela.AGUARDEMODAL=false;cpJSON.call(p,"foo",temp,"&codigo_tipo_regiao="+codigo_tipo_regiao+"&identificador_regiao="+identificador_regiao+"&id_medida_variavel="+id_medida_variavel+"&id="+id)},salva:function(){if(i3GEO.login.verificaCookieLogin()===false){i3GEO.janela.tempoMsg("Você precisa fazer login para usar essa opção");return}var container=$i("editarAtributosForm"),divsT=container.getElementsByTagName("div"),n=divsT.length,i=0,dv="",inputs="",codigo_tipo_regiao=$i("i3geoCartoRegioesEditaveis").value,id_medida_variavel=$i("editarAtributosComboMedidas").value,identificador_regiao=$i("editarAtributosidentificador_regiao").value,nj,j,colunas=[],colunasT=[],valores=[],valoresT=[],idsunicosT=[],p=i3GEO.configura.locaplic+"/admin/php/metaestat.php?funcao=salvaAtributosMedidaVariavel",re=new RegExp("idunico_","g"),temp=function(retorno){i3GEO.editorGM.editarAtributos.pegaDados();i3GEO.editorGM.atualizaCamadasMetaestat();i3GEO.janela.fechaAguarde("aguardeSalvaAtributos")};if(codigo_tipo_regiao==""){i3GEO.janela.tempoMsg("Problemas com o codigo da regiao");return}if(id_medida_variavel==""){i3GEO.janela.tempoMsg("Escolha uma medida");return}if(identificador_regiao==""){i3GEO.janela.tempoMsg("Problemas com o identificador da regiao");return}for(i=0;iAjuda ";i3GEO.janela.cria("400px","350px","","","",titulo,"editaAtributosAjuda",false,"hd",cabecalho,minimiza);$i("editaAtributosAjuda_corpo").style.backgroundColor="white";html+=""+""+""+""+""+""+""+""+""+""+""+""+""+"
Clique no mapa para traçar um polígono novo. Cada clique corresponde a um vértice do polígono. Para encerrar o traçado utilize um duplo clique. Após traçar um novo polígono pode-se selecioná-lo novamente e editar os vértices, se for necessário, ou mesmo apagar o polígono por completo. O novo polígono só será salvo por meio da opção específica para isso.
Utilize essa opção para capturar os vértices de um polígono existente. O resultado da captura é uma figura que pode ser editada, ou seja, os vértices podem ser modificados de posição ou mesmo removidos. Após editar, salve o novo polígono.
Após ativar essa opção clique no mapa sobre uma figura existente (que tenha sido capturada ou digtalizada). A figura passará então para o estado de 'selecionada' podendo ser utilizada por outras ferramentas de edição.
Remove da tela a figura que estiver selecionada. Essa operação não apaga o polígono do banco de dados, apenas remove do modo de edição.
Salva no banco de dados a figura que estiver selecionada. Essa opção altera apenas os atributos do limite geográfico, não afetando os valores armazenados em cada medida de variável.
Abre um formulário que permite alterar os valores de uma medida de variável relacionada a uma determinada região. Após abrir o formulário, clique no mapa sobre a região desejada, mas escolha a medida da variável primeiro. Os valores já existentes poderão então ser alterados ou podem ser adicionados novos.
";$i("editaAtributosAjuda_corpo").innerHTML=html}};google.maps.Marker.prototype.type='marker';google.maps.Polyline.prototype.type='polyline';google.maps.Polygon.prototype.type='polygon';google.maps.Rectangle.prototype.type='rectangle';google.maps.Circle.prototype.type='circle';(function(Wkt){Wkt.Wkt.prototype.isRectangle=false;Wkt.Wkt.prototype.construct={point:function(config,component){var c=component||this.components;config=config||{};config.position=new google.maps.LatLng(c[0].y,c[0].x);return new google.maps.Marker(config)},multipoint:function(config){var i,c,arr;c=this.components;config=config||{};arr=[];for(i=0;i1&&i>0){if(sign(obj.getPaths().getAt(i))>0&&sign(obj.getPaths().getAt(i-1))>0||sign(obj.getPaths().getAt(i))<0&&sign(obj.getPaths().getAt(i-1))<0&&!multiFlag){verts=[verts]}}if(i%2!==0){verts.reverse()}rings.push(verts)}response={type:(multiFlag)?'multipolygon':'polygon',components:rings};return response}if(obj.constructor===google.maps.Circle){var point=obj.getCenter();var radius=obj.getRadius();verts=[];var d2r=Math.PI/180; var r2d=180/Math.PI; radius=radius/1609; var earthsradius=3963;var num_seg=32;var rlat=(radius/earthsradius)*r2d;var rlng=rlat/Math.cos(point.lat()*d2r);for(var n=0;n<=num_seg;n++){var theta=Math.PI*(n/(num_seg/2));lng=point.lng()+(rlng*Math.cos(theta));lat=point.lat()+(rlat*Math.sin(theta));verts.push({x:lng,y:lat})}response={type:'polygon',components:[verts]};return response}if(obj.constructor===google.maps.LatLngBounds){tmp=obj;verts=[];verts.push({x:tmp.getSouthWest().lng(),y:tmp.getNorthEast().lat()});verts.push({x:tmp.getNorthEast().lng(),y:tmp.getNorthEast().lat()});verts.push({x:tmp.getNorthEast().lng(),y:tmp.getSouthWest().lat()});verts.push({x:tmp.getSouthWest().lng(),y:tmp.getSouthWest().lat()});verts.push({x:tmp.getSouthWest().lng(),y:tmp.getNorthEast().lat()});response={type:'polygon',isRectangle:true,components:[verts]};return response}if(obj.constructor===google.maps.Rectangle){tmp=obj.getBounds();verts=[];verts.push({x:tmp.getSouthWest().lng(),y:tmp.getNorthEast().lat()});verts.push({x:tmp.getNorthEast().lng(),y:tmp.getNorthEast().lat()});verts.push({x:tmp.getNorthEast().lng(),y:tmp.getSouthWest().lat()});verts.push({x:tmp.getSouthWest().lng(),y:tmp.getSouthWest().lat()});verts.push({x:tmp.getSouthWest().lng(),y:tmp.getNorthEast().lat()});response={type:'polygon',isRectangle:true,components:[verts]};return response}if(obj.constructor===google.maps.Data.Feature){return this.deconstruct.call(this,obj.getGeometry())}if(obj.constructor===google.maps.Data.Point){response={type:'point',components:[{x:obj.get().lng(),y:obj.get().lat()}]};return response}if(obj.constructor===google.maps.Data.LineString){verts=[];for(i=0;i" + ins + "", ""); }; - p = i3GEO.configura.locaplic + "/admin/php/metaestat.php?funcao=LISTATODOSATRIBUTOSMEDIDAVARIAVELXY", cpJSON.call( + p = i3GEO.configura.locaplic + "/classesphp/metaestat_controle.php?funcao=LISTATODOSATRIBUTOSMEDIDAVARIAVELXY", cpJSON.call( p, "foo", temp, diff --git a/ferramentas/metaestat/index.js b/ferramentas/metaestat/index.js index 5964dea..3a34e5d 100755 --- a/ferramentas/metaestat/index.js +++ b/ferramentas/metaestat/index.js @@ -1083,96 +1083,6 @@ i3GEOF.metaestat = { i3GEOF.metaestat.ID_MEDIDA_VARIAVEL = $i("i3geoCartoComboMedidaVariavelEditor").value; }, /** - * Calcula os intervalos de classe com base na tecnica de quartis - * Altera uma classificacao ja existente - * E necessario definir as cores das classes. Caso o usuario nao as tenha escolhido, e aberta a janela para escolha - * Executa admin/php/metaestat.php?funcao=calculaClassificacao&tipo=quartil - */ - quartis: function(){ - var id_medida_variavel = $i("i3geoCartoComboMedidaVariavelEditor").value, - id_classificacao = $i("i3geoCartoComboClassificacoesEditor").value, - cores = $i("listaColourRampEditor").value, - p = i3GEO.configura.locaplic+"/admin/php/metaestat.php?funcao=calculaClassificacao&tipo=quartil&cores="+cores+"&id_classificacao="+id_classificacao+"&id_medida_variavel="+id_medida_variavel+"&g_sid="+i3GEO.configura.sid, - temp = function(retorno){ - core_carregando("desativa"); - //fecha o editor - if(retorno == "erro"){ - alert("Não foi possível gerar as classes. Verifique se já existem dados para essa medida"); - } - else{ - YAHOO.i3GEO.janela.manager.find("i3geoCartoEditor").destroy(); - } - }; - if(cores == ""){ - i3GEO.janela.tempoMsg("Escolha as cores primeiro. Depois acione a opção de classificação novamente"); - $i("listaColourRampEditor").onchange = function(){i3GEOF.metaestat.editor.quartis();}; - i3GEO.util.abreColourRamp("","listaColourRampEditor",5); - return; - } - core_carregando("ativa"); - i3GEO.util.ajaxGet(p,temp); - }, - /** - * Calcula os intervalos de classe com base na tecnica de intervalos iguais - * Altera uma classificacao ja existente - * O usuario deve definir o menor e o maior valor - * E necessario definir as cores das classes. Caso o usuario nao as tenha escolhido, e aberta a janela para escolha - * Executa admin/php/metaestat.php?funcao=calculaClassificacao&tipo=intiguais5mm - */ - intervalosIguaisMM: function(){ - var id_medida_variavel = $i("i3geoCartoComboMedidaVariavelEditor").value, - id_classificacao = $i("i3geoCartoComboClassificacoesEditor").value, - cores = $i("listaColourRampEditor").value, - p = i3GEO.configura.locaplic+"/admin/php/metaestat.php?funcao=calculaClassificacao&tipo=intiguaismm" + - "&numintervalos="+$i("i3GEOFmetaestatEditorNumInt").value + - "&cores="+cores+"&id_classificacao="+id_classificacao+"&id_medida_variavel="+id_medida_variavel+ - "&min="+$i("i3GEOFmetaestatEditorVmin").value + - "&max="+$i("i3GEOFmetaestatEditorVmax").value + - "&g_sid="+i3GEO.configura.sid, - temp = function(retorno){ - core_carregando("desativa"); - YAHOO.i3GEO.janela.manager.find("i3geoCartoEditor").destroy(); - }; - if(cores == ""){ - alert("Escolha as cores primeiro"); - $i("listaColourRampEditor").onchange = function(){i3GEOF.metaestat.editor.intervalosIguaisMM();}; - i3GEO.util.abreColourRamp("","listaColourRampEditor",5); - return; - } - core_carregando("ativa"); - i3GEO.util.ajaxGet(p,temp); - }, - /** - * Calcula os intervalos de classe com base na tecnica de intervalos iguais - * Altera uma classificacao ja existente - * O menor e maior valor sao calculados com base nos valores da medida da variavel - * E necessario definir as cores das classes. Caso o usuario nao as tenha escolhido, e aberta a janela para escolha - * Executa admin/php/metaestat.php?funcao=calculaClassificacao&tipo=intiguais5mm - */ - intervalosIguais: function(){ - var id_medida_variavel = $i("i3geoCartoComboMedidaVariavelEditor").value, - id_classificacao = $i("i3geoCartoComboClassificacoesEditor").value, - cores = $i("listaColourRampEditor").value, - p = i3GEO.configura.locaplic+"/admin/php/metaestat.php?funcao=calculaClassificacao&tipo=intiguais&numintervalos="+$i("i3GEOFmetaestatEditorNumInt").value+"&cores="+cores+"&id_classificacao="+id_classificacao+"&id_medida_variavel="+id_medida_variavel+"&g_sid="+i3GEO.configura.sid, - temp = function(retorno){ - core_carregando("desativa"); - if(retorno == "erro"){ - alert("Não foi possível gerar as classes. Verifique se já existem dados para essa medida"); - } - else{ - YAHOO.i3GEO.janela.manager.find("i3geoCartoEditor").destroy(); - } - }; - if(cores == ""){ - alert("Escolha as cores primeiro"); - $i("listaColourRampEditor").onchange = function(){i3GEOF.metaestat.editor.intervalosIguais();}; - i3GEO.util.abreColourRamp("","listaColourRampEditor",5); - return; - } - core_carregando("ativa"); - i3GEO.util.ajaxGet(p,temp); - }, - /** * Ativa o botao de upload * Ao ser clicado, abre uma janela flutuante com as opcoes de download * @param id do elemento DOM utilizado para compor o botao @@ -2054,7 +1964,7 @@ i3GEOF.metaestat = { }, /** * Abre uma nova janela do navegador para download dos dados de uma medida de uma variavel - * Executa admin/php/metaestat.php?funcao=dadosMedidaVariavel que retorna os dados em CSV + * Executa ?funcao=dadosMedidaVariavel que retorna os dados em CSV */ downloadMedida: function(){ i3GEOF.metaestat.log("i3GEOF.metaestat.principal.downloadMedida()"); @@ -2063,7 +1973,7 @@ i3GEOF.metaestat = { return; } if(window.confirm("Confirma o download dos dados")){ - var p = i3GEO.configura.locaplic+"/admin/php/metaestat.php?funcao=dadosMedidaVariavel" + + var p = i3GEO.configura.locaplic+"/classesphp/metaestat_controle.php?funcao=dadosMedidaVariavel" + "&todasascolunas=1&formato=csv&id_medida_variavel="+$i("i3geoCartoComboMedidasVariavel").value; window.open(p); } diff --git a/ferramentas/metaestat/listamapas.js b/ferramentas/metaestat/listamapas.js index 4ebaac9..32bf947 100755 --- a/ferramentas/metaestat/listamapas.js +++ b/ferramentas/metaestat/listamapas.js @@ -70,8 +70,8 @@ i3GEOF.listamapas = { }, /** * Retorna o HTML com o conteudo da ferramenta - * Executa admin/php/metaestat.php?funcao=listaTemplatesMapa para obter os templates disponiveis para uso nos mapas - * Executa admin/php/metaestat.php?funcao=listaMapas para obter a lista de mapas + * Executa funcao=listaTemplatesMapa para obter os templates disponiveis para uso nos mapas + * Executa funcao=listaMapas para obter a lista de mapas * @param id do DIV que recebera o conteudo */ html: function(divid){ @@ -102,10 +102,10 @@ i3GEOF.listamapas = { } $i(divid).innerHTML = ins; }, - p = i3GEO.configura.locaplic+"/admin/php/metaestat.php?funcao=listaMapas"; + p = i3GEO.configura.locaplic+"/classesphp/metaestat_controle.php?funcao=listaMapas"; i3GEO.util.ajaxGet(p,listaMapas); }, - p = i3GEO.configura.locaplic+"/admin/php/metaestat.php?funcao=listaTemplatesMapa"; + p = i3GEO.configura.locaplic+"/classesphp/metaestat_controle.php?funcao=listaTemplatesMapa"; i3GEO.util.ajaxGet(p,listaTemplates); } }; diff --git a/ferramentas/navegapostgis/index.js b/ferramentas/navegapostgis/index.js index 1cbf5f2..0385ee8 100755 --- a/ferramentas/navegapostgis/index.js +++ b/ferramentas/navegapostgis/index.js @@ -140,7 +140,7 @@ i3GEOF.navegapostgis = { i3GEOF.navegapostgis.montaArvore(i3GEOF.navegapostgis.conexao); } }, - p = i3GEO.configura.locaplic+"/admin/php/metaestat.php?funcao=listaConexao&formato=json", + p = i3GEO.configura.locaplic+"/classesphp/metaestat_controle.php?funcao=listaConexao&formato=json", botao = $i("i3GEOFnavegapostgisAplicar"); if(botao){ botao.style.position = "absolute"; @@ -291,7 +291,7 @@ i3GEOF.navegapostgis = { i3GEOF.navegapostgis.ARVORE.draw(); }, - p = i3GEO.configura.locaplic+"/admin/php/metaestat.php?funcao=esquemasConexao&formato=json&codigo_estat_conexao="+conexao; + p = i3GEO.configura.locaplic+"/classesphp/metaestat_controle?funcao=esquemasConexao&formato=json&codigo_estat_conexao="+conexao; cpJSON.call(p,"foo",funcao); }, listaTabelas: function(node){ @@ -318,7 +318,7 @@ i3GEOF.navegapostgis = { } node.loadComplete(); }, - p = i3GEO.configura.locaplic+"/admin/php/metaestat.php?funcao=tabelasEsquema&formato=json&nome_esquema="+esquema+"&codigo_estat_conexao="+conexao; + p = i3GEO.configura.locaplic+"/classesphp/metaestat_controle.php?funcao=tabelasEsquema&formato=json&nome_esquema="+esquema+"&codigo_estat_conexao="+conexao; i3GEOF.navegapostgis.esquema = esquema; cpJSON.call(p,"foo",funcao); }, @@ -370,7 +370,7 @@ i3GEOF.navegapostgis = { $i("i3GEOFnavegapostgisColunas").innerHTML = ins; i3GEOF.navegapostgis.geraSql(); }, - p = i3GEO.configura.locaplic+"/admin/php/metaestat.php?funcao=descreveColunasTabela&formato=json&nome_tabela="+tabela+"&nome_esquema="+i3GEOF.navegapostgis.esquema+"&codigo_estat_conexao="+i3GEOF.navegapostgis.conexao; + p = i3GEO.configura.locaplic+"/classesphp/metaestat_controle.php?funcao=descreveColunasTabela&formato=json&nome_tabela="+tabela+"&nome_esquema="+i3GEOF.navegapostgis.esquema+"&codigo_estat_conexao="+i3GEOF.navegapostgis.conexao; cpJSON.call(p,"foo",funcao); }, geraSql: function(){ diff --git a/js/caixaDeFerramentas.js b/js/caixaDeFerramentas.js index 68a64ac..2431be0 100755 --- a/js/caixaDeFerramentas.js +++ b/js/caixaDeFerramentas.js @@ -88,6 +88,9 @@ i3GEO.caixaDeFerramentas = { f.idOndeFolder.html(""); f.idOndeLinks.html(""); for (i = 0; i < n; i += 1) { + if(menu[i].Interface && menu[i].Interface != i3GEO.Interface.ATUAL){ + continue; + } if(subs[menu[i].id].length > 0){ t = Mustache.to_html( i3GEO.template.ferramentasFolder, @@ -122,6 +125,9 @@ i3GEO.caixaDeFerramentas = { f.idOndeFolder.html(""); f.idOndeLinks.html(""); for (i = 0; i < n; i += 1) { + if(menu[i].Interface && menu[i].Interface != i3GEO.Interface.ATUAL){ + continue; + } datan = {"nivel":2,"nome":menu[i].text,"id":menu[i].id,"n0": data.n0, "n1":i, "n2": "", "n3": ""}; if(menu[i].url){ t = Mustache.to_html( @@ -170,6 +176,9 @@ i3GEO.caixaDeFerramentas = { f.idOndeFolder.html(""); f.idOndeLinks.html(""); for (i = 0; i < n; i += 1) { + if(menu[i].Interface && menu[i].Interface != i3GEO.Interface.ATUAL){ + continue; + } datan = {"nivel":3,"nome":menu[i].text,"id":menu[i].id,"n0": data.n0, "n1":data.n1, "n2": i, "n3": ""}; if(menu[i].url){ t = Mustache.to_html( diff --git a/js/compactados/ajuda_compacto.js b/js/compactados/ajuda_compacto.js old mode 100755 new mode 100644 index 8e4086f..8e4086f --- a/js/compactados/ajuda_compacto.js +++ b/js/compactados/ajuda_compacto.js diff --git a/js/compactados/analise_compacto.js b/js/compactados/analise_compacto.js old mode 100755 new mode 100644 index 91868c6..91868c6 --- a/js/compactados/analise_compacto.js +++ b/js/compactados/analise_compacto.js diff --git a/js/compactados/arvoredecamadas_compacto.js b/js/compactados/arvoredecamadas_compacto.js old mode 100755 new mode 100644 index b6ef2c7..b6ef2c7 --- a/js/compactados/arvoredecamadas_compacto.js +++ b/js/compactados/arvoredecamadas_compacto.js diff --git a/js/compactados/arvoredetemas_compacto.js b/js/compactados/arvoredetemas_compacto.js old mode 100755 new mode 100644 index 192e851..192e851 --- a/js/compactados/arvoredetemas_compacto.js +++ b/js/compactados/arvoredetemas_compacto.js diff --git a/js/compactados/base64_compacto.js b/js/compactados/base64_compacto.js old mode 100755 new mode 100644 index 9ff1f1a..9ff1f1a --- a/js/compactados/base64_compacto.js +++ b/js/compactados/base64_compacto.js diff --git a/js/compactados/busca_compacto.js b/js/compactados/busca_compacto.js old mode 100755 new mode 100644 index 380c4a5..380c4a5 --- a/js/compactados/busca_compacto.js +++ b/js/compactados/busca_compacto.js diff --git a/js/compactados/caixaDeFerramentas_compacto.js b/js/compactados/caixaDeFerramentas_compacto.js old mode 100755 new mode 100644 index 33f12c4..029118a --- a/js/compactados/caixaDeFerramentas_compacto.js +++ b/js/compactados/caixaDeFerramentas_compacto.js @@ -1 +1 @@ -if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.caixaDeFerramentas={MIGALHA:[],config:{"idOndeFolder":"listaFerramentas","idOndeLinks":"listaFerramentasLinks","idOndeMigalha":"migalhaFerramentas","templateFolder":"templates/ferramentasFolder.html","templateMigalha":"templates/ferramentasMigalha.html","templateLinks":"templates/ferramentasLink.html"},carregaTemplates:function(){var t1=i3GEO.caixaDeFerramentas.config.templateFolder,t2=i3GEO.caixaDeFerramentas.config.templateLinks,t3=i3GEO.caixaDeFerramentas.config.templateMigalha;$.when($.get(t1),$.get(t2),$.get(t3)).done(function(r1,r2,r3){i3GEO.template.ferramentasFolder=r1[0];i3GEO.template.ferramentasLinks=r2[0];i3GEO.template.ferramentasMigalha=r3[0];i3GEO.caixaDeFerramentas.inicia()}).fail(function(){i3GEO.janela.closeMsg($trad("erroTpl"));return})},aguarde:function(){},inicia:function(config){if(config){$.each(config,function(i,v){i3GEO.caixaDeFerramentas.config[i]=v})}i3GEO.caixaDeFerramentas.aguarde();if(!i3GEO.template.ferramentasFolder||!i3GEO.template.ferramentasLinks||!i3GEO.template.ferramentasMigalha){i3GEO.caixaDeFerramentas.carregaTemplates();return}else{i3GEO.caixaDeFerramentas.nivel0()}},migalha:function(data){var f=i3GEO.caixaDeFerramentas.config;var t=Mustache.to_html(i3GEO.template.ferramentasMigalha,{"nome":data.nome});$("#"+f.idOndeMigalha).data(data).html(t).click(function(event){var f=i3GEO.caixaDeFerramentas.config;event.stopImmediatePropagation();$("#"+f.idOndeMigalha).off("click");var data=$(this).data();if((data.nivel-1)==0){f.idOndeFolder.fadeOut("fast",function(){i3GEO.caixaDeFerramentas.nivel0();i3GEO.caixaDeFerramentas.config.idOndeFolder.show()})}if((data.nivel-1)==1){f.idOndeFolder.fadeOut("fast",function(){i3GEO.caixaDeFerramentas.nivel1(data);i3GEO.caixaDeFerramentas.config.idOndeFolder.show()})}if((data.nivel-1)==2){f.idOndeFolder.fadeOut("fast",function(){i3GEO.caixaDeFerramentas.nivel2(data);i3GEO.caixaDeFerramentas.config.idOndeFolder.show()})}})},nivel0:function(){var confm=i3GEO.listaDeFerramentas,subs=i3GEO.listaDeFerramentas.submenus,menu=confm.menu,n=menu.length,f=i3GEO.caixaDeFerramentas.config,i,t,data;$("#"+f.idOndeMigalha).html(" ");f.idOndeFolder.html("");f.idOndeLinks.html("");for(i=0;i0){t=Mustache.to_html(i3GEO.template.ferramentasFolder,{"nome":menu[i].nome,"descricao":menu[i].descricao});t=$(t);data={"nivel":1,"nome":menu[i].nome,"id":i,"n0":i,"n1":"","n2":"","n3":""};t.find("a").data(data).click(function(){$(this).find("a").off("click");var data=$(this).data();i3GEO.caixaDeFerramentas.config.idOndeFolder.fadeOut("fast",function(){i3GEO.caixaDeFerramentas.nivel1(data);i3GEO.caixaDeFerramentas.config.idOndeFolder.show()})});i3GEO.caixaDeFerramentas.config.idOndeFolder.append(t)}}},nivel1:function(data){var confm=i3GEO.listaDeFerramentas,menu=confm.submenus[confm.menu[data.n0].id],n=menu.length,f=i3GEO.caixaDeFerramentas.config,i,t,datan;f.idOndeFolder.html("");f.idOndeLinks.html("");for(i=0;i0){t=Mustache.to_html(i3GEO.template.ferramentasFolder,{"nome":menu[i].nome,"descricao":menu[i].descricao});t=$(t);data={"nivel":1,"nome":menu[i].nome,"id":i,"n0":i,"n1":"","n2":"","n3":""};t.find("a").data(data).click(function(){$(this).find("a").off("click");var data=$(this).data();i3GEO.caixaDeFerramentas.config.idOndeFolder.fadeOut("fast",function(){i3GEO.caixaDeFerramentas.nivel1(data);i3GEO.caixaDeFerramentas.config.idOndeFolder.show()})});i3GEO.caixaDeFerramentas.config.idOndeFolder.append(t)}}},nivel1:function(data){var confm=i3GEO.listaDeFerramentas,menu=confm.submenus[confm.menu[data.n0].id],n=menu.length,f=i3GEO.caixaDeFerramentas.config,i,t,datan;f.idOndeFolder.html("");f.idOndeLinks.html("");for(i=0;iEditor","i3GEOjanelaEditor",false,"hd",cabecalho,minimiza);$i("i3GEOjanelaEditor_corpo").style.backgroundColor="white";i3GEO.editorGM.inicia("i3GEOjanelaEditor_corpo");fecha=function(){var temp=window.confirm($trad("x94"));if(i3GEO.eventos){i3GEO.eventos.cliquePerm.ativa()}if(temp===true){i3GEO.desenho.googlemaps.destroyFeatures(i3GEO.desenho.googlemaps.shapes)}};$(janela[0].close).click(fecha)};if(!i3GEO.editorGM){i3GEO.util.scriptTag(i3GEO.configura.locaplic+"/ferramentas/editorgm/editorgm_compacto.js",temp,"editorgm.js",true)}else{temp.call()}}},openlayers:{inicia:function(idjanela){if(!i3GEO.editorOL){i3GEO.util.scriptTag(i3GEO.configura.locaplic+"/ferramentas/editorol/editorol.js","i3GEO.editor.openlayers.ativaPainel('"+idjanela+"')","editorol.js",true)}else{if(!i3GEO.desenho.layergrafico){i3GEO.desenho.openlayers.criaLayerGrafico();i3GEO.editorOL.mapa.addLayers([i3GEO.desenho.layergrafico])}if(!i3GEO.editorOL.backup){i3GEO.editorOL.backup=new ol.layer.Vector({source:new ol.source.Vector({features:new ol.Collection(),useSpatialIndex:false,name:"Backup"}),visible:false});i3GEO.editorOL.backup.setMap(i3geoOL);i3GEO.editorOL.backup.getFeatures=function(){return i3GEO.editorOL.backup.getSource().getFeatures()}}i3GEO.editorOL.criaBotoes(i3GEO.editorOL.botoes)}},criaJanela:function(){if($i("i3GEOjanelaEditor")){return"i3GEOjanelaEditor"}var janela,divid,titulo,cabecalho,minimiza;cabecalho=function(){};minimiza=function(){i3GEO.janela.minimiza("i3GEOjanelaEditor")};titulo="
"+$trad("u29")+"
";janela=i3GEO.janela.cria("300px","200px","","","",titulo,"i3GEOjanelaEditor",false,"hd",cabecalho,minimiza);divid=janela[2].id;$i("i3GEOjanelaEditor_corpo").style.backgroundColor="white";$i("i3GEOjanelaEditor_corpo").style.textAlign="left";return divid},ativaPainel:function(idjanela){i3GEO.editorOL.fundo="";i3GEO.editorOL.mapa=i3geoOL;i3GEO.editorOL.maxext="";i3GEO.editorOL.controles=[];if(!i3GEO.desenho.layergrafico){i3GEO.desenho.openlayers.criaLayerGrafico()}if(idjanela){i3GEO.editorOL.criaBotoes(i3GEO.editor.botoes)}}}}; \ No newline at end of file +if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.editor={botoes:{'zoomin':false,'zoomout':false,'pan':false,'zoombox':false,'zoomtot':false,'legenda':false,'distancia':false,'area':false,'identifica':false,'linha':true,'ponto':true,'poligono':true,'texto':true,'corta':true,'edita':true,'listag':true,'selecao':true,'selecaotudo':true,'apaga':true,'procura':false,'propriedades':true,'salva':true,'ajuda':true,'fecha':true,'tools':true,'undo':true,'frente':true},inicia:function(){i3GEO.eventos.cliquePerm.desativa();i3GEO.editor[i3GEO.Interface.ATUAL].inicia("janelaEditorVetorial")},googlemaps:{inicia:function(idjanela){}},openlayers:{inicia:function(idjanela){if(!i3GEO.editorOL){i3GEO.util.scriptTag(i3GEO.configura.locaplic+"/ferramentas/editorol/editorol.js","i3GEO.editor.openlayers.ativaPainel('"+idjanela+"')","editorol.js",true)}else{if(!i3GEO.desenho.layergrafico){i3GEO.desenho.openlayers.criaLayerGrafico();i3GEO.editorOL.mapa.addLayers([i3GEO.desenho.layergrafico])}if(!i3GEO.editorOL.backup){i3GEO.editorOL.backup=new ol.layer.Vector({source:new ol.source.Vector({features:new ol.Collection(),useSpatialIndex:false,name:"Backup"}),visible:false});i3GEO.editorOL.backup.setMap(i3geoOL);i3GEO.editorOL.backup.getFeatures=function(){return i3GEO.editorOL.backup.getSource().getFeatures()}}i3GEO.editorOL.criaBotoes(i3GEO.editorOL.botoes)}},criaJanela:function(){if($i("i3GEOjanelaEditor")){return"i3GEOjanelaEditor"}var janela,divid,titulo,cabecalho,minimiza;cabecalho=function(){};minimiza=function(){i3GEO.janela.minimiza("i3GEOjanelaEditor")};titulo="
"+$trad("u29")+"
";janela=i3GEO.janela.cria("300px","200px","","","",titulo,"i3GEOjanelaEditor",false,"hd",cabecalho,minimiza);divid=janela[2].id;$i("i3GEOjanelaEditor_corpo").style.backgroundColor="white";$i("i3GEOjanelaEditor_corpo").style.textAlign="left";return divid},ativaPainel:function(idjanela){i3GEO.editorOL.fundo="";i3GEO.editorOL.mapa=i3geoOL;i3GEO.editorOL.maxext="";i3GEO.editorOL.controles=[];if(!i3GEO.desenho.layergrafico){i3GEO.desenho.openlayers.criaLayerGrafico()}if(idjanela){i3GEO.editorOL.criaBotoes(i3GEO.editor.botoes)}}}}; \ No newline at end of file diff --git a/js/compactados/eventos_compacto.js b/js/compactados/eventos_compacto.js old mode 100755 new mode 100644 index cda2a72..cda2a72 --- a/js/compactados/eventos_compacto.js +++ b/js/compactados/eventos_compacto.js diff --git a/js/compactados/guias_compacto.js b/js/compactados/guias_compacto.js old mode 100755 new mode 100644 index d0c1361..d0c1361 --- a/js/compactados/guias_compacto.js +++ b/js/compactados/guias_compacto.js diff --git a/js/compactados/idioma_compacto.js b/js/compactados/idioma_compacto.js old mode 100755 new mode 100644 index 50f94a7..50f94a7 --- a/js/compactados/idioma_compacto.js +++ b/js/compactados/idioma_compacto.js diff --git a/js/compactados/ini_i3geo_compacto.js b/js/compactados/ini_i3geo_compacto.js old mode 100755 new mode 100644 index 4b24671..4b24671 --- a/js/compactados/ini_i3geo_compacto.js +++ b/js/compactados/ini_i3geo_compacto.js diff --git a/js/compactados/interface_compacto.js b/js/compactados/interface_compacto.js old mode 100755 new mode 100644 index 71ace7d..71ace7d --- a/js/compactados/interface_compacto.js +++ b/js/compactados/interface_compacto.js diff --git a/js/compactados/janela_compacto.js b/js/compactados/janela_compacto.js old mode 100755 new mode 100644 index 6235310..6235310 --- a/js/compactados/janela_compacto.js +++ b/js/compactados/janela_compacto.js diff --git a/js/compactados/legenda_compacto.js b/js/compactados/legenda_compacto.js old mode 100755 new mode 100644 index 864b4a9..864b4a9 --- a/js/compactados/legenda_compacto.js +++ b/js/compactados/legenda_compacto.js diff --git a/js/compactados/login_compacto.js b/js/compactados/login_compacto.js old mode 100755 new mode 100644 index 0ab1559..0ab1559 --- a/js/compactados/login_compacto.js +++ b/js/compactados/login_compacto.js diff --git a/js/compactados/mapa_compacto.js b/js/compactados/mapa_compacto.js old mode 100755 new mode 100644 index 3e572c5..3e572c5 --- a/js/compactados/mapa_compacto.js +++ b/js/compactados/mapa_compacto.js diff --git a/js/compactados/maparef_compacto.js b/js/compactados/maparef_compacto.js old mode 100755 new mode 100644 index bbb4533..bbb4533 --- a/js/compactados/maparef_compacto.js +++ b/js/compactados/maparef_compacto.js diff --git a/js/compactados/marcador_compacto.js b/js/compactados/marcador_compacto.js old mode 100755 new mode 100644 index 06123bb..06123bb --- a/js/compactados/marcador_compacto.js +++ b/js/compactados/marcador_compacto.js diff --git a/js/compactados/mustache.js b/js/compactados/mustache.js old mode 100755 new mode 100644 index 7473a81..7473a81 --- a/js/compactados/mustache.js +++ b/js/compactados/mustache.js diff --git a/js/compactados/navega_compacto.js b/js/compactados/navega_compacto.js old mode 100755 new mode 100644 index 222b2f9..222b2f9 --- a/js/compactados/navega_compacto.js +++ b/js/compactados/navega_compacto.js diff --git a/js/compactados/php_compacto.js b/js/compactados/php_compacto.js old mode 100755 new mode 100644 index 58ebcf5..58ebcf5 --- a/js/compactados/php_compacto.js +++ b/js/compactados/php_compacto.js diff --git a/js/compactados/plugini3geo_compacto.js b/js/compactados/plugini3geo_compacto.js old mode 100755 new mode 100644 index 85e2916..85e2916 --- a/js/compactados/plugini3geo_compacto.js +++ b/js/compactados/plugini3geo_compacto.js diff --git a/js/compactados/proj4js.js b/js/compactados/proj4js.js old mode 100755 new mode 100644 index 9bdc4ce..9bdc4ce --- a/js/compactados/proj4js.js +++ b/js/compactados/proj4js.js diff --git a/js/compactados/social_compacto.js b/js/compactados/social_compacto.js old mode 100755 new mode 100644 index 8aa672a..8aa672a --- a/js/compactados/social_compacto.js +++ b/js/compactados/social_compacto.js diff --git a/js/compactados/tema_compacto.js b/js/compactados/tema_compacto.js old mode 100755 new mode 100644 index 464e123..464e123 --- a/js/compactados/tema_compacto.js +++ b/js/compactados/tema_compacto.js diff --git a/js/compactados/util_compacto.js b/js/compactados/util_compacto.js old mode 100755 new mode 100644 index faeb51f..faeb51f --- a/js/compactados/util_compacto.js +++ b/js/compactados/util_compacto.js diff --git a/js/compactados/wicket.js b/js/compactados/wicket.js old mode 100755 new mode 100644 index e0e5f3b..e0e5f3b --- a/js/compactados/wicket.js +++ b/js/compactados/wicket.js diff --git a/js/editor.js b/js/editor.js index e9fe899..4366083 100755 --- a/js/editor.js +++ b/js/editor.js @@ -43,54 +43,9 @@ i3GEO.editor = }, // carrega as opcoes de edicao se a interface for do googlemaps googlemaps : { + //removido em funcao da politica do google de impedir engenharia reversa em sua base de dados inicia : function(idjanela) { - var temp = - function() { - var cabecalho, minimiza, fecha, janela = YAHOO.i3GEO.janela.manager.find("i3GEOjanelaEditor"); - if (janela) { - janela.destroy(); - } - cabecalho = function() { - }; - minimiza = function() { - i3GEO.janela.minimiza("i3GEOjanelaEditor"); - }; - janela = - i3GEO.janela.cria( - "350px", - "100px", - "", - "", - "", - "
Editor
", - "i3GEOjanelaEditor", - false, - "hd", - cabecalho, - minimiza); - $i("i3GEOjanelaEditor_corpo").style.backgroundColor = "white"; - i3GEO.editorGM.inicia("i3GEOjanelaEditor_corpo"); - fecha = function() { - var temp = window.confirm($trad("x94")); - if (i3GEO.eventos) { - i3GEO.eventos.cliquePerm.ativa(); - } - if (temp === true) { - i3GEO.desenho.googlemaps.destroyFeatures(i3GEO.desenho.googlemaps.shapes); - } - }; - $( janela[0].close ).click(fecha); - }; - // @TODO incluir o js compactado ao inves do original - if (!i3GEO.editorGM) { - i3GEO.util.scriptTag( - i3GEO.configura.locaplic + "/ferramentas/editorgm/editorgm_compacto.js", - temp, - "editorgm.js", - true); - } else { - temp.call(); - } + } }, openlayers : { diff --git a/js/i3geo_tudo_compacto7.js b/js/i3geo_tudo_compacto7.js index 0464fb2..ba3a223 100755 --- a/js/i3geo_tudo_compacto7.js +++ b/js/i3geo_tudo_compacto7.js @@ -269,7 +269,7 @@ if(typeof(i3GEO)==='undefined'){var i3GEO={}}var objposicaocursor={ddx:"",ddy:"" if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.arvoreDeTemas={IDSMENUS:[],buscaTema2:function(palavra){if(palavra===""){return}var busca,root,nodePalavra="";resultadoProcurar=function(retorno){var ig,montaTexto=function(ngSgrupo){var tempn,ngTema,tempng,mostra,d,lk="",st,sg;tempn=ngSgrupo.length;for(sg=0;sg fonte"}if(ngSgrupo[sg].subgrupo){d+=" ("+(ngSgrupo[sg].subgrupo)+") "+lk+""}else{d+=" ("+(ngSgrupo[sg].grupo)+")"+lk+""}}conta+=1}}}};busca=function(){i3GEO.php.procurartemas2(resultadoProcurar,i3GEO.util.removeAcentos(palavra))}},comboMenus:function(locaplic,funcaoOnchange,idDestino,idCombo,largura,altura){i3GEO.configura.locaplic=locaplic;var combo=function(retorno){var ob,ins,ig;ob=retorno.data;ins="";return retorno.data};i3GEO.php.pegalistademenus(combo)},comboGruposMenu:function(locaplic,funcaoOnchange,idDestino,idCombo,largura,altura,id_menu){i3GEO.configura.locaplic=locaplic;i3GEO.arvoreDeTemas.temasRaizGrupos=[];var combo=function(retorno){var ins,ig,obGrupos=retorno.data;ins=""};i3GEO.php.pegalistadegrupos(combo,id_menu,"nao")},comboSubGruposMenu:function(locaplic,funcaoOnchange,idDestino,idCombo,idGrupo,largura,altura){if(idGrupo!==""){var combo=function(retorno){var ins,sg,ig;ins=""};i3GEO.php.pegalistadeSubgrupos(combo,"",idGrupo)}},comboTemasMenu:function(locaplic,funcaoOnchange,idDestino,idCombo,idGrupo,idSubGrupo,largura,altura,id_menu,temas){var combo=function(retorno){var ins,sg,ig;if(idSubGrupo!=""){ins=""}if(typeof(retorno.data)!=='undefined'){retorno=retorno.data.temas}sg=retorno.length;for(ig=0;ig"+retorno[ig].nome+""}$i(idDestino).innerHTML=ins+""};if(typeof(temas)==='undefined'||temas===""){i3GEO.php.pegalistadetemas(combo,id_menu,idGrupo,idSubGrupo)}else{combo(temas)}},dialogo:{uploadarquivo:function(){i3GEO.util.scriptTag(i3GEO.configura.locaplic+"/ferramentas/uploadarquivos/dependencias.php","i3GEOF.uploadarquivos.iniciaJanelaFlutuante()","i3GEOF.uploadarquivos_script")},conectaservico:function(){i3GEO.util.scriptTag(i3GEO.configura.locaplic+"/ferramentas/conectarservicos/dependencias.php","i3GEOF.conectarservicos.iniciaJanelaFlutuante()","i3GEOF.conectarservicos_script")},carouselTemas:function(){i3GEO.util.scriptTag(i3GEO.configura.locaplic+"/ferramentas/carouseltemas/index.js","i3GEOF.carouseltemas.criaJanelaFlutuante()","i3GEOF.carouseltemas_script")},buscaInde:function(){i3GEO.util.scriptTag(i3GEO.configura.locaplic+"/ferramentas/buscainde/dependencias.php","i3GEOF.buscainde.iniciaJanelaFlutuante()","i3GEOF.buscainde_script")},nuvemTags:function(){i3GEO.util.scriptTag(i3GEO.configura.locaplic+"/ferramentas/nuvemtags/dependencias.php","i3GEOF.nuvemtags.iniciaJanelaFlutuante()","i3GEOF.nuvemtags_script")},nuvemTagsFlash:function(){i3GEO.janela.cria("550px","350px",i3GEO.configura.locaplic+"/ferramentas/nuvemtagsflash/index.htm","","",$trad("x44"))},navegacaoDir:function(){i3GEO.janela.cria("550px","350px",i3GEO.configura.locaplic+"/ferramentas/navegacaodir/index.htm","","","
"+$trad("x45")+"
")},importarwmc:function(){i3GEO.util.scriptTag(i3GEO.configura.locaplic+"/ferramentas/importarwmc/dependencias.php","i3GEOF.importarwmc.iniciaJanelaFlutuante()","i3GEOF.importarwmc_script")},conectarwfs:function(){i3GEO.janela.cria("400px","300px",i3GEO.configura.locaplic+"/ferramentas/conectarwfs/index.htm","","","
WFS
")},downloadbase:function(){window.open(i3GEO.configura.locaplic+"/datadownload.htm")}}}; // //compactados/editor_compacto.js -if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.editor={botoes:{'zoomin':false,'zoomout':false,'pan':false,'zoombox':false,'zoomtot':false,'legenda':false,'distancia':false,'area':false,'identifica':false,'linha':true,'ponto':true,'poligono':true,'texto':true,'corta':true,'edita':true,'listag':true,'selecao':true,'selecaotudo':true,'apaga':true,'procura':false,'propriedades':true,'salva':true,'ajuda':true,'fecha':true,'tools':true,'undo':true,'frente':true},inicia:function(){i3GEO.eventos.cliquePerm.desativa();i3GEO.editor[i3GEO.Interface.ATUAL].inicia("janelaEditorVetorial")},googlemaps:{inicia:function(idjanela){var temp=function(){var cabecalho,minimiza,fecha,janela=YAHOO.i3GEO.janela.manager.find("i3GEOjanelaEditor");if(janela){janela.destroy()}cabecalho=function(){};minimiza=function(){i3GEO.janela.minimiza("i3GEOjanelaEditor")};janela=i3GEO.janela.cria("350px","100px","","","","
Editor
","i3GEOjanelaEditor",false,"hd",cabecalho,minimiza);$i("i3GEOjanelaEditor_corpo").style.backgroundColor="white";i3GEO.editorGM.inicia("i3GEOjanelaEditor_corpo");fecha=function(){var temp=window.confirm($trad("x94"));if(i3GEO.eventos){i3GEO.eventos.cliquePerm.ativa()}if(temp===true){i3GEO.desenho.googlemaps.destroyFeatures(i3GEO.desenho.googlemaps.shapes)}};$(janela[0].close).click(fecha)};if(!i3GEO.editorGM){i3GEO.util.scriptTag(i3GEO.configura.locaplic+"/ferramentas/editorgm/editorgm_compacto.js",temp,"editorgm.js",true)}else{temp.call()}}},openlayers:{inicia:function(idjanela){if(!i3GEO.editorOL){i3GEO.util.scriptTag(i3GEO.configura.locaplic+"/ferramentas/editorol/editorol.js","i3GEO.editor.openlayers.ativaPainel('"+idjanela+"')","editorol.js",true)}else{if(!i3GEO.desenho.layergrafico){i3GEO.desenho.openlayers.criaLayerGrafico();i3GEO.editorOL.mapa.addLayers([i3GEO.desenho.layergrafico])}if(!i3GEO.editorOL.backup){i3GEO.editorOL.backup=new ol.layer.Vector({source:new ol.source.Vector({features:new ol.Collection(),useSpatialIndex:false,name:"Backup"}),visible:false});i3GEO.editorOL.backup.setMap(i3geoOL);i3GEO.editorOL.backup.getFeatures=function(){return i3GEO.editorOL.backup.getSource().getFeatures()}}i3GEO.editorOL.criaBotoes(i3GEO.editorOL.botoes)}},criaJanela:function(){if($i("i3GEOjanelaEditor")){return"i3GEOjanelaEditor"}var janela,divid,titulo,cabecalho,minimiza;cabecalho=function(){};minimiza=function(){i3GEO.janela.minimiza("i3GEOjanelaEditor")};titulo="
"+$trad("u29")+"
";janela=i3GEO.janela.cria("300px","200px","","","",titulo,"i3GEOjanelaEditor",false,"hd",cabecalho,minimiza);divid=janela[2].id;$i("i3GEOjanelaEditor_corpo").style.backgroundColor="white";$i("i3GEOjanelaEditor_corpo").style.textAlign="left";return divid},ativaPainel:function(idjanela){i3GEO.editorOL.fundo="";i3GEO.editorOL.mapa=i3geoOL;i3GEO.editorOL.maxext="";i3GEO.editorOL.controles=[];if(!i3GEO.desenho.layergrafico){i3GEO.desenho.openlayers.criaLayerGrafico()}if(idjanela){i3GEO.editorOL.criaBotoes(i3GEO.editor.botoes)}}}}; +if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.editor={botoes:{'zoomin':false,'zoomout':false,'pan':false,'zoombox':false,'zoomtot':false,'legenda':false,'distancia':false,'area':false,'identifica':false,'linha':true,'ponto':true,'poligono':true,'texto':true,'corta':true,'edita':true,'listag':true,'selecao':true,'selecaotudo':true,'apaga':true,'procura':false,'propriedades':true,'salva':true,'ajuda':true,'fecha':true,'tools':true,'undo':true,'frente':true},inicia:function(){i3GEO.eventos.cliquePerm.desativa();i3GEO.editor[i3GEO.Interface.ATUAL].inicia("janelaEditorVetorial")},googlemaps:{inicia:function(idjanela){}},openlayers:{inicia:function(idjanela){if(!i3GEO.editorOL){i3GEO.util.scriptTag(i3GEO.configura.locaplic+"/ferramentas/editorol/editorol.js","i3GEO.editor.openlayers.ativaPainel('"+idjanela+"')","editorol.js",true)}else{if(!i3GEO.desenho.layergrafico){i3GEO.desenho.openlayers.criaLayerGrafico();i3GEO.editorOL.mapa.addLayers([i3GEO.desenho.layergrafico])}if(!i3GEO.editorOL.backup){i3GEO.editorOL.backup=new ol.layer.Vector({source:new ol.source.Vector({features:new ol.Collection(),useSpatialIndex:false,name:"Backup"}),visible:false});i3GEO.editorOL.backup.setMap(i3geoOL);i3GEO.editorOL.backup.getFeatures=function(){return i3GEO.editorOL.backup.getSource().getFeatures()}}i3GEO.editorOL.criaBotoes(i3GEO.editorOL.botoes)}},criaJanela:function(){if($i("i3GEOjanelaEditor")){return"i3GEOjanelaEditor"}var janela,divid,titulo,cabecalho,minimiza;cabecalho=function(){};minimiza=function(){i3GEO.janela.minimiza("i3GEOjanelaEditor")};titulo="
"+$trad("u29")+"
";janela=i3GEO.janela.cria("300px","200px","","","",titulo,"i3GEOjanelaEditor",false,"hd",cabecalho,minimiza);divid=janela[2].id;$i("i3GEOjanelaEditor_corpo").style.backgroundColor="white";$i("i3GEOjanelaEditor_corpo").style.textAlign="left";return divid},ativaPainel:function(idjanela){i3GEO.editorOL.fundo="";i3GEO.editorOL.mapa=i3geoOL;i3GEO.editorOL.maxext="";i3GEO.editorOL.controles=[];if(!i3GEO.desenho.layergrafico){i3GEO.desenho.openlayers.criaLayerGrafico()}if(idjanela){i3GEO.editorOL.criaBotoes(i3GEO.editor.botoes)}}}}; // //compactados/coordenadas_compacto.js if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.coordenadas={padrao:"geoProj",defOrigem:"+proj=longlat +ellps=GRS67 +no_defs",config:{"geoProj":{idhtml:"localizarxy",tipo:"geo",titulo:"Geo",ativo:true,defepsg:""},"dd":{idhtml:"localizarxy",tipo:"metrica",titulo:"Déc. de grau",ativo:true,defepsg:""},"geohash":{idhtml:"localizarxy",tipo:"codigo",tipoCodigo:"geohash",titulo:"GeoHash",ativo:true},"policonicaSad69":{idhtml:"localizarxy",tipo:"metrica",titulo:"Polic SAD-69",ativo:true,defepsg:"+proj=poly +lat_0=0 +lon_0=-54 +x_0=5000000 +y_0=10000000 +ellps=aust_SA +units=m +no_defs"},"utmSad69Proj":{idhtml:"localizarxy",tipo:"utm",titulo:"UTM Sad-69",ativo:true,defepsg:"",zona:{"19N":"+proj=utm +zone=19 +ellps=aust_SA +units=m +no_defs","20N":"+proj=utm +zone=20 +ellps=aust_SA +units=m +no_defs","21N":"+proj=utm +zone=21 +ellps=aust_SA +units=m +no_defs","22N":"+proj=utm +zone=22 +ellps=aust_SA +units=m +no_defs","17S":"+proj=utm +zone=17 +south +ellps=aust_SA +units=m +no_defs","18S":"+proj=utm +zone=18 +south +ellps=aust_SA +units=m +no_defs","19S":"+proj=utm +zone=19 +south +ellps=aust_SA +units=m +no_defs","20S":"+proj=utm +zone=20 +south +ellps=aust_SA +units=m +no_defs","21S":"+proj=utm +zone=21 +south +ellps=aust_SA +units=m +no_defs","22S":"+proj=utm +zone=22 +south +ellps=aust_SA +units=m +no_defs","23S":"+proj=utm +zone=23 +south +ellps=aust_SA +units=m +no_defs","24S":"+proj=utm +zone=24 +south +ellps=aust_SA +units=m +no_defs","25S":"+proj=utm +zone=25 +south +ellps=aust_SA +units=m +no_defs"}},"utmSirgas2000Proj":{idhtml:"localizarxy",tipo:"utm",titulo:"UTM Sirgas",ativo:true,defepsg:"",zona:{"11N":"+proj=utm +zone=11 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","12N":"+proj=utm +zone=12 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","13N":"+proj=utm +zone=13 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","14N":"+proj=utm +zone=14 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","15N":"+proj=utm +zone=15 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","16N":"+proj=utm +zone=16 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","17N":"+proj=utm +zone=17 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","18N":"+proj=utm +zone=18 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","19N":"+proj=utm +zone=19 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","20N":"+proj=utm +zone=20 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","21N":"+proj=utm +zone=21 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","22N":"+proj=utm +zone=22 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","17S":"+proj=utm +zone=17 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","18S":"+proj=utm +zone=18 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","19S":"+proj=utm +zone=19 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","20S":"+proj=utm +zone=20 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","21S":"+proj=utm +zone=21 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","22S":"+proj=utm +zone=22 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","23S":"+proj=utm +zone=23 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","24S":"+proj=utm +zone=24 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","25S":"+proj=utm +zone=25 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs"}}},PARAMETROS:{"mostraCoordenadasUTM":{idhtml:"localizarxy"},"mostraCoordenadasGEO":{idhtml:"localizarxy"},"mostraCoordenadasGeohash":{idhtml:"localizarxy"}},MODOTEXTO:"",atualizaLocalizarGeo:function(id,x,y){if(!id||id==""){id="coordgeotabela"}if(typeof(x)==='undefined'){x=objposicaocursor.dmsx}if(typeof(y)==='undefined'){y=objposicaocursor.dmsy}var temp=$i(id);if(temp&&temp.style.display==="block"){i3GEO.coordenadas.atualizaGeo(x,y,id)}else{i3GEO.eventos.removeEventos("MOUSEMOVE",["i3GEO.coordenadas.atualizaLocalizarGeo('localizarxygeoProj')"])}},geo2zonaUtm:function(l){l=(l*1)+180;l=l/6;return parseInt(l,10)+1},criaMascaraDMS:function(prefixo,titulo,caixa){var ins='
'+caixa+' X: '+''+''+''+' Y: '+''+''+'',temp='var '+prefixo+'xxx = i3GEO.calculo.dms2dd($i(\''+prefixo+'xg\').value,$i(\''+prefixo+'xm\').value,$i(\''+prefixo+'xs\').value);'+'var '+prefixo+'yyy = i3GEO.calculo.dms2dd($i(\''+prefixo+'yg\').value,$i(\''+prefixo+'ym\').value,$i(\''+prefixo+'ys\').value);'+'i3GEO.navega.zoomponto(i3GEO.configura.locaplic,i3GEO.configura.sid,'+prefixo+'xxx,'+prefixo+'yyy);';ins+=''+"
";return ins},atualizaGeo:function(dmsx,dmsy,prefixo){var x=dmsx.split(" "),y=dmsy.split(" ");if($i(prefixo+"xg")){$i(prefixo+"xg").value=x[0];$i(prefixo+"xm").value=x[1];$i(prefixo+"xs").value=x[2];$i(prefixo+"yg").value=y[0];$i(prefixo+"ym").value=y[1];$i(prefixo+"ys").value=y[2]}i3GEO.coordenadas.MODOTEXTO+="DMS - Latitude: "+y[0]+" "+y[1]+" "+y[2]+" Longitude: "+x[0]+" "+x[1]+" "+x[2]+"

"},criaMascaraMetrica:function(prefixo,titulo,caixa){var ins="
"+caixa+" X: "+''+" Y: "+''+" Zn: "+''+"
";return ins},criaMascaraCodigo:function(prefixo,titulo,caixa,tipoCodigo){var funcao="",ins="";if(tipoCodigo==="geohash"){funcao="i3GEO.coordenadas.geohash.zoomCodigo(\'"+prefixo+"Codigo\')"}ins="
"+caixa+" "+''+" "+''+"
";return ins},atualizaCodigo:function(onde,configProj,x,y){var remove=function(){i3GEO.eventos.removeEventos("MOUSEMOVE",["i3GEO.coordenadas.atualizaCodigo('"+onde+"','"+configProj+"')"])};var ondeValor=$i(onde+configProj+"Codigo"),temp=i3GEO.coordenadas.config[configProj],codigo="";onde=$i(onde);if(onde&&onde.style.display==="none"){remove();return}if(typeof(x)==='undefined'){x=objposicaocursor.ddx}if(typeof(y)==='undefined'){y=objposicaocursor.ddy}if(temp.tipoCodigo==="geohash"){if($i("localizarxygeohash")&&$i("localizarxygeohash").style.display==="none"){i3GEO.eventos.removeEventos("MOUSEMOVE",["i3GEO.coordenadas.atualizaCodigo('localizarxy','geohash')"])}codigo=i3GEO.coordenadas.geohash.encodeGeoHash(y,x)}i3GEO.coordenadas.MODOTEXTO+=temp.titulo+" : "+codigo+"

";if(ondeValor){ondeValor.value=codigo}},atualizaProj4:function(onde,configProj,x,y){var remove=function(){i3GEO.eventos.removeEventos("MOUSEMOVE",["i3GEO.coordenadas.atualizaProj4('"+onde+"','"+configProj+"')"])};var zona,temp,p,destino="",iu=i3GEO.util;temp=i3GEO.coordenadas.config[configProj];if($i(onde+configProj)&&$i(onde+configProj).style.display==="none"){remove();return}if(temp.tipo==="metrica"){destino=temp.defepsg}if(typeof(x)==='undefined'){x=objposicaocursor.ddx}if(typeof(y)==='undefined'){y=objposicaocursor.ddy}if(temp.tipo==="utm"){zona=i3GEO.coordenadas.geo2zonaUtm(x);if($i(onde+configProj+"ZN")){$i(onde+configProj+"ZN").value=zona}if(objposicaocursor.ddy*1>0){destino=temp.zona[zona+"N"]}else{destino=temp.zona[zona+"S"]}if(typeof(destino)==='undefined'){iu.defineValor(onde+configProj+"X","value","?");iu.defineValor(onde+configProj+"Y","value","?");return}}if(temp.defepsg===""&&temp.tipo==="metrica"){p={x:x,y:y}}else{p=i3GEO.coordenadas.calculaProj4(i3GEO.coordenadas.defOrigem,destino,x,y)}iu.defineValor(onde+configProj+"X","value",p.x);iu.defineValor(onde+configProj+"Y","value",p.y);i3GEO.coordenadas.MODOTEXTO+=temp.titulo+" - X: "+p.x+" Y: "+p.y+"

"},calculaProj4:function(origem,destino,x,y){Proj4js.defs={'ORIGEM':origem,'DESTINO':destino};Proj4js.getScriptLocation=function(){return i3GEO.configura.locaplic+"/pacotes/proj4js/lib/"};var source=new Proj4js.Proj("ORIGEM"),dest=new Proj4js.Proj("DESTINO"),p=new Proj4js.Point(x,y);Proj4js.transform(source,dest,p);return p},ativaBloco:function(prefixo){var tipos=i3GEO.util.listaChaves(i3GEO.coordenadas.config),n=tipos.length,temp,i=0;for(i=0;i"+$trad("x49")+"","i3GEOJanelaCoordenadas",false,"hd","","");$(janela[0].close).click(function(){var tipos=i3GEO.util.listaChaves(i3GEO.coordenadas.config),n=tipos.length,temp,i=0,nomeFunc;for(i=0;i"+"Clique aqui para ativar Alt+C para poder capturar as coordenadas em memória";$i(onde).innerHTML=ins;i3GEO.coordenadas.ativaEventos("coordgeotabela")},ativaEventos:function(prefixo){var tipos=i3GEO.util.listaChaves(i3GEO.coordenadas.config),n=tipos.length,temp,i=0,nomeFunc;if(!prefixo){prefixo="localizarxy"}for(i=0;imid){ch|=i3GEO.coordenadas.geohash.BITS[bit];lon[0]=mid}else lon[1]=mid}else{mid=(lat[0]+lat[1])/2;if(latitude>mid){ch|=i3GEO.coordenadas.geohash.BITS[bit];lat[0]=mid}else lat[1]=mid}is_even=!is_even;if(bit<4)bit++;else{geohash+=i3GEO.coordenadas.geohash.BASE32[ch];bit=0;ch=0}}return geohash},zoomCodigo:function(idobj){var codigo;if($i(idobj)){codigo=$i(idobj).value}else{codigo=idobj}codigo=i3GEO.coordenadas.geohash.decodeGeoHash(codigo);i3GEO.navega.zoomponto(i3GEO.configura.locaplic,i3GEO.configura.sid,codigo.longitude,codigo.latitude)}},zoomPonto:function(){var localizarxygeoProjxxx=i3GEO.calculo.dms2dd($i('localizarxygeoProjxg').value,$i('localizarxygeoProjxm').value,$i('localizarxygeoProjxs').value);var localizarxygeoProjyyy=i3GEO.calculo.dms2dd($i('localizarxygeoProjyg').value,$i('localizarxygeoProjym').value,$i('localizarxygeoProjys').value);i3GEO.navega.zoomponto(i3GEO.configura.locaplic,i3GEO.configura.sid,localizarxygeoProjxxx,localizarxygeoProjyyy)}}; @@ -320,7 +320,7 @@ if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.legenda={IDS:[],CAMADAS:"",co if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.busca={PALAVRA:"",BOX:"",SERVICO:"http://mapas.mma.gov.br/webservices/geonames.php",SERVICOWMS:"http://mapas.mma.gov.br/webservices/geonameswms.php",config:{"ondeConteiner":"","inputOndePalavra":"","ondeServicosExternos":"","inputServicosExternos":"","inputTemasMapa":"","ondeTemasMapa":"","inputGoogle":"","ondeGoogle":"","templateTemasMapa":"","templateServico":"","templateGoogle":""},nget:0,carregaTemplates:function(){if(i3GEO.busca.nget==0){i3GEO.busca.nget=2;if(!i3GEO.template.buscaEmTemas){$.get(i3GEO.busca.config.templateTemasMapa,function(template){i3GEO.template.buscaEmTemas=template;i3GEO.busca.nget=i3GEO.busca.nget-1;if(i3GEO.busca.nget==0){i3GEO.busca.inicia()}})}else{i3GEO.busca.nget=i3GEO.busca.nget-1}if(!i3GEO.template.buscaEmServico){$.get(i3GEO.busca.config.templateServico,function(template){i3GEO.template.buscaEmServico=template;i3GEO.busca.nget=i3GEO.busca.nget-1;if(i3GEO.busca.nget==0){i3GEO.busca.inicia()}})}else{i3GEO.busca.nget=i3GEO.busca.nget-1}}},aguarde:function(){return''},inicia:function(obj){var palavra="",config=i3GEO.busca.config;if(obj){obj=$(obj);if(obj.attr("data-ondeConteiner")!=undefined){config.ondeConteiner=obj.attr("data-ondeConteiner")}if(obj.attr("data-ondeServicosExternos")!=undefined){config.ondeServicosExternos=obj.attr("data-ondeServicosExternos")}if(obj.attr("data-inputServicosExternos")!=undefined){config.inputServicosExternos=obj.attr("data-inputServicosExternos")}if(obj.attr("data-inputTemasMapa")!=undefined){config.inputTemasMapa=obj.attr("data-inputTemasMapa")}if(obj.attr("data-inputTemasMapa")!=undefined){config.ondeTemasMapa=obj.attr("data-ondeTemasMapa")}if(obj.attr("data-inputGoogle")!=undefined){config.inputGoogle=obj.attr("data-inputGoogle")}if(obj.attr("data-inputGoogle")!=undefined){config.ondeGoogle=obj.attr("data-ondeGoogle")}if(obj.attr("data-inputOndePalavra")!=undefined){config.inputOndePalavra=obj.attr("data-inputOndePalavra")}if(obj.attr("data-templateGoogle")!=undefined){config.templateGoogle=obj.attr("data-templateGoogle")}if(obj.attr("data-templateTemasMapa")!=undefined){config.templateTemasMapa=obj.attr("data-templateTemasMapa")}if(obj.attr("data-templateServico")!=undefined){config.templateServico=obj.attr("data-templateServico")}}if(!i3GEO.template.buscaEmTemas||!i3GEO.template.buscaEmServico){i3GEO.busca.carregaTemplates();return}else{var palavra=$(config.ondeConteiner).find(config.inputOndePalavra).val();if(palavra!=""){i3GEO.busca.PALAVRA=i3GEO.util.removeAcentos(palavra)}else{i3GEO.busca.PALAVRA="";return false}if($(config.ondeConteiner).find(config.inputServicosExternos)[0].checked==true){$(config.ondeConteiner).find(config.ondeServicosExternos).html(i3GEO.busca.aguarde());i3GEO.php.buscaRapida(i3GEO.busca.resultadoServico,i3GEO.configura.locaplic,i3GEO.busca.SERVICO,i3GEO.busca.PALAVRA)}if($(config.ondeConteiner).find(config.inputTemasMapa)[0].checked==true){$(config.ondeConteiner).find(config.inputTemasMapa).html(i3GEO.busca.aguarde());i3GEO.php.buscaRapida(i3GEO.busca.resultadoTemas,i3GEO.configura.locaplic,"temas",i3GEO.busca.PALAVRA)}if($(config.ondeConteiner).find(config.inputGoogle)[0].checked==true){$(config.ondeConteiner).find(config.inputGoogle).html(i3GEO.busca.aguarde());i3GEO.busca.google(i3GEO.busca.PALAVRA)}}},resultadoTemas:function(retorno){var t,config=i3GEO.busca.config;try{if(retorno.data){t=Mustache.to_html("{{#data}}"+i3GEO.template.buscaEmTemas+"{{/data}}",{"data":retorno.data});$(config.ondeConteiner).find(config.ondeTemasMapa).html(t)}}catch(e){$(config.ondeConteiner).find(config.ondeTemasMapa).html("")}},resultadoGoogle:function(retorno){var t,config=i3GEO.busca.config;try{if(retorno.data){t=Mustache.to_html("{{#data}}"+i3GEO.template.buscaEmTemas+"{{/data}}",{"data":retorno.data});$(config.ondeConteiner).find(config.ondeGoogle).html(t)}}catch(e){$(config.ondeConteiner).find(config.ondeGoogle).html("")}},resultadoServico:function(retorno){var t,config=i3GEO.busca.config;try{if(retorno.data){t=Mustache.to_html("{{#data}}"+i3GEO.template.buscaEmServico+"{{/data}}",{"data":retorno.data.geonames});$(config.ondeConteiner).find(config.ondeServicosExternos).html(t)}}catch(e){$(config.ondeConteiner).find(config.ondeServicosExternos).html("")}},google:function(palavra){var geocoder=new google.maps.Geocoder();geocoder.geocode({'address':palavra},function(results,status){if(status==google.maps.GeocoderStatus.OK){if(status!=google.maps.GeocoderStatus.ZERO_RESULTS){if(results){var b,bo,n=results.length,i=0,resultado={"data":[]};for(i=0;i0){t=Mustache.to_html(i3GEO.template.ferramentasFolder,{"nome":menu[i].nome,"descricao":menu[i].descricao});t=$(t);data={"nivel":1,"nome":menu[i].nome,"id":i,"n0":i,"n1":"","n2":"","n3":""};t.find("a").data(data).click(function(){$(this).find("a").off("click");var data=$(this).data();i3GEO.caixaDeFerramentas.config.idOndeFolder.fadeOut("fast",function(){i3GEO.caixaDeFerramentas.nivel1(data);i3GEO.caixaDeFerramentas.config.idOndeFolder.show()})});i3GEO.caixaDeFerramentas.config.idOndeFolder.append(t)}}},nivel1:function(data){var confm=i3GEO.listaDeFerramentas,menu=confm.submenus[confm.menu[data.n0].id],n=menu.length,f=i3GEO.caixaDeFerramentas.config,i,t,datan;f.idOndeFolder.html("");f.idOndeLinks.html("");for(i=0;i0){t=Mustache.to_html(i3GEO.template.ferramentasFolder,{"nome":menu[i].nome,"descricao":menu[i].descricao});t=$(t);data={"nivel":1,"nome":menu[i].nome,"id":i,"n0":i,"n1":"","n2":"","n3":""};t.find("a").data(data).click(function(){$(this).find("a").off("click");var data=$(this).data();i3GEO.caixaDeFerramentas.config.idOndeFolder.fadeOut("fast",function(){i3GEO.caixaDeFerramentas.nivel1(data);i3GEO.caixaDeFerramentas.config.idOndeFolder.show()})});i3GEO.caixaDeFerramentas.config.idOndeFolder.append(t)}}},nivel1:function(data){var confm=i3GEO.listaDeFerramentas,menu=confm.submenus[confm.menu[data.n0].id],n=menu.length,f=i3GEO.caixaDeFerramentas.config,i,t,datan;f.idOndeFolder.html("");f.idOndeLinks.html("");for(i=0;i fonte"}if(ngSgrupo[sg].subgrupo){d+=" ("+(ngSgrupo[sg].subgrupo)+") "+lk+""}else{d+=" ("+(ngSgrupo[sg].grupo)+")"+lk+""}}conta+=1}}}};busca=function(){i3GEO.php.procurartemas2(resultadoProcurar,i3GEO.util.removeAcentos(palavra))}},comboMenus:function(locaplic,funcaoOnchange,idDestino,idCombo,largura,altura){i3GEO.configura.locaplic=locaplic;var combo=function(retorno){var ob,ins,ig;ob=retorno.data;ins="";return retorno.data};i3GEO.php.pegalistademenus(combo)},comboGruposMenu:function(locaplic,funcaoOnchange,idDestino,idCombo,largura,altura,id_menu){i3GEO.configura.locaplic=locaplic;i3GEO.arvoreDeTemas.temasRaizGrupos=[];var combo=function(retorno){var ins,ig,obGrupos=retorno.data;ins=""};i3GEO.php.pegalistadegrupos(combo,id_menu,"nao")},comboSubGruposMenu:function(locaplic,funcaoOnchange,idDestino,idCombo,idGrupo,largura,altura){if(idGrupo!==""){var combo=function(retorno){var ins,sg,ig;ins=""};i3GEO.php.pegalistadeSubgrupos(combo,"",idGrupo)}},comboTemasMenu:function(locaplic,funcaoOnchange,idDestino,idCombo,idGrupo,idSubGrupo,largura,altura,id_menu,temas){var combo=function(retorno){var ins,sg,ig;if(idSubGrupo!=""){ins=""}if(typeof(retorno.data)!=='undefined'){retorno=retorno.data.temas}sg=retorno.length;for(ig=0;ig"+retorno[ig].nome+""}$i(idDestino).innerHTML=ins+""};if(typeof(temas)==='undefined'||temas===""){i3GEO.php.pegalistadetemas(combo,id_menu,idGrupo,idSubGrupo)}else{combo(temas)}},dialogo:{uploadarquivo:function(){i3GEO.util.scriptTag(i3GEO.configura.locaplic+"/ferramentas/uploadarquivos/dependencias.php","i3GEOF.uploadarquivos.iniciaJanelaFlutuante()","i3GEOF.uploadarquivos_script")},conectaservico:function(){i3GEO.util.scriptTag(i3GEO.configura.locaplic+"/ferramentas/conectarservicos/dependencias.php","i3GEOF.conectarservicos.iniciaJanelaFlutuante()","i3GEOF.conectarservicos_script")},carouselTemas:function(){i3GEO.util.scriptTag(i3GEO.configura.locaplic+"/ferramentas/carouseltemas/index.js","i3GEOF.carouseltemas.criaJanelaFlutuante()","i3GEOF.carouseltemas_script")},buscaInde:function(){i3GEO.util.scriptTag(i3GEO.configura.locaplic+"/ferramentas/buscainde/dependencias.php","i3GEOF.buscainde.iniciaJanelaFlutuante()","i3GEOF.buscainde_script")},nuvemTags:function(){i3GEO.util.scriptTag(i3GEO.configura.locaplic+"/ferramentas/nuvemtags/dependencias.php","i3GEOF.nuvemtags.iniciaJanelaFlutuante()","i3GEOF.nuvemtags_script")},nuvemTagsFlash:function(){i3GEO.janela.cria("550px","350px",i3GEO.configura.locaplic+"/ferramentas/nuvemtagsflash/index.htm","","",$trad("x44"))},navegacaoDir:function(){i3GEO.janela.cria("550px","350px",i3GEO.configura.locaplic+"/ferramentas/navegacaodir/index.htm","","","
"+$trad("x45")+"
")},importarwmc:function(){i3GEO.util.scriptTag(i3GEO.configura.locaplic+"/ferramentas/importarwmc/dependencias.php","i3GEOF.importarwmc.iniciaJanelaFlutuante()","i3GEOF.importarwmc_script")},conectarwfs:function(){i3GEO.janela.cria("400px","300px",i3GEO.configura.locaplic+"/ferramentas/conectarwfs/index.htm","","","
WFS
")},downloadbase:function(){window.open(i3GEO.configura.locaplic+"/datadownload.htm")}}}; // //compactados/editor_compacto.js -if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.editor={botoes:{'zoomin':false,'zoomout':false,'pan':false,'zoombox':false,'zoomtot':false,'legenda':false,'distancia':false,'area':false,'identifica':false,'linha':true,'ponto':true,'poligono':true,'texto':true,'corta':true,'edita':true,'listag':true,'selecao':true,'selecaotudo':true,'apaga':true,'procura':false,'propriedades':true,'salva':true,'ajuda':true,'fecha':true,'tools':true,'undo':true,'frente':true},inicia:function(){i3GEO.eventos.cliquePerm.desativa();i3GEO.editor[i3GEO.Interface.ATUAL].inicia("janelaEditorVetorial")},googlemaps:{inicia:function(idjanela){var temp=function(){var cabecalho,minimiza,fecha,janela=YAHOO.i3GEO.janela.manager.find("i3GEOjanelaEditor");if(janela){janela.destroy()}cabecalho=function(){};minimiza=function(){i3GEO.janela.minimiza("i3GEOjanelaEditor")};janela=i3GEO.janela.cria("350px","100px","","","","
Editor
","i3GEOjanelaEditor",false,"hd",cabecalho,minimiza);$i("i3GEOjanelaEditor_corpo").style.backgroundColor="white";i3GEO.editorGM.inicia("i3GEOjanelaEditor_corpo");fecha=function(){var temp=window.confirm($trad("x94"));if(i3GEO.eventos){i3GEO.eventos.cliquePerm.ativa()}if(temp===true){i3GEO.desenho.googlemaps.destroyFeatures(i3GEO.desenho.googlemaps.shapes)}};$(janela[0].close).click(fecha)};if(!i3GEO.editorGM){i3GEO.util.scriptTag(i3GEO.configura.locaplic+"/ferramentas/editorgm/editorgm_compacto.js",temp,"editorgm.js",true)}else{temp.call()}}},openlayers:{inicia:function(idjanela){if(!i3GEO.editorOL){i3GEO.util.scriptTag(i3GEO.configura.locaplic+"/ferramentas/editorol/editorol.js","i3GEO.editor.openlayers.ativaPainel('"+idjanela+"')","editorol.js",true)}else{if(!i3GEO.desenho.layergrafico){i3GEO.desenho.openlayers.criaLayerGrafico();i3GEO.editorOL.mapa.addLayers([i3GEO.desenho.layergrafico])}if(!i3GEO.editorOL.backup){i3GEO.editorOL.backup=new ol.layer.Vector({source:new ol.source.Vector({features:new ol.Collection(),useSpatialIndex:false,name:"Backup"}),visible:false});i3GEO.editorOL.backup.setMap(i3geoOL);i3GEO.editorOL.backup.getFeatures=function(){return i3GEO.editorOL.backup.getSource().getFeatures()}}i3GEO.editorOL.criaBotoes(i3GEO.editorOL.botoes)}},criaJanela:function(){if($i("i3GEOjanelaEditor")){return"i3GEOjanelaEditor"}var janela,divid,titulo,cabecalho,minimiza;cabecalho=function(){};minimiza=function(){i3GEO.janela.minimiza("i3GEOjanelaEditor")};titulo="
"+$trad("u29")+"
";janela=i3GEO.janela.cria("300px","200px","","","",titulo,"i3GEOjanelaEditor",false,"hd",cabecalho,minimiza);divid=janela[2].id;$i("i3GEOjanelaEditor_corpo").style.backgroundColor="white";$i("i3GEOjanelaEditor_corpo").style.textAlign="left";return divid},ativaPainel:function(idjanela){i3GEO.editorOL.fundo="";i3GEO.editorOL.mapa=i3geoOL;i3GEO.editorOL.maxext="";i3GEO.editorOL.controles=[];if(!i3GEO.desenho.layergrafico){i3GEO.desenho.openlayers.criaLayerGrafico()}if(idjanela){i3GEO.editorOL.criaBotoes(i3GEO.editor.botoes)}}}}; +if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.editor={botoes:{'zoomin':false,'zoomout':false,'pan':false,'zoombox':false,'zoomtot':false,'legenda':false,'distancia':false,'area':false,'identifica':false,'linha':true,'ponto':true,'poligono':true,'texto':true,'corta':true,'edita':true,'listag':true,'selecao':true,'selecaotudo':true,'apaga':true,'procura':false,'propriedades':true,'salva':true,'ajuda':true,'fecha':true,'tools':true,'undo':true,'frente':true},inicia:function(){i3GEO.eventos.cliquePerm.desativa();i3GEO.editor[i3GEO.Interface.ATUAL].inicia("janelaEditorVetorial")},googlemaps:{inicia:function(idjanela){}},openlayers:{inicia:function(idjanela){if(!i3GEO.editorOL){i3GEO.util.scriptTag(i3GEO.configura.locaplic+"/ferramentas/editorol/editorol.js","i3GEO.editor.openlayers.ativaPainel('"+idjanela+"')","editorol.js",true)}else{if(!i3GEO.desenho.layergrafico){i3GEO.desenho.openlayers.criaLayerGrafico();i3GEO.editorOL.mapa.addLayers([i3GEO.desenho.layergrafico])}if(!i3GEO.editorOL.backup){i3GEO.editorOL.backup=new ol.layer.Vector({source:new ol.source.Vector({features:new ol.Collection(),useSpatialIndex:false,name:"Backup"}),visible:false});i3GEO.editorOL.backup.setMap(i3geoOL);i3GEO.editorOL.backup.getFeatures=function(){return i3GEO.editorOL.backup.getSource().getFeatures()}}i3GEO.editorOL.criaBotoes(i3GEO.editorOL.botoes)}},criaJanela:function(){if($i("i3GEOjanelaEditor")){return"i3GEOjanelaEditor"}var janela,divid,titulo,cabecalho,minimiza;cabecalho=function(){};minimiza=function(){i3GEO.janela.minimiza("i3GEOjanelaEditor")};titulo="
"+$trad("u29")+"
";janela=i3GEO.janela.cria("300px","200px","","","",titulo,"i3GEOjanelaEditor",false,"hd",cabecalho,minimiza);divid=janela[2].id;$i("i3GEOjanelaEditor_corpo").style.backgroundColor="white";$i("i3GEOjanelaEditor_corpo").style.textAlign="left";return divid},ativaPainel:function(idjanela){i3GEO.editorOL.fundo="";i3GEO.editorOL.mapa=i3geoOL;i3GEO.editorOL.maxext="";i3GEO.editorOL.controles=[];if(!i3GEO.desenho.layergrafico){i3GEO.desenho.openlayers.criaLayerGrafico()}if(idjanela){i3GEO.editorOL.criaBotoes(i3GEO.editor.botoes)}}}}; // //compactados/coordenadas_compacto.js if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.coordenadas={padrao:"geoProj",defOrigem:"+proj=longlat +ellps=GRS67 +no_defs",config:{"geoProj":{idhtml:"localizarxy",tipo:"geo",titulo:"Geo",ativo:true,defepsg:""},"dd":{idhtml:"localizarxy",tipo:"metrica",titulo:"Déc. de grau",ativo:true,defepsg:""},"geohash":{idhtml:"localizarxy",tipo:"codigo",tipoCodigo:"geohash",titulo:"GeoHash",ativo:true},"policonicaSad69":{idhtml:"localizarxy",tipo:"metrica",titulo:"Polic SAD-69",ativo:true,defepsg:"+proj=poly +lat_0=0 +lon_0=-54 +x_0=5000000 +y_0=10000000 +ellps=aust_SA +units=m +no_defs"},"utmSad69Proj":{idhtml:"localizarxy",tipo:"utm",titulo:"UTM Sad-69",ativo:true,defepsg:"",zona:{"19N":"+proj=utm +zone=19 +ellps=aust_SA +units=m +no_defs","20N":"+proj=utm +zone=20 +ellps=aust_SA +units=m +no_defs","21N":"+proj=utm +zone=21 +ellps=aust_SA +units=m +no_defs","22N":"+proj=utm +zone=22 +ellps=aust_SA +units=m +no_defs","17S":"+proj=utm +zone=17 +south +ellps=aust_SA +units=m +no_defs","18S":"+proj=utm +zone=18 +south +ellps=aust_SA +units=m +no_defs","19S":"+proj=utm +zone=19 +south +ellps=aust_SA +units=m +no_defs","20S":"+proj=utm +zone=20 +south +ellps=aust_SA +units=m +no_defs","21S":"+proj=utm +zone=21 +south +ellps=aust_SA +units=m +no_defs","22S":"+proj=utm +zone=22 +south +ellps=aust_SA +units=m +no_defs","23S":"+proj=utm +zone=23 +south +ellps=aust_SA +units=m +no_defs","24S":"+proj=utm +zone=24 +south +ellps=aust_SA +units=m +no_defs","25S":"+proj=utm +zone=25 +south +ellps=aust_SA +units=m +no_defs"}},"utmSirgas2000Proj":{idhtml:"localizarxy",tipo:"utm",titulo:"UTM Sirgas",ativo:true,defepsg:"",zona:{"11N":"+proj=utm +zone=11 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","12N":"+proj=utm +zone=12 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","13N":"+proj=utm +zone=13 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","14N":"+proj=utm +zone=14 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","15N":"+proj=utm +zone=15 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","16N":"+proj=utm +zone=16 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","17N":"+proj=utm +zone=17 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","18N":"+proj=utm +zone=18 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","19N":"+proj=utm +zone=19 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","20N":"+proj=utm +zone=20 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","21N":"+proj=utm +zone=21 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","22N":"+proj=utm +zone=22 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","17S":"+proj=utm +zone=17 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","18S":"+proj=utm +zone=18 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","19S":"+proj=utm +zone=19 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","20S":"+proj=utm +zone=20 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","21S":"+proj=utm +zone=21 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","22S":"+proj=utm +zone=22 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","23S":"+proj=utm +zone=23 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","24S":"+proj=utm +zone=24 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs","25S":"+proj=utm +zone=25 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs"}}},PARAMETROS:{"mostraCoordenadasUTM":{idhtml:"localizarxy"},"mostraCoordenadasGEO":{idhtml:"localizarxy"},"mostraCoordenadasGeohash":{idhtml:"localizarxy"}},MODOTEXTO:"",atualizaLocalizarGeo:function(id,x,y){if(!id||id==""){id="coordgeotabela"}if(typeof(x)==='undefined'){x=objposicaocursor.dmsx}if(typeof(y)==='undefined'){y=objposicaocursor.dmsy}var temp=$i(id);if(temp&&temp.style.display==="block"){i3GEO.coordenadas.atualizaGeo(x,y,id)}else{i3GEO.eventos.removeEventos("MOUSEMOVE",["i3GEO.coordenadas.atualizaLocalizarGeo('localizarxygeoProj')"])}},geo2zonaUtm:function(l){l=(l*1)+180;l=l/6;return parseInt(l,10)+1},criaMascaraDMS:function(prefixo,titulo,caixa){var ins='
'+caixa+' X: '+''+''+''+' Y: '+''+''+'',temp='var '+prefixo+'xxx = i3GEO.calculo.dms2dd($i(\''+prefixo+'xg\').value,$i(\''+prefixo+'xm\').value,$i(\''+prefixo+'xs\').value);'+'var '+prefixo+'yyy = i3GEO.calculo.dms2dd($i(\''+prefixo+'yg\').value,$i(\''+prefixo+'ym\').value,$i(\''+prefixo+'ys\').value);'+'i3GEO.navega.zoomponto(i3GEO.configura.locaplic,i3GEO.configura.sid,'+prefixo+'xxx,'+prefixo+'yyy);';ins+=''+"
";return ins},atualizaGeo:function(dmsx,dmsy,prefixo){var x=dmsx.split(" "),y=dmsy.split(" ");if($i(prefixo+"xg")){$i(prefixo+"xg").value=x[0];$i(prefixo+"xm").value=x[1];$i(prefixo+"xs").value=x[2];$i(prefixo+"yg").value=y[0];$i(prefixo+"ym").value=y[1];$i(prefixo+"ys").value=y[2]}i3GEO.coordenadas.MODOTEXTO+="DMS - Latitude: "+y[0]+" "+y[1]+" "+y[2]+" Longitude: "+x[0]+" "+x[1]+" "+x[2]+"

"},criaMascaraMetrica:function(prefixo,titulo,caixa){var ins="
"+caixa+" X: "+''+" Y: "+''+" Zn: "+''+"
";return ins},criaMascaraCodigo:function(prefixo,titulo,caixa,tipoCodigo){var funcao="",ins="";if(tipoCodigo==="geohash"){funcao="i3GEO.coordenadas.geohash.zoomCodigo(\'"+prefixo+"Codigo\')"}ins="
"+caixa+" "+''+" "+''+"
";return ins},atualizaCodigo:function(onde,configProj,x,y){var remove=function(){i3GEO.eventos.removeEventos("MOUSEMOVE",["i3GEO.coordenadas.atualizaCodigo('"+onde+"','"+configProj+"')"])};var ondeValor=$i(onde+configProj+"Codigo"),temp=i3GEO.coordenadas.config[configProj],codigo="";onde=$i(onde);if(onde&&onde.style.display==="none"){remove();return}if(typeof(x)==='undefined'){x=objposicaocursor.ddx}if(typeof(y)==='undefined'){y=objposicaocursor.ddy}if(temp.tipoCodigo==="geohash"){if($i("localizarxygeohash")&&$i("localizarxygeohash").style.display==="none"){i3GEO.eventos.removeEventos("MOUSEMOVE",["i3GEO.coordenadas.atualizaCodigo('localizarxy','geohash')"])}codigo=i3GEO.coordenadas.geohash.encodeGeoHash(y,x)}i3GEO.coordenadas.MODOTEXTO+=temp.titulo+" : "+codigo+"

";if(ondeValor){ondeValor.value=codigo}},atualizaProj4:function(onde,configProj,x,y){var remove=function(){i3GEO.eventos.removeEventos("MOUSEMOVE",["i3GEO.coordenadas.atualizaProj4('"+onde+"','"+configProj+"')"])};var zona,temp,p,destino="",iu=i3GEO.util;temp=i3GEO.coordenadas.config[configProj];if($i(onde+configProj)&&$i(onde+configProj).style.display==="none"){remove();return}if(temp.tipo==="metrica"){destino=temp.defepsg}if(typeof(x)==='undefined'){x=objposicaocursor.ddx}if(typeof(y)==='undefined'){y=objposicaocursor.ddy}if(temp.tipo==="utm"){zona=i3GEO.coordenadas.geo2zonaUtm(x);if($i(onde+configProj+"ZN")){$i(onde+configProj+"ZN").value=zona}if(objposicaocursor.ddy*1>0){destino=temp.zona[zona+"N"]}else{destino=temp.zona[zona+"S"]}if(typeof(destino)==='undefined'){iu.defineValor(onde+configProj+"X","value","?");iu.defineValor(onde+configProj+"Y","value","?");return}}if(temp.defepsg===""&&temp.tipo==="metrica"){p={x:x,y:y}}else{p=i3GEO.coordenadas.calculaProj4(i3GEO.coordenadas.defOrigem,destino,x,y)}iu.defineValor(onde+configProj+"X","value",p.x);iu.defineValor(onde+configProj+"Y","value",p.y);i3GEO.coordenadas.MODOTEXTO+=temp.titulo+" - X: "+p.x+" Y: "+p.y+"

"},calculaProj4:function(origem,destino,x,y){Proj4js.defs={'ORIGEM':origem,'DESTINO':destino};Proj4js.getScriptLocation=function(){return i3GEO.configura.locaplic+"/pacotes/proj4js/lib/"};var source=new Proj4js.Proj("ORIGEM"),dest=new Proj4js.Proj("DESTINO"),p=new Proj4js.Point(x,y);Proj4js.transform(source,dest,p);return p},ativaBloco:function(prefixo){var tipos=i3GEO.util.listaChaves(i3GEO.coordenadas.config),n=tipos.length,temp,i=0;for(i=0;i"+$trad("x49")+"","i3GEOJanelaCoordenadas",false,"hd","","");$(janela[0].close).click(function(){var tipos=i3GEO.util.listaChaves(i3GEO.coordenadas.config),n=tipos.length,temp,i=0,nomeFunc;for(i=0;i"+"Clique aqui para ativar Alt+C para poder capturar as coordenadas em memória";$i(onde).innerHTML=ins;i3GEO.coordenadas.ativaEventos("coordgeotabela")},ativaEventos:function(prefixo){var tipos=i3GEO.util.listaChaves(i3GEO.coordenadas.config),n=tipos.length,temp,i=0,nomeFunc;if(!prefixo){prefixo="localizarxy"}for(i=0;imid){ch|=i3GEO.coordenadas.geohash.BITS[bit];lon[0]=mid}else lon[1]=mid}else{mid=(lat[0]+lat[1])/2;if(latitude>mid){ch|=i3GEO.coordenadas.geohash.BITS[bit];lat[0]=mid}else lat[1]=mid}is_even=!is_even;if(bit<4)bit++;else{geohash+=i3GEO.coordenadas.geohash.BASE32[ch];bit=0;ch=0}}return geohash},zoomCodigo:function(idobj){var codigo;if($i(idobj)){codigo=$i(idobj).value}else{codigo=idobj}codigo=i3GEO.coordenadas.geohash.decodeGeoHash(codigo);i3GEO.navega.zoomponto(i3GEO.configura.locaplic,i3GEO.configura.sid,codigo.longitude,codigo.latitude)}},zoomPonto:function(){var localizarxygeoProjxxx=i3GEO.calculo.dms2dd($i('localizarxygeoProjxg').value,$i('localizarxygeoProjxm').value,$i('localizarxygeoProjxs').value);var localizarxygeoProjyyy=i3GEO.calculo.dms2dd($i('localizarxygeoProjyg').value,$i('localizarxygeoProjym').value,$i('localizarxygeoProjys').value);i3GEO.navega.zoomponto(i3GEO.configura.locaplic,i3GEO.configura.sid,localizarxygeoProjxxx,localizarxygeoProjyyy)}}; @@ -320,7 +320,7 @@ if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.legenda={IDS:[],CAMADAS:"",co if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.busca={PALAVRA:"",BOX:"",SERVICO:"http://mapas.mma.gov.br/webservices/geonames.php",SERVICOWMS:"http://mapas.mma.gov.br/webservices/geonameswms.php",config:{"ondeConteiner":"","inputOndePalavra":"","ondeServicosExternos":"","inputServicosExternos":"","inputTemasMapa":"","ondeTemasMapa":"","inputGoogle":"","ondeGoogle":"","templateTemasMapa":"","templateServico":"","templateGoogle":""},nget:0,carregaTemplates:function(){if(i3GEO.busca.nget==0){i3GEO.busca.nget=2;if(!i3GEO.template.buscaEmTemas){$.get(i3GEO.busca.config.templateTemasMapa,function(template){i3GEO.template.buscaEmTemas=template;i3GEO.busca.nget=i3GEO.busca.nget-1;if(i3GEO.busca.nget==0){i3GEO.busca.inicia()}})}else{i3GEO.busca.nget=i3GEO.busca.nget-1}if(!i3GEO.template.buscaEmServico){$.get(i3GEO.busca.config.templateServico,function(template){i3GEO.template.buscaEmServico=template;i3GEO.busca.nget=i3GEO.busca.nget-1;if(i3GEO.busca.nget==0){i3GEO.busca.inicia()}})}else{i3GEO.busca.nget=i3GEO.busca.nget-1}}},aguarde:function(){return''},inicia:function(obj){var palavra="",config=i3GEO.busca.config;if(obj){obj=$(obj);if(obj.attr("data-ondeConteiner")!=undefined){config.ondeConteiner=obj.attr("data-ondeConteiner")}if(obj.attr("data-ondeServicosExternos")!=undefined){config.ondeServicosExternos=obj.attr("data-ondeServicosExternos")}if(obj.attr("data-inputServicosExternos")!=undefined){config.inputServicosExternos=obj.attr("data-inputServicosExternos")}if(obj.attr("data-inputTemasMapa")!=undefined){config.inputTemasMapa=obj.attr("data-inputTemasMapa")}if(obj.attr("data-inputTemasMapa")!=undefined){config.ondeTemasMapa=obj.attr("data-ondeTemasMapa")}if(obj.attr("data-inputGoogle")!=undefined){config.inputGoogle=obj.attr("data-inputGoogle")}if(obj.attr("data-inputGoogle")!=undefined){config.ondeGoogle=obj.attr("data-ondeGoogle")}if(obj.attr("data-inputOndePalavra")!=undefined){config.inputOndePalavra=obj.attr("data-inputOndePalavra")}if(obj.attr("data-templateGoogle")!=undefined){config.templateGoogle=obj.attr("data-templateGoogle")}if(obj.attr("data-templateTemasMapa")!=undefined){config.templateTemasMapa=obj.attr("data-templateTemasMapa")}if(obj.attr("data-templateServico")!=undefined){config.templateServico=obj.attr("data-templateServico")}}if(!i3GEO.template.buscaEmTemas||!i3GEO.template.buscaEmServico){i3GEO.busca.carregaTemplates();return}else{var palavra=$(config.ondeConteiner).find(config.inputOndePalavra).val();if(palavra!=""){i3GEO.busca.PALAVRA=i3GEO.util.removeAcentos(palavra)}else{i3GEO.busca.PALAVRA="";return false}if($(config.ondeConteiner).find(config.inputServicosExternos)[0].checked==true){$(config.ondeConteiner).find(config.ondeServicosExternos).html(i3GEO.busca.aguarde());i3GEO.php.buscaRapida(i3GEO.busca.resultadoServico,i3GEO.configura.locaplic,i3GEO.busca.SERVICO,i3GEO.busca.PALAVRA)}if($(config.ondeConteiner).find(config.inputTemasMapa)[0].checked==true){$(config.ondeConteiner).find(config.inputTemasMapa).html(i3GEO.busca.aguarde());i3GEO.php.buscaRapida(i3GEO.busca.resultadoTemas,i3GEO.configura.locaplic,"temas",i3GEO.busca.PALAVRA)}if($(config.ondeConteiner).find(config.inputGoogle)[0].checked==true){$(config.ondeConteiner).find(config.inputGoogle).html(i3GEO.busca.aguarde());i3GEO.busca.google(i3GEO.busca.PALAVRA)}}},resultadoTemas:function(retorno){var t,config=i3GEO.busca.config;try{if(retorno.data){t=Mustache.to_html("{{#data}}"+i3GEO.template.buscaEmTemas+"{{/data}}",{"data":retorno.data});$(config.ondeConteiner).find(config.ondeTemasMapa).html(t)}}catch(e){$(config.ondeConteiner).find(config.ondeTemasMapa).html("")}},resultadoGoogle:function(retorno){var t,config=i3GEO.busca.config;try{if(retorno.data){t=Mustache.to_html("{{#data}}"+i3GEO.template.buscaEmTemas+"{{/data}}",{"data":retorno.data});$(config.ondeConteiner).find(config.ondeGoogle).html(t)}}catch(e){$(config.ondeConteiner).find(config.ondeGoogle).html("")}},resultadoServico:function(retorno){var t,config=i3GEO.busca.config;try{if(retorno.data){t=Mustache.to_html("{{#data}}"+i3GEO.template.buscaEmServico+"{{/data}}",{"data":retorno.data.geonames});$(config.ondeConteiner).find(config.ondeServicosExternos).html(t)}}catch(e){$(config.ondeConteiner).find(config.ondeServicosExternos).html("")}},google:function(palavra){var geocoder=new google.maps.Geocoder();geocoder.geocode({'address':palavra},function(results,status){if(status==google.maps.GeocoderStatus.OK){if(status!=google.maps.GeocoderStatus.ZERO_RESULTS){if(results){var b,bo,n=results.length,i=0,resultado={"data":[]};for(i=0;i0){t=Mustache.to_html(i3GEO.template.ferramentasFolder,{"nome":menu[i].nome,"descricao":menu[i].descricao});t=$(t);data={"nivel":1,"nome":menu[i].nome,"id":i,"n0":i,"n1":"","n2":"","n3":""};t.find("a").data(data).click(function(){$(this).find("a").off("click");var data=$(this).data();i3GEO.caixaDeFerramentas.config.idOndeFolder.fadeOut("fast",function(){i3GEO.caixaDeFerramentas.nivel1(data);i3GEO.caixaDeFerramentas.config.idOndeFolder.show()})});i3GEO.caixaDeFerramentas.config.idOndeFolder.append(t)}}},nivel1:function(data){var confm=i3GEO.listaDeFerramentas,menu=confm.submenus[confm.menu[data.n0].id],n=menu.length,f=i3GEO.caixaDeFerramentas.config,i,t,datan;f.idOndeFolder.html("");f.idOndeLinks.html("");for(i=0;i0){t=Mustache.to_html(i3GEO.template.ferramentasFolder,{"nome":menu[i].nome,"descricao":menu[i].descricao});t=$(t);data={"nivel":1,"nome":menu[i].nome,"id":i,"n0":i,"n1":"","n2":"","n3":""};t.find("a").data(data).click(function(){$(this).find("a").off("click");var data=$(this).data();i3GEO.caixaDeFerramentas.config.idOndeFolder.fadeOut("fast",function(){i3GEO.caixaDeFerramentas.nivel1(data);i3GEO.caixaDeFerramentas.config.idOndeFolder.show()})});i3GEO.caixaDeFerramentas.config.idOndeFolder.append(t)}}},nivel1:function(data){var confm=i3GEO.listaDeFerramentas,menu=confm.submenus[confm.menu[data.n0].id],n=menu.length,f=i3GEO.caixaDeFerramentas.config,i,t,datan;f.idOndeFolder.html("");f.idOndeLinks.html("");for(i=0;i