Menüyü değiştir
Toggle preferences menu
Kişisel menüyü aç / kapat
Oturum açık değil
Your IP address will be publicly visible if you make any edits.

MediaWiki:Common.js

MediaWiki arayüz sayfası
07.16, 5 Temmuz 2026 tarihinde C. Karakuş (mesaj | katkılar) tarafından oluşturulmuş 335 numaralı sürüm

Not: Yayımladıktan sonra değişiklikleri görmeniz için tarayıcınızın önbelleğini temizlemeniz gerekebilir.

  • Firefox / Safari: Shift tuşuna basılıyken Yeniden Yükle'ye tıklayın ya da Ctrl-F5 ya da Ctrl-R tıklayın (Mac için ⌘-R)
  • Google Chrome: Ctrl-Shift-R'ye basın. (Mac için ⌘-Shift-R)
  • Edge: Ctrl basılıyken Yenile'ye tıklayın ya da Ctrl-F5'e basın.
/* Ana Sayfa Son Değişiklikler Feed Motoru - Kararlı Saf Görsel Sürümü */
mw.loader.using(['mediawiki.api', 'mediawiki.util'], function () {
    $(document).ready(function () {
        var $feedContainer = $('#wiki-recent-js-feed');
        if (!$feedContainer.length) return;

        var api = new mw.Api();
        
        // Sadece ana maddeleri (Namespace 0) listeler
        api.get({
            action: 'query',
            list: 'recentchanges',
            rcnamespace: 0, 
            rclimit: 5,
            rctype: 'edit|new',
            format: 'json'
        }).done(function (data) {
            var items = data.query.recentchanges;
            if (!items || items.length === 0) {
                $feedContainer.html('<div style="color:#666; padding:20px; text-align:center;">Henüz bir değişiklik bulunmuyor.</div>');
                return;
            }

            var titles = items.map(function (item) { return item.title; });

            // Sayfa görsellerini çek
            api.get({
                action: 'query',
                titles: titles.join('|'),
                prop: 'pageimages',
                piprop: 'thumbnail',
                pithumbsize: 160,
                format: 'json'
            }).done(function (imgData) {
                var pages = imgData.query.pages;
                var imageMap = {};
                
                for (var pageId in pages) {
                    var p = pages[pageId];
                    if (p.thumbnail && p.thumbnail.source) {
                        imageMap[p.title] = p.thumbnail.source;
                    }
                }

                var htmlOutput = '';
                
                items.forEach(function (item) {
                    var pageTitle = item.title;
                    var pageLink = mw.util.getUrl(pageTitle);
                    var imgUrl = imageMap[pageTitle];

                    htmlOutput += '<div class="wiki-recent-row">' +
                        '<div class="wiki-recent-text">' +
                            '<div class="wiki-recent-title"><a href="' + pageLink + '">' + pageTitle + '</a></div>' +
                        '</div>' +
                        '<div class="wiki-recent-img-wrapper">';
                    
                    if (imgUrl) {
                        htmlOutput += '<a href="' + pageLink + '"><img src="' + imgUrl + '" alt="' + pageTitle + '"></a>';
                    } else {
                        // Eğer maddede görsel yoksa sitenin kendi logosunu veya şık boş bir kutu basar
                        htmlOutput += '<a href="' + pageLink + '"><div class="wiki-recent-empty-thumb"></div></a>';
                    }
                    
                    htmlOutput += '</div></div>';
                });

                $feedContainer.html(htmlOutput);
            });
        }).fail(function () {
            $feedContainer.html('<div style="color:#888; padding:20px; text-align:center;">Akış yüklenirken bir sorun oluştu.</div>');
        });
    });
});