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 608: Baris 608:
                 $('#mip-desc-section').after($mapWrapper);
                 $('#mip-desc-section').after($mapWrapper);
             }
             }
        }
    });
})();
/* ==========================================================
  ⏳ MIPPEDIA DATA - ENTITY HISTORY TIMELINE
  Otomatis menyusun kronologi berdasarkan tahun di tabel data
  ========================================================== */
(function() {
    $(document).ready(function() {
        var events = [];
       
        // Ambil data dari tabel (Infobox atau Wikitable)
        $('.infobox tr, .wikitable tr').each(function() {
            var label = $(this).find('th').text().trim();
            var value = $(this).find('td').text().trim();
           
            // Cari angka tahun (19xx atau 20xx)
            var yearMatch = value.match(/\b(19|20)\d{2}\b/);
            if (yearMatch && label) {
                events.push({
                    year: yearMatch[0],
                    desc: label.replace(':', '') + ': ' + value
                });
            }
        });
        // Urutkan tahun dari yang terkecil
        events.sort((a, b) => a.year - b.year);
        if (events.length > 0) {
            var $timelineBox = $('<div>').css({
                'margin-top': '30px',
                'padding': '20px',
                'background': '#fdfdfd',
                'border': '1px solid #eee',
                'border-radius': '12px'
            });
            $timelineBox.append('<h3 style="margin-top:0; font-size:1.1em; color:#333; border-bottom:2px solid #6a5acd; display:inline-block;">⏳ Garis Waktu Entitas</h3>');
           
            var $list = $('<div style="margin-top:15px; border-left: 2px solid #6a5acd; padding-left: 20px; margin-left: 10px;"></div>');
           
            events.forEach(function(ev) {
                var $item = $('<div style="position:relative; margin-bottom:15px;"></div>');
                $item.append('<div style="position:absolute; left:-27px; top:5px; width:12px; height:12px; background:#6a5acd; border-radius:50%; border:3px solid #fff;"></div>');
                $item.append('<strong style="color:#6a5acd; display:block; font-size:1em;">' + ev.year + '</strong>');
                $item.append('<span style="font-size:0.9em; color:#555;">' + ev.desc + '</span>');
                $list.append($item);
            });
            $timelineBox.append($list);
           
            // Masukkan setelah bagian deskripsi atau di akhir konten
            $('#mw-content-text').append($timelineBox);
         }
         }
     });
     });
})();
})();