* @license CC-BY 3.0 <http://creativecommons.org/licenses/by/3.0>
* @license GPL2 <http://www.gnu.org/licenses/old-licenses/gpl-2.0.html>
*/
-( function( $, mw ) {
+( function( $ ) {
// @return jQuery object of the message box
$.messageBoxNew = function( options ) {
options = $.extend( {
'parent': 'body', // jQuery/CSS selector
'insert': 'prepend' // 'prepend' or 'append'
}, options );
- var $curBox = $( '#'+ options.id );
+ var $curBox = $( '#' + options.id );
// Only create a new box if it doesn't exist already
- if ( $curBox.size() > 0 ) {
+ if ( $curBox.length > 0 ) {
if ( $curBox.hasClass( 'js-messagebox' ) ) {
return $curBox;
} else {
return $curBox.addClass( 'js-messagebox' );
}
} else {
- var $newBox = $( '<div/>', {
+ var $newBox = $( '<div>', {
'id': options.id,
'class': 'js-messagebox',
'css': {
'display': 'none'
}
});
+ if ( $( options.parent ).length < 1 ) {
+ options.parent = 'body';
+ }
if ( options.insert === 'append' ) {
$newBox.appendTo( options.parent );
return $newBox;
'group': 'default',
'replace': false, // if true replaces any previous message in this group
'target': 'js-messagebox'
- }, options );
+ }, options );
var $target = $.messageBoxNew( { id: options.target } );
var groupID = options.target + '-' + options.group;
var $group = $( '#' + groupID );
// Create group container if not existant
- if ( $group.size() < 1 ) {
- $group = $( '<div/>', {
+ if ( $group.length < 1 ) {
+ $group = $( '<div>', {
'id': groupID,
'class': 'js-messagebox-group'
});
$group.hide();
} else {
// Actual message addition
- $group.prepend( $( '<p/>' ).append( options.message ) ).show();
+ $group.prepend( $( '<p>' ).append( options.message ) ).show();
$target.slideDown();
}
// If the last visible group was just hidden, slide the entire box up
// Othere wise slideDown (if already visible nothing will happen)
- if ( $target.find( '> *:visible' ).size() === 0 ) {
+ if ( $target.find( '> *:visible' ).length === 0 ) {
// to avoid a sudden dissapearance of the last group followed by
// a slide up of only the outline, show it for a second
$group.show();
}
return $group;
};
-} )( jQuery, mediaWiki );
\ No newline at end of file
+} )( jQuery );