-jQuery( document ).ready( function ( $ ) {
- var collapsibleLists, i, handleOne;
+( function ( mw, $ ) {
+ var collapsibleLists, handleOne;
// Collapsible lists of categories and templates
collapsibleLists = [
{
- $list: $( '.templatesUsed ul' ),
- $toggler: $( '.mw-templatesUsedExplanation' ),
+ listSel: '.templatesUsed ul',
+ togglerSel: '.mw-templatesUsedExplanation',
cookieName: 'templates-used-list'
},
{
- $list: $( '.hiddencats ul' ),
- $toggler: $( '.mw-hiddenCategoriesExplanation' ),
+ listSel: '.hiddencats ul',
+ togglerSel: '.mw-hiddenCategoriesExplanation',
cookieName: 'hidden-categories-list'
},
{
- $list: $( '.preview-limit-report-wrapper' ),
- $toggler: $( '.mw-limitReportExplanation' ),
+ listSel: '.preview-limit-report-wrapper',
+ togglerSel: '.mw-limitReportExplanation',
cookieName: 'preview-limit-report'
}
];
} );
};
- for ( i = 0; i < collapsibleLists.length; i++ ) {
- // Pass to a function for iteration-local variables
- handleOne( collapsibleLists[i].$list, collapsibleLists[i].$toggler, collapsibleLists[i].cookieName );
- }
-} );
+ mw.hook( 'wikipage.editform' ).add( function ( $editForm ) {
+ var i;
+ for ( i = 0; i < collapsibleLists.length; i++ ) {
+ // Pass to a function for iteration-local variables
+ handleOne(
+ $editForm.find( collapsibleLists[i].listSel ),
+ $editForm.find( collapsibleLists[i].togglerSel ),
+ collapsibleLists[i].cookieName
+ );
+ }
+ } );
+}( mediaWiki, jQuery ) );
/*!
* 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 ) );