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 1.327: Baris 1.327:


/* ==========================================================
/* ==========================================================
   🧠 MIPPEDIA SMART-SUMMARY V5 - TYPEWRITER EDITION (ULTRA FIXED)
   🧠 MIPPEDIA SMART-SUMMARY V5 - TOTAL INVISIBLE MODE
   - Anti-Leak: Tombol HARAM muncul di Editor / Media Viewer / History
  - Fix: Paksa hilang saat Editor, Multimedia Viewer, & Action
   - Anti-Leak: Menggunakan CSS State-Detection
   ========================================================== */
   ========================================================== */
(function() {
(function() {
Baris 1.346: Baris 1.347:
     $(document).ready(function() {
     $(document).ready(function() {
         var ns = mw.config.get('wgNamespaceNumber');
         var ns = mw.config.get('wgNamespaceNumber');
         var action = mw.config.get('wgAction');
          
        // 1. SATPAM CSS (Paling Ampuh)
        // Ini bakal nge-hide tombol secara otomatis kalo ada class editor atau viewer aktif
        $('<style>').text(`
            /* Sembunyikan jika di halaman selain artikel utama */
            body:not(.ns-0) #mip-summary-btn { display: none !important; }
           
            /* Sembunyikan jika sedang edit, history, atau delete (Action Check) */
            body:not(.action-view) #mip-summary-btn { display: none !important; }
           
            /* Sembunyikan saat Multimedia Viewer (Layar hitam gambar) aktif */
            .mw-mmv-viewer-active #mip-summary-btn { display: none !important; }
           
            /* Sembunyikan saat Editor Visual atau Wikitext Editor terbuka */
            .ve-active #mip-summary-btn,
            .wikiEditor-ui #mip-summary-btn,
            #wpTextbox1 #mip-summary-btn { display: none !important; }
        `).appendTo('head');


         // 1. FILTER KETAT (Penyebab Masalah di Screenshot lo)
         // Pengecekan dasar biar kodenya gak jalan di tempat yang salah
        // Tombol mati kalau: Bukan artikel, lagi Edit, lagi History, atau ada editor aktif
         if (ns !== 0 || mw.config.get('wgAction') !== 'view') return;
         if (ns !== 0 || action !== 'view' || $('#wpTextbox1').length || $('.ve-ui-surface').length) {
            return;
        }


         // 2. Tombol Melayang Presisi
         // 2. Tombol Melayang
         var $btn = $('<div id="mip-summary-btn">✨ Rangkum</div>').css({
         var $btn = $('<div id="mip-summary-btn">✨ Rangkum</div>').css({
             'position': 'absolute', 'right': '15px', 'top': '-35px',
             'position': 'absolute', 'right': '15px', 'top': '-35px',
Baris 1.363: Baris 1.378:
         $('.page-actions-menu').css('position', 'relative').prepend($btn);
         $('.page-actions-menu').css('position', 'relative').prepend($btn);


         // 3. CSS TAMBAHAN: Sembunyiin paksa kalau ada MediaViewer (Layar hitam gambar)
         // 3. Logic Cinematic Typing
        $('<style>').text(`
            .mw-mmv-viewer-active #mip-summary-btn,
            .ve-active #mip-summary-btn {
                display: none !important;
            }
        `).appendTo('head');
 
        // 4. Logic Cinematic Typing
         $btn.on('click', function() {
         $btn.on('click', function() {
             var fullText = getSummary();
             var fullText = getSummary();