//////////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
// Modified by APerson for compatibility with {{UserStatus}}
// Modified by RacoonyRE for more options
// compatible with {{Statustop}} for display
$(function (){
//Check if the config is defined
if (typeof(statusChangerConfig) == 'undefined') {
statusChangerConfig = {}
}
if (typeof(statusChangerConfig.statusList) == 'undefined') {
//Set status-text in the following line:
statusChangerConfig.statusList = [ 'online', 'offline', 'sleeping', 'huggle', 'vandal', 'working'];
//Set short link-text in the following line in same order:
statusChangerConfig.statusListShort = [ 'On', 'Off', 'Sleep', 'Hug', 'Van', 'work'];
}
if (typeof(statusChangerConfig.statusPage) == 'undefined') {
statusChangerConfig.statusPage = 'User:' + mw.config.get('wgUserName') + '/Status';
}
//Add the links
for (var i=0; i<statusChangerConfig.statusList.length; i++) {
var stat = statusChangerConfig.statusList[i];
var message = (stat === "sleeping") ? 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
statusChangerConfig.statusListShort[i], //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];
var statusText = status + "\r\n<noinclude>\r\n{{User:RacoonyRE/StatusTable}}\r\n</noinclude>";
//Modify the form
document.getElementById('wpTextbox1').value = statusText;
if (status == "sleep")
{ status = "sleeping"; }
document.getElementById('wpSummary').value = mw.config.get('wgUserName') + " is now " + status +".";
document.getElementById('wpMinoredit').checked = true;
//Submit it!
document.getElementById('editform').submit();
});