MediaWiki:Common.js: Difference between revisions
Jump to navigation
Jump to search
Content deleted Content added
No edit summary |
m French translation for SVGThumbs |
||
Line 662: | Line 662: | ||
cs: 'Tento obrázek jako PNG v jiné velikosti: ', |
cs: 'Tento obrázek jako PNG v jiné velikosti: ', |
||
fa: 'این تصویر به صورت پیانجی در اندازههای دیگر نمایش دادهشد', |
fa: 'این تصویر به صورت پیانجی در اندازههای دیگر نمایش دادهشد', |
||
fr: 'Cette image restituée en PNG dans d’autres tailles : ', |
|||
ml: 'ഈ ചിത്രം PNG ആയി ലഭ്യമാകുന്ന മറ്റ് വലിപ്പങ്ങൾ: ', |
ml: 'ഈ ചിത്രം PNG ആയി ലഭ്യമാകുന്ന മറ്റ് വലിപ്പങ്ങൾ: ', |
||
mk: 'Сликава како PNG во други големини: ', |
mk: 'Сликава како PNG во други големини: ', |
Revision as of 16:18, 16 September 2011
// Overwriting deprecated functions that have a follower that (also) accepts the same syntax:
window.addPortletLink = mw.util.addPortletLink;
window.getParamValue = mw.util.getParamValue;
window.appendCSS = mw.util.addCSS;
/**
* Prepend server (if not already).
* @example '/something' to 'http://commons.wikimedia.org/something'
* @example don't touch 'https://commons.wikimedia.org/foo'
* @example don't touch '//commons.wikimedia.org/bar'
* @param url {String}
* @return {String}
*/
mw.util.expandUrl = function( url ) {
if ( url.substr( 0, 1 ) == '/' && url.substr( 0, 2 ) !== '//' ) {
return mw.config.get( 'wgServer' ) + url;
} else {
return url;
}
};
// Creates action=raw links for JS or CSS gadgets
// Useful for mw.loader.load, which doesn't accept page titles
function rawPageLink( pageName ) {
return mw.config.get( 'wgServer' ) + mw.config.get( 'wgScript' ) + '?title=' + mw.util.wikiUrlencode(pageName) + '&action=raw&ctype=text/javascript';
}
// Overwriting deprecated functions that don't have an exact followup but can be easily mapped:
window.importScriptURI = function(uri) {
return mw.loader.load( mw.util.expandUrl( uri ) );
};
window.importScript = function( page ) {
if ( $.isEmpty( page ) ) { return false; }
var url = rawPageLink( page );
mw.loader.load( url );
};
//Set global error handler.
//Puts occuring JS error on the page if the user is a sysop (non-webkit browser or new webkit-browser)
//So we don't load when sysop has an older webkit browser
//Errors catched with try catch are not affected
var client = $.client.profile();
if ( $.inArray ('sysop', mw.config.get( 'wgUserGroups' ) ) != -1 && (client.layout !== 'webkit' || (client.layout == 'webkit' && client.layoutVersion >= 533)) ) {
window.onerror = function (error, url, line) {
var msg = '<p><b>Error: </b>';
if (url !== '') {
msg += url + ' at line ' + line + ': ';
}
msg += error + '</p>';
jsMsgAppend(msg);
};
//unbind on leaving the page
$(window).unload( function () { window.onerror=null; } );
}
// Enhanced version of jsMsg from wikibits.js. jsMsg can display only one message, subsequent
// calls overwrite any previous message. This version appends new messages after already
// existing ones. Soon to be replaced by mw.util version
function jsMsgAppend(msg, className) {
if ( $('#mw-js-message').is(':empty') ) {
jsMsg(msg, className);
} else {
//append it
$('#mw-js-message').show().append(msg);
}
}
/**
* JSconfig
*
* Global configuration options to enable/disable and configure
* specific script features from [[MediaWiki:Common.js]] and [[MediaWiki:Monobook.js]]
* This framework adds config options (saved as cookies) to [[Special:Preferences]]
* For a more permanent change you can override the default settings in your
* [[Special:Mypage/monobook.js]]
* for Example: JSconfig.keys[loadAutoInformationTemplate] = false;
*
* Maintainer: [[User:Dschwen]]
*/
var JSconfig = {
prefix: 'jsconfig_',
keys: {},
meta: {},
// Register a new configuration item
// * name : String, internal name
// * default_value : String or Boolean (type determines configuration widget)
// * description : String, text appearing next to the widget in the preferences, or an hash-object
// containing translations of the description indexed by the language code
// * prefpage : Integer (optional), section in the preferences to insert the widget:
// 0 : User profile User profile
// 1 : Skin Appearance
// 2 : Math Date and Time
// 3 : Files Editing
// 4 : Date and time Recent Changes
// 5 : Editing Watchlist
// 6 : Recent changes Search Options
// 7 : Watchlist Misc
// 8 : Search Gadgets
// 9 : Misc
//
// Access keys through JSconfig.keys[name]
registerKey: function (name, default_value, description, prefpage) {
if (typeof JSconfig.keys[name] == 'undefined') {
JSconfig.keys[name] = default_value;
} else {
// all cookies are read as strings,
// convert to the type of the default value
switch (typeof default_value) {
case 'boolean':
JSconfig.keys[name] = (JSconfig.keys[name] == 'true');
break;
case 'number':
JSconfig.keys[name] = JSconfig.keys[name] / 1;
break;
}
}
JSconfig.meta[name] = {
'description': description[mw.config.get( 'wgUserLanguage' )] || description.en || (typeof description == 'string' && description) || '<i>en</i> translation missing',
'page': prefpage || 0,
'default_value': default_value
};
// if called after setUpForm(), we'll have to add an extra input field
if (JSconfig.prefsTabs) {
JSconfig.addPrefsInput(name);
}
},
readCookies: function () {
var cookies = document.cookie.split('; ');
var p = JSconfig.prefix.length;
var i;
for (var key = 0; cookies && key < cookies.length; key++) {
if (cookies[key].substring(0, p) == JSconfig.prefix) {
i = cookies[key].indexOf('=');
//alert( cookies[key] + ',' + key + ',' + cookies[key].substring(p,i) );
JSconfig.keys[cookies[key].substring(p, i)] = cookies[key].substring(i + 1);
}
}
},
writeCookies: function () {
var expdate = new Date();
expdate.setTime(expdate.getTime() + 1000 * 60 * 60 * 24 * 3650); // expires in 3560 days
for (var key in JSconfig.keys) {
document.cookie = JSconfig.prefix + key + '=' + JSconfig.keys[key] + '; path=/; expires=' + expdate.toUTCString();
}
},
evaluateForm: function () {
var w_ctrl, wt;
//alert('about to save JSconfig');
for (var key in JSconfig.meta) {
w_ctrl = document.getElementById(JSconfig.prefix + key);
if (w_ctrl) {
wt = typeof JSconfig.meta[key].default_value;
switch (wt) {
case 'boolean':
JSconfig.keys[key] = w_ctrl.checked;
break;
case 'string':
JSconfig.keys[key] = w_ctrl.value;
break;
}
}
}
JSconfig.writeCookies();
return true;
},
prefsTabs: false,
setUpForm: function () {
var prefChild = document.getElementById('preferences');
if (!prefChild) {
return;
}
prefChild = prefChild.childNodes;
//
// make a list of all preferences sections
//
var tabs = [];
var len = prefChild.length;
for (var key = 0; key < len; key++) {
if (prefChild[key].tagName && prefChild[key].tagName.toLowerCase() == 'fieldset') {
tabs.push(prefChild[key]);
}
}
JSconfig.prefsTabs = tabs;
//
// Create Widgets for all registered config keys
//
for (var wkey in JSconfig.meta) {
JSconfig.addPrefsInput(wkey);
}
addEvent(document.getElementById('preferences').parentNode, 'submit', JSconfig.evaluateForm);
},
addPrefsInput: function (key) {
var w_div = document.createElement('DIV');
var w_label = document.createElement('LABEL');
var wt = typeof JSconfig.meta[key].default_value;
switch (wt) {
case 'boolean':
JSconfig.meta[key].description = ' ' + JSconfig.meta[key].description;
break;
default:
//case 'string':
JSconfig.meta[key].description += ': ';
break;
}
w_label.appendChild(document.createTextNode(JSconfig.meta[key].description));
w_label.htmlFor = JSconfig.prefix + key;
var w_ctrl = document.createElement('INPUT');
w_ctrl.id = JSconfig.prefix + key;
// before insertion into the DOM tree
switch (wt) {
case 'boolean':
w_ctrl.type = 'checkbox';
w_div.appendChild(w_ctrl);
w_div.appendChild(w_label);
break;
default:
//case 'string':
w_ctrl.type = 'text';
w_div.appendChild(w_label);
w_div.appendChild(w_ctrl);
break;
}
JSconfig.prefsTabs[JSconfig.meta[key].page].appendChild(w_div);
// after insertion into the DOM tree
switch (wt) {
case 'boolean':
w_ctrl.defaultChecked = w_ctrl.checked = JSconfig.keys[key];
break;
case 'string':
w_ctrl.defaultValue = w_ctrl.value = JSconfig.keys[key];
break;
}
}
};
JSconfig.readCookies();
if (mw.config.get( 'wgCanonicalSpecialPageName' ) == 'Preferences') {
$(JSconfig.setUpForm);
}
/**
* withJS
*
* Allow to load custom scripts from the MediaWiki namespace without
* editing [[Special:Mypage/common.js]]
*
* Maintainer: [[User:Platonides]], [[User:Lupo]]
*/
var extraJS = mw.util.getParamValue('withJS');
// Leave here for backwards compatibility
(function (extraJS) {
if (!extraJS) {
return;
}
if (extraJS.match(/^MediaWiki:[^&<>=%#]*\.js$/)) {
// Disallow some characters in file name
importScript(extraJS);
} else {
// Dont use alert but the jsMsg system. Run jsMsg only once the DOM is ready.
$(function () {
jsMsgAppend(extraJS + ' javascript not allowed to be loaded.', 'error');
});
}
})(extraJS);
/**
* withCSS
*
* Allow to load custom styles from the MediaWiki namespace without
* editing [[Special:Mypage/common.css]]
*
* Maintainer: [[User:Krinkle]]
*/
var extraCSS = mw.util.getParamValue('withCSS');
if ( extraCSS ) {
// Disallow some characters in file name
if (extraCSS.match(/^MediaWiki:[^&<>=%#]*\.css$/)) {
importStylesheet(extraCSS);
// Dont use alert but the jsMsg system. Run jsMsg only once the DOM is ready.
} else {
$(function() {
jsMsgAppend(extraCSS + ' stylesheet not allowed to be loaded.', 'error');
});
}
}
/**
* Attach (or remove) an Event to a specific object
* Local Maintainer: [[User:Dschwen]]
*
* @deprecated: Use jQuery binding instead for more browser compatibility and fewer code
*/
function addEvent(obj, type, fn) {
if (obj.addEventListener) {
obj.addEventListener(type, fn, false);
} else if (obj.attachEvent) {
obj['e' + type + fn] = fn;
obj[type + fn] = function () {
obj['e' + type + fn](window.event);
};
obj.attachEvent('on' + type, obj[type + fn]);
}
}
function removeEvent(obj, type, fn) {
if (obj.removeEventListener) {
obj.removeEventListener(type, fn, false);
} else if (obj.detachEvent) {
obj.detachEvent('on' + type, obj[type + fn]);
obj[type + fn] = null;
obj['e' + type + fn] = null;
}
}
/**
* Edittools
*
* Formatting buttons for special characters below the edit field
* Also enables these buttons on any textarea or input field on the page.
*
* Maintainer: [[User:Lupo]], [[User:DieBuche]]
*/
if ( $.inArray( mw.config.get( 'wgAction' ), [ 'edit' , 'submit' ]) > -1
|| mw.config.get( 'wgCanonicalSpecialPageName' ) == 'Upload'
) {
importScript('MediaWiki:Edittools.js');
//Avoid loading a rather long function for all users
//REMOVEME in 1.18, since all toolbars will use $.fn.textSelection
if (typeof $.fn.textSelection == 'undefined') {
importScript('MediaWiki:Edittools-legacy.js');
}
}
/**
* Collapsible tables
* @deprecated: $.fn.makeCollapsible() will be in core soon.
*/
//mw.loader.load( 'http://commons.wikimedia.org/w/index.php?title=MediaWiki:JQuery-makeCollapsible.js&action=raw&ctype=text/javascript&smaxage=21600&maxage=86400' );
//mw.loader.load('http://commons.wikimedia.org/w/index.php?title=MediaWiki:JQuery-makeCollapsible.css&action=raw&ctype=text/css&smaxage=21600&maxage=86400','text/css');
// Old version
mw.loader.load( rawPageLink( 'MediaWiki:CollapsibleTemplates.js' ) );
/**
* ImageAnnotator
* Globally enabled per
* http://commons.wikimedia.org/?title=Commons:Village_pump&oldid=26818359#New_interface_feature
* Maintainer: [[User:Lupo]]
*/
// Not on Special pages, and only if viewing the page
if (mw.config.get( 'wgNamespaceNumber' ) != -1 && $.inArray(mw.config.get('wgAction'), ['view', 'purge']) != -1 ) {
if (typeof ImageAnnotator_disable == 'undefined' || !ImageAnnotator_disable) {
// Don't even import it if it's disabled.
importScript('MediaWiki:Gadget-ImageAnnotator.js');
}
}
/**
* Special:Upload enhancements
*
* Moved to [[MediaWiki:Upload.js]]
*
* Maintainer: [[User:Lupo]]
*/
function enableNewUploadForm() {
//Set UploadForm_forcebasic, while taking JSconfig cookies into account.
if (typeof UploadForm_forcebasic == 'undefined') {
UploadForm_forcebasic = (typeof JSconfig.keys.UploadForm_newlayout == 'undefined' ) ? false : (!JSconfig.keys.UploadForm_newlayout);
}
var match = navigator.userAgent.match(/AppleWebKit\/(\d+)/);
if (match) {
var webKitVersion = parseInt(match[1], 10);
if (webKitVersion < 420) {
return; // Safari 2 crashes hard with the new upload form
}
}
var isNlWLM = (document.URL.indexOf('uselang=nlwikilovesmonuments') >= 0);
// honor JSConfig user settings
if (!isNlWLM && !JSconfig.keys['UploadForm_loadform'] && UploadForm_forcebasic) {
return;
}
importScript('MediaWiki:UploadForm.js');
// Load additional enhancements for a special upload form (request by User:Multichill)
if (isNlWLM) {
importScript('MediaWiki:UploadFormNlWikiLovesMonuments.js');
}
}
if (mw.config.get( 'wgCanonicalSpecialPageName' ) == 'Upload') {
importScript('MediaWiki:Upload.js');
// (Un)comment the following line (the call to enableNewUploadForm) to globally enable/disable
// new upload form. Leave the line *above* (the include of MediaWiki:Upload.js) untouched;
// that script provides useful default behavior if the new upload form is disabled or
// redirects to the old form in case an error occurs.
enableNewUploadForm();
}
/**
* QICSigs
*
* Fix for the broken signatures in gallery tags
* Helper script to make voting on QIC easier
* needed for [[COM:QIC]]
*
* Maintainers: [[User:Dschwen]]
*/
if (mw.config.get( 'wgPageName' ) == 'Commons:Quality_images_candidates/candidate_list' && mw.config.get( 'wgAction' ) == 'edit') {
importScript('MediaWiki:QICSigs.js');
importScript('MediaWiki:QIvoter.js');
}
/**
* VICValidate
*
* Some basic form validation for creating new Valued image nominations
* needed for [[COM:VIC]]
*
* Maintainers: [[User:Dschwen]]
*/
if (mw.config.get( 'wgPageName' ) == 'Commons:Valued_image_candidates' && mw.config.get( 'wgAction' ) == 'view') {
importScript('MediaWiki:VICValidate.js');
}
/**
* subPagesLink
*
* Adds a link to subpages of current page
*
* Maintainers: [[:he:משתמש:ערן]], [[User:Dschwen]]
*
* JSconfig items: bool JSconfig.subPagesLink(true=enabled (default), false=disabled)
*/
var subPagesLink = {
// Translations of the menu item
i18n: {
'bg': 'Подстраници',
'ca': 'Subpàgines',
'cs': 'Podstránky',
'de': 'Unterseiten',
'en': 'Subpages', // default
'et': 'Alamlehed',
'eo': 'Subpaĝoj',
'eu': 'Azpiorrialdeak',
'es': 'Subpáginas',
'fa': 'زیرصفحهها',
'fi': 'Alasivut',
'fr': 'Sous-pages',
'gl': 'Subpáxinas',
'he': 'דפי משנה',
'hr': 'Podstranice',
'it': 'Sottopagine',
'is': 'Undirsíður',
'ko': '하위 문서 목록',
'mk': 'Потстраници',
'ml': 'ഉപതാളുകൾ',
'nl': "Subpagina's",
'no': 'Undersider',
'pl': 'Podstrony',
'pt': 'Subpáginas',
'pt-br': 'Subpáginas',
'ru': 'Подстраницы',
'sv': 'Undersidor'
},
install: function () {
// honor user configuration
if (!JSconfig.keys.subPagesLink) {
return;
}
if (document.getElementById('t-whatlinkshere')
&& $.inArray ( mw.config.get( 'wgNamespaceNumber' ), [ -1/* Special */, 6 /* File */, 14 /* Category */] ) == -1
) {
var subpagesText = subPagesLink.i18n[mw.config.get( 'wgUserLanguage' )] || subPagesLink.i18n.en;
var subpagesLink = mw.util.wikiGetlink('Special:Prefixindex/' + mw.config.get( 'wgPageName' ) + '/');
mw.util.addPortletLink('p-tb', subpagesLink, subpagesText, 't-subpages');
}
}
};
JSconfig.registerKey('subPagesLink', true, {
'bg': 'Показване на връзката Подстраници в менюто с инструменти',
'cs': 'Zobrazovat v panelu nástrojů odkaz Podstránky',
'en': 'Show a Subpages link in the toolbox',
'fa': 'نمایش زیرصفجهها در جعبه ابزار',
// default
'mk': 'Покажи врска до потстраниците во алатникот',
'ml': 'പണിസഞ്ചിയിൽ ഉപതാളുകൾക്കുള്ള കണ്ണി പ്രദർശിപ്പിക്കുക',
'pl': 'Pokaż w panelu bocznym link do podstron',
'pt': 'Exibir um link para as subpáginas no menu de ferramentas',
'pt-br': 'Exibir um link para as subpáginas no menu de ferramentas',
'ru': 'Показывать ссылку на подстраницы в меню инструментов',
'sv': 'Visa en länk för undersidor i verktygslådan'
}, 7);
$(subPagesLink.install);
/**
* gallery shuffle
*
* Maintainers: [[User:Dschwen]]
*/
function gallery_dshuf() {
$('div.dshuf>ul.gallery').each( function(i,e) {
var li = $(e).children('li.gallerybox');
// assign random keys
li.each( function(i,e) { $(e).data('dshufkey',Math.random()); } );
// sort according to key
li.sort( function(a,b) {
var A = $(a).data('dshufkey'),
B = $(b).data('dshufkey');
if (A < B) { return -1; }
else if (A > B) { return 1; }
else { return 0; }
});
// append in random order
li.each( function(i,n) { $(n).appendTo( $(e) ); } );
});
}
$(gallery_dshuf);
/**
* dshuf
*
* shuffles div elements with the class dshuf and
* common class dshufsetX (X being an integer)
* taken from http://commons.wikimedia.org/?title=MediaWiki:Common.js&oldid=7380543
*
* Maintainers: [[User:Gmaxwell]], [[User:Dschwen]]
*/
function dshuf() {
var shufsets = {};
var rx = new RegExp('dshuf' + '\\s+(dshufset\\d+)', 'i');
var divs = document.getElementsByTagName('div');
var i = divs.length;
while (i--) {
if (rx.test(divs[i].className)) {
if (typeof shufsets[RegExp.$1] == 'undefined') {
shufsets[RegExp.$1] = {};
shufsets[RegExp.$1].inner = [];
shufsets[RegExp.$1].member = [];
}
shufsets[RegExp.$1].inner.push({
key: Math.random(),
html: divs[i].innerHTML
});
shufsets[RegExp.$1].member.push(divs[i]);
}
}
for (shufset in shufsets) {
shufsets[shufset].inner.sort(function (a, b) {
return a.key - b.key;
});
i = shufsets[shufset].member.length;
while (i--) {
shufsets[shufset].member[i].innerHTML = shufsets[shufset].inner[i].html;
shufsets[shufset].member[i].style.display = 'block';
}
}
}
$(dshuf);
/**
* Dismissable notice for Special:Watchlist
* Useful to use instead of the sitenotice for messages only
* relevant to registered users.
*/
if (mw.config.get( 'wgCanonicalSpecialPageName' ) == 'Watchlist') {
importScript('MediaWiki:WatchlistNotice.js');
}
/**
* localizeSignature: localizes the signature on Commons with the string in the user's preferred language
*
* Maintainer: [[User:Slomox]]
*/
function localizeSignature() {
var talkTextLocalization = {
ca: 'Discussió',
cs: 'diskuse',
de: 'Diskussion',
fa: 'بحث',
fr: 'd',
mk: 'Разговор',
pt: 'Discussão',
'pt-br': 'Discussão',
nds: 'Diskuschoon',
sv: 'Diskussion'
};
var talkText = talkTextLocalization[mw.config.get( 'wgUserLanguage' )];
if (!talkText) {
return;
}
$('.signature-talk').text(talkText);
}
$(localizeSignature);
/**
* Add 'Nominate for Deletion' to toolbar ([[MediaWiki:AjaxQuickDelete.js]])
*
* Maintainer: [[User:DieBuche]]
*/
if (!window.AjaxDeleteOptOut && mw.config.get( 'wgNamespaceNumber' ) > -1) {
importScript('MediaWiki:AjaxQuickDelete.js ');
}
/**
* Import usergroup-specific stylesheet, only for admins atm
*
* Maintainer: ?
*/
if ( $.inArray( 'sysop', mw.config.get( 'wgUserGroups' ) ) > -1 ) {
importStylesheet('MediaWiki:Admin.css');
} else if ( $.inArray( 'filemover', mw.config.get( 'wgUserGroups' ) ) > -1 ) {
importStylesheet('MediaWiki:Filemover.css');
}
/**
* Ajax Translation of /lang links, see [[MediaWiki:AjaxTranslation.js]]
* Maintainer: [[User:ערן]], [[User:DieBuche]]
*/
if (!window.disableAjaxTranslation) {
importScript('MediaWiki:AjaxTranslation.js');
}
/**
* SVG images: adds links to rendered PNG images in different resolutions
*
* Maintainer:´ ?
* @deprecated in 1.18
*/
function SVGThumbs() {
var file = document.getElementById('file'); // might fail if MediaWiki can't render the SVG
if (file && mw.config.get( 'wgIsArticle' ) && mw.config.get( 'wgTitle' ).match(/\.svg$/i)) {
var thumbu = file.getElementsByTagName('IMG')[0].src;
if (!thumbu) {
return;
}
function svgAltSize(w, title) {
var path = thumbu.replace(/\/\d+(px-[^\/]+$)/, '/' + w + '$1');
var a = document.createElement('A');
a.setAttribute('href', path);
a.appendChild(document.createTextNode(title));
return a;
}
var p = document.createElement('p');
p.className = 'SVGThumbs';
var i18n = {
en: 'This image rendered as PNG in other sizes: ',
de: 'Dieses Bild im PNG-Format in folgenden Größen: ',
cs: 'Tento obrázek jako PNG v jiné velikosti: ',
fa: 'این تصویر به صورت پیانجی در اندازههای دیگر نمایش دادهشد',
fr: 'Cette image restituée en PNG dans d’autres tailles : ',
ml: 'ഈ ചിത്രം PNG ആയി ലഭ്യമാകുന്ന മറ്റ് വലിപ്പങ്ങൾ: ',
mk: 'Сликава како PNG во други големини: ',
pt: 'Esta imagem renderizada como PNG em outros tamanhos: ',
'pt-br': 'Esta imagem renderizada como PNG em outros tamanhos: ',
sv: 'Denna bild i PNG-format i olika storlekar: '
};
ptext = i18n[mw.config.get( 'wgUserLanguage' )] || i18n.en;
p.appendChild(document.createTextNode(ptext));
var l = [200, 500, 1000, 2000];
for (var i = 0; i < l.length; i++) {
p.appendChild(svgAltSize(l[i], l[i] + 'px'));
if (i < l.length - 1) {
p.appendChild(document.createTextNode(', '));
}
}
p.appendChild(document.createTextNode('.'));
var info = getElementsByClassName(file.parentNode, 'div', 'fullMedia')[0];
if (info) {
info.appendChild(p);
}
}
}
$(SVGThumbs);
// Language specific site-wide JavaScript
importScript('MediaWiki:Common.js/' + mw.config.get( 'wgUserLanguage' ));
// Automatic language selection in {{mld}}
if (window.ls_enable !== false) {
importScript('MediaWiki:Multilingual description.js');
}
/**
* Helper function to normalize date used by script (e.g. Flickrreview script)
*
* Maintainer: ???
*/
function getISODate() {
var date = new Date();
// UTC
var dd = date.getUTCDate();
if (dd < 10) {
dd = '0' + dd.toString();
}
var mm = date.getUTCMonth() + 1;
if (mm < 10) {
mm = '0' + mm.toString();
}
var YYYY = date.getUTCFullYear();
var ISOdate = YYYY + '-' + mm + '-' + dd;
return ISOdate;
}
/**
* Sitenotice translation for all skins
* Maintainer: Krinkle
*/
$(function () {
if (mw.config.get( 'wgUserLanguage' ) !== 'en') {
$('#siteNotice p').load(
mw.util.wikiGetlink( 'MediaWiki:Sitenotice-translation' ) + '?action=render&uselang=' + mw.config.get( 'wgUserLanguage' ) + ' p'
);
}
});
/**
* Main page tab all main pages and instead of the 'Gallery' tab
*/
if ($.inArray( mw.config.get( 'wgNamespaceNumber' ), [ 0 , 1 ]) > -1) {
importScript('MediaWiki:MainPages.js');
}
/**
* Change target of add-section links
* See Template:ChangeSectionLink
*
* Maintainer: ?
*/
$(function () {
var changeAddSection = document.getElementById('jsChangeAddSection');
if (changeAddSection) {
var addSection = document.getElementById('ca-addsection');
if (addSection) {
addSection.firstChild.setAttribute('href', mw.util.wikiGetlink( changeAddSection.getAttribute('title') ) + '?action=edit§ion=new' );
}
}
});
/**
* Add links to GlobalUsage and the CommonsDelinker log to file deletion log entries.
*
* Maintainer: [[User:Ilmari Karonen]]
*/
$(function () {
var $deletions = mw.util.$content.find('li.mw-logline-delete');
if (!$deletions.length) {
return;
}
// create the links in advance so we can cloneNode() them quickly in the loop
var guLink = $('<a>', {
'class' : 'delinker-log-globalusage'
}).append('global usage');
var cdLink = $('<a>', {
'class' : 'delinker-log-link extiw'
}).append('delinker log');
var span = $('<span>', {
'class' : 'delinker-log-links'
}).append(' (').append(guLink).append('; ')
.append(cdLink).append(')');
$deletions.each (function() {
$match = $( this ).find('a[title^="File:"]');
if ( $match.length ) {
var filename = $match.text().substring(5).replace(/ /g,'_');
guLink.attr('href', mw.util.wikiGetlink( 'Special:GlobalUsage' ) + '?target=' + filename );
guLink.attr('title', 'Current usage of ' + filename + ' on all Wikimedia projects');
cdLink.attr('href', 'http://toolserver.org/~delinker/index.php?image=' + filename);
cdLink.attr('title', 'CommonsDelinker log for ' + filename);
$( this ).append( span.clone() );
}
});
});
/*
* Stay on the secure server as much as possible
* Maintainer: [[User:TheDJ]]
*/
if (mw.config.get( 'wgServer' ) == 'https://secure.wikimedia.org') {
importScript('MediaWiki:Common.js/secure.js');
}
// Workaround for [[bugzilla:708]] via [[Template:InterProject]]
importScript('MediaWiki:InterProject.js');
/**
* Extra-tabs
*
* Extra interface tabs for (external) tools.
* To opt-out set 'load_extratabs = false;' in [[Special:Mypage/common.js]]
*/
if (typeof load_extratabs == 'undefined') {
importScript('MediaWiki:Extra-tabs.js');
}
// Add a CSS validator to promote correct syntax
if (mw.config.get( 'wgTitle' ).match(/\.css$/i) && ($.inArray( mw.config.get( 'wgNamespaceNumber' ), [ 2 , 8 ]) > -1)) {
importScript('MediaWiki:Gadget-CSSValidate.js');
}
// Allow to move certain gadgets to other preference pages
// See {{Gadget-desc}} for documentation
if (mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Preferences') {
$(function () {
$('[class*=prefsMoveToSection]').each(function () {
var destination = $(this).attr('className').split('-').pop();
var sheet = $('#prefsection-' + destination);
var br = $(this).parent().next();
sheet.append($(this).parent().prev());
sheet.append($(this).parent()[0].previousSibling);
sheet.append($(this).parent());
sheet.append(br);
});
});
}
/**
* {{tl|LargeImage}} linkswap
*
* Swaps the 'full resolution' link with the 'interactive zoomviewer' links for large images.
* Avoids people crashing their browser by accidentally attempting to view a 200MP image
*
* Maintainer: [[User:Dschwen]]
*/
if (mw.config.get( 'wgAction' ) == 'view' && mw.config.get( 'wgNamespaceNumber' ) == 6) {
$(function () {
var $viewerLinks = $('#LargeImage_viewer_links'),
$fullResLink = $('#file>a[href^="http://upload.wikimedia.org/wikipedia/commons/"]:not(:has(img))'),
$copy_to = $fullResLink.clone(true),
$copy_from = $viewerLinks.clone(true);
if ($viewerLinks.length == 1 && $fullResLink.length == 1) {
$fullResLink.replaceWith($copy_from);
$viewerLinks.replaceWith($copy_to);
}
});
}
//Update from http://toolserver.org/~krinkle/wpAvailableLanguages.js.php - Last update: Wed, 11 May 2011 20:58:53 +0000
window.wpAvailableLanguages={"aa":"Qaf\u00e1r af","ab":"\u0410\u04a7\u0441\u0443\u0430","ace":"Ac\u00e8h","af":"Afrikaans","ak":"Akan","aln":"Geg\u00eb","als":"Alemannisch","am":"\u12a0\u121b\u122d\u129b","an":"Aragon\u00e9s","ang":"\u00c6nglisc","ar":"\u0627\u0644\u0639\u0631\u0628\u064a\u0629","arc":"\u0710\u072a\u0721\u071d\u0710","arn":"Mapudungun","ary":"Ma\u0121ribi","arz":"\u0645\u0635\u0631\u0649","as":"\u0985\u09b8\u09ae\u09c0\u09af\u09bc\u09be","ast":"Asturianu","av":"\u0410\u0432\u0430\u0440","avk":"Kotava","ay":"Aymar aru","az":"Az\u0259rbaycanca","ba":"\u0411\u0430\u0448\u04a1\u043e\u0440\u0442\u0441\u0430","bar":"Boarisch","bat-smg":"\u017demait\u0117\u0161ka","bcc":"\u0628\u0644\u0648\u0686\u06cc \u0645\u06a9\u0631\u0627\u0646\u06cc","bcl":"Bikol Central","be":"\u0411\u0435\u043b\u0430\u0440\u0443\u0441\u043a\u0430\u044f","be-tarask":"\u202a\u0411\u0435\u043b\u0430\u0440\u0443\u0441\u043a\u0430\u044f (\u0442\u0430\u0440\u0430\u0448\u043a\u0435\u0432\u0456\u0446\u0430)\u202c","be-x-old":"\u202a\u0411\u0435\u043b\u0430\u0440\u0443\u0441\u043a\u0430\u044f (\u0442\u0430\u0440\u0430\u0448\u043a\u0435\u0432\u0456\u0446\u0430)\u202c","bg":"\u0411\u044a\u043b\u0433\u0430\u0440\u0441\u043a\u0438","bh":"\u092d\u094b\u091c\u092a\u0941\u0930\u0940","bi":"Bislama","bjn":"Bahasa Banjar","bm":"Bamanankan","bn":"\u09ac\u09be\u0982\u09b2\u09be","bo":"\u0f56\u0f7c\u0f51\u0f0b\u0f61\u0f72\u0f42","bpy":"\u0987\u09ae\u09be\u09b0 \u09a0\u09be\u09b0\/\u09ac\u09bf\u09b7\u09cd\u09a3\u09c1\u09aa\u09cd\u09b0\u09bf\u09af\u09bc\u09be \u09ae\u09a3\u09bf\u09aa\u09c1\u09b0\u09c0","bqi":"\u0628\u062e\u062a\u064a\u0627\u0631\u064a","br":"Brezhoneg","bs":"Bosanski","bug":"\u1a05\u1a14 \u1a15\u1a18\u1a01\u1a17","bxr":"\u0411\u0443\u0440\u044f\u0430\u0434","ca":"Catal\u00e0","cbk-zam":"Chavacano de Zamboanga","cdo":"M\u00ecng-d\u0115\u0324ng-ng\u1e73\u0304","ce":"\u041d\u043e\u0445\u0447\u0438\u0439\u043d","ceb":"Cebuano","ch":"Chamoru","cho":"Choctaw","chr":"\u13e3\u13b3\u13a9","chy":"Tsets\u00eahest\u00e2hese","ckb":"\u06a9\u0648\u0631\u062f\u06cc","co":"Corsu","cps":"Capice\u00f1o","cr":"N\u0113hiyaw\u0113win \/ \u14c0\u1426\u1403\u152d\u140d\u140f\u1423","crh":"Q\u0131r\u0131mtatarca","crh-latn":"\u202aQ\u0131r\u0131mtatarca (Latin)\u202c","crh-cyrl":"\u202a\u041a\u044a\u044b\u0440\u044b\u043c\u0442\u0430\u0442\u0430\u0440\u0434\u0436\u0430 (\u041a\u0438\u0440\u0438\u043b\u043b)\u202c","cs":"\u010cesky","csb":"Kasz\u00ebbsczi","cu":"\u0421\u043b\u043e\u0432\u0463\u0301\u043d\u044c\u0441\u043a\u044a \/ \u2c14\u2c0e\u2c11\u2c02\u2c21\u2c10\u2c20\u2c14\u2c0d\u2c1f","cv":"\u0427\u04d1\u0432\u0430\u0448\u043b\u0430","cy":"Cymraeg","da":"Dansk","de":"Deutsch","de-at":"\u00d6sterreichisches Deutsch","de-ch":"Schweizer Hochdeutsch","de-formal":"\u202aDeutsch (Sie-Form)\u202c","diq":"Zazaki","dsb":"Dolnoserbski","dv":"\u078b\u07a8\u0788\u07ac\u0780\u07a8\u0784\u07a6\u0790\u07b0","dz":"\u0f47\u0f7c\u0f44\u0f0b\u0f41","ee":"E\u028begbe","el":"\u0395\u03bb\u03bb\u03b7\u03bd\u03b9\u03ba\u03ac","eml":"Emili\u00e0n e rumagn\u00f2l","en":"English","en-gb":"British English","eo":"Esperanto","es":"Espa\u00f1ol","et":"Eesti","eu":"Euskara","ext":"Estreme\u00f1u","fa":"\u0641\u0627\u0631\u0633\u06cc","ff":"Fulfulde","fi":"Suomi","fiu-vro":"V\u00f5ro","fj":"Na Vosa Vakaviti","fo":"F\u00f8royskt","fr":"Fran\u00e7ais","frc":"Fran\u00e7ais cadien","frp":"Arpetan","frr":"Nordfriisk","fur":"Furlan","fy":"Frysk","ga":"Gaeilge","gag":"Gagauz","gan":"\u8d1b\u8a9e","gan-hans":"\u202a\u8d63\u8bed(\u7b80\u4f53)\u202c","gan-hant":"\u202a\u8d1b\u8a9e(\u7e41\u9ad4)\u202c","gd":"G\u00e0idhlig","gl":"Galego","glk":"\u06af\u06cc\u0644\u06a9\u06cc","gn":"Ava\u00f1e'\u1ebd","got":"\ud800\udf32\ud800\udf3f\ud800\udf44\ud800\udf39\ud800\udf43\ud800\udf3a","grc":"\u1f08\u03c1\u03c7\u03b1\u03af\u03b1 \u1f11\u03bb\u03bb\u03b7\u03bd\u03b9\u03ba\u1f74","gsw":"Alemannisch","gu":"\u0a97\u0ac1\u0a9c\u0ab0\u0abe\u0aa4\u0ac0","gv":"Gaelg","ha":"\u0647\u064e\u0648\u064f\u0633\u064e","hak":"Hak-k\u00e2-fa","haw":"Hawai`i","he":"\u05e2\u05d1\u05e8\u05d9\u05ea","hi":"\u0939\u093f\u0928\u094d\u0926\u0940","hif":"Fiji Hindi","hif-latn":"Fiji Hindi","hil":"Ilonggo","ho":"Hiri Motu","hr":"Hrvatski","hsb":"Hornjoserbsce","ht":"Krey\u00f2l ayisyen","hu":"Magyar","hy":"\u0540\u0561\u0575\u0565\u0580\u0565\u0576","hz":"Otsiherero","ia":"Interlingua","id":"Bahasa Indonesia","ie":"Interlingue","ig":"Igbo","ii":"\ua187\ua259","ik":"I\u00f1upiak","ike-cans":"\u1403\u14c4\u1483\u144e\u1450\u1466","ike-latn":"inuktitut","ilo":"Ilokano","inh":"\u0413\u0406\u0430\u043b\u0433\u0406\u0430\u0439 \u011eal\u011faj","io":"Ido","is":"\u00cdslenska","it":"Italiano","iu":"\u1403\u14c4\u1483\u144e\u1450\u1466\/inuktitut","ja":"\u65e5\u672c\u8a9e","jbo":"Lojban","jut":"Jysk","jv":"Basa Jawa","ka":"\u10e5\u10d0\u10e0\u10d7\u10e3\u10da\u10d8","kaa":"Qaraqalpaqsha","kab":"Taqbaylit","kbd":"\u041a\u044a\u044d\u0431\u044d\u0440\u0434\u0435\u0438\u0431\u0437\u044d \/ Qabardjaj\u0259bza","kbd-cyrl":"\u043a\u044a\u044d\u0431\u044d\u0440\u0434\u0435\u0438\u0431\u0437\u044d","kg":"Kongo","ki":"G\u0129k\u0169y\u0169","kiu":"K\u0131rmancki","kj":"Kwanyama","kk":"\u049a\u0430\u0437\u0430\u049b\u0448\u0430","kk-arab":"\u202b\u0642\u0627\u0632\u0627\u0642\u0634\u0627 (\u062a\u0674\u0648\u062a\u06d5)\u202c","kk-cyrl":"\u202a\u049a\u0430\u0437\u0430\u049b\u0448\u0430 (\u043a\u0438\u0440\u0438\u043b)\u202c","kk-latn":"\u202aQazaq\u015fa (lat\u0131n)\u202c","kk-cn":"\u202b\u0642\u0627\u0632\u0627\u0642\u0634\u0627 (\u062c\u06c7\u0646\u06af\u0648)\u202c","kk-kz":"\u202a\u049a\u0430\u0437\u0430\u049b\u0448\u0430 (\u049a\u0430\u0437\u0430\u049b\u0441\u0442\u0430\u043d)\u202c","kk-tr":"\u202aQazaq\u015fa (T\u00fcrk\u00efya)\u202c","kl":"Kalaallisut","km":"\u1797\u17b6\u179f\u17b6\u1781\u17d2\u1798\u17c2\u179a","kn":"\u0c95\u0ca8\u0ccd\u0ca8\u0ca1","ko":"\ud55c\uad6d\uc5b4","ko-kp":"\ud55c\uad6d\uc5b4 (\uc870\uc120)","koi":"\u041f\u0435\u0440\u0435\u043c \u041a\u043e\u043c\u0438","kr":"Kanuri","krc":"\u041a\u044a\u0430\u0440\u0430\u0447\u0430\u0439-\u041c\u0430\u043b\u043a\u044a\u0430\u0440","kri":"Krio","krj":"Kinaray-a","ks":"\u0915\u0936\u094d\u092e\u0940\u0930\u0940 - (\u0643\u0634\u0645\u064a\u0631\u064a)","ksh":"Ripoarisch","ku":"Kurd\u00ee","ku-latn":"\u202aKurd\u00ee (lat\u00een\u00ee)\u202c","ku-arab":"\u202b\u0643\u0648\u0631\u062f\u064a (\u0639\u06d5\u0631\u06d5\u0628\u06cc)\u202c","kv":"\u041a\u043e\u043c\u0438","kw":"Kernowek","ky":"\u041a\u044b\u0440\u0433\u044b\u0437\u0447\u0430","la":"Latina","lad":"Ladino","lb":"L\u00ebtzebuergesch","lbe":"\u041b\u0430\u043a\u043a\u0443","lez":"\u041b\u0435\u0437\u0433\u0438","lfn":"Lingua Franca Nova","lg":"Luganda","li":"Limburgs","lij":"L\u00edguru","liv":"L\u012bv\u00f5 k\u0113\u013c","lmo":"Lumbaart","ln":"Ling\u00e1la","lo":"\u0ea5\u0eb2\u0ea7","loz":"Silozi","lt":"Lietuvi\u0173","ltg":"Latga\u013cu","lv":"Latvie\u0161u","lzh":"\u6587\u8a00","lzz":"Lazuri","mai":"\u092e\u0948\u0925\u093f\u0932\u0940","map-bms":"Basa Banyumasan","mdf":"\u041c\u043e\u043a\u0448\u0435\u043d\u044c","mg":"Malagasy","mh":"Ebon","mhr":"\u041e\u043b\u044b\u043a \u041c\u0430\u0440\u0438\u0439","mi":"M\u0101ori","min":"Baso Minangkabau","mk":"\u041c\u0430\u043a\u0435\u0434\u043e\u043d\u0441\u043a\u0438","ml":"\u0d2e\u0d32\u0d2f\u0d3e\u0d33\u0d02","mn":"\u041c\u043e\u043d\u0433\u043e\u043b","mo":"\u041c\u043e\u043b\u0434\u043e\u0432\u0435\u043d\u044f\u0441\u043a\u044d","mr":"\u092e\u0930\u093e\u0920\u0940","mrj":"\u041a\u044b\u0440\u044b\u043a \u043c\u0430\u0440\u044b","ms":"Bahasa Melayu","mt":"Malti","mus":"Mvskoke","mwl":"Mirand\u00e9s","my":"\u1019\u103c\u1014\u103a\u1019\u102c\u1018\u102c\u101e\u102c","myv":"\u042d\u0440\u0437\u044f\u043d\u044c","mzn":"\u0645\u0627\u0632\u0650\u0631\u0648\u0646\u06cc","na":"Dorerin Naoero","nah":"N\u0101huatl","nan":"B\u00e2n-l\u00e2m-g\u00fa","nap":"Nnapulitano","nb":"\u202aNorsk (bokm\u00e5l)\u202c","nds":"Plattd\u00fc\u00fctsch","nds-nl":"Nedersaksisch","ne":"\u0928\u0947\u092a\u093e\u0932\u0940","new":"\u0928\u0947\u092a\u093e\u0932 \u092d\u093e\u0937\u093e","ng":"Oshiwambo","niu":"Niu\u0113","nl":"Nederlands","nl-informal":"\u202aNederlands (informeel)\u202c","nn":"\u202aNorsk (nynorsk)\u202c","no":"\u202aNorsk (bokm\u00e5l)\u202c","nov":"Novial","nrm":"Nouormand","nso":"Sesotho sa Leboa","nv":"Din\u00e9 bizaad","ny":"Chi-Chewa","oc":"Occitan","om":"Oromoo","or":"\u0b13\u0b21\u0b3c\u0b3f\u0b06","os":"\u0418\u0440\u043e\u043d\u0430\u0443","pa":"\u0a2a\u0a70\u0a1c\u0a3e\u0a2c\u0a40","pag":"Pangasinan","pam":"Kapampangan","pap":"Papiamentu","pcd":"Picard","pdc":"Deitsch","pdt":"Plautdietsch","pfl":"P\u00e4lzisch","pi":"\u092a\u093e\u093f\u0934","pih":"Norfuk \/ Pitkern","pl":"Polski","pms":"Piemont\u00e8is","pnb":"\u067e\u0646\u062c\u0627\u0628\u06cc","pnt":"\u03a0\u03bf\u03bd\u03c4\u03b9\u03b1\u03ba\u03ac","prg":"Pr\u016bsiskan","ps":"\u067e\u069a\u062a\u0648","pt":"Portugu\u00eas","pt-br":"Portugu\u00eas do Brasil","qu":"Runa Simi","rgn":"Rumagn\u00f4l","rif":"Tarifit","rm":"Rumantsch","rmy":"Romani","rn":"Kirundi","ro":"Rom\u00e2n\u0103","roa-rup":"Arm\u00e3neashce","roa-tara":"Tarand\u00edne","ru":"\u0420\u0443\u0441\u0441\u043a\u0438\u0439","rue":"\u0420\u0443\u0441\u0438\u043d\u044c\u0441\u043a\u044b\u0439","ruq":"Vl\u0103he\u015fte","ruq-cyrl":"\u0412\u043b\u0430\u0445\u0435\u0441\u0442\u0435","ruq-latn":"Vl\u0103he\u015fte","rw":"Kinyarwanda","sa":"\u0938\u0902\u0938\u094d\u0915\u0943\u0924","sah":"\u0421\u0430\u0445\u0430 \u0442\u044b\u043b\u0430","sc":"Sardu","scn":"Sicilianu","sco":"Scots","sd":"\u0633\u0646\u068c\u064a","sdc":"Sassaresu","se":"S\u00e1megiella","sei":"Cmique Itom","sg":"S\u00e4ng\u00f6","sgs":"\u017demait\u0117\u0161ka","sh":"Srpskohrvatski \/ \u0421\u0440\u043f\u0441\u043a\u043e\u0445\u0440\u0432\u0430\u0442\u0441\u043a\u0438","shi":"Ta\u0161l\u1e25iyt","si":"\u0dc3\u0dd2\u0d82\u0dc4\u0dbd","simple":"Simple English","sk":"Sloven\u010dina","sl":"Sloven\u0161\u010dina","sli":"Schl\u00e4sch","sm":"Gagana Samoa","sma":"\u00c5arjelsaemien","sn":"chiShona","so":"Soomaaliga","sq":"Shqip","sr":"\u0421\u0440\u043f\u0441\u043a\u0438 \/ Srpski","sr-ec":"\u202a\u0421\u0440\u043f\u0441\u043a\u0438 (\u045b\u0438\u0440\u0438\u043b\u0438\u0446\u0430)\u202c","sr-el":"\u202aSrpski (latinica)\u202c","srn":"Sranantongo","ss":"SiSwati","st":"Sesotho","stq":"Seeltersk","su":"Basa Sunda","sv":"Svenska","sw":"Kiswahili","szl":"\u015al\u016fnski","ta":"\u0ba4\u0bae\u0bbf\u0bb4\u0bcd","tcy":"\u0ca4\u0cc1\u0cb3\u0cc1","te":"\u0c24\u0c46\u0c32\u0c41\u0c17\u0c41","tet":"Tetun","tg":"\u0422\u043e\u04b7\u0438\u043a\u04e3","tg-cyrl":"\u0422\u043e\u04b7\u0438\u043a\u04e3","tg-latn":"tojik\u012b","th":"\u0e44\u0e17\u0e22","ti":"\u1275\u130d\u122d\u129b","tk":"T\u00fcrkmen\u00e7e","tl":"Tagalog","tn":"Setswana","to":"lea faka-Tonga","tokipona":"Toki Pona","tp":"Toki Pona (deprecated:tokipona)","tpi":"Tok Pisin","tr":"T\u00fcrk\u00e7e","ts":"Xitsonga","tt":"\u0422\u0430\u0442\u0430\u0440\u0447\u0430\/Tatar\u00e7a","tt-cyrl":"\u0422\u0430\u0442\u0430\u0440\u0447\u0430","tt-latn":"Tatar\u00e7a","tum":"chiTumbuka","tw":"Twi","ty":"Reo M\u0101`ohi","tyv":"\u0422\u044b\u0432\u0430 \u0434\u044b\u043b","udm":"\u0423\u0434\u043c\u0443\u0440\u0442","ug":"\u0626\u06c7\u064a\u063a\u06c7\u0631\u0686\u06d5 \/ Uyghurche\u200e","ug-arab":"\u0626\u06c7\u064a\u063a\u06c7\u0631\u0686\u06d5","ug-latn":"Uyghurche\u200e","uk":"\u0423\u043a\u0440\u0430\u0457\u043d\u0441\u044c\u043a\u0430","ur":"\u0627\u0631\u062f\u0648","uz":"O'zbek","ve":"Tshivenda","vec":"V\u00e8neto","vep":"Vepsan kel'","vi":"Ti\u1ebfng Vi\u1ec7t","vls":"West-Vlams","vmf":"Mainfr\u00e4nkisch","vo":"Volap\u00fck","vot":"Va\u010f\u010fa","vro":"V\u00f5ro","wa":"Walon","war":"Winaray","wo":"Wolof","wuu":"\u5434\u8bed","xal":"\u0425\u0430\u043b\u044c\u043c\u0433","xh":"isiXhosa","xmf":"\u10db\u10d0\u10e0\u10d2\u10d0\u10da\u10e3\u10e0\u10d8","yi":"\u05d9\u05d9\u05b4\u05d3\u05d9\u05e9","yo":"Yor\u00f9b\u00e1","yue":"\u7cb5\u8a9e","za":"Vahcuengh","zea":"Ze\u00eauws","zh":"\u4e2d\u6587","zh-classical":"\u6587\u8a00","zh-cn":"\u202a\u4e2d\u6587(\u4e2d\u56fd\u5927\u9646)\u202c","zh-hans":"\u202a\u4e2d\u6587(\u7b80\u4f53)\u202c","zh-hant":"\u202a\u4e2d\u6587(\u7e41\u9ad4)\u202c","zh-hk":"\u202a\u4e2d\u6587(\u9999\u6e2f)\u202c","zh-min-nan":"B\u00e2n-l\u00e2m-g\u00fa","zh-mo":"\u202a\u4e2d\u6587(\u6fb3\u9580)\u202c","zh-my":"\u202a\u4e2d\u6587(\u9a6c\u6765\u897f\u4e9a)\u202c","zh-sg":"\u202a\u4e2d\u6587(\u65b0\u52a0\u5761)\u202c","zh-tw":"\u202a\u4e2d\u6587(\u53f0\u7063)\u202c","zh-yue":"\u7cb5\u8a9e","zu":"isiZulu"};
/**
* AnonymousI18N for anonymous users
* Maintainer: Krinkle
*/
$(function () {
if ( mw.user.anonymous() ) {
importScript('MediaWiki:AnonymousI18N.js');
}
});
/**
* ImageStacks
* Maintainer: Hellerhoff, DieBuche
*/
//Only load if page contains template
if ( $("div.ImageStack").length ) {
importScript('MediaWiki:ImageStack.js');
}
/**
* Tiny textareas in AbuseFilter are annoying, and never the right size.
* Maintainer: [[User:Krinkle]]
*/
if ( !mw.user.anonymous() && mw.config.get( 'wgCanonicalSpecialPageName' ) === 'AbuseFilter' ) {
$.getScript(
rawPageLink( 'MediaWiki:JQuery-elastic.js' ),
function() {
$( '#wpFilterRules,#wpFilterNotes' ).elastic();
}
);
}