User:Hotbot/listsince.js
From Homestar Runner Wiki
Note: After saving, you may have to bypass your browser's cache to see the changes.
- Mozilla / Firefox: hold down Shift while clicking Reload, or press Ctrl-Shift-R (Cmd-Shift-R on Apple Mac)
- Safari: press Cmd-Option-E
- IE: hold Ctrl while clicking Refresh, or press Ctrl-F5
- Konqueror: simply click the Reload button, or press F5
- Opera users may need to completely clear their cache in Tools→Preferences.
function addListSinceLink() { var found=findNamespaceForm(); if (!found) return; window.sinceLinkThen=+(new Date()); var sp=document.createElement('span'); sp.innerHTML='<a id="listSince" onclick="loadSincePage()" href="#">Changes since last load</a>'; found.parentNode.insertBefore(sp,found.nextSibling); } function findNamespaceForm() { var forms=document.getElementsByTagName('form'); for (var i=0; i<forms.length; ++i) { if (forms[i].innerHTML.indexOf('Namespace:')> -1) { return forms[i]; } } return null; } function listSinceUrl( ) { var then=window.sinceLinkThen; var days = ( +(new Date()) - then )/(1000 * 3600 * 24); var url=document.location.href.split('#')[0]; if ( /[?&]days=/.test(url) ) return url.replace(/([?&]days=)[^?&]*/, '$1'+days); if (url.indexOf('?')==-1) url += '?'; else url += '&'; return url + 'days=' + days; } window.loadSincePage=function() { var lk=document.getElementById('listSince'); lk.href=listSinceUrl(); } if (/[=\/]Special(%3[Aa]|:)Watchlist/.test(document.location.href)) { addOnloadHook(addListSinceLink); }