User:Legolost/statuschanger.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.
topaz.statuschanger = new Object();

/* configuration */
// change these to whatever you'd like to show up on your status page.
topaz.statuschanger.statuscode = {
  online:'<font color="green">online</font> [[Image:Nuvola apps gaim.png|40px]]',
  around:'<font color="orange">around</font> [[Image:Nuvola apps irkick.png|40px]]',
  offline:'<font color="red">sleeping</font> [[Image:Nuvola apps kalarm.png|40px]]',
  working:'<font color="black">wor</font><font color="red">king</font> [[Image:Nuvola apps edu miscellaneous.png|40px]]',
};
// true to use the personal bar, false to create a panel in the left column
topaz.statuschanger.usepersonalbar = true;
/* end configuration */

topaz.statuschanger.oldonload = window.onload;
window.onload = function() {
  if (typeof topaz.statuschanger.oldonload == "function"){setTimeout('topaz.statuschanger.oldonload()',50);}
  if (topaz.statuschanger.usepersonalbar) {
    var a = topaz.wputil.addsidepanelbutton("p-personal", "Online",
        'javascript:topaz.statuschanger.setstatus("online")');
    var b = topaz.wputil.addsidepanelbutton("p-personal", "Around",
        'javascript:topaz.statuschanger.setstatus("around")');
    var c = topaz.wputil.addsidepanelbutton("p-personal", "Offline",
        'javascript:topaz.statuschanger.setstatus("offline")');
    var d = topaz.wputil.addsidepanelbutton("p-personal", "Working",
        'javascript:topaz.statuschanger.setstatus("working")');
    
    a.style.borderRight=b.style.borderRight="1px solid #aaaaaa";
    b.style.marginLeft=c.style.marginLeft="0px";
    a.style.paddingRight=b.style.paddingLeft=b.style.paddingRight=c.style.paddingLeft="2px";
  } else {
    topaz.wputil.addsidepanel("tz-statuschanger", "status changer");
    topaz.wputil.addsidepanelbutton("tz-statuschanger", "Online",
        'javascript:topaz.statuschanger.setstatus("online")'
    );
    topaz.wputil.addsidepanelbutton("tz-statuschanger", "Sleeping",
        'javascript:topaz.statuschanger.setstatus("sleeping")'
    );
    topaz.wputil.addsidepanelbutton("tz-statuschanger", "Offline",
        'javascript:topaz.statuschanger.setstatus("offline")'
    );
  }
};

topaz.statuschanger.setstatus = function(statusname) {
  topaz.wputil.setpagecontent(
      "User:"+topaz.wputil.username()+"/Status",
      topaz.statuschanger.statuscode[statusname],
      statusname,
      true);
};