User:Spidern/WatchlistSince.js

$(function {    if (!wgCanonicalSpecialPageName || wgCanonicalSpecialPageName != "Watchlist") return;    if (!document.forms[0] || !document.forms[0].namespace) return;    var link = document.createElement('a');    link.id = 'listSince';    link.href = '#listSince';  // must have a href to show as link!    var then = +(new Date);    var fixLinkHref = function  {        var url = window.location.href.split('#')[0];        var days = (( +(new Date) - then ) + (60 * 1000)) / (1000 * 3600 * 24);        if (url.match(/[?&]days=/))            this.href = url.replace(/([?&]days=)[^&]*/, '$1'+days);        else            this.href = url + (url.indexOf('?') < 0 ? '?':'&') + 'days=' + days;       return true;    };    link.onclick = fixLinkHref;    link.onmousedown = fixLinkHref;  // react to middle clicks too    var frag = document.createDocumentFragment;    frag.appendChild(document.createTextNode(' | '));    frag.appendChild(link);    link.appendChild(document.createTextNode('Changes'));    frag.appendChild(document.createTextNode(' since last load.'));    // just one little ID attribute would be _so_ nice...    var nsSelectForm = document.getElementsByTagName('form')[0];    nsSelectForm.parentNode.insertBefore(frag, nsSelectForm); }); //