MediaWiki:DoubleWiki.js

From Wikisource
Jump to navigation Jump to search

Note: After publishing, you may have to bypass your browser's cache to see the changes.

  • Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
  • Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
  • Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
  • Opera: Press Ctrl-F5.
/*
 * Liens bilingues
 * Fonctionne avec l'extension DoubleWiki. 
 * Auteur: ThomasV, Phe
 *
 * from fr.wikisource.org
 */

function BilingualLink() 
{
    if (mw.config.get('wgNamespaceNumber') != 0) return;
    var doc_url = document.URL;
    var url = '';
    // This match also interlanguage-linkzzzz, it's not intended but simpler to do it
    // this way.
    $("li[class*='interlanguage-link']").each(function () {
        var class_list = $(this).attr('class').split(/\s+/);
        for (var i = 0; i < class_list.length; ++i) {
             var class_name = class_list[i];
             if (class_name.substring(0,10) == "interwiki-" ) {
                   var lang = class_name.substring(10, class_name.length);
                   if( doc_url.indexOf('?title=') != -1 ) { 
                       var qm  = doc_url.indexOf('&match=');
                       if( qm != -1 ) url = doc_url.substring(0,qm)+"&match="+lang;
                       else url = doc_url+"&match="+lang;
                   } else {
                       var qm  = doc_url.indexOf('?');
                       if( qm != -1 ) url = doc_url.substring(0,qm)+"?match="+lang;
                       else url = doc_url+"?match="+lang;
                   }
                   $(this).append($('<a>').attr('href', url ).html(' &hArr;'));
                   break;
             }
        }
    });
}
 
$(BilingualLink);