Jump to content

User:Topaz/init.js

From Wikipedia, the free encyclopedia
Note: After saving, you have to bypass your browser's cache to see the changes. Google Chrome, Firefox, Microsoft Edge and Safari: Hold down the ⇧ Shift key and click the Reload toolbar button. For details and instructions about other browsers, see Wikipedia:Bypass your cache.
var topaz = new Object();
topaz.latestversion = {
  statuschanger:    20061108,
  editcountutil:    20061104,
  enhanceduserpage: 20061107
};

topaz.init = new Object();
topaz.init.oldonload = window.onload;
window.onload = function() {
  if (typeof topaz.init.oldonload == "function") topaz.init.oldonload();
  var outdated = [];
  var highestversion = 0;
  var versionoverride = topaz.util.cookie.get("topaz.init.versionoverride");
  for (mod in topaz.latestversion) {
    if (topaz[mod]) {
      if (!topaz[mod].version || topaz[mod].version < topaz.latestversion[mod]) {
        if (!versionoverride || topaz.latestversion[mod] > versionoverride) {
          outdated.push({
            mod:    mod,
            latest: topaz.latestversion[mod],
            cur:    (topaz[mod].version?topaz[mod].version:0)
          });
        }
      }
      if (topaz.latestversion[mod] > highestversion) {
        highestversion = topaz.latestversion[mod];
      }
    }
  }
  if (outdated.length==0) {return}
  var noticemessage = 'You seem to be using outdated versions of <font color="#ff9900">Topaz\'s</font> <font color="#0066ff">Wikiscripts</font>.  While you may opt to <a href="javascript:void(0);" onclick="javascript:topaz.util.cookie.set(\'topaz.init.versionoverride\','+highestversion+');topaz.init.noticediv.style.display=\'none\';">hide this message</a> until the next major update (or until you clear your cookies), you should strongly consider <a href="http://en.wikipedia.org/wiki/User:Topaz/Wikiscripts">updating them</a> to take advantage of the new features and bug fixes.  In particular, the following scripts could use updating:<ul>';
  for(var i=0; i<outdated.length; i++) {
    noticemessage += "<li><strong>" + outdated[i].mod + "</strong> version " + outdated[i].cur + " (latest is version " + outdated[i].latest + ")</li>";
  }
  noticemessage += "</ul>";
  with(topaz.init.noticediv = topaz.util.add(topaz.util.getobj("contentSub"), "div")) {
    innerHTML = noticemessage;
    style.color = "#666666";
    style.backgroundColor = "#eeeeee";
    style.border = "1px solid #cccccc";
    style.margin = "5px";
    style.padding = "2px";
  }
  // todo: hide button
};