/*
SignMe
Fetches the user signature via ResourceLoader, and appends it to the textbox with a timestamp.
This is only a proof-of-concept!
*/
// returns a signature, using the standard format
function SignMe_getSignature() {
var months = new Array( "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" );
var date = new Date();
var username = mw.config.get("wgUserName");
if ( username === null ) { // not logged-in!
mw.log( "Unable to sign - Not logged-in" );
return null;
} else {
var signature = mw.user.options.get("nickname");
if ( signature === null ) { // no custom signature set
signature = "[[User:" + username + "]]";
}
// omfg this is messy...
var hours = date.getUTCHours();
if ( hours < 10 ) hours = "0" + hours;
var minutes = date.getUTCMinutes();
if ( minutes < 10 ) minutes = "0" + minutes;
var timestamp = hours + ":" + minutes
+ ", " + date.getUTCDate() + " " + months[date.getUTCMonth()] + " " + date.getUTCFullYear()
+ " (UTC)";
return signature + " " + timestamp;
}
}
// appends the signature to the textbox
// this assumes #wpTextbox1 is present
function SignMe_appendSignature() {
var signature = SignMe_getSignature();
if ( signature !== null ) {
$( "#wpTextbox1" ).val( $( "#wpTextbox1" ).val() + signature );
return true;
} else {
return false;
}
}
// init
if ( $( "#wpTextbox1" ).length ) {
var SignMe_portlet = mw.util.addPortletLink( "p-tb", "#", "SignMe" );
$( SignMe_portlet ).click( SignMe_appendSignature );
}