mediawiki-extensions-WikiEd.../modules/realtimepreview/ErrorLayout.js

49 lines
1.2 KiB
JavaScript
Raw Normal View History

/**
* This is a layout for displaying an error message.
*
* @class
* @constructor
* @extends OO.ui.Layout
* @param {Object} [config] Configuration options
*/
function ErrorLayout( config ) {
config = config || {};
ErrorLayout.super.call( this, config );
const $image = $( '<div>' ).addClass( 'ext-WikiEditor-image-realtimepreview-error' );
const $title = $( '<h3>' ).text( mw.msg( 'wikieditor-realtimepreview-error' ) );
this.$message = $( '<div>' ).addClass( 'ext-WikiEditor-realtimepreview-error-msg' );
this.reloadButton = new OO.ui.ButtonWidget( {
icon: 'reload',
label: mw.msg( 'wikieditor-realtimepreview-reload' ),
framed: false
} );
this.$element.addClass( 'ext-WikiEditor-realtimepreview-ErrorLayout' );
this.$element.append( $image, $title, this.$message, this.reloadButton.$element );
}
OO.inheritClass( ErrorLayout, OO.ui.Layout );
/**
* @public
* @return {OO.ui.ButtonWidget}
*/
ErrorLayout.prototype.getReloadButton = function () {
return this.reloadButton;
};
/**
* Set the displayed error message.
*
* @public
* @param {jQuery} $errorMsg The message to display.
*/
ErrorLayout.prototype.setMessage = function ( $errorMsg ) {
this.$message
.empty()
.append( $errorMsg );
};
module.exports = ErrorLayout;