Mudanças entre as edições de "Widget:MapViewer.js"

De Wiki Gla
Ir para navegação Ir para pesquisar
(Página substituída por '<includeonly><div id="mapa-<!--{$id|escape:'quotes'|default:'mapa1'}-->" style="width:<!--{$largura|escape:'quotes'|default:'100%'}-->; height:<!--{$altura|escape:'quot...')
Etiqueta: Substituído
Linha 1: Linha 1:
<includeonly><div id="mapa-<!--{$id|escape:'quotes'|default:'mapa1'}-->" style="width:<!--{$largura|escape:'quotes'|default:'100%'}-->; height:<!--{$altura|escape:'quotes'|default:'500px'}-->; background:#0f172a; border-radius:12px; overflow:hidden; position:relative;">
<includeonly><div id="mapa-<!--{$id|escape:'quotes'}-->"></div>
    <div style="position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); color:#64748b; text-align:center;">
        🗺️ Carregando mapa...
    </div>
</div>
 
<script>
<script>
// @noescape
// @noescape
(function() {
var jsonEncoded = '<!--{$json|escape:'quotes'}-->';
    var id = '<!--{$id|escape:'quotes'|default:'mapa1'}-->';
var jsonString = decodeURIComponent(jsonEncoded);
    var container = document.getElementById('mapa-' + id);
var config = JSON.parse(jsonString);
    if (!container) return;
document.getElementById('mapa-<!--{$id|escape:'quotes'}-->').innerHTML = '✅ Funcionou!';
   
    // PEGAR O JSON DIRETAMENTE COMO TEXTO BRUTO
    var jsonBruto = `<!--{$json}-->`;
   
    // LIMPAR O JSON: remover espaços extras e quebras
    jsonBruto = jsonBruto.replace(/\s+/g, ' ');
    jsonBruto = jsonBruto.trim();
   
    console.log('JSON bruto:', jsonBruto.substring(0, 200));
   
    var config;
    try {
        config = JSON.parse(jsonBruto);
        console.log('✅ JSON válido!', config.layers.length, 'camadas');
    } catch(e) {
        console.error('❌ Erro JSON:', e.message);
        container.innerHTML = '<div style="padding:20px; text-align:center; color:#ef4444;">❌ Erro no JSON: ' + e.message + '</div>';
        return;
    }
   
    if (!config.layers || config.layers.length === 0) {
        container.innerHTML = '<div style="padding:20px; text-align:center; color:#f59e0b;">⚠️ Nenhuma camada</div>';
        return;
    }
   
    container.innerHTML = '<div style="padding:20px; text-align:center; color:#10b981;">Mapa carregado! ' + config.layers.length + ' camadas.</div>';
})();
</script></includeonly>
</script></includeonly>

Edição das 20h35min de 9 de abril de 2026