MediaWiki:Common.js
Görünü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.
/* Buraya konulacak JavaScript kodu sitedeki her kullanıcı için her sayfa yüklendiğinde çalışacaktır */
$(function() {
// Sağda açılır menü için HTML ekle
var sidebarHtml = `
<div id="recent-pages-toggle">
<div id="recent-pages-header">🕘 En Yeni Sayfalar ▼</div>
<ul id="recent-pages-list">
<li>Yükleniyor...</li>
</ul>
</div>
<button id="recent-pages-button">Yeni Sayfalar</button>
`;
$('body').append(sidebarHtml);
var sidebar = $('#recent-pages-toggle');
var button = $('#recent-pages-button');
var header = $('#recent-pages-header');
// Başlangıçta menüyü kapalı yap
sidebar.addClass('closed');
// Toggle fonksiyonu
function toggleSidebar() {
sidebar.toggleClass('closed');
}
// Buton ve başlık tıklayınca toggle yap
button.click(toggleSidebar);
header.click(toggleSidebar);
// API ile en yeni değişiklikleri çek (son oluşturulan sayfalar da dahil)
$.ajax({
url: mw.util.wikiScript('api'),
data: {
action: 'query',
list: 'recentchanges',
rcprop: 'title|timestamp',
rclimit: 7,
rcshow: '!bot', // botların yaptığı değişiklikleri hariç tutar
rcnamespace: 0, // ana isim alanı (makaleler)
rcdir: 'older', // en yeni değişiklikler en üstte
format: 'json'
},
dataType: 'json',
success: function(data) {
var changes = data.query.recentchanges;
var listHtml = '';
changes.forEach(function(change) {
var url = mw.util.getUrl(change.title);
listHtml += '<li><a href="' + url + '">' + change.title + '</a></li>';
});
$('#recent-pages-list').html(listHtml);
},
error: function() {
$('#recent-pages-list').html('<li>Sayfalar yüklenemedi.</li>');
}
});
});