Lompat ke isi

MediaWiki:Common.js

Dari Mippedia bahasa Indonesia, ensiklopedia umum
Revisi sejak 5 April 2026 10.12 oleh Admin (bicara | kontrib) (←Membuat halaman berisi '→* Mippedia Universal Data Sync * Menarik Deskripsi dari data.mippedia.org secara otomatis: $(document).ready(function() { var pageTitle = mw.config.get('wgPageName').replace(/_/g, ' '); var namespace = mw.config.get('wgNamespaceNumber'); // Hanya jalan di Namespace Utama (Artikel) if (namespace === 0) { // DAFTAR TABEL: Tambahkan nama tabel baru di sini kalau lo bikin lagi di Cargo var tablesToSearch = ['Penyanyi', 'Musisi...')
(beda) ← Revisi sebelumnya | Revisi terkini (beda) | Revisi selanjutnya → (beda)

Catatan: Setelah menerbitkan, Anda mungkin perlu melewati tembolok peramban web Anda untuk melihat perubahan.

  • Firefox/Safari: Tekan dan tahan Shift sembari mengeklik Reload, atau tekan Ctrl-F5 atau Ctrl-R (⌘-R di Mac)
  • Google Chrome: Tekan Ctrl-Shift-R (⌘-Shift-R di Mac)
  • Edge: Tahan Ctrl sembari mengeklik Refresh, atau tekan Ctrl-F5
/* * Mippedia Universal Data Sync 
 * Menarik Deskripsi dari data.mippedia.org secara otomatis
 */
$(document).ready(function() {
    var pageTitle = mw.config.get('wgPageName').replace(/_/g, ' ');
    var namespace = mw.config.get('wgNamespaceNumber');

    // Hanya jalan di Namespace Utama (Artikel)
    if (namespace === 0) {
        // DAFTAR TABEL: Tambahkan nama tabel baru di sini kalau lo bikin lagi di Cargo
        var tablesToSearch = ['Penyanyi', 'Musisi', 'Lagu', 'Album', 'Genre', 'Instrumen']; 
        
        $.ajax({
            url: 'https://data.mippedia.org/api.php',
            data: {
                action: 'cargoquery',
                tables: tablesToSearch.join(','),
                fields: 'Deskripsi',
                // Cari berdasarkan Nama di form ATAU Judul Halaman
                where: 'Nama="' + pageTitle + '" OR _pageName="' + pageTitle + '"',
                format: 'json',
                origin: location.protocol + '//' + location.hostname
            },
            dataType: 'json',
            success: function(data) {
                if (data.cargoquery && data.cargoquery.length > 0) {
                    var shortDesc = data.cargoquery[0].title.Deskripsi;
                    
                    if (shortDesc) {
                        // 1. Suntik ke Meta Description (buat Google/SEO)
                        $('meta[name="description"]').attr('content', shortDesc);
                        
                        // 2. Suntik Visual ke bawah judul (Ganti tulisan "Dari Mippedia...")
                        if ($('#siteSub').length) {
                            $('#siteSub').text(shortDesc).css({
                                'display': 'block',
                                'font-weight': 'bold',
                                'color': '#54595d',
                                'font-style': 'italic'
                            });
                        }
                        
                        // 3. Inject tag SHORTDESC secara virtual agar terbaca sistem wiki
                        $('.mw-parser-output').prepend('<div class="metadata-shortdesc" style="display:none">' + shortDesc + '</div>');
                        
                        console.log('Mippedia Data: Deskripsi otomatis terpasang!');
                    }
                }
            },
            error: function() {
                console.log('Mippedia Data: Gagal terhubung ke server data.');
            }
        });
    }
});