MediaWiki:Gadget-NewMessages.js: Difference between revisions

From Zelda Dungeon Wiki
Jump to navigation Jump to search
Want an adless experience? Log in or Create an account.
(Restore to version 8473 by Matt)
(fix getElementsByClassName)
Line 1: Line 1:
$(gotNewMessages);
$(gotNewMessages);
function gotNewMessages() {
function gotNewMessages() {
   var um = getElementsByClassName(document.getElementById('bodyContent'),'div','usermessage');
   var um = document.getElementById('bodyContent').getElementsByClassName('usermessage');
   if(um.length == 0) return
   if(um.length == 0) return
   var links = um[0].getElementsByTagName('a');
   var links = um[0].getElementsByTagName('a');

Revision as of 03:00, January 26, 2017

$(gotNewMessages);
function gotNewMessages() {
  var um = document.getElementById('bodyContent').getElementsByClassName('usermessage');
  if(um.length == 0) return
  var links = um[0].getElementsByTagName('a');
  for(var i=0;i<links.length;i++) {
    if(links[i].href.indexOf('diff=cur') != -1) {
      var penultimate = links[i].href;
    }
  }
  var mytalk = document.getElementById('pt-mytalk');
  if(!mytalk) return

  mytalk.style.fontWeight = 'bold';
  var img = 'http://zeldadungeon.net/wiki/thumb.php?f=Triforce_(Ocarina_of_Time).png&w=13';
  if(penultimate) {
    /* add a linked icon if the message contains a diff=cur */
    var plink = document.createElement('a');
    plink.setAttribute('href',penultimate);
    plink.setAttribute('title','diff to last change');
    var pimg = document.createElement('img');
    pimg.setAttribute('src',img);
    pimg.style.width = '13px';
    pimg.style.height = '13px';
    pimg.style.marginLeft = '5px';
    pimg.style.paddingBottom = '1px';
    pimg.style.verticalAlign = 'sub';
    plink.appendChild(pimg);
    plink.appendChild(document.createTextNode(' '));
    mytalk.appendChild(plink);
  } else {
    mytalk.style.background = 'transparent url("' + img + '") no-repeat center right';
    mytalk.style.paddingRight = '16px';
  }
}