/*
- * Implementation for mediaWiki.log stub
+ * Implementation for mediaWiki.user
*/
(function( $ ) {
/**
* User object
*/
- function User() {
+ function User( options, tokens ) {
/* Private Members */
/* Public Members */
- this.options = new mw.Map();
+ this.options = options || new mw.Map();
- this.tokens = new mw.Map();
+ this.tokens = tokens || new mw.Map();
/* Public Methods */
*
* @return String: Random set of 32 alpha-numeric characters
*/
- this.generateId = function() {
+ function generateId() {
var id = '';
var seed = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
for ( var i = 0, r; i < 32; i++ ) {
id += seed.substring( r, r + 1 );
}
return id;
- };
+ }
/**
* Gets the current user's name.
this.sessionId = function () {
var sessionId = $.cookie( 'mediaWiki.user.sessionId' );
if ( typeof sessionId == 'undefined' || sessionId === null ) {
- sessionId = that.generateId();
+ sessionId = generateId();
$.cookie( 'mediaWiki.user.sessionId', sessionId, { 'expires': null, 'path': '/' } );
}
return sessionId;
}
var id = $.cookie( 'mediaWiki.user.id' );
if ( typeof id == 'undefined' || id === null ) {
- id = that.generateId();
+ id = generateId();
}
// Set cookie if not set, or renew it if already set
$.cookie( 'mediaWiki.user.id', id, { 'expires': 365, 'path': '/' } );
};
}
- mw.user = new User();
+ // Extend the skeleton mw.user from mediawiki.js
+ // This is kind of ugly but we're stuck with this for b/c reasons
+ mw.user = new User( mw.user.options, mw.user.tokens );
})(jQuery);
\ No newline at end of file