From a8871cff145e6985ffb2666f2c6f7f8733ba86c5 Mon Sep 17 00:00:00 2001 From: jdlrobson Date: Mon, 16 Jun 2014 10:26:15 -0700 Subject: [PATCH] Refactor Preferences code to allow better reuse. Break up getPreferences into smaller subfunctions to allow for reuse. Change-Id: Idd33bab61b3ef5a262fee9361105f1c5d8024044 --- includes/Preferences.php | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/includes/Preferences.php b/includes/Preferences.php index f884ec3a85..fdb1a9db66 100644 --- a/includes/Preferences.php +++ b/includes/Preferences.php @@ -98,6 +98,20 @@ class Preferences { wfRunHooks( 'GetPreferences', array( $user, &$defaultPreferences ) ); + self::loadPreferenceValues( $user, $context, $defaultPreferences ); + self::$defaultPreferences = $defaultPreferences; + return $defaultPreferences; + } + + /** + * Loads existing values for a given array of preferences + * @throws MWException + * @param User $user + * @param IContextSource $context + * @param array defaultPreferences to load values for + * @return array|null + */ + static function loadPreferenceValues( $user, $context, &$defaultPreferences ) { ## Remove preferences that wikis don't want to use global $wgHiddenPrefs; foreach ( $wgHiddenPrefs as $pref ) { @@ -138,8 +152,6 @@ class Preferences { } } - self::$defaultPreferences = $defaultPreferences; - return $defaultPreferences; } -- 2.20.1