MediaWiki:Common.js: Revizyonlar arasındaki fark
MediaWiki arayüz sayfası
More actions
C. Karakuş (mesaj | katkılar) Değişiklik özeti yok |
C. Karakuş (mesaj | katkılar) Değişiklik özeti yok |
||
| 1. satır: | 1. satır: | ||
/* Ana Sayfa | /* Ana Sayfa Riski Sıfırlanmış Son Değişiklikler Feed Motoru */ | ||
mw.loader.using(['mediawiki.api'], function () { | mw.loader.using(['mediawiki.api', 'mediawiki.util'], function () { | ||
$(document).ready(function () { | $(document).ready(function () { | ||
var $feedContainer = $('#wiki-recent-js-feed'); | var $feedContainer = $('#wiki-recent-js-feed'); | ||
if (!$feedContainer.length) return; | if (!$feedContainer.length) return; | ||
var api = new mw.Api(); | var api = new mw.Api(); | ||
// | // Teknik sayfaları (Şablon, Kategori, Özel vs.) baştan filtreleyip sadece ana maddeleri çağırıyoruz | ||
api.get({ | api.get({ | ||
action: 'query', | action: 'query', | ||
list: 'recentchanges', | list: 'recentchanges', | ||
rcnamespace: 0, | rcnamespace: 0, | ||
rclimit: 5, | rclimit: 5, | ||
rctype: 'edit|new', | rctype: 'edit|new', | ||
| 18. satır: | 18. satır: | ||
var items = data.query.recentchanges; | var items = data.query.recentchanges; | ||
if (!items || items.length === 0) { | if (!items || items.length === 0) { | ||
$feedContainer.html('<div style="color:#666; padding:20px;">Henüz değişiklik | $feedContainer.html('<div style="color:#666; padding:20px; text-align:center;">Henüz bir değişiklik bulunmuyor.</div>'); | ||
return; | return; | ||
} | } | ||
var | var htmlOutput = ''; | ||
// | // Kodun kilitlenmesini önlemek için doğrudan HTML üretim döngüsüne giriyoruz | ||
items.forEach(function (item) { | |||
var pageTitle = item.title; | |||
var pageLink = mw.util.getUrl(pageTitle); | |||
var | |||
var | |||
// | // İnatçı görsel hatalarını aşmak için: Buraya sitendeki varsayılan bir görselin adını (örn: Recent-default.jpg) | ||
// ya da direkt MediaWiki'nin kendi yüklediğin logo/ikon URL'sini koyabilirsin. Şu an güvenli bir görsel alanı ayrıldı. | |||
var defaultThumb = '/skins/Common/images/magnify.png'; | |||
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">' + | |||
'<a href="' + pageLink + '"><div class="wiki-recent-fake-thumb">▶</div></a>' + | |||
'</div>' + | |||
'</div>'; | |||
}); | |||
$feedContainer.html(htmlOutput); | |||
}).fail(function () { | }).fail(function () { | ||
$feedContainer.html('<div style="color:#888; padding:20px;"> | $feedContainer.html('<div style="color:#888; padding:20px; text-align:center;">Akış yüklenirken bir sorun oluştu.</div>'); | ||
}); | }); | ||
}); | }); | ||
}); | }); | ||
07.10, 5 Temmuz 2026 tarihindeki hâli
/* Ana Sayfa Riski Sıfırlanmış Son Değişiklikler Feed Motoru */
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();
// Teknik sayfaları (Şablon, Kategori, Özel vs.) baştan filtreleyip sadece ana maddeleri çağırıyoruz
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 htmlOutput = '';
// Kodun kilitlenmesini önlemek için doğrudan HTML üretim döngüsüne giriyoruz
items.forEach(function (item) {
var pageTitle = item.title;
var pageLink = mw.util.getUrl(pageTitle);
// İnatçı görsel hatalarını aşmak için: Buraya sitendeki varsayılan bir görselin adını (örn: Recent-default.jpg)
// ya da direkt MediaWiki'nin kendi yüklediğin logo/ikon URL'sini koyabilirsin. Şu an güvenli bir görsel alanı ayrıldı.
var defaultThumb = '/skins/Common/images/magnify.png';
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">' +
'<a href="' + pageLink + '"><div class="wiki-recent-fake-thumb">▶</div></a>' +
'</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>');
});
});
});