Replace PreferencesFormLegacy usages with PreferencesFormOOUI
[lhc/web/wiklou.git] / includes / preferences / DefaultPreferencesFactory.php
index 3651882..e354d55 100644 (file)
@@ -43,7 +43,7 @@ use MWTimestamp;
 use OutputPage;
 use Parser;
 use ParserOptions;
-use PreferencesFormLegacy;
+use PreferencesFormOOUI;
 use Psr\Log\LoggerAwareTrait;
 use Psr\Log\NullLogger;
 use Skin;
@@ -121,7 +121,7 @@ class DefaultPreferencesFactory implements PreferencesFactory {
                $this->skinPreferences( $user, $context, $preferences );
                $this->datetimePreferences( $user, $context, $preferences );
                $this->filesPreferences( $context, $preferences );
-               $this->renderingPreferences( $context, $preferences );
+               $this->renderingPreferences( $user, $context, $preferences );
                $this->editingPreferences( $user, $context, $preferences );
                $this->rcPreferences( $user, $context, $preferences );
                $this->watchlistPreferences( $user, $context, $preferences );
@@ -800,10 +800,12 @@ class DefaultPreferencesFactory implements PreferencesFactory {
        }
 
        /**
+        * @param User $user
         * @param MessageLocalizer $l10n
         * @param array &$defaultPreferences
         */
        protected function renderingPreferences(
+               User $user,
                MessageLocalizer $l10n,
                &$defaultPreferences
        ) {
@@ -861,6 +863,14 @@ class DefaultPreferencesFactory implements PreferencesFactory {
                        'section' => 'rendering/advancedrendering',
                        'label-message' => 'tog-numberheadings',
                ];
+
+               if ( $user->isAllowed( 'rollback' ) ) {
+                       $defaultPreferences['showrollbackconfirmation'] = [
+                               'type' => 'toggle',
+                               'section' => 'rendering/advancedrendering',
+                               'label-message' => 'tog-showrollbackconfirmation',
+                       ];
+               }
        }
 
        /**
@@ -1042,7 +1052,6 @@ class DefaultPreferencesFactory implements PreferencesFactory {
                # # Watchlist #####################################
                if ( $user->isAllowed( 'editmywatchlist' ) ) {
                        $editWatchlistLinks = '';
-                       $editWatchlistLinksOld = [];
                        $editWatchlistModes = [
                                'edit' => [ 'subpage' => false, 'flags' => [] ],
                                'raw' => [ 'subpage' => 'raw', 'flags' => [] ],
@@ -1421,7 +1430,7 @@ class DefaultPreferencesFactory implements PreferencesFactory {
        public function getForm(
                User $user,
                IContextSource $context,
-               $formClass = PreferencesFormLegacy::class,
+               $formClass = PreferencesFormOOUI::class,
                array $remove = []
        ) {
                // We use ButtonWidgets in some of the getPreferences() functions
@@ -1441,7 +1450,7 @@ class DefaultPreferencesFactory implements PreferencesFactory {
                }
 
                /**
-                * @var $htmlForm HTMLForm
+                * @var HTMLForm $htmlForm
                 */
                $htmlForm = new $formClass( $formDescriptor, $context, 'prefs' );