MediaWiki:Common.js: Perbedaan antara revisi

Tidak ada ringkasan suntingan
Tanda: Dikembalikan Suntingan perangkat seluler Suntingan peramban seluler
Tidak ada ringkasan suntingan
Tanda: Dikembalikan Suntingan perangkat seluler Suntingan peramban seluler
Baris 1.165: Baris 1.165:


/* ==========================================================
/* ==========================================================
   📩 MIPPEDIA INSTANT WELCOME SYSTEM (V4 - SYSTEM ACCOUNT MODE)
   📩 MIPPEDIA INSTANT WELCOME (TRIGGERED BY NEW USER ONLY)
   Fitur: Auto-deliver via System Account Identity
   Logika: Langsung tembak API saat landing pertama kali
   ========================================================== */
   ========================================================== */
$(document).ready(function() {
$(document).ready(function() {
     var user = mw.config.get('wgUserName');
    // 1. Cek apakah ini landing page setelah sukses daftar
     var registrationTime = mw.config.get('wgUserRegistration');  
    // MediaWiki biasanya kasih parameter returnto=Halaman_Utama&welcomequery=1 atau sejenisnya
    var api = new mw.Api();
     var isNewbie = mw.config.get('wgUserRegistration');
     var now = new Date().getTime();
   
    if (isNewbie) {
        var regDate = new Date(isNewbie).getTime();
        // Cek apakah akun baru dibuat < 1 menit yang lalu
        if ((now - regDate) / 1000 < 60) {
           
            var api = new mw.Api();
            var user = mw.config.get('wgUserName');
            var talkPage = 'Pembicaraan_Pengguna:' + user;


    // 1. Pastikan script hanya jalan untuk pengguna yang sudah login
             api.get({ action: 'query', titles: talkPage }).done(function(res) {
    if (!user) return;
                var page = res.query.pages[Object.keys(res.query.pages)[0]];
 
                if (page.missing !== undefined) {
    function deliverWelcomeMessage() {
                    // KIRIM PESAN DENGAN IDENTITAS MIPPEDIA SYSTEM
        // Cek apakah akun ini masih fresh (kurang dari 5 menit)
                    api.postWithToken('edit', {
        if (registrationTime !== null) {
                        action: 'edit',
            var regDate = new Date(registrationTime).getTime();
                        title: talkPage,
            var nowTime = new Date().getTime();
                        text: "== 🎊 Selamat Datang == \n\n Isi panduan lo di sini... --[[Pengguna:Mippedia System|Mippedia System]] 11 April 2026 02.38 (UTC)",
            var diffInMinutes = (nowTime - regDate) / (1000 * 60);
                         summary: 'Pesan selamat datang otomatis',
 
                        markasbot: true
             if (diffInMinutes > 0 && diffInMinutes < 5) {
                    });
                var talkPage = 'Pembicaraan_Pengguna:' + user;
                }
 
            });
                // 2. Cek status halaman pembicaraan
                api.get({
                    action: 'query',
                    titles: talkPage,
                    prop: 'info'
                }).done(function(data) {
                    var page = data.query.pages[Object.keys(data.query.pages)[0]];
                   
                    // 3. Jika halaman masih kosong/missing, kirim pesan
                    if (page && page.missing !== undefined) {
                       
                        var welcomeContent =
                            "== 🎊 Selamat Datang di Mippedia, " + user + "! ==\n\n" +
                            "Halo! Akun Anda telah resmi terdaftar sebagai bagian dari komunitas **Mippedia**. 🚀\n\n" +
                            "=== 📚 Panduan Cepat ===\n" +
                            "* '''Buat Artikel:''' Cari topik di kotak pencarian, jika belum ada, buat artikel baru dengan referensi yang valid.\n" +
                            "* '''Halaman Pengguna:''' Atur profil Anda di [[Pengguna:" + user + "|Halaman Pengguna]].\n" +
                            "* '''Verifikasi:''' Dapatkan centang biru 🔵 dengan klik menu '''Verifikasi''' di profil Anda.\n\n" +
                            "=== ⚖️ Aturan ===\n" +
                            "* Gunakan bahasa yang sopan dan sudut pandang netral.\n\n" +
                            "Selamat berkontribusi! --[[Pengguna:Mippedia System|Mippedia System]] (bicara) 11 April 2026 02.22 (UTC)";
 
                        // 4. Eksekusi Pengiriman dengan Token Sah
                         api.postWithToken('edit', {
                            action: 'edit',
                            title: talkPage,
                            text: welcomeContent,
                            summary: 'Selamat Datang! (Pesan Otomatis)',
                            markasbot: true,
                            nocreate: false // Pastikan sistem diizinkan membuat halaman baru
                        }).done(function() {
                            mw.notify('Panduan pemula telah dikirim ke halaman pembicaraan Anda.', { type: 'success' });
                        }).fail(function(code, result) {
                            console.error('Gagal kirim pesan:', code, result);
                        });
                    }
                });
            }
         }
         }
     }
     }
    deliverWelcomeMessage();
});
});