User:Misza13/statusChanger.dev.js
//
//////////STATUS CHANGER
// Creator: Misza13
// Credits: Voyagerfan5761 for some minor improvements
addOnloadHook(function (){
//Check if the config is defined
if (typeof(statusChangerConfig) == 'undefined') {
statusChangerConfig = {}
}
if (typeof(statusChangerConfig.statusList) == 'undefined') {
statusChangerConfig.statusList = [ 'in', 'busy', 'out' ];
}
if (typeof(statusChangerConfig.statusPage) == 'undefined') {
statusChangerConfig.statusPage = mw.config.get('wgUserName') + '/Status';
}
if (typeof(statusChangerConfig.statusTemplate) == 'undefined') {
statusChangerConfig.statusTemplate = mw.config.get('wgUserName') + '/StatusTemplate';
}
//Add the links
for (var i=0; i var stat = statusChangerConfig.statusList[i]; addLink( "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 " + stat + "!", //hover text "", //??? "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=(.*)/; status = statusRegExp.exec(location.href)[1]; //Modify the form document.getElementById('wpTextbox1').value = "{{" + statusChangerConfig.statusTemplate + "|"+status+"}}"; document.getElementById('wpSummary').value = "Status update: " + status; document.getElementById('wpMinoredit').checked = true; //Submit it! document.getElementById('editform').submit(); }); //