MediaWiki:Common.js: Perbedaan antara revisi
Tidak ada ringkasan suntingan Tanda: Suntingan perangkat seluler Suntingan peramban seluler |
Tidak ada ringkasan suntingan Tanda: Suntingan perangkat seluler Suntingan peramban seluler |
||
| Baris 529: | Baris 529: | ||
}); | }); | ||
}); | }); | ||
/* ========================================================== | |||
📍 MIPPEDIA DATA - AUTO TEXT-TO-MAP LOCATOR | |||
Otomatis mengubah teks nama tempat menjadi peta visual | |||
========================================================== */ | |||
(function() { | |||
$(document).ready(function() { | |||
// 1. Tentukan target teks yang mau dijadiin peta | |||
// Kita cari di tabel data yang biasanya berisi info lokasi | |||
var locationText = ""; | |||
// Cari di baris tabel yang punya kata kunci lokasi/tempat | |||
$('.wikitable tr, .infobox tr').each(function() { | |||
var label = $(this).find('th').text().toLowerCase(); | |||
if (label.includes('lokasi') || label.includes('tempat') || label.includes('pusat') || label.includes('asal')) { | |||
locationText = $(this).find('td').text().split(',')[0].trim(); // Ambil kata pertama sebelum koma | |||
return false; // Stop pencarian kalau udah dapet | |||
} | |||
}); | |||
// 2. Kalau nemu teks lokasi (misal: "Jakarta" atau "Bandung") | |||
if (locationText && locationText.length > 2) { | |||
var $mapWrapper = $('<div>').css({ | |||
'margin': '15px 0', | |||
'padding': '10px', | |||
'border': '1px solid #ccc', | |||
'background': '#ffffff', | |||
'border-radius': '8px', | |||
'box-shadow': '0 2px 5px rgba(0,0,0,0.1)' | |||
}); | |||
// Judul kecil di atas peta | |||
$mapWrapper.append('<div style="font-weight:bold; font-size:0.9em; margin-bottom:8px; color:#333;">📍 Pratinjau Lokasi: ' + locationText + '</div>'); | |||
// Iframe menggunakan Nominatim (pencarian teks ke peta) | |||
// Kita pake fitur search OpenStreetMap biar teks "Bandung" langsung jadi titik | |||
var embedUrl = "https://www.openstreetmap.org/export/embed.html?layer=mapnik&q=" + encodeURIComponent(locationText); | |||
var $iframe = $('<iframe>').attr({ | |||
'src': embedUrl, | |||
'width': '100%', | |||
'height': '250', | |||
'frameborder': '0', | |||
'style': 'border-radius: 6px; border: 1px solid #eee;' | |||
}); | |||
$mapWrapper.append($iframe); | |||
// Link tambahan ke Google Maps buat user yang mau navigasi | |||
$mapWrapper.append('<div style="text-align:right; margin-top:5px;"><a href="https://www.google.com/maps/search/' + encodeURIComponent(locationText) + '" target="_blank" style="font-size:0.8em; color:#6a5acd; font-weight:bold; text-decoration:none;">Lihat di Google Maps →</a></div>'); | |||
// 3. Masukkan ke halaman (di bawah deskripsi otomatis) | |||
if ($('#mip-desc-section').length) { | |||
$('#mip-desc-section').after($mapWrapper); | |||
} | |||
} | |||
}); | |||
})(); | |||