|
|
4. satır: |
4. satır: |
| // 1) Araçlar menüsüne emoji ekle | | // 1) Araçlar menüsüne emoji ekle |
| $('#p-tb h3').prepend('⚙️️ '); | | $('#p-tb h3').prepend('⚙️️ '); |
| });
| |
|
| |
| mw.loader.using('mediawiki.api', function () {
| |
| jQuery(function ($) {
| |
| var lang = mw.config.get('wgUserLanguage') || mw.config.get('wgContentLanguage');
| |
| // Sadece tam “en” kullanıcısına en, diğer herkese tr
| |
| var subpage = 'MediaWiki:Sidebar/' + (lang === 'en' ? 'en' : 'tr');
| |
| var fallback = 'MediaWiki:Sidebar';
| |
| var api = new mw.Api();
| |
|
| |
| // 1) Önce o subpage'in gerçekten var olup olmadığını kontrol et
| |
| api.get({
| |
| action: 'query',
| |
| titles: subpage,
| |
| format: 'json'
| |
| }).then(function (res) {
| |
| var pages = res.query.pages;
| |
| // missing olmayan bir page varsa exists = true
| |
| var exists = Object.values(pages).some(function(p){ return !p.missing; });
| |
| // 2) Parse isteğini, ya subpage'e ya fallback'e yönlendir
| |
| return api.get({
| |
| action: 'parse',
| |
| page: exists ? subpage : fallback,
| |
| prop: 'text',
| |
| format:'json'
| |
| });
| |
| }).done(function (data) {
| |
| if (data.parse && data.parse.text) {
| |
| var html = data.parse.text['*'];
| |
| // Varsa Vector legacy ya da Vector2022 vs. selector'ları deneyip replace edelim
| |
| var $container = $('#mw-panel, #mw-navigation, .mw-sidebar').first();
| |
| if ($container.length) {
| |
| $container.html(html);
| |
| } else {
| |
| console.error('Sidebar konteyneri bulunamadı; selectorları kontrol edin.');
| |
| }
| |
| } else if (data.error) {
| |
| console.warn('Parse sırasında hata:', data.error);
| |
| }
| |
| }).fail(function (err) {
| |
| console.error('Sidebar yüklenirken AJAX hatası:', err);
| |
| });
| |
| });
| |
| }); | | }); |
/* Buraya konulacak JavaScript kodu sitedeki her kullanıcı için her sayfa yüklendiğinde çalışacaktır */
$(document).ready(function() {
// 1) Araçlar menüsüne emoji ekle
$('#p-tb h3').prepend('⚙️️ ');
});