User:Jianhui67/vector.js

/* Status changer puts a coloured blob in the top  bar  of your user page and talk  page to  notify  users of your online status */ //////////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 addOnloadHook(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:' + 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 === "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 = mw.config.get('wgUserName') + " is now " + status +".";  document.getElementById('wpMinoredit').checked = true;  //Submit it!  document.getElementById('editform').submit; });

//

// Add WP:Reflinks launcher in the toolbox on left addOnloadHook(function { mw.util.addPortletLink( "p-tb",    // toolbox portlet "//toolserver.org/~dispenser/cgi-bin/webreflinks.py/" + mw.config.get('wgPageName') + "?client=script&citeweb=on&overwrite=&limit=20&lang=" + mw.config.get('wgContentLanguage'), "Reflinks" // link label )});

/*** BEGIN WIKIBREAK ENFORCER ***/ addOnloadHook(function {       /*** Start editing here ***/        // When you want to end your break?        // no leading zeroes. (example: 7 - correct, 07 - incorrect)        var date = { year: 2013, month: 12, day: 11};        var time = { hours: 00, minutes: 00, seconds: 0 };        /*** Stop editing here ***/        var currentDate = new Date;        var enforcedBreakEnd = new Date( date.year,date.month-1,date.day,time.hours,time.minutes,time.seconds);       if (currentDate <= enforcedBreakEnd) {                alert("Enforced wikibreak until "+enforcedBreakEnd.toLocaleString + "\n(now is "+currentDate.toLocaleString+")\n\nBye!");               location = "//"+location.host+"/w/index.php?title="                        + "Special:Userlogout&returnto=Main_Page";        } }); /*** END WIKIBREAK ENFORCER ***/