MediaWiki:Common.js: Revizyonlar arasındaki fark

MYWiki sitesinden
Gezinti kısmına atla Arama kısmına atla
Değişiklik özeti yok
Etiket: Geri alındı
Değişiklik özeti yok
Etiket: Geri alındı
4. satır: 4. satır:
     var title = mw.config.get('wgTitle');
     var title = mw.config.get('wgTitle');


     if (ns !== 0 || title === 'Anasayfa') return;
    // Sadece kullanıcı sayfalarında çalışsın
     if (ns !== 2) return; // 2 = User namespace
 
    var user = mw.config.get('wgUserName');
    if (!user) return;


     var textLength = $('#mw-content-text').text().trim().length;
     var textLength = $('#mw-content-text').text().trim().length;
     var imageCount = $('#mw-content-text img').length;
     var imageCount = $('#mw-content-text img').length;


    // Sayfa geliştirilmeli uyarısı
     if (textLength < 600 || imageCount < 1) {
     if (textLength < 600 || imageCount < 1) {
         $('#mw-content-text').prepend(
         $('#mw-content-text').prepend(
             '<div class="gelismeli-uyari">' +
             '<div class="gelismeli-uyari">' +
19. satır: 23. satır:
             '</div></div>'
             '</div></div>'
         );
         );
    }


        var user = mw.config.get('wgUserName');
    // Kullanıcının 5'ten fazla yetersiz sayfası varsa "Tecrübesiz düzenleyici" kutusu ve mesaj
        if (!user) return;
    $.get(mw.util.wikiScript('api'), {
 
        action: 'query',
        $.get(mw.util.wikiScript('api'), {
        list: 'usercontribs',
            action: 'query',
        ucuser: user,
            list: 'usercontribs',
        uclimit: 500,
            ucuser: user,
        format: 'json'
            uclimit: 500,
    }).done(function (data) {
            format: 'json'
        var pages = {};
        }).done(function (data) {
        data.query.usercontribs.forEach(function (c) {
 
            if (c.ns === 0) pages[c.title] = true; // ns=0 = mainspace
            var pages = {};
            data.query.usercontribs.forEach(function (c) {
                if (c.ns === 0) pages[c.title] = true;
            });
 
            var count = Object.keys(pages).length;
 
            if (count >= 5) {
 
                if (ns === 2 && title === user) {
                    $('#mw-content-text').prepend(
                        '<div class="tecrubesiz-kutu">' +
                        '⚠️ Bu kullanıcı birçok yetersiz içerikli sayfa oluşturmuştur. <b>Tecrübesiz düzenleyici</b>' +
                        '</div>'
                    );
                }
 
                $.post(mw.util.wikiScript('api'), {
                    action: 'edit',
                    title: 'Kullanıcı mesaj:' + user,
                    appendtext: '\n== Sayfalarınız hakkında uyarı ==\nOluşturduğunuz bazı sayfalar yeterli içerik barındırmamaktadır. Lütfen sayfalarınızı gözden geçiriniz.\n[[Kullanıcı:Admin|Admin]] ([[Kullanıcı mesaj:Admin|mesaj]]) 15.08, 8 Şubat 2026 (UTC)',
                    token: mw.user.tokens.get('csrfToken'),
                    format: 'json'
                });
 
            }
 
         });
         });


    }
        var count = Object.keys(pages).length;


mw.hook('wikipage.content').add(function ($content) {
        if (count >= 5) {
    // Sadece kullanıcı sayfalarında çalışsın
            // Kullanıcı sayfasına "Tecrübesiz düzenleyici" kutusu
    var namespace = mw.config.get('wgCanonicalNamespace');
            $('#mw-content-text').prepend(
    if (namespace !== 'User') return;
                '<div class="tecrubesiz-kutu">' +
                '⚠️ Bu kullanıcı birçok yetersiz içerikli sayfa oluşturmuştur. <b>Tecrübesiz düzenleyici</b>' +
                '</div>'
            );


    var username = mw.config.get('wgTitle');
            // Mesaj gönder
            $.post(mw.util.wikiScript('api'), {
                action: 'edit',
                title: 'Kullanıcı mesaj:' + user,
                appendtext: '\n== Sayfalarınız hakkında uyarı ==\nOluşturduğunuz bazı sayfalar yeterli içerik barındırmamaktadır. Lütfen sayfalarınızı gözden geçiriniz.\n[[Kullanıcı:Admin|Admin]] ([[Kullanıcı mesaj:Admin|mesaj]]) 15.08, 8 Şubat 2026 (UTC)',
                token: mw.user.tokens.get('csrfToken'),
                format: 'json'
            });
        }
    });


     // Kullanıcı gruplarını API ile al
     // Hizmetli pimi
     $.get(mw.util.wikiScript('api'), {
     $.get(mw.util.wikiScript('api'), {
         action: 'query',
         action: 'query',
         list: 'users',
         list: 'users',
         ususers: username,
         ususers: title,
         usprop: 'groups',
         usprop: 'groups',
         format: 'json'
         format: 'json'
     }).done(function (data) {
     }).done(function (data) {
         var user = data.query.users[0];
         var u = data.query.users[0];
         if (!user) return;
         if (!u) return;


        var groups = user.groups;
         if (u.groups.includes('hizmetli')) {
         if (groups.includes('hizmetli')) {
             $('#mw-content-text').prepend(
            // Hizmetli pimi ekle
             $content.prepend(
                 '<div class="hizmetli-pimi" style="color:white; background:#008000; padding:3px 6px; border-radius:5px; margin-bottom:5px; font-weight:bold;">Hizmetli</div>'
                 '<div class="hizmetli-pimi" style="color:white; background:#008000; padding:3px 6px; border-radius:5px; margin-bottom:5px; font-weight:bold;">Hizmetli</div>'
             );
             );
         }
         }
     });
     });
});


});
});

17.33, 8 Şubat 2026 tarihindeki hâli

mw.hook('wikipage.content').add(function () {

    var ns = mw.config.get('wgNamespaceNumber');
    var title = mw.config.get('wgTitle');

    // Sadece kullanıcı sayfalarında çalışsın
    if (ns !== 2) return; // 2 = User namespace

    var user = mw.config.get('wgUserName');
    if (!user) return;

    var textLength = $('#mw-content-text').text().trim().length;
    var imageCount = $('#mw-content-text img').length;

    // Sayfa geliştirilmeli uyarısı
    if (textLength < 600 || imageCount < 1) {
        $('#mw-content-text').prepend(
            '<div class="gelismeli-uyari">' +
            '<div class="gelismeli-ikon">⚠️</div>' +
            '<div class="gelismeli-icerik">' +
            '<div class="gelismeli-baslik">Bu sayfa geliştirilmeli</div>' +
            '<div class="gelismeli-aciklama">Bu wiki yeterli içerik ve görsel barındırmıyor. Lütfen metni genişletin ve en az bir görsel ekleyin.</div>' +
            '</div></div>'
        );
    }

    // Kullanıcının 5'ten fazla yetersiz sayfası varsa "Tecrübesiz düzenleyici" kutusu ve mesaj
    $.get(mw.util.wikiScript('api'), {
        action: 'query',
        list: 'usercontribs',
        ucuser: user,
        uclimit: 500,
        format: 'json'
    }).done(function (data) {
        var pages = {};
        data.query.usercontribs.forEach(function (c) {
            if (c.ns === 0) pages[c.title] = true; // ns=0 = mainspace
        });

        var count = Object.keys(pages).length;

        if (count >= 5) {
            // Kullanıcı sayfasına "Tecrübesiz düzenleyici" kutusu
            $('#mw-content-text').prepend(
                '<div class="tecrubesiz-kutu">' +
                '⚠️ Bu kullanıcı birçok yetersiz içerikli sayfa oluşturmuştur. <b>Tecrübesiz düzenleyici</b>' +
                '</div>'
            );

            // Mesaj gönder
            $.post(mw.util.wikiScript('api'), {
                action: 'edit',
                title: 'Kullanıcı mesaj:' + user,
                appendtext: '\n== Sayfalarınız hakkında uyarı ==\nOluşturduğunuz bazı sayfalar yeterli içerik barındırmamaktadır. Lütfen sayfalarınızı gözden geçiriniz.\n[[Kullanıcı:Admin|Admin]] ([[Kullanıcı mesaj:Admin|mesaj]]) 15.08, 8 Şubat 2026 (UTC)',
                token: mw.user.tokens.get('csrfToken'),
                format: 'json'
            });
        }
    });

    // Hizmetli pimi
    $.get(mw.util.wikiScript('api'), {
        action: 'query',
        list: 'users',
        ususers: title,
        usprop: 'groups',
        format: 'json'
    }).done(function (data) {
        var u = data.query.users[0];
        if (!u) return;

        if (u.groups.includes('hizmetli')) {
            $('#mw-content-text').prepend(
                '<div class="hizmetli-pimi" style="color:white; background:#008000; padding:3px 6px; border-radius:5px; margin-bottom:5px; font-weight:bold;">Hizmetli</div>'
            );
        }
    });

});