Järjestelmäviesti:Gadget-Interwikilinkki kieliotsikkoon.js

Huomautus: Selaimen välimuisti pitää tyhjentää asetusten tallentamisen jälkeen, jotta muutokset tulisivat voimaan.

  • Firefox ja Safari: Napsauta Shift-näppäin pohjassa Päivitä, tai paina Ctrl-F5 tai Ctrl-R (⌘-R Macilla)
  • Google Chrome: Paina Ctrl-Shift-R (⌘-Shift-R Macilla)
  • Edge: Napsauta Ctrl-näppäin pohjassa Päivitä tai paina Ctrl-F5
(function () {
    var getInterwikiForLang = (function () {
        var byCode = {},
            byName = {},
            dbReady = false;

        function buildDB() {
            $('.interlanguage-link-target').each(function () {
                var $this = $(this),
                    target = $this.attr('href'),
                    title = $this.attr('title'),
                    osat = title.split(' — '),
                    langname = osat[1],
                    langcode = $this.attr('hreflang');

                byName[langname] = target;
                byCode[langcode] = target;
            });
            dbReady = true;
        }

        return function (code, name) {
            if ( !dbReady ) {
                buildDB();
            }

            return byCode[code] || byName[name];
        };
    }());

    function makeLink(name, code, link) {
        var titleText = mw.config.get('wgTitle') + ' Wikisanakirjassa kielellä ' + name,
            imgUrl = 'https://upload.wikimedia.org/wikipedia/commons/thumb/6/67/WiktionaryPl_nodesc.svg/122px-WiktionaryPl_nodesc.svg.png';

        /*jshint multistr: true */
        return '\
          <span>\
            <a href="' + link + '" title="' + titleText + '" target="_blank">\
              <img style="height: 1em; width: 1em; font-size: initial;" src="' + imgUrl + '"/>\
            </a>\
          </span>\
              ';
    }

    $('h2').each(function (index) {
        var $this = $(this),
            langname = $this.text().toLowerCase(),
            $kielellinen = $this.parent('.mw-heading').nextAll('p').find('[lang]').first(),
            langcode = $kielellinen.attr('lang'),
            link = getInterwikiForLang(langcode, langname);

        if ( link ) {
            $(makeLink(langname, langcode, link))
            	.hide()
            	.prependTo($this.parent().children('.mw-editsection'))
            	.fadeIn(500);
        }
    });

}());