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ı
3. satır: 3. satır:
     var ns = mw.config.get('wgNamespaceNumber');
     var ns = mw.config.get('wgNamespaceNumber');
     var title = mw.config.get('wgTitle');
     var title = mw.config.get('wgTitle');
    var user = mw.config.get('wgRelevantUserName');


    // Sadece içerik sayfaları, Anasayfa hariç
     if (ns !== 0 || title === 'Anasayfa') return;
     if (ns !== 0 || title === 'Anasayfa') return;


9. satır: 11. satır:
     var imageCount = $('#mw-content-text img').length;
     var imageCount = $('#mw-content-text img').length;


     if (textLength < 600 || imageCount < 1) {
     if (textLength >= 600 && imageCount >= 1) return;


        $('#mw-content-text').prepend(
    if ($('#gelistirilmeli-kutu').length) return;
            '<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>'
        );


        var user = mw.config.get('wgUserName');
    // Geliştirilmeli şablonunu ekle
        if (!user) return;
    $('#mw-content-text').prepend(
        '<div id="gelistirilmeli-kutu">{{Geliştirilmeli}}</div>'
    );


         $.get(mw.util.wikiScript('api'), {
    // Sayfayı oluşturan kullanıcıyı bul
    new mw.Api().get({
        action: 'query',
        prop: 'revisions',
        titles: title,
        rvlimit: 1,
        rvdir: 'newer',
         rvprop: 'user'
    }).done(function (data) {
 
        var pages = data.query.pages;
        var firstUser = Object.values(pages)[0].revisions[0].user;
 
        // Kullanıcının kaç tane "Geliştirilmeli" sayfası var say
        new mw.Api().get({
             action: 'query',
             action: 'query',
             list: 'usercontribs',
             list: 'usercontribs',
             ucuser: user,
             ucuser: firstUser,
             uclimit: 500,
             uclimit: 500
            format: 'json'
         }).done(function (ucdata) {
         }).done(function (data) {
 
            var count = 0;


             var pages = {};
             ucdata.query.usercontribs.forEach(function (c) {
            data.query.usercontribs.forEach(function (c) {
                 if (c.title !== title) return;
                 if (c.ns === 0) pages[c.title] = true;
                count++;
             });
             });


             var count = Object.keys(pages).length;
             if (count < 5) return;


             if (count >= 5) {
             // Kullanıcı sayfasına kutu ekle (sayfa olmasa bile)
            new mw.Api().postWithToken('csrf', {
                action: 'edit',
                title: 'Kullanıcı:' + firstUser,
                prependtext: '{{Tecrübesiz düzenleyici}}\n',
                createonly: false
            });


                if (ns === 2 && title === user) {
            // Kullanıcıya mesaj gönder
                    $('#mw-content-text').prepend(
            new mw.Api().postWithToken('csrf', {
                        '<div class="tecrubesiz-kutu">' +
                action: 'edit',
                        '⚠️ Bu kullanıcı birçok yetersiz içerikli sayfa oluşturmuştur. <b>Tecrübesiz düzenleyici</b>' +
                title: 'Kullanıcı mesaj:' + firstUser,
                        '</div>'
                appendtext: '\n{{subst:Hoşgeldin uyarı}}\n',
                    );
                createonly: false
                }
            });
 
                $.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]]) 13.46, 8 Şubat 2026 (UTC)',
                    token: mw.user.tokens.get('csrfToken'),
                    format: 'json'
                });
 
            }


         });
         });


     }
     });


});
});

13.56, 8 Şubat 2026 tarihindeki hâli

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

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

    // Sadece içerik sayfaları, Anasayfa hariç
    if (ns !== 0 || title === 'Anasayfa') return;

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

    if (textLength >= 600 && imageCount >= 1) return;

    if ($('#gelistirilmeli-kutu').length) return;

    // Geliştirilmeli şablonunu ekle
    $('#mw-content-text').prepend(
        '<div id="gelistirilmeli-kutu">{{Geliştirilmeli}}</div>'
    );

    // Sayfayı oluşturan kullanıcıyı bul
    new mw.Api().get({
        action: 'query',
        prop: 'revisions',
        titles: title,
        rvlimit: 1,
        rvdir: 'newer',
        rvprop: 'user'
    }).done(function (data) {

        var pages = data.query.pages;
        var firstUser = Object.values(pages)[0].revisions[0].user;

        // Kullanıcının kaç tane "Geliştirilmeli" sayfası var say
        new mw.Api().get({
            action: 'query',
            list: 'usercontribs',
            ucuser: firstUser,
            uclimit: 500
        }).done(function (ucdata) {

            var count = 0;

            ucdata.query.usercontribs.forEach(function (c) {
                if (c.title !== title) return;
                count++;
            });

            if (count < 5) return;

            // Kullanıcı sayfasına kutu ekle (sayfa olmasa bile)
            new mw.Api().postWithToken('csrf', {
                action: 'edit',
                title: 'Kullanıcı:' + firstUser,
                prependtext: '{{Tecrübesiz düzenleyici}}\n',
                createonly: false
            });

            // Kullanıcıya mesaj gönder
            new mw.Api().postWithToken('csrf', {
                action: 'edit',
                title: 'Kullanıcı mesaj:' + firstUser,
                appendtext: '\n{{subst:Hoşgeldin uyarı}}\n',
                createonly: false
            });

        });

    });

});