Compare View

switch
from
...
to
 
Commits (2)
guia_de_migracao.md 0 → 100755
@@ -0,0 +1,402 @@ @@ -0,0 +1,402 @@
  1 +GUIA DE UPDATES e UPGRADES
  2 +
  3 +-------------------------------------------------------------------------------------------------
  4 +Para a versão 7.0
  5 +
  6 +Inclusão da variável $ogrOutput em ms_configura.php, que indica se o OGR esta corretamente instalado, permitindo o seu uso nos servicos OGC de exportacao de dados
  7 +
  8 +Inclusão da variável $logTransacoes em ms_configura.php para ativar/desativar o log de transações com o banco de dados de administração
  9 +
  10 +Os programas javascript do core do i3Geo agora ficam na pasta i3geo/js
  11 +
  12 +O aplicativo datadownload foi removido
  13 +
  14 +As funcionalidades de download foram concentrados no aplicativo de acesso aos webservices OGC
  15 +
  16 +A string de conexão com o sistema de metadados estatísticos deve ser definida em ms_configura.php e não mais no banco de dados de administração
  17 +
  18 +-------------------------------------------------------------------------------------------------
  19 +Para a versão 6.0
  20 +
  21 +- para permitir o retorno da requisição WMS getfeatureinfo em JSON, foi incluído no mapfile base utilizado para
  22 +gerar os serviços OGC a linha "wms_feature_info_mime_type" "application/json" em WEB->METADATA
  23 +Caso você utilize um mapfile específico da sua instalação, veja o arquivo original existente em i3geo/aplicmap
  24 +para fazer as adaptações.
  25 +
  26 +- style.overflow passou a ser definido automaticamente como "hidden" para previnir problemas com as janelas de informação.
  27 +Essa definição ocorre apenas quando o elemento body do HTML contiver o id definido como "i3geo" e quando seu estilo
  28 +"overflow" não estiver previamente definido.
  29 +
  30 +- Remoção da biblioteca baloon-tooltips em prol das rotinas específicas de cada API para construção de janelas
  31 +de informação
  32 +
  33 +- Inclusão da variável $i3geo_proxy_server no ms_configura.php para uso em algumas operações baseadas no acesso
  34 +a outros servidores via Curl e OGC
  35 +
  36 +- Inclusão da variável $statusFerramentas no ms_configura para controlar o status de ferramentas que
  37 +dependem de configuração específica do servidor
  38 +
  39 +- Foram incluídos subitens no menu suspenso para acomodar o grande número de opções. Os códigos locais que
  40 +manipulam o menu suspenso devem ser revisados para verificar o funcionamento nessa nova condição.
  41 +
  42 +- Nova variável em ms_configura chamada $customDir que indica a pasta com as customizações dos mapas
  43 +
  44 +- nas interfaces que utilizam a API do google maps agora é necessário carregar a biblioteca geometry com o seguinte código:
  45 +<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false&libraries=drawing,geometry"></script>
  46 +
  47 +- os links para a árvore hiperbólica foram removidos.
  48 +
  49 +- a biblioteca pacotes/wicket/wicket.js agora é carregada com i3geo.js
  50 +
  51 +- a biblioteca Richdraw foi removida em favor das bibliotecas de desenho nativas de cada API utilizada nos mapas
  52 +
  53 +- o código dos editores vetoriais para as interfaces Openlayers e Googlemaps foram movidos para a pasta i3geo/classesjs
  54 +
  55 +- a ordem dos botões na barra de botões foi alterada para mostrar primeiro o botão da barra de edição
  56 +
  57 +- as funções de desenho de elementos gráficos utilizados pela interface GoogleEarth foram movidos de classesjs/classe_interface.js
  58 +para classe_desenho.js
  59 +
  60 +- por default a árvore de temas agora é mostrada com checkbox ao invés de botão do tipo radio
  61 +
  62 +- a árvore de temas agora pode ser utilizada para ligar/desligar camadas já existentes no mapa
  63 +
  64 +- alteração na estrutura do objeto que contém as informações sobre as camadas existentes no mapa. Esse objeto foi reduzido em
  65 +tamanho passando a usar uma lista de chaves e um array com os valores. Esse objeto é estruturado no servidor por classe_temas.php
  66 +
  67 +- remoção do arquivo css/botoes.css em favor de css/botoes2.css
  68 +
  69 +- as opções da guia móvel foram alteradas. Podem ser necessários ajustes nos estilos inline das interfaces em uso
  70 +para posicionar corretamente os elementos dentro das guias
  71 +
  72 +-------------------------------------------------------------------------------------------------
  73 +Para a versão 5.0
  74 +
  75 +- O usuário agora pode ver a pasta i3geo/aplicmap/dados e navegar pelos arquivos para adicionar camadas ao mapa
  76 +Se você não quiser permitir isso, inclua na interface do seu mapa a variável javascript
  77 +i3GEO.arvoreDeTemas.OPCOESADICIONAIS.navegacaoDir = false;
  78 +
  79 +- Novas variáveis no i3geo/ms_configura.php:
  80 + $saikuUrl e $saikuConfigDataSource para controle da integração com o SAIKU
  81 +
  82 + $ogcwsmap permite definir qual arquivo map será utilizado pelo gerador de serviços OGC
  83 +
  84 +
  85 +-------------------------------------------------------------------------------------------------
  86 +Para a versão 4.7
  87 +
  88 +- para testar via javascript se a versão é a 4.7, utilize:
  89 +
  90 + if(i3GEO.eventos.cliquePerm){
  91 + //seu codigo vai aqui
  92 + }
  93 +
  94 +- Criada a pasta init que contém uma nova página de inicialização
  95 +- O banco de dados de administração foi alterado. Deve ser executado o programa de upgrade do banco, existente em i3geo/admin.
  96 +- Para permitir o upgrade é necessário ter um usuário master cadastrado em i3geo/ms_configura.php
  97 +- A interface Flamingo foi removida definitivamente
  98 +- A interface "padrao" (geral) foi removida definitivamente
  99 +- O gadget "quadro" foi removido
  100 +- A opção de ativação/desativação do entorno foi removida
  101 +- Remoção da pasta i3geo/classesjs/zerocal
  102 +- Remoção da pasta i3geo/mobile
  103 +- Remoção da pasta i3geo/pacotes/yui270
  104 +- Remoção dos arquivos de exemplo de i3geo/ferramentas
  105 +- Remoção das pastas depreciadas de i3geo/ferramentas
  106 +- Remoção da pasta i3geo/pacotes/rlib
  107 +- Remoção da pasta i3geo/pacotes/jsts
  108 +- Remoção da pasta i3geo/pacotes/jsobjects
  109 +- Remoção dos arquivos js da raiz de i3geo/ferramentas
  110 +- Os arquivos javascript das ferramentas foram renomeados, removendo-se a extensão .php
  111 +- As tabelas do sistema de administração agora já podem ser armazenadas em um esquema diferente do public
  112 +- O arquivo mashups/openlayers.js.php foi substituido por mashups/openlayers.js
  113 +- O mapa com os estados do Brasil foi comentado nos mapfiles de inicialização. Para reativá-lo, deve-se remover os comentários do layer brasil existentes nos arquivos .map existentes em i3Geo/aplicmap
  114 +- O layer com os limites estaduais não são mais carregados automaticamente, o layer estadosl está agora nos mapfiles de inicialização, porém, comentado para não ser ativado automaticamente
  115 +- Os layers com a ZEE e base raster do MMA foram removidos dos mapfiles de inicialização
  116 +- ms_configura.php
  117 + - Nova variável de configuração para indicar o local das bibliotecas adicionais do software R: R_libpath
  118 +- Funções removidas de classesphp/funcoes_gerais.php e inseridas nos respectivos programas que as chamam:
  119 + classesRasterI
  120 + fusaoGrafico
  121 + executaR
  122 + criaImagemR
  123 + pegaValores
  124 + pegaValoresM
  125 + agrupaValores
  126 + reSLD
  127 + criaDirMapa
  128 + permissoesarquivo
  129 +-------------------------------------------------------------------------------------------------
  130 +Para a versão 4.6
  131 +
  132 + Simbologia
  133 +
  134 + Verifique o uso de símbolos lineares.
  135 + Utilize WIDTH no lugar de SIZE
  136 + No símbolo chamado "linhas", utilize um símbolo simples, exemplo:
  137 + STYLE
  138 + WIDTH 3
  139 + COLOR 255 0 0
  140 + END
  141 + Layout
  142 +
  143 + Para utilizar o padrão CSS3 foi incluído nas páginas o doctype:
  144 + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  145 +
  146 + Se vc usa customizações, verifique se o seu HTML é compatível com CSS3.
  147 + Um dos principais problemas é a necessidade de uso de "px" sempre que forem utilizados os estilos top, left, width e height
  148 +-------------------------------------------------------------------------------------------------
  149 +Para a versão 4.5 + SP11
  150 +
  151 + Mudanças que foram feitas para uso da versão 6 do Mapserver:
  152 +
  153 + Os mapfiles de inicialização geral1.map, geral1debian.map e geral1windows.map, existentes em i3geo/aplicmap,
  154 + foram mantidos para efeitos de compatibilidade. Os novos mapfiles de inicialização agora são:
  155 + geral1v5.map
  156 + geral1v6.map
  157 + geral1debianv5.map
  158 + geral1debianv6.map
  159 + geral1windowsv5.map
  160 + gral1windowsv6.map
  161 + "vX" indica a versão do Mapserver
  162 +
  163 + Caso o i3Geo seja inicializado com um mapfile diferente dos que são padrão, existentes em i3geo/aplicmap, é
  164 + necessário alterar esse mapfile para compatibilizá-lo com a versão 6 do Mapserver.
  165 + Utilize o arquivo i3geo/aplicmap/geral1.map ou geral1windows.map para copiar
  166 + os elementos iniciais (de MAP até o primeiro LAYER) para o mapfile de inicialização desejado.
  167 +
  168 + Arquivos de definição de símbolos:
  169 + i3geo/symbols/simbolos.sym não deve mais ser usado, continua a existir apenas para compatibilidade
  170 + novos símbolos devem ser inseridos em i3geo/symbols/simbolosv5.sym ou em i3geo/symbols/simbolosv6.sym,
  171 + conforme a versão do Mapserver em uso
  172 +
  173 + Nos mapfiles existentes em i3geo/temas, deve-se substituir a linha
  174 + SYMBOLSET ../symbols/simbolos.sym
  175 + por
  176 + SYMBOLSET ../symbols/simbolosv6.sym
  177 + ou
  178 + SYMBOLSET ../symbols/simbolosv5.sym
  179 + conforme a versão do Mapserver em uso
  180 + Sem essa mudança, o i3Geo continuará a funcionar, mas se forem criados novos símbolos em um arquivo
  181 + simbolosv5.sym ou simbolosv6.sym, deve-se fazer o mesmo em simbolos.sym
  182 +
  183 +
  184 +Para a versão 4.5 + SP8
  185 +
  186 + As interfaces Openlayers e Googlemaps por default passaram a utilizar as guias na forma "retrátil"
  187 + As interfaces com a guia lateral anterior foram renomeadas para i3geo/interface/openlayers1.htm e googlemaps1.phtml
  188 +
  189 +Para a versão 4.5
  190 +
  191 + Os arquivos com as interfaces HTML dos diferentes mapas do i3Geo foram movidos do diretório
  192 + i3geo/aplicmap para o diretório i3geo/interface. Caso existam links apontando diretamente para
  193 + esses arquivos, vc pode simplesmente copiar os arquivos existentes na nova pasta (i3geo/interface)
  194 + para a antiga (i3geo/aplicmap).
  195 +
  196 + As variáveis de configuração $temasdir e $temasaplic foram removidas. Se vc desenvolveu programas em PHP,
  197 + no lugar dessas variáveis utilize $locaplic e o local fixo dos arquivos, por exemplo $locaplic."/temas"
  198 + e $locaplic."/aplicmap"
  199 +
  200 + A opção de administração com base em arquivos XML em disco foi removida. Agora, deve-se sempre utilizar o banco de dados
  201 + de admnistração.
  202 +
  203 + O banco de dados de administração sofreu alterações. Veja em "Outras opções", no sistema de admnistração.
  204 +
  205 + O arquivo admin.db (banco de dados de admnistração default) foi movido de i3geo/menutemas para i3geo/admin
  206 +
  207 + O "alias" para a interface "zerocal" foi removido, utilize em seu lugar:
  208 + http://localhost/i3geo/ms_criamapa.php?interface=zerocal.htm ou
  209 + http://localhost/i3geo/interface/zerocal.htm
  210 +
  211 + A pasta "images" foi removida e as imagens movidas para a pasta "imagens\depreciado"
  212 +
  213 + Opção de comentários em temas
  214 + Foram acrescentadas novas variáveis em ms_configura.php. Veja esse arquivo para editar as variáveis e registrar
  215 + as APIs das redes sociais como Twitter e Facebook
  216 + Por default, todos os temas agora podem receber comentários. Para bloquear comentários em temas específicos,
  217 + utilize o editor de mapfiles do sistema de admnistração para bloquear essa opção em cada tema
  218 + Os comentários são armazenados em uma tabela no banco de dados de administração. Essa tabela precisa ser criada no banco.
  219 + Para criar a tabela veja o item "Outras opções" em http://localhost/i3geo/admin
  220 +
  221 + Contagem do número de acessos de cada tema
  222 + Foi criada uma nova tabela no sistema de administração para guardar o número de vezes que um tema é acessado. Antes
  223 + a contagem era mantida na tabela i3geoadmin_temas, cuja coluna nacessos foi depreciada. Essa nova tabela guarda também o dia do acesso.
  224 + Para criar a tabela veja o item "Outras opções" em http://localhost/i3geo/admin
  225 +
  226 + O nome dos arquivos js e ccs compactados foram renomeados, incluindo o valor da versão no final. Isso foi feito para se
  227 + evitar problemas de cache de versões antigas. Os arquivos renomeados foram:
  228 + classesjs/i3geo_tudo_compacto45.js
  229 + css/i3geo_ferramentas45.css
  230 +
  231 + Testado o uso de zlib.output_compression = On no php.ini
  232 +
  233 + Variáveis ou funções removidas
  234 + i3GEO.interface (utilize i3GEO.Interface, com "I" maiúsculo)
  235 + g_postpx
  236 + g_tipotop
  237 + g_tipoleft
  238 +
  239 + A inicialização da interface Google Earth (interface/googleearth.phtml) foi incluida na tag "body":
  240 + <body id="i3geo" onload='i3GEO.inicia();'>
  241 +
  242 + e-mail institucional (incluido no arquivo de correções SP7)
  243 + em ms_configura.php pode ser definido um e-mail padrão que é utilizado nas interfaces dos mapas
  244 + Para que o e-mail definido seja mostrado, é necessário adicionar um elemento HTML com id=emailInstituicao no mapa
  245 +
  246 +-------------------------------------------------------------------------------------------------
  247 +Para a versão 4.4
  248 +
  249 + Verifique se o PHP está configurado (php.ini) para permitir a passagem de parâmetros por referência
  250 + (dependendo da versão do PHP, esse parâmetro é definido como "Off" por default):
  251 + allow_call_time_pass_reference = On
  252 +
  253 + Foi acrescentado um novo LAYER em i3geo/aplicmp/geral1.map e geral1windows.map com dados do Open Street Map. Caso vc não
  254 + queira que essa camada nova apareça, basta removê-las desses arquivos.
  255 +
  256 + Foi incluida a remoção de cookies no ms_criamapa.php, que inicializa o i3geo ($_COOKIE = array();). Se vc precisa definir cookies,
  257 + considere a necessidade de comentar a linha de código do ms_criamapa.php.
  258 +
  259 + Por default, o i3Geo passou a usar a interface openlayers.htm. Se vc quiser modificar isso, altere o ms_configura.php.
  260 +-------------------------------------------------------------------------------------------------
  261 +Para a versão 4.3
  262 +
  263 + O banco de dados de administração sofreu as seguintes alterações (vc deve incluir as novas colunas
  264 + para que o i3Geo funcione corretamente:
  265 +
  266 + - acréscimo das colunas en,es,it nas tabelas (tipo texto)
  267 + i3geoadmin_menus
  268 + i3geoadmin_temas
  269 + i3geoadmin_grupos
  270 + i3geoadmin_subgrupos
  271 +
  272 + - acréscimo da coluna kmz_tema em i3geoadmin_temas (tipo texto)
  273 +
  274 + Foi incluida uma nova opção que permite ao usuário alterar o SQL que faz o acesso aos dados em
  275 + um LAYER (elemento DATA do mapfile). Mostrar ou não essa opção é controlado por um metadata
  276 + em cada LAYER. Por default, o i3Geo entende que esse metadata é marcado como SIM. Se vc não quer
  277 + que o usuário possa acessar essa funcionalidade, utilize o sistema de administração para editar
  278 + esse metadata de cada LAYER presente em um mapfile ou então, inclua o metadata "editorsql" "nao".
  279 +
  280 +-------------------------------------------------------------------------------------------------
  281 +Para a versão 4.1
  282 +
  283 +Sistema de administração
  284 +
  285 + A administração do i3geo pode ser feita através de um sistema de formulários web desde que vc opte por isso.
  286 +
  287 + Se vc quiser continuar usando os arquivos XML existentes em i3geo/menutemas, não tem problema, mas nesse
  288 + caso o sistema de administração não lhe será útil.
  289 +
  290 + A opção pelo uso do sistema de administração é default na versão 4.1. Se vc não quiser usá-la, deverá
  291 + editar o arquivo i3geo/ms_configura.php e colocar os nomes dos arquivos XML nas opções desejadas. Esse
  292 + arquivo está documentado, basta ler para entender o que deve ser feito.
  293 +
  294 + O sistema de administração é acessível no endereço i3geo/admin (http://localhost/i3geo/admin). Apenas editores
  295 + cadastrados podem usar esse sistema. O cadastramento é feito por número IP (veja i3geo/ms_configura.php).
  296 + Por default, "localhost" é um editor cadastrado.
  297 +
  298 + Os arquivos mapfiles existentes em i3geo/temas continuam sendo necessários e vc pode editá-los manualmente
  299 + ou por meio do sistema de administração.
  300 +
  301 + Os arquivos XML que vc já possuí em i3geo/menutemas devem ser importados para o sistema de administração.
  302 + Utilize as opções existentes em i3geo/admin para fazer isso.
  303 +
  304 + O banco de dados default do i3geo é em SQLITE e fica em i3geo/menutemas/admin.db.
  305 + Vc deve apagar esse arquivo e criar outro antes de importar seus arquivos XML. No sistema de administração
  306 + existe uma opção para criar o banco, o que deve ser feito depois que vc apagar o arquivo que vai com o i3geo.
  307 +
  308 + Se vc não quiser usar o SQLITE vc deve criar um arquivo de conexão com seu banco de dados e registrar o endereço
  309 + desse arquivo em uma variável no i3geo/ms_configura.php. Um exemplo de arquivo de configuração para POSTGRE
  310 + pode ser visto em i3geo/admin/php/conexaomm.php. Ao usar a opção de criação do banco existente no sistema
  311 + de administração, as tabelas serão criadas no banco de dados indicado.
  312 +
  313 +PHP
  314 +
  315 + O sistema de administração do i3geo é baseado na biblioteca PHP chamada "PDO". Nas versões mais recentes do
  316 + PHP e no MS4W essa biblioteca já vem habilitada. Se no seu PHP não existir o PDO vc deverá instalá-lo.
  317 +
  318 +YAHOO
  319 +
  320 + A bibblioteca do YAHOO (YUI) foi atualizada. A versão antiga continua em i3geo/pacotes. Se vc desenvolveu
  321 + programas baseados na versão antiga, é bom verificar se tudo funcionará corretamente pois o arquivo
  322 + i3geo/classesjs/i3geo.js agora utiliza essa nova versão da YUI.
  323 +
  324 +JSOBJECTS
  325 +
  326 + Essa biblioteca não será mais utilizada pelo i3geo, sendo substituída pelo YUI. Se vc utilizava as funcionalidades
  327 + dessa biblioteca, embutida no i3geo.js, deverá verificar seu código ou então embutir novamente essa
  328 + biblioteca no i3geo.js. Para isso vc deve alterar o programa i3geo/classesjs/compactajs.php e executá-lo
  329 + para gerar os arquivos compactados do i3geo.
  330 +
  331 +Classes JS e namespaces
  332 +
  333 + O modelo de desenvolvimento dos programas javascript estão sendo migrados aos poucos para estruturas
  334 + baseadas em classes. Isso facilitará a compreensão dos códigos e sua documentação, facilitando a vida
  335 + dos desenvolvedores e permitindo uma melhor evolução dos códigos.
  336 +
  337 + As classes desenvolvidas ficarão em arquivos únicos de cada classe e devem usar o namespace i3GEO. Essa
  338 + regra evitará conflitos entre bibliotecas javascript adicionadas ao i3geo.
  339 + Exemplo, para remover a acentuação de uma palavra vc pode usar a classe i3GEO.util:
  340 +
  341 + var palavraAcentuada = "coração";
  342 + var palavraSemAcento = i3GEO.util.removeAcentos(palavraAcentuada);
  343 +
  344 +Googlemaps
  345 +
  346 + A chave de registro da API do Google agora deve ser incluída no arquivo i3geo/ms_configura.php na
  347 + variável $googleApiKey.
  348 +
  349 + Isso foi necessário porque a API do Google será utilizada em outras ferramentas do i3geo.
  350 +
  351 + A ferramenta googlemaps agora é chamada com ferramentas/googlemaps/index.php
  352 +
  353 +Idiomas
  354 +
  355 + A lista de palavras e suas traduções foram retiradas do arquivo i3geo/classesjs/configura.js e incluidas no
  356 + novo arquivo i3geo/classesjs/dicionario.js
  357 +
  358 + Foi criada uma classe específica para manipular a internacionalização. Veja a documentação em
  359 + http://localhost/i3geo/documentacao/files/classesjs/classe_idioma-js.html
  360 +
  361 +Árvore de temas
  362 +
  363 + A árvore de temas, que aparece na guia "Mapa", agora é montada com a biblioteca YUI. Foi criada uma classe
  364 + javascript específica para manipular essa árvore. Veja a documentação em
  365 + http://localhost/i3geo/documentacao/files/classesjs/classe_arvoredecamadas-js.html
  366 + Os aplicativos que usam árvores também utilizam agora essa classe, como o i3geo/datadownload.htm
  367 +
  368 +Árvore de camadas
  369 +
  370 + A árvore de camadas, que aparece na guia "+ temas", agora é montada com a biblioteca YUI. Foi criada uma classe
  371 + javascript específica para manipular essa árvore. Veja a documentação em
  372 + http://localhost/i3geo/documentacao/files/classesjs/classe_arvoredetemas-js.html
  373 +
  374 +Utilitários
  375 +
  376 + Foi criada uma classe específica com funções de uso geral. Veja em:
  377 + http://localhost/i3geo/documentacao/files/classesjs/classe_util-js.html
  378 +
  379 +Cálculos
  380 +
  381 + Os cálculos agora estão na classe i3GEO.calculo, por exemplo, para converter coordenadas de dd para dms, utilize:
  382 + i3GEO.calculo.dd2dms(dd)
  383 +
  384 +objmapa
  385 +
  386 + A forma de inicialização do i3geo do lado do navegador (javascript) agora é controlado pela classe i3GEO.
  387 + O "objmapa" não é mais utilizado.
  388 + Os parâmetros do mapa, como extensão geográfica, tamanho do pixel, etc, são agora acessados por meio
  389 + de i3GEO.parametros, por exemplo, para obter a extensão geográfica do mapa atual, utilize:
  390 + alert(i3GEO.parametros.mapexten)
  391 + A lista completa de i3GEO.parametros pode ser vista em i3geo/classesjs/classe_i3geo.js
  392 +
  393 +Variáveis de configuração
  394 +
  395 + Muitas das novas classes possuem seus próprios métodos de configuração. Porém os parâmetros principais
  396 + de configuração do mapa ficam agora na classe i3GEO.configura
  397 + Por exemplo, para obter o diretório onde o i3geo está instalado, antes utilizava-se g_locaplic, agora utiliza-se
  398 + i3GEO.configura.locaplic
  399 +
  400 +Chamada aos programas PHP
  401 +
  402 + Todas as chamadas a programas PHP via AJAX foram concentradas na classe classe_php.js.