User:Keith the Koala/externISBN.js

Note – after saving, you may have to bypass your browser’s cache to see the changes.

  • Mozilla / Firefox / Safari: hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (Command-R on a Macintosh);
  • Konqueror and Chrome: click Reload or press F5;
  • Opera: clear the cache in Tools → Preferences;
  • Internet Explorer: hold Ctrl while clicking Refresh, or press Ctrl-F5.

function externISBN() {
  if (typeof magicURL=="string" && typeof book_source_URL=="undefined")
  { 
    book_source_URL = magicURL; 
  }

  var magicRegex = /MAGICNUMBER/ig;
  if(mw.config.get('wgPageName') != "Special:BookSources" && !(mw.config.get('wgTitle') == "Book sources" && mw.config.get('wgCanonicalNamespace') == "Project"))
  {
    for (var i = 0; i < document.links.length; i++) 
    {       
      if(document.links[i].href.match(/Special:BookSources\/(.*)/)) 
      {
        document.links[i].href=book_source_URL.replace(magicRegex, RegExp.$1.replace(/[\D]*/g, ''))
      }
    }
  }

}

$(externISBN);