MediaWiki:Common.js
Z MediaWiki SPŠ a VOŠ Písek
Poznámka: Po uložení musíte smazat cache vašeho prohlížeče, jinak změny neuvidíte.
- Firefox / Safari: Při kliknutí na Aktualizovat držte Shift nebo stiskněte Ctrl-F5 nebo Ctrl-R (na Macu ⌘-R).
- Google Chrome: Stiskněte Ctrl-Shift-R (na Macu ⌘-Shift-R).
- Internet Explorer: Při kliknutí na Aktualizovat držte Ctrl nebo stiskněte Ctrl-F5.
- Konqueror: Klikněte na Aktualizovat nebo stiskněte F5.
- Opera: Smažte obsah cache v menu Nástroje → Nastavení.
é/* Zde uvedený JavaScript bude použit pro všechny uživatele při načtení každé stránky. */ importScriptURI('http://en.wikipedia.org/w/index.php?title=User:ProveIt_GT/ProveIt.js&action=raw&ctype=text/javascript'); // [[User:ProveIt GT/ProveIt.js]] /* * StockPhoto - shows download and attribution buttons * Original code 2010-09/10 by [[User:Magnus Manske]] * * @rev 33 (2012-01-02) * @author [[User:Magnus Manske]], 2010 - 2011 * @author [[User:Krinkle]], 2011 - 2012 * @source commons.wikimedia.org/wiki/MediaWiki:Gadget-Stockphoto.js */ /*jslint browser: true, white: true */ /*global jQuery:false, mediaWiki:false, importScript:false*/ ( function ( $, mw, undefined ) { "use strict"; // Disabled for Internet Explorer, Opera 9.27 and below if ( window.stockPhoto === undefined && ( mw.config.get( 'skin' ) === 'vector' || mw.config.get( 'skin' ) === 'monobook' ) && mw.config.get( 'wgNamespaceNumber' ) === 6 && $.inArray( mw.config.get( 'wgAction' ), ['view', 'purge'] ) !== -1 && !$.browser.msie && (!$.browser.opera || ($.browser.opera && parseFloat($.browser.version) > 9.27)) ) { var stockPhoto = { // Misc ui_icon_download: '//upload.wikimedia.org/wikipedia/commons/thumb/9/92/Gnome-document-save.svg/50px-Gnome-document-save.svg.png', ui_icon_web: '//upload.wikimedia.org/wikipedia/commons/thumb/c/c0/Gnome-emblem-web.svg/50px-Gnome-emblem-web.svg.png', ui_icon_wiki: '//upload.wikimedia.org/wikipedia/commons/thumb/2/2c/Tango_style_Wikipedia_Icon.svg/50px-Tango_style_Wikipedia_Icon.svg.png', ui_icon_email: '//upload.wikimedia.org/wikipedia/commons/thumb/e/ee/Gnome-mail-send.svg/50px-Gnome-mail-send.svg.png', ui_icon_help: '//upload.wikimedia.org/wikipedia/commons/thumb/e/e7/Dialog-information_on.svg/50px-Dialog-information_on.svg.png', ui_icon_remove: '//upload.wikimedia.org/wikipedia/commons/thumb/9/9d/Emblem-unreadable.svg/20px-Emblem-unreadable.svg.png', information_template_hints: ['fileinfotpl_desc', 'fileinfotpl_src'], icons_only: ['midi', 'ogg', 'flac'], horizontal_ui: ['midi', 'ogg', 'flac', 'pdf', 'djvu'], //license_patterns: "^Artistic-2$", "^BSD images$", "^OS OpenData$", "^Mozilla Public License$"], ogg_icon: mw.config.get( 'stylepath' ) + '/common/images/icons/fileicon-ogg.png', stockphoto_code1: undefined, stockphoto_author: undefined, stockphoto_license: undefined, nicetitle: undefined, file_icon: undefined, file_url: undefined, backlink_url: undefined, attribution: '', fade_target: '', gfdl_note: false, sbm_counter: 1, fromCommons: false, attrRequired: true, init: function () { var $enable, has_information, img_width, img_height, xoff, yoff, horizontal, html; if ( window.stockphoto_prevent !== undefined ) { return; } $("#filetoc").find("a[href=#file], a[href=#filehistory], a[href=#filelinks], a[href=#metadata], a[href=#globalusage]").parent().addClass("mw-filetoc-links"); if ($.cookie('StockPhotoDisabled')) { $enable = $('<li class="mw-filetoc-links"><a id="SpEnable">' + stockPhoto.i18n.reuse + '</a></li>'); $enable.click(function (){ $.cookie('StockPhotoDisabled', null, { path: '/' }); stockPhoto.init(); }); $("#filetoc").append($enable); return; } if ( $('#file').length === 0 ) { return; } stockPhoto.small_horizontal_layout = false; if ( !mw.user.anonymous() ) { stockPhoto.small_horizontal_layout = true; } has_information = false; $.each( stockPhoto.information_template_hints, function (k, v) { if ($('#' + v).length !== 0) { has_information = true; } }); // No {{Information}} if (!has_information) { return; } // Has one or more problemtags // Changed to also include renames and normal deletes if ($('.nuke').length) { return; } $('#stockphoto_base').remove(); img_width = $('#file img').width(); img_height = $('#file img').height(); xoff = img_width + 40; yoff = $('#file').position().top + 5; if (!horizontal && img_height < 300) { stockPhoto.small_horizontal_layout = true; } horizontal = stockPhoto.small_horizontal_layout; $.each(stockPhoto.horizontal_ui, function (k, v) { v = new RegExp('\.' + v + '$', 'i'); if ( mw.config.get( 'wgTitle' ).match(v)) { horizontal = true; } }); if ($(window).width() < 1030) { horizontal = true; } // Initialize values stockPhoto.share_this(-1); html = '<div id="stockphoto_base" '; if (horizontal) { html += ' class="horizontal">'; } else if (!$("body.rtl").length) { html += "class='vertical' style='left:" + xoff + "px;top:" + yoff + "px'>"; } else { html += "class='vertical' style='left: 0px;top:" + yoff + "px'>"; } html += stockPhoto.add_button_row( stockPhoto.ui_icon_download, "call_download", stockPhoto.i18n.download, stockPhoto.i18n.all_sizes, horizontal); html += stockPhoto.add_button_row( stockPhoto.ui_icon_web, "call_web", stockPhoto.i18n.use_this_file_web_short, stockPhoto.i18n.on_a_website, horizontal); html += stockPhoto.add_button_row( stockPhoto.ui_icon_wiki, "call_wiki", stockPhoto.i18n.use_this_file_wiki_short, stockPhoto.i18n.on_a_wiki, horizontal); html += stockPhoto.add_button_row( stockPhoto.ui_icon_email, "send_email", stockPhoto.i18n.email_link_short, stockPhoto.i18n.to_this_file, horizontal); html += stockPhoto.add_button_row( stockPhoto.ui_icon_help, "call_help", stockPhoto.i18n.information, stockPhoto.i18n.about_reusing, horizontal); html += '<a title="' + stockPhoto.i18n.remove_icons + '" id="stockphoto_remove"><img src="' + stockPhoto.ui_icon_remove + '" /></a>'; html += "</div>"; if ( stockPhoto.small_horizontal_layout && $("#file").length ) { $(".mw-filetoc-links").hide(); $("#filetoc").append(html); } else { $("#filetoc").after(html); } $('#stockphoto_remove').click(function () { $.cookie('StockPhotoDisabled', true, { expires: 60, path: '/' }); $('#stockphoto_base').remove(); $(".mw-filetoc-links").show(); }); $('#stockphoto_base img').parent().fadeTo(0, 0.7); $('#stockphoto_base>span').hover(function () { $(this).find('span:first a').fadeTo('fast', 1); }, function () { $(this).find('span:first a').fadeTo('fast', 0.7); }); }, /** * @todo Parameter "horizontal" is unused */ add_button_row: function (icon_url, fkt, txt, html, horizontal) { var imgid, a, ret; if ( stockPhoto.small_horizontal_layout) { icon_url = icon_url.replace('/50px-', '/20px-'); } imgid = 'stockphoto_icon_' + fkt; a = '<a href="#" title="' + txt + ' ' + html + '" onclick="stockPhoto.' + fkt + '(); return false;">'; ret = "<span id='stockphoto_" + fkt + "'>"; ret += "<span class='stockphoto_buttonrow_icon'>" + a + "<img id='" + imgid + "' src='" + icon_url + "' /></a></span>"; ret += "<span class='stockphoto_buttonrow_text'>" + a; if ( stockPhoto.small_horizontal_layout) { ret += txt + "</a>"; } else { ret += "<b>" + txt + "</b></a><br/>" + html; } ret += "</span></span>"; return ret; }, stockphoto_get_thumbnail_url: function (width) { var thumb_url, alt_title, last; if ( stockPhoto.file_icon !== undefined ) { return stockPhoto.file_icon; } alt_title = mw.config.get( 'wgCanonicalNamespace' ) + ':' + mw.config.get( 'wgTitle' ); $('#file img').each(function () { if ($(this).attr('alt') !== alt_title) { return; } thumb_url = $(this).attr('src').split('/'); }); // Special case of mwEmbed rewrite if( !thumb_url && $('#mwe_ogg_player_1').length ){ return $('#mwe_ogg_player_1').find('img').attr('src'); } if( !thumb_url || thumb_url.length < 1 ) { return; } last = thumb_url.pop().replace(/^\d+px-/, width + 'px-'); thumb_url.push(last); thumb_url = thumb_url.join('/'); thumb_url = location.protocol + thumb_url; return thumb_url; }, is_audio_video_asset: function(url){ var ext = url.substr(-3); if( ext === 'ogv' || ext === 'ogg' || ext === 'oga' ){ return true; } return false; }, /** * @param e {jQuery.Event} [optional] */ make_html_textarea: function (e) { var width, type, height, thumb_url, t; if(e) { e.preventDefault(); } width = $('#stockphoto_html_select').val(); type = $('input[name="stockphoto_code_type"]:checked').val(); // Iframe share for mwEmbed player if( stockPhoto.is_audio_video_asset( stockPhoto.backlink_url ) && type === 'html' ){ // Get the ratio ( from html or from mwEmbed player ) height = $('#mwe_ogg_player_1').width() ? width * $('#mwe_ogg_player_1').height() / $('#mwe_ogg_player_1').width() : width * $('#file img,#file video').height() / $('#file img,#file video').width(); // For audio that has zero height: if ( height === 0 ) { height = 20; } $('#stockphoto_html').text( '<iframe src="' + stockPhoto.backlink_url + '?withJS=MediaWiki:MwEmbed.js&embedplayer=yes" width="' + width + '" height="'+ height + '" frameborder="0" ></iframe>' ); return; } thumb_url = stockPhoto.stockphoto_get_thumbnail_url(width); if (type === 'html') { t = '<a title="' + stockPhoto.escapeAttribute( stockPhoto.complete_attribution_text) + '" href="' + stockPhoto.backlink_url + '"><img width="' + width + '" alt="' + stockPhoto.escapeAttribute( stockPhoto.nicetitle) + '" src="' + thumb_url + '"/></a>'; } else if (type === 'bbcode') { t = "[url=" + stockPhoto.backlink_url + "][img]" + thumb_url + "[/img][/url]\n[url=" + stockPhoto.backlink_url + "]" + stockPhoto.nicetitle + "[/url]" + stockPhoto.stockphoto_license + ", " + stockPhoto.i18n.by + ' ' + stockPhoto.stockphoto_author + ", " + stockPhoto.i18n.from_wikimedia_commons; } $('#stockphoto_html').text(t); }, get_author_attribution: function (use_html) { var author, source; author = $.trim($("#fileinfotpl_aut + td").text()); source = $.trim($("#fileinfotpl_src + td").text()); // Remove boiler template; not elegant, but... if (author.match(/This file is lacking author information/)) { author = ''; } if (author.match(/^[Uu]nknown$/)) { author = ''; } author = author.replace(/\s*\(talk\)$/i, ''); if (author.indexOf('Original uploader was') !== -1) { author = author.replace(/\s*Original uploader was\s*/g, ''); stockPhoto.fromCommons = true; } // Remove boiler template; not elegant, but... if (source.match(/This file is lacking source information/)) { source = ''; } if (author !== '' && $('#own-work').length) { // Remove "own work" notice source = ''; stockPhoto.fromCommons = true; } if (author !== '' && source.length > 50) { source = ''; // Remove long source info } if (author.substr(0, 3) === '[▼]') { author = author.substr(3); author = $.trim(author.split('Description').shift()); } stockPhoto.attribution = ''; if (author !== '') { stockPhoto.attribution = author; } if (source !== '') { if ( stockPhoto.attribution !== '') { stockPhoto.attribution += ' (' + source + ')'; } else { stockPhoto.attribution = source; } } stockPhoto.stockphoto_author = stockPhoto.attribution; if (author !== '') { stockPhoto.attribution = stockPhoto.i18n.by_u + ' ' + stockPhoto.attribution; } else { stockPhoto.attribution = stockPhoto.i18n.see_page_for_author; } if ($('#creator').length) { stockPhoto.attribution = $('#creator').text(); } if ($('.licensetpl_aut').length) { if (use_html) { stockPhoto.attribution = $('.licensetpl_aut').eq(0).html(); } else { stockPhoto.attribution = $('.licensetpl_aut').eq(0).text(); } } if ($('.licensetpl_attr').length) { if (use_html) { stockPhoto.attribution = $('.licensetpl_attr').eq(0).html(); } else { stockPhoto.attribution = $('.licensetpl_attr').eq(0).text(); } } if ($("#fileinfotpl_credit + td").length) { if (use_html) { stockPhoto.attribution = $("#fileinfotpl_credit + td").html(); } else { stockPhoto.attribution = $("#fileinfotpl_credit + td").text(); } } }, get_license: function (generate_html) { var licenses, $readable, l2, l1; licenses = []; $readable = $('.licensetpl'); if (!$readable.length) { stockPhoto.stockphoto_license = "[" + stockPhoto.i18n.see_page_for_license + "]"; return; } $readable.each(function () { var cL = { link: $(this).find('.licensetpl_link').html(), short: $(this).find('.licensetpl_short').html(), long: $(this).find('.licensetpl_long').html(), attr: $(this).find('.licensetpl_attr').html(), aut: $(this).find('.licensetpl_aut').html(), link_req: $(this).find('.licensetpl_link_req').html(), attr_req: $(this).find('.licensetpl_attr_req').html() }; if (cL.short !== null) { licenses.push(cL); } }); if (licenses.length > 0) { $.each(licenses, function (k, v) { if (v.attr_req === 'false') { stockPhoto.attrRequired = false; } if (v.short.indexOf('GFDL') !== -1) { stockPhoto.gfdl_note = true; } if (generate_html && v.link) { licenses[k] = '<a href="' + v.link + '">' + v.short + '</a>'; } else { if (v.link_req === 'true') { licenses[k] = v.short + ' (' + v.link + ')'; } else { licenses[k] = v.short; } } }); if (licenses.length > 1) { l2 = licenses.pop(); l1 = licenses.pop(); licenses.push(l1 + ' ' + stockPhoto.i18n.or + ' ' + l2); } stockPhoto.stockphoto_license = ' [' + licenses.join(', ') + ']'; } else { stockPhoto.stockphoto_license = ' [' + stockPhoto.i18n.see_page_for_license + ']'; } }, get_attribution_text: function () { var from, html, text; from = stockPhoto.fromCommons ? stockPhoto.i18n.from_wikimedia_commons : stockPhoto.i18n.via_wikimedia_commons; html = !!$('#stockphoto_attribution_html:checked').length; stockPhoto.get_license(html); stockPhoto.get_author_attribution(html); if ($('#fileinfotpl_credit + td').length) { text = stockPhoto.attribution; } else { text = stockPhoto.attribution + stockPhoto.stockphoto_license; } if (html) { text += ", <a href='" + stockPhoto.escapeAttribute( stockPhoto.backlink_url ) + "'>" + from + "</a>"; } else { text += ', ' + from; } return text; }, refresh_attribution: function () { $("#stockphoto_attribution").val( stockPhoto.get_attribution_text() ); }, createDialogRow: function (label, prefill, id) { var idtext = (id) ? 'id="' + id + '"' : ''; return '<div class="stockphoto_dialog_row"><b>' + label + ':</b><br><input type="text" readonly ' + idtext + ' onClick="select()" value="' + prefill + '"/></div>'; }, share_this: function (ui_mode) { var widths, html, dtitle, dl_links, best_fit; stockPhoto.complete_attribution_text = stockPhoto.get_attribution_text(); stockPhoto.file_url = $('#file > a').attr('href'); if ( !stockPhoto.file_url ) { stockPhoto.file_url = $('#file > div > div > a').attr('href'); } if ( !stockPhoto.file_url ) { stockPhoto.file_url = $('div.fullMedia a').attr('href'); } if ( stockPhoto.file_url ) { stockPhoto.file_url = location.protocol + stockPhoto.file_url; } stockPhoto.nicetitle = mw.config.get( 'wgTitle' ).split('.'); stockPhoto.nicetitle.pop(); stockPhoto.nicetitle = stockPhoto.nicetitle.join('.'); $.each( stockPhoto.icons_only, function (i, v) { var re = new RegExp('\.' + v + '$', 'i'); if (!mw.config.get( 'wgPageName' ).match(re)) { return; } stockPhoto.file_icon = stockPhoto.ogg_icon; }); stockPhoto.backlink_url = location.protocol + '//commons.wikimedia.org/wiki/' + encodeURIComponent(mw.config.get( 'wgPageName' )); // Grab width in pixel from DOM, and trim it down // This does not yet work for SVGs or videos widths = []; try { var pixelStr, widthSearchMatch, imageWidth, power, i; pixelStr = $('.fileInfo').contents().get(0).data; widthSearchMatch = /([0-9 ,.\u00a0]+)\s*×/.exec(pixelStr); imageWidth = parseInt(widthSearchMatch[1].replace(/[ ,.\u00a0]/g, ''), 10); if (isNaN(imageWidth)) { throw new Error( 'Cannot parse' ); } // Calculate to which power of two we should go power = Math.floor(Math.log(imageWidth) / Math.log(2)); // Push 6 width to array for ( i = 0; i < 5; i += 1 ) { widths.push(Math.pow(2, power-i)); } widths = widths.reverse(); } catch (e) { widths = [75, 100, 120, 240, 500, 640, 800, 1024]; } if (ui_mode === -1) { return; } html = ''; html += stockPhoto.createDialogRow( stockPhoto.i18n.page_url, stockPhoto.escapeAttribute( stockPhoto.backlink_url ) ); html += stockPhoto.createDialogRow( stockPhoto.i18n.file_url, stockPhoto.escapeAttribute( stockPhoto.file_url ) ); html += stockPhoto.createDialogRow( stockPhoto.i18n.attribution, stockPhoto.escapeAttribute( stockPhoto.complete_attribution_text ), 'stockphoto_attribution'); html += "<input id='stockphoto_attribution_html' onclick='stockPhoto.refresh_attribution()' type='checkbox' /><label for='stockphoto_attribution_html'>" + stockPhoto.i18n.html + "</label>"; if ( stockPhoto.gfdl_note ) { html += '<br/><span class="stockphoto_note">' + stockPhoto.i18n.gfdl_warning + '</span>'; } if ( !stockPhoto.attrRequired ) { html += '<br/><span class="stockphoto_note">' + stockPhoto.i18n.no_attr + '</span>'; } switch (ui_mode) { case 1: dtitle = stockPhoto.i18n.download_this_file; if ( stockPhoto.file_url !== undefined ) { html += '<div><b>' + stockPhoto.i18n.download_image_file + ':</b><br>'; dl_links = []; $.each(widths, function (i, v) { if ( stockPhoto.file_icon !== undefined ) { return; } dl_links.push("<a href='" + stockPhoto.stockphoto_get_thumbnail_url(v) + "'>" + v + 'px</a>'); }); if (stockPhoto.file_url) { dl_links.push("<a href='" + stockPhoto.file_url + "'>" + stockPhoto.i18n.full_resolution + '</a>'); } if (dl_links.length) { html += dl_links.join(' | '); } else { html += '<i>' + stockPhoto.i18n.not_available + '</i>'; } html += '</div>'; } break; case 2: dtitle = stockPhoto.i18n.use_this_file_web; html += "<div class='stockphoto_dialog_row'><div style='float:right'>"; html += "<input type='radio' name='stockphoto_code_type' value='html' id='stockphoto_code_type_html' onchange='stockPhoto.make_html_textarea();' checked /><label for='stockphoto_code_type_html'>" + stockPhoto.i18n.html + "</label> "; html += "<input type='radio' name='stockphoto_code_type' value='bbcode' id='stockphoto_code_type_bbcode' onchange='stockPhoto.make_html_textarea();' /><label for='stockphoto_code_type_bbcode'>" + stockPhoto.i18n.bbcode + "</label> "; html += '<select id="stockphoto_html_select" onchange="stockPhoto.make_html_textarea();">'; best_fit = 75; if ( stockPhoto.file_icon !== undefined ) { best_fit = 120; html += "<option value='120'>120" + stockPhoto.i18n.px_wide_icon + "</option>"; } else { $.each(widths, function (i, v) { if (v <= $('#file img').width()) { best_fit = v; } html += "<option value='" + v + "'>" + v + stockPhoto.i18n.px_wide + "</option>"; }); } html += '</select></div>'; html += '<b>' + stockPhoto.i18n.html + '/' + stockPhoto.i18n.bbcode + ':</b><textarea onClick="select()" id="stockphoto_html" readonly="readonly" style="font-size:9pt">'; html += '</textarea></div>'; break; case 3: dtitle = stockPhoto.i18n.use_this_file_wiki; html = stockPhoto.createDialogRow(stockPhoto.i18n.thumbnail, stockPhoto.escapeAttribute('[[File:' + mw.config.get( 'wgTitle' ) + '|thumb|' + stockPhoto.nicetitle + ']]')); html += stockPhoto.createDialogRow(stockPhoto.i18n.image, stockPhoto.escapeAttribute('[[File:' + mw.config.get( 'wgTitle' ) + '|' + stockPhoto.nicetitle + ']]')); break; } $("<div style='display:none' id='stockphoto_dialog'></div>").html(html).dialog({ modal: true, width: 610, height: "auto", title: dtitle, close: function () { $(this).remove(); } }); $('#stockphoto_html_select').val(best_fit); stockPhoto.make_html_textarea(); $('#stockphoto_attribution_html').prev().css('width', '90%'); }, call_download: function () { stockPhoto.share_this(1); }, call_web: function () { stockPhoto.share_this(2); }, call_wiki: function () { stockPhoto.share_this(3); }, call_help: function () { window.location.href = mw.util.wikiGetlink( stockPhoto.i18n.reusing_content_url ); }, send_email: function () { var url = 'mailto:?subject=' + encodeURIComponent(stockPhoto.nicetitle) + "&body=" + encodeURIComponent(stockPhoto.backlink_url + "\n\n" + stockPhoto.complete_attribution_text + ' ' + stockPhoto.i18n.from_wikimedia_commons); window.location.href = url; }, escapeAttribute: function (s) { if ( s === undefined ) { return ''; } return s.replace(/\n/g, ' ').replace(/\r/g, ' ').replace(/"/g, '"').replace(/'/g, '''); }, i18n: { reuse: 'Reuse this file', download: 'Download', download_this_file: 'Download this file', use_this_file_web: 'Use this file on the web', use_this_file_web_short: 'Use this file', use_this_file_wiki: 'Use this file on a wiki', use_this_file_wiki_short: 'Use this file', email_link_short: 'Email a link', information: 'Information', remove_icons: 'Remove these icons', all_sizes: 'all sizes', on_a_website: 'on the web', on_a_wiki: 'on a wiki', to_this_file: 'to this file', about_reusing: 'about reusing', look_what_i_found: 'Look what I found on Wikimedia Commons : ', from_wikimedia_commons: 'from Wikimedia Commons', via_wikimedia_commons: 'via Wikimedia Commons', by: 'by', by_u: 'By', see_page_for_author: 'See page for author', see_page_for_license: 'see page for license', page_url: 'Page URL', file_url: 'File URL', attribution: 'Attribution', no_attr: 'Attribution not legally required', or: 'or', gfdl_warning: 'Using this file might require attaching a full copy of the <a href="//en.wikipedia.org/wiki/GNU_Free_Documentation_License">GFDL</a>', download_image_file: 'Download image file', full_resolution: 'Full resolution', not_available: 'not available', share_this_file: 'Share this file', html: 'HTML', bbcode: 'BBCode', px_wide_icon: 'px wide (icon)', px_wide: 'px wide', wikipedia_instant_commons: 'Wikimedia/InstantCommons', thumbnail: 'Thumbnail', image: 'Image', reusing_content_url: 'Commons:Reusing_content_outside_Wikimedia' } }; /* Expose globally */ window.stockPhoto = stockPhoto; if (mw.config.get( 'wgUserLanguage' ) !== 'en') { $.ajax({ url: mw.util.wikiScript(), dataType: 'script', data: { title: 'MediaWiki:Gadget-Stockphoto.js/' + mw.config.get( 'wgUserLanguage' ), action: 'raw', ctype: 'text/javascript', // Allow caching for 28 days maxage: 2419200, smaxage: 2419200 }, cache: true, success: stockPhoto.init }); } else { $(document).ready( stockPhoto.init ); } } // i18n on subpages [[MediaWiki:stockPhoto.js/langcode]]: // stockPhoto.i18n = { ... } }( jQuery, mediaWiki) );