GallerySlideshow: getImageInfo: Reject promise if there is no thumbnail
[lhc/web/wiklou.git] / resources / src / mediawiki.action / mediawiki.action.edit.js
index 01a25f3..c9834f0 100644 (file)
@@ -1,23 +1,40 @@
 /*!
  * Scripts for action=edit at domready
  */
-jQuery( function ( $ ) {
-       var editBox, scrollTop, $editForm;
+( function ( mw, $ ) {
+       'use strict';
 
-       // Make sure edit summary does not exceed byte limit
-       $( '#wpSummary' ).byteLimit( 255 );
+       /**
+        * Fired when the editform is added to the edit page
+        *
+        * Similar to the {@link mw.hook#event-wikipage_content wikipage.content hook}
+        * $editForm can still be detached when this hook is fired.
+        *
+        * @event wikipage_editform
+        * @member mw.hook
+        * @param {jQuery} $editForm The most appropriate element containing the
+        *   editform, usually #editform.
+        */
 
-       // Restore the edit box scroll state following a preview operation,
-       // and set up a form submission handler to remember this state.
-       editBox = document.getElementById( 'wpTextbox1' );
-       scrollTop = document.getElementById( 'wpScrolltop' );
-       $editForm = $( '#editform' );
-       if ( $editForm.length && editBox && scrollTop ) {
-               if ( scrollTop.value ) {
-                       editBox.scrollTop = scrollTop.value;
+       $( function () {
+               var editBox, scrollTop, $editForm;
+
+               // Make sure edit summary does not exceed byte limit
+               $( '#wpSummary' ).byteLimit( 255 );
+
+               // Restore the edit box scroll state following a preview operation,
+               // and set up a form submission handler to remember this state.
+               editBox = document.getElementById( 'wpTextbox1' );
+               scrollTop = document.getElementById( 'wpScrolltop' );
+               $editForm = $( '#editform' );
+               mw.hook( 'wikipage.editform' ).fire( $editForm );
+               if ( $editForm.length && editBox && scrollTop ) {
+                       if ( scrollTop.value ) {
+                               editBox.scrollTop = scrollTop.value;
+                       }
+                       $editForm.submit( function () {
+                               scrollTop.value = editBox.scrollTop;
+                       } );
                }
-               $editForm.submit( function () {
-                       scrollTop.value = editBox.scrollTop;
-               } );
-       }
-} );
+       } );
+}( mediaWiki, jQuery ) );