//XXX alterar a forma de estilizar as linhas de uma tabela usando estilos //table tr:nth-child(odd) { // background-color: #f1f1f1; //} //table tr:nth-child(even) { // background-color: #ffffff; //} /** * Title: i3Geo * * A classe i3GEO possuí os métodos de criação e * atualização do mapa. Todas as subclasses são baseadas em * i3GEO, por exemplo, para criar uma janela flutuante sobre o mapa, utilize * i3GEO.janela.cria() * * Para inicializar o mapa, utilize i3GEO.inicia() e para atualizar o mapa, * utilize i3GEO.atualiza(). Após terminado o processo de * inicialização, pode-se executar uma função de * ajuste. Essa função deve ser definida em i3GEO.finaliza, por * exemplo i3GEO.finaliza = "funcaoDeAjuste()" ou i3GEO.finaliza = function(){} * * Ao inicializar ou atualizar o i3Geo, é feita uma chamada em AJAX para * a obtenção dos parametros necessários ao funcionamento * do mapa. Esses parametros são armazenados na variável * i3GEO.parametros * * Nessa classe estão disponíveis variáveis internas * utilizadas em várias funções, como i3GEO.temaAtivo * * Namespace: * * i3GEO * * Veja: * * */ /** * Licença * * 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 * * Este programa é software livre; você pode redistribuí-lo * e/ou modificá-lo sob os termos da Licença Pública Geral * GNU conforme publicada pela Free Software Foundation; * * Este programa é distribuído na expectativa de que seja * útil, porém, SEM NENHUMA GARANTIA; nem mesmo a garantia * implícita de COMERCIABILIDADE OU ADEQUACÃO A UMA FINALIDADE * ESPECÍFICA. Consulte a Licença Pública Geral do GNU para * mais detalhes. Você deve ter recebido uma cópia da * Licença Pública Geral do GNU junto com este programa; se * não, escreva para a Free Software Foundation, Inc., no endereço * 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. */ /** * Section: i3GEOF * * Esse objeto recebe os métodos sob demanda por meio de * injeção de javascripts (script tag). É utilizado pelas * ferramentas existentes em i3geo/ferramentas. * * Cada javascript inserido na página adiciona novos objetos, como por * exemplo i3GEOF.buffer. */ var i3GEOF = []; var i3GEOadmin = []; /** * Section: YAHOO.i3GEO * * Namespace da biblioteca YUI que é reutilizável em vários * trechos de código do i3Geo * * Type: * * {YAHOO.namespace} */ if(typeof YAHOO != "undefined" ){ YAHOO.namespace("i3GEO"); } /** * Section: i3GEO */ var i3GEO = { /** * Constant: tamanhodoc * Largura e altura do navegador após a inicialização * do mapa * * É utilizado como um parametro para verificar se o mapa foi ou * não redimensionado pelo usuário de forma consistente * * Type: * * {array} */ tamanhodoc : [], /** * Propriedade: parametros * * Parametros obtidos do mapa atual. Os parametros são fornecidos * pelos programas PHP de redesenho e criação do mapa e * atualizados sempre que o mapa é alterado. * * Algumas dessas variáveis são definidas em ms_configura.php * * Exemplos: * * (start code) * alert(i3GEO.parametros.mapexten); * i3GEO.parametros.mapscale = 25000; * (end) * * Parametros: * * mapexten {String} - extensão geográfica do mapa no formato * xmin ymin xmax ymax * * mapscale {Numeric} - denominador da escala do mapa * * mapres {Numeric} - resolução da imagem do mapa em DPI * * pixelsize {Numeric} - tamanho em unidades de terreno dos pixels da imagem * * mapfile {String} - nome do mapfile atualmente em uso * * cgi {String} - endereço do executável do mapserver no * servidor acessível pela URL * * extentTotal {String} - extensão do mapa na * inicialização * * mapimagem {String} - URL da imagem que compõe o mapa * * geoip {sim|nao} - indica se o geoip está instalado * * listavisual {String} - (depreciado) lista de visuais disponíveis * * utilizacgi {sim|nao} - indica se o mapa atual está no modo CGI * * versaoms {String} - versão do Mapserver instalado no servidor * (maior) * * versaomscompleta {String} - versão do Mapserver instalado no * servidor (completa) * * mensagens {String} - mensagens para uso no letreiro * * w {Integer} - largura do mapa atual * * h {Integer} - altura do mapa atual * * locsistemas {String} - endereço do xml com a lista de sistemas * adicionais * * locidentifica {String} - endereço do xml com a lista de sistemas * de identificação * * r {sim|nao} - indica se o software R está instalado no servidor * * locmapas {String} - endereço do xml com a lista de mapas * * extentref {String} - extensão geográfica do mapa de * referência * * celularef {Numeric} - tamanho do pixel do mapa de referência em * unidades do terreno * * kmlurl {String} - url de um arquivo kml que será inserido no mapa. * Válido apenas na interface Google Maps * * mensagemInicia {String} - mensagem definida em ms_configura.php indicando * a versão atual do i3Geo. * * interfacePadrao {String} - interface padrão definida em * ms_configura * * embedLegenda {String} - sim|nao indica se na inicialização * a legenda foi inserida no conteúdo do mapa ou não * * celularef {Numeric} - tamanho da célula do mapa de * referência * * autenticadoopenid {sim|nao} - indica se o usuário foi autenticado * em alguma rede social * * editor {sim|nao} - indica se o usuário atual é um editor * (administrador) * * cordefundo {r,g,b} * * copyright {String} - texto existente no Layer copyright do mapfile de * inicialização * * statusFerramentas {array} - indicador de status de algumas ferramentas que dependem de configurações no servidor */ parametros : { mapexten : "", mapscale : "", mapres : "", pixelsize : "", mapfile : "", cgi : "", extentTotal : "", mapimagem : "", geoip : "", listavisual : "", // depreciado utilizacgi : "", versaoms : "", versaomscompleta : "", mensagens : "", w : "", h : "", locsistemas : "", locidentifica : "", r : "", locmapas : "", celularef : "", kmlurl : "", mensageminicia : "", interfacePadrao : "openlayers.htm", embedLegenda : "nao", autenticadoopenid : "nao", cordefundo : "", copyright : "", editor : "nao" }, /** * Propriedade: scrollerWidth * * Largura da barra de rolagem do navegador. Se for igual a "", a largura * será calculada automaticamente. * * O valor "scrollerWidth" será utilizado no calculo da largura do * mapa. Se vc não quer diminuir o tamanho do mapa, subtraindo a * largura da barra de rolagem, defina scrollerWidth = 0 * * Tipo: * * {numérico} */ scrollerWidth : "", /** * Propriedade: finaliza * * Função que será executada após a * criação e posicionamento do mapa. Pode ser uma string * também, que será avaliada com "eval". * * Exemplo: * * (start code) * * i3GEO.finaliza = function() { * if ($i("i3GEOlogoMarca")) { * $i("i3GEOlogoMarca").style.display = "none"; * } * i3GEO.mapa.insereDobraPagina("googlemaps","../imagens/dobragooglemaps.png"); * }; * * (end) * * Tipo: * * {function} */ finaliza : "", /** * Propriedade: finalizaAPI * * Função que será executada após a API * utilizada (Openlayers ou Googlemaps) ter sido inicializada e o objeto com * o mapa ter sido criado. Pode ser uma string também, que * será avaliada com "eval". * * Tipo: * * {function} */ finalizaAPI : "", /** * Variavel: temaAtivo * * Indica o último tema que foi ativado no mapa * * Permite que ao se passar de uma ferramenta para outra, os menus reflitam * a última escolha. * * Tipo: * * {string} */ temaAtivo : "", /** * Essa variável é um contador utilizado para indicar quantos * processos estão ativos e que irão executar o redesenho do * mapa. O mapa só é atualizado quando o contador for menor * que 1. Esse contador é utilizado no método i3GEO.atualiza O * contador é necessário para evitar chamadas * desnecessárias a função de redesenho do mapa. * * Tipo: {string} */ contadorAtualiza : 0, /** * Function: cria * * Cria e configura a visualização do mapa, definindo * posicionamentos, tamanho etc * * Após as definições básicas, é * executado o programa que irá realizar as * operações conforme a interface atualmente em uso. A * interface é definida em */ cria : function() { if (i3GEO.configura.ajustaDocType === true) { i3GEO.util.ajustaDocType(); } var tamanho, temp; temp = window.location.href.split("?"); if (temp[1]) { temp = temp[1].split("&"); if (temp[0] && temp[0] != "") { i3GEO.configura.sid = temp[0]; // // O # precisa ser removido, caso contrario, a opcao de reload // da // pagina pelo browser as vezes nao funciona // if (i3GEO.configura.sid.split("#")[0]) { i3GEO.configura.sid = i3GEO.configura.sid.split("#")[0]; } } } else { i3GEO.configura.sid = ""; } if (i3GEO.configura.sid === 'undefined') { i3GEO.configura.sid = ""; } i3GEO.mapa.aplicaPreferencias(); if (i3GEO.Interface.ALTTABLET != "") { if (i3GEO.util.detectaMobile()) { return; } } // // tenta definir automaticamente a variavel que indica a localizacao do // i3geo // if (!i3GEO.configura.locaplic || i3GEO.configura.locaplic === "") { i3GEO.util.localizai3GEO(); } // // calcula o tamanho do mapa // tamanho = i3GEO.calculaTamanho(); i3GEO.Interface.cria( tamanho[0], tamanho[1]); }, /** * Function: inicia * * Inicializa o mapa * * Verifica se o mapa apresenta algum problema no processamento no lado do * servidor e realiza as operações de tentativa de * recuperação, se for o caso * * No início do processo é executada a função * para realizar as operações * necessárias de manutenção de compatibilidade da * versão atual para as anteriores * * A inicialização é baseada em cujo * retorno é utilizado para definir a variável * * * Após a inicialização é executado * */ inicia : function(retorno) { // define o valor inicial da variavel que controla as etiquetas quando o // usuario clica no mapa i3GEO.eventos.cliquePerm.ativoinicial = i3GEO.eventos.cliquePerm.ativo; var montaMapa, mashup, tamanho, temp; i3GEO.mapa.aplicaPreferencias(); montaMapa = function(retorno) { try { var temp, nomecookie = "i3geoOLUltimaExtensao", preferencias = ""; // verifica se existe bloqueio em funcao da senha no // ms_configura.php if (retorno.bloqueado) { alert(retorno.bloqueado); return; } if (retorno === "") { alert("Ocorreu um erro no mapa - i3GEO.inicia.montaMapa"); retorno = { data : { erro : "erro" } }; } if (retorno.data.erro) { // i3GEO.janela.fechaAguarde("montaMapa"); document.body.style.backgroundColor = "white"; document.body.innerHTML = "
Para abrir o i3Geo utilize o link:
" + i3GEO.configura.locaplic + "/ms_criamapa.php"; return ("linkquebrado"); } else { if (retorno.data.variaveis) { i3GEO.parametros = retorno.data.variaveis; // // converte string em número // i3GEO.parametros.mapscale = i3GEO.parametros.mapscale * 1; i3GEO.parametros.mapres = i3GEO.parametros.mapres * 1; i3GEO.parametros.pixelsize = i3GEO.parametros.pixelsize * 1; i3GEO.parametros.w = i3GEO.parametros.w * 1; i3GEO.parametros.h = i3GEO.parametros.h * 1; // // obtem os parametros que foram armazenados ao salvar o // mapa // caso o mapa atual tenha sido recuperado do banco de // dados // os parametros sao armazenados em base64 no objeto // metadata do mapfile // if (retorno.data.customizacoesinit) { preferencias = YAHOO.lang.JSON.parse(retorno.data.customizacoesinit); temp = i3GEO.util.base64decode(preferencias.preferenciasbase64); i3GEO.mapa.aplicaPreferencias(temp); } // obtem o cookie com a ultima extensao geografica if (i3GEO.configura.guardaExtensao === true) { if (i3GEO.Interface.openlayers.googleLike === true) { nomecookie = "i3geoUltima_ExtensaoOSM"; } temp = i3GEO.util.pegaCookie(nomecookie); if (temp && temp != "") { temp = temp.replace( /[\+]/g, " "); i3GEO.parametros.mapexten = temp; } i3GEO.eventos.NAVEGAMAPA.push(function() { i3GEO.util.insereCookie( nomecookie, i3GEO.parametros.mapexten); }); } // anula os cookies de login se for necessario // o servidor verifica se na sessao o login esta ativo if (i3GEO.parametros.logado === "nao") { i3GEO.login.anulaCookie(); } i3GEO.arvoreDeCamadas.registaCamadas(retorno.data.temas); if (retorno.data.variaveis.navegacaoDir.toLowerCase() === "sim") { i3GEO.arvoreDeTemas.OPCOESADICIONAIS.navegacaoDir = true; } // // calcula (opcional) o tamanho correto da tabela onde // fica o mapa // se não for feito esse cálculo, o mapa // fica ajustado a esquerda // temp = 0; if ($i("contemFerramentas")) { temp = temp + parseInt( $i("contemFerramentas").style.width, 10); } if ($i("ferramentas")) { temp = temp + parseInt( $i("ferramentas").style.width, 10); } if ($i("mst")) { $i("mst").style.width = i3GEO.parametros.w + temp + "px"; } i3GEO.Interface.inicia(); // // obtem os parametros que foram armazenados ao salvar o // mapa // caso o mapa atual tenha sido recuperado do banco de // dados // if (retorno.data.customizacoesinit) { // recupera os layers graficos if (preferencias.geometriasbase64 && preferencias.geometriasbase64 != "") { temp = i3GEO.util.base64decode(preferencias.geometriasbase64); i3GEO.mapa.desCompactaLayerGrafico(temp); } // recupera os graficos if (preferencias.graficosbase64 && preferencias.graficosbase64 != "") { i3GEO.mapa.restauraGraficos(preferencias.graficosbase64); } // recupera as tabelas if (preferencias.tabelasbase64 && preferencias.tabelasbase64 != "") { i3GEO.mapa.restauraTabelas(preferencias.tabelasbase64); } } } else { alert("Erro. Impossivel criar o mapa " + retorno.data); return; } // // ativa a janela de mensagens se for o caso // if ($i("ajuda")) // para efeitos de compatibilidade com // as versões anteriores a 4.1 { i3GEO.ajuda.DIVAJUDA = "ajuda"; } /** * abreJM = "sim"; if(i3GEO.util.pegaCookie("botoesAjuda")){ * abreJM = i3GEO.util.pegaCookie("botoesAjuda"); * i3GEO.barraDeBotoes.AJUDA = (abreJM === "sim") ? true : * false; } */ if (i3GEO.configura.iniciaJanelaMensagens === true) { i3GEO.ajuda.abreJanela(); } if (i3GEO.configura.liberaGuias.toLowerCase() === "sim") { i3GEO.guias.libera(); } } i3GEO.aposIniciar(); } catch (e) { } }; if (!$i("i3geo")) { document.body.id = "i3geo"; } temp = $i("i3geo"); temp.className = "yui-skin-sam"; //previne que o tooltip balao crie barras de overflow if(document.body.id === "i3geo" && temp.style && !temp.style.overflow && i3GEO.Interface.ATUAL === "openlayers"){ temp.style.overflow = "hidden"; } // // se i3GEO.configura.sid = "", o html foi aberto diretamente // então, é necessário criar os arquivos // temporários do mapa // essa operação deve ser assíncrona // if (i3GEO.configura.sid === "") { mashup = function(retorno) { // verifica se existe bloqueio em funcao da senha no // ms_configura.php if (retorno.bloqueado) { alert(retorno.bloqueado); return; } i3GEO.configura.sid = retorno.data; i3GEO.inicia(retorno); }; i3GEO.configura.mashuppar += "&interface=" + i3GEO.Interface.ATUAL; // acrescenta camadas iniciais if (i3GEO.mapa.TEMASINICIAIS.length > 0) { i3GEO.configura.mashuppar += "&temasa=" + i3GEO.mapa.TEMASINICIAIS; } if (i3GEO.mapa.TEMASINICIAISLIGADOS.length > 0) { i3GEO.configura.mashuppar += "&layers=" + i3GEO.mapa.TEMASINICIAISLIGADOS; } i3GEO.php.criamapa( mashup, i3GEO.configura.mashuppar); } else { if (i3GEO.parametros.w === "" || i3GEO.parametros.h === "") { tamanho = i3GEO.calculaTamanho(); i3GEO.parametros.w = tamanho[0]; i3GEO.parametros.h = tamanho[1]; } i3GEO.php.inicia( montaMapa, i3GEO.configura.embedLegenda, i3GEO.parametros.w, i3GEO.parametros.h); } i3GEO.eventos.adicionaEventos("NAVEGAMAPA",["i3GEO.janela.fechaAguarde()"]); }, /** * Executa operações após o mapa ter sido posicionado * na tela * * Executa também o que for definido em i3Geo.finaliza */ aposIniciar : function() { if ($i("mst")) { $i("mst").style.visibility = "visible"; } if (YAHOO.lang.isFunction(i3GEO.finaliza)) { i3GEO.finaliza.call(); } else { if (i3GEO.finaliza != "") { eval(i3GEO.finaliza); } } if (i3GEO.guias.TIPO === "movel") { i3GEO.guias.guiaMovel.inicia(); } if (i3GEO.mapa.AUTORESIZE === true) { i3GEO.mapa.ativaAutoResize(); } }, /** * Function: atualiza * * Atualiza o mapa atual, altera a imagem do mapa os gadgets ativos e os * parametros e verifica a integridade do mapa em uso (arquivo mapfile) * * O processo executa também a função de * atualização específica da interface atual em uso, * veja * * Os seguintes gadgets são processados * * * * * * Os eventos definidos em são executados * * Parametro: * * {Objeto} - parametros do novo mapa. Se retorno * não for especificado ou se for vazio, será feita uma * chamada em ajax para sua obtenção. O resultado dessa * chamada é armazenada em i3GEO.parametros */ atualiza : function(retorno) { var corpoMapa, erro, mapscale, temp; if (i3GEO.contadorAtualiza > 1) { i3GEO.contadorAtualiza--; return; } if (i3GEO.contadorAtualiza > 0) { i3GEO.contadorAtualiza--; } i3GEO.contadorAtualiza++; // // funcao que pega os dados do mapa no servidor // corpoMapa = function() { if ($i("ajaxCorpoMapa")) { return; } i3GEO.php.corpo( i3GEO.atualiza, i3GEO.configura.tipoimagem); }; // // se retorno não tiver sido definido, busca os dados no servidor // e chama novamente a função atualiza // if (arguments.length === 0) { i3GEO.janela.fechaAguarde("ajaxCorpoMapa"); corpoMapa.call(); return; } // // igual a anterior para efeitos de compatibilidade com outras // versões do i3geo // if (retorno === "") { corpoMapa.call(); return; } // // se retorno.data não existir, é pq ocorreu um erro // if (!retorno.data) { alert(retorno); i3GEO.mapa.recupera.inicia(); // corpoMapa.call(); return; } // verifica se o parametro retorno existe, caso contrário, // faz a chamada ao programa PHP para obter os parametros try { if (retorno.data === "erro") { alert("Erro no mapa. Sera feita uma tentativa de recuperacao."); i3GEO.mapa.recupera.inicia(); return; } else if (retorno.data === "ok" || retorno.data === "") { corpoMapa.call(); return; } } catch (e) { } erro = function() { var c = confirm("Ocorreu um erro, quer tentar novamente?"); if (c) { corpoMapa.call(); } else { i3GEO.janela.fechaAguarde(); } return; }; // // atualiza as variáveis // if (arguments.length === 0 || retorno === "" || retorno.data.variaveis === undefined) { erro.call(); return; } else { // // se deu tudo certo, pega os valores do retorno e seta as // variáveis do mapa // if (arguments.length === 0) { return; } i3GEO.mapa.verifica(retorno); mapscale = i3GEO.parametros.mapscale; i3GEO.atualizaParametros(retorno.data.variaveis); if (retorno.data.variaveis.erro !== "") { alert(retorno.data.variaveis.erro); } // // o try aqui é necessário pois na interface // googlemaps os parametros retorno.data.variaveis não // são gerados completamente // temp = i3GEO.arvoreDeCamadas.converteChaveValor2normal(retorno.data.temas); try { i3GEO.arvoreDeCamadas.atualiza(temp); if (i3GEO.parametros.mapscale !== mapscale) { i3GEO.arvoreDeCamadas.atualizaFarol(i3GEO.parametros.mapscale); } } catch (e) { } i3GEO.arvoreDeCamadas.registaCamadas(temp); // nesse ponto o layer sera adicionado ao mapa i3GEO.Interface.redesenha(); if ($i("mensagemt")) { $i("mensagemt").value = i3GEO.parametros.mapexten; } i3GEO.eventos.navegaMapa(); // // verifica se deve ser feito o zoom em algum tema // temp = i3GEO.arvoreDeCamadas.verificaAplicaExtensao(); if (temp !== "") { i3GEO.tema.zoom(temp); } } }, /** * Calcula o tamanho do mapa atual e define alguns elementos HTML do mapa * * Return: {array} - [w,h] */ calculaTamanho : function() { var diminuix, diminuiy, menos, novow, novoh, w, h, temp, Dw, Dh; diminuix = (navm) ? i3GEO.configura.diminuixM : i3GEO.configura.diminuixN; diminuiy = (navm) ? i3GEO.configura.diminuiyM : i3GEO.configura.diminuiyN; menos = 0; //se for mobile if(i3GEO.Interface.ALTTABLET === "" && DetectaMobile("DetectMobileLong") === true){ menos = 20; i3GEO.configura.autotamanho = true; } temp = $i("contemFerramentas"); if (temp && temp.style && temp.style.width) { menos += parseInt( $i("contemFerramentas").style.width, 10); } temp = $i("ferramentas"); if (temp && temp.style && temp.style.width) { menos += parseInt( $i("ferramentas").style.width, 10); } if (i3GEO.configura.autotamanho === true) { if (window.top === window.self) {// nao se aplica em iframe window.resizeTo( screen.availWidth, screen.availHeight); window.moveTo( 0, 0); } } if (i3GEO.scrollerWidth === "") { i3GEO.scrollerWidth = i3GEO.util.getScrollerWidth(); } i3GEO.tamanhodoc = [ YAHOO.util.Dom.getViewportWidth(), YAHOO.util.Dom.getViewportHeight() ]; Dw = YAHOO.util.Dom.getDocumentWidth(); Dh = YAHOO.util.Dom.getDocumentHeight(); if(Dw > screen.availWidth){ Dw = screen.availWidth; } if (Dh > screen.availHeight){ Dh = screen.availHeight - 20; } novow = Dw - i3GEO.scrollerWidth; novoh = Dh; document.body.style.width = novow + "px"; document.body.style.height = novoh + "px"; w = novow - menos - diminuix; h = novoh - diminuiy; temp = $i("corpoMapa"); if (temp) { if (temp.style) { if (temp.style.width) { w = parseInt( temp.style.width, 10); h = parseInt( temp.style.width, 10); i3GEO.parametros.w = w; } if (temp.style.height) { h = parseInt( temp.style.height, 10); i3GEO.parametros.h = h; } } } temp = $i("contemImg"); if (temp) { temp.style.height = h + "px"; temp.style.width = w + "px"; } i3GEO.parametros.w = w; i3GEO.parametros.h = h; return [ w, h ]; }, /** * Recalcula o tamanho do mapa com base nas configurações do * navegador * * Return: {array} - [w,h] */ reCalculaTamanho : function() { var diminuix, diminuiy, menos, novow, novoh, w, h, temp, antigoh = i3GEO.parametros.h; diminuix = (navm) ? i3GEO.configura.diminuixM : i3GEO.configura.diminuixN; diminuiy = (navm) ? i3GEO.configura.diminuiyM : i3GEO.configura.diminuiyN; menos = 0; //se for mobile if(i3GEO.Interface.ALTTABLET === "" && DetectaMobile("DetectMobileLong") === true){ menos = 20; } temp = $i("contemFerramentas"); if (temp && temp.style && temp.style.width) { menos += parseInt( $i("contemFerramentas").style.width, 10); } temp = $i("ferramentas"); if (temp && temp.style && temp.style.width) { menos += parseInt( $i("ferramentas").style.width, 10); } document.body.style.width = "99%"; temp = i3GEO.util.tamanhoBrowser(); novow = temp[0]; novoh = temp[1]; temp = (antigoh - (novoh - diminuiy)); document.body.style.height = novoh + "px"; w = novow - menos - diminuix; h = novoh - diminuiy; temp = $i(i3GEO.Interface.IDMAPA); if (temp) { temp.style.height = h + "px"; temp.style.width = w + "px"; /* YAHOO.util.Event.addListener( temp, "click", YAHOO.util.Event.stopEvent); YAHOO.util.Event.addFocusListener( temp, YAHOO.util.Event.preventDefault); */ } temp = $i(i3GEO.Interface.IDCORPO); if (temp) { temp.style.height = h + "px"; temp.style.width = w + "px"; YAHOO.util.Event.addListener( temp, "click", YAHOO.util.Event.stopEvent); YAHOO.util.Event.addFocusListener( temp, YAHOO.util.Event.preventDefault); } temp = $i("mst"); if (temp) { temp.style.width = "100%"; } i3GEO.parametros.w = w; i3GEO.parametros.h = h; temp = function() { switch (i3GEO.Interface.ATUAL) { case "googlemaps": i3GEO.Interface.googlemaps.zoom2extent(i3GEO.parametros.mapexten); break; case "openlayers": i3GEO.Interface.openlayers.zoom2ext(i3GEO.parametros.mapexten); i3geoOL.updateSize(); if(i3GEO.Interface.openlayers.OLpanzoombar){ i3GEO.Interface.openlayers.OLpanzoombar.div.style.top = i3GEO.Interface.BARRADEZOOMTOP + "px"; i3GEO.Interface.openlayers.OLpanzoombar.div.style.left = i3GEO.Interface.BARRADEZOOMLEFT + "px"; i3GEO.Interface.openlayers.OLpanzoombar.div.style.right = i3GEO.Interface.BARRADEZOOMRIGHT + "px"; if (i3GEO.Interface.BARRADEZOOMLEFT === 0) { i3GEO.Interface.openlayers.OLpanzoombar.div.style.left = null; } if (i3GEO.Interface.BARRADEZOOMRIGHT === 0) { i3GEO.Interface.openlayers.OLpanzoombar.div.style.right = null; } } break; } ; if (i3GEO.guias.TIPO === "sanfona") { i3GEO.guias.ALTURACORPOGUIAS = h - (antigoh - i3GEO.guias.ALTURACORPOGUIAS); } else { i3GEO.guias.ALTURACORPOGUIAS = h; } return [ w, h ]; }; i3GEO.php.mudatamanho( temp, h, w); }, /** * Atualiza os valores da variável i3GEO.parametros * * Parametro: * * variaveis {obj} - objeto JSON com os valores. Tipicamente é obtido * do servidor por meio de uma chamada AJAX */ atualizaParametros : function(variaveis) { i3GEO.parametros.mapscale = variaveis.mapscale * 1; i3GEO.parametros.mapres = variaveis.mapres * 1; i3GEO.parametros.pixelsize = variaveis.pixelsize * 1; i3GEO.parametros.mapexten = variaveis.mapexten;// variaveis.mapexten; i3GEO.parametros.mapimagem = variaveis.mapimagem; i3GEO.parametros.w = variaveis.w * 1; i3GEO.parametros.h = variaveis.h * 1; i3GEO.parametros.mappath = variaveis.mappath; i3GEO.parametros.mapurl = variaveis.mapurl; if (i3GEO.login.verificaCookieLogin()) { i3GEO.parametros.editor = "sim"; } else { i3GEO.parametros.editor = "nao"; } } };