( function ( mw, $ ) { 'use strict'; /** * Fired after an edit was successfully saved. * * Does not fire for null edits. * * @event postEdit * @member mw.hook * @param {Object} [data] Optional data * @param {string|jQuery|Array} [data.message] Message that listeners * should use when displaying notifications. String for plain text, * use array or jQuery object to pass actual nodes. * @param {string|mw.user} [data.user=mw.user] User that made the edit. */ /** * After the listener for #postEdit removes the notification. * * @event postEdit_afterRemoval * @member mw.hook */ var postEdit = mw.config.get( 'wgPostEdit' ); function showConfirmation( data ) { var $container, $popup, $content, timeoutId; function fadeOutConfirmation() { $popup.addClass( 'postedit-faded' ); setTimeout( function () { $container.remove(); mw.hook( 'postEdit.afterRemoval' ).fire(); }, 250 ); } data = data || {}; if ( data.message === undefined ) { data.message = $.parseHTML( mw.message( mw.config.get( 'wgEditSubmitButtonLabelPublish' ) ? 'postedit-confirmation-published' : 'postedit-confirmation-saved', data.user || mw.user ).escaped() ); } $content = $( '