User:JimTittsler/links and iframes.js

From WikiEducator
Jump to: navigation, search

Note: After saving, 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: Hold Ctrl while clicking Refresh, or press Ctrl-F5
  • Opera: Clear the cache in Tools → Preferences
/* add Links button with permanent link, short link, and iframe snippets for each
 * 2010-12-21 http://WikiEducator.org/User:JimTittsler
 * short links derived from [[commons:Bugzilla:021572]] -- [[commons:meta:user:Platonides]]
 */
function weSelectMe(node) {
  var selection, range, doc, win;
  if ((doc = node.ownerDocument) && (win=doc.defaultView) && typeof win.getSelection != 'undefined' && typeof doc.createRange != 'undefined' && (selection = window.getSelection()) && typeof selection.removeAllRanges != 'undefined') {
    range = doc.createRange();
    range.selectNode(node);
    selection.removeAllRanges();
    selection.addRange(range);
  } else if (document.body && typeof document.body.createTextRange != 'undefined' && (range = document.body.createTextRange())) { /* IE */
    range.moveToElementText(node);
    range.select();
  }
}
 
$( function() {
  var plink = document.getElementById("t-permalink");
  if (wgArticleId && plink) {
    var permanent_link = wgScript + '?oldid=' + wgCurRevisionId;
    var short_url = wgScript + '?curid=' + wgArticleId;
    plink.innerHTML = ['<a href="#" onClick="var weLinks=document.getElementById(\'weLinks\'); if (weLinks.style.display == \'none\') { weLinks.style.display = \'block\'; weSelectMe(document.getElementById(\'we_page_iframe\'));} else { weLinks.style.display = \'none\'; } return false;">Links</a>'
      , '<ul id="weLinks" style="display:none;">'
      , '<li><a href="' + permanent_link + '" title="Permanent link to this revision">Permanent Link</a></li>'
      , '<li>IFrame snippet to this revision:<br>'
      , '<span onClick="weSelectMe(this);">&lt;iframe src="' + wgServer + permanent_link + '" width="100%" height="300"&gt;&lt;/iframe&gt;</span></li>'
      , '<li><a href="' + short_url + '" title="Reference page by article id">Short URL</a></li>'
      , '<li>IFrame snippet to this page:<br>'
      , '<span id="we_page_iframe" onClick="weSelectMe(this);">&lt;iframe src="' + wgServer + short_url + '" width="100%" height="300"&gt;&lt;/iframe&gt;</span></li>'
      , '</ul>'
    ].join('');
   }
} );