User:Captain Almighty Nutz/monobook.js

//////////STATUS CHANGER // Creator: Misza13 // Credits: Voyagerfan5761 for some minor improvements // Modified by Xenocidic to simply use /Status as a one word indicator, // Modified by Kraftlos to include Sleep status // compatible with for display $(function { //Check if the config is defined if (typeof(statusChangerConfig) == 'undefined') { statusChangerConfig = {} } if (typeof(statusChangerConfig.statusList) == 'undefined') { statusChangerConfig.statusList = [ 'online', 'busy', 'around', 'offline', 'sleep' ]; } if (typeof(statusChangerConfig.statusPage) == 'undefined') { statusChangerConfig.statusPage = 'User:' + wgUserName + '/Status'; } //Add the links for (var i=0; i<statusChangerConfig.statusList.length; i++) { var stat = statusChangerConfig.statusList[i]; var message = (stat === "sleep") ? link = "asleep" : link = stat; mw.util.addPortletLink( "p-personal", //target tab - personal links mw.config.get('wgServer') + mw.config.get('wgScript') + "?title=" + statusChangerConfig.statusPage + "&action=edit&newstatus=" + stat, //link URL stat, //link text "pt-status-" + stat, //id of new button "I'm " + message + "!", //hover text "", //??? document.getElementById("pt-logout")); //add before logout button } if (location.href.indexOf("&action=edit&newstatus=") == -1) return; //Are we here to auto-edit the status? //Get new status statusRegExp = /&action=edit&newstatus=(.*)/; var status = statusRegExp.exec(location.href)[1]; //Modify the form document.getElementById('wpTextbox1').value = status; if (status == "sleep") { status = "sleeping"; } document.getElementById('wpSummary').value = wgUserName + " is now " + status +"."; document.getElementById('wpMinoredit').checked = true; //Submit it! document.getElementById('editform').submit; }); //