mediawiki.toolbar: Emit deprecation warnings
[lhc/web/wiklou.git] / includes / EditPage.php
index ca3b4d1..e98dd52 100644 (file)
@@ -4097,11 +4097,14 @@ HTML
                }
 
                $script .= '});';
-               $wgOut->addScript( ResourceLoader::makeInlineScript( $script ) );
 
                $toolbar = '<div id="toolbar"></div>';
 
-               Hooks::run( 'EditPageBeforeEditToolbar', [ &$toolbar ] );
+               if ( Hooks::run( 'EditPageBeforeEditToolbar', [ &$toolbar ] ) ) {
+                       // Only add the old toolbar cruft to the page payload if the toolbar has not
+                       // been over-written by a hook caller
+                       $wgOut->addScript( ResourceLoader::makeInlineScript( $script ) );
+               };
 
                return $toolbar;
        }
@@ -4280,6 +4283,27 @@ HTML
                return $checkboxes;
        }
 
+       /**
+        * Get the message key of the label for the button to save the page
+        *
+        * @return string
+        */
+       private function getSaveButtonLabel() {
+               $labelAsPublish =
+                       $this->mArticle->getContext()->getConfig()->get( 'EditSubmitButtonLabelPublish' );
+
+               // Can't use $this->isNew as that's also true if we're adding a new section to an extant page
+               $newPage = !$this->mTitle->exists();
+
+               if ( $labelAsPublish ) {
+                       $buttonLabelKey =  $newPage ? 'publishpage' : 'publishchanges';
+               } else {
+                       $buttonLabelKey = $newPage ? 'savearticle' : 'savechanges';
+               }
+
+               return $buttonLabelKey;
+       }
+
        /**
         * Returns an array of html code of the following buttons:
         * save, diff and preview
@@ -4291,15 +4315,8 @@ HTML
        public function getEditButtons( &$tabindex ) {
                $buttons = [];
 
-               $labelAsPublish =
-                       $this->mArticle->getContext()->getConfig()->get( 'EditSubmitButtonLabelPublish' );
+               $buttonLabelKey = $this->getSaveButtonLabel();
 
-               // Can't use $this->isNew as that's also true if we're adding a new section to an extant page
-               if ( $labelAsPublish ) {
-                       $buttonLabelKey = !$this->mTitle->exists() ? 'publishpage' : 'publishchanges';
-               } else {
-                       $buttonLabelKey = !$this->mTitle->exists() ? 'savearticle' : 'savechanges';
-               }
                $attribs = [
                        'id' => 'wpSave',
                        'name' => 'wpSave',