Daniel Kinzler has uploaded a new change for review. ( https://gerrit.wikimedia.org/r/351873 )
Change subject: Load default settings in WikibaseSettings. ...................................................................... Load default settings in WikibaseSettings. Change-Id: I3ba7103195bdddf46a286cc7a54c293eca3ad527 --- M client/WikibaseClient.php M lib/includes/WikibaseSettings.php M repo/Wikibase.php 3 files changed, 17 insertions(+), 13 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Wikibase refs/changes/73/351873/1 diff --git a/client/WikibaseClient.php b/client/WikibaseClient.php index 275afce..83a1801 100644 --- a/client/WikibaseClient.php +++ b/client/WikibaseClient.php @@ -258,10 +258,7 @@ include __DIR__ . '/resources/Resources.php' ); - $wgWBClientSettings = array_merge( - require __DIR__ . '/../lib/config/WikibaseLib.default.php', - require __DIR__ . '/config/WikibaseClient.default.php' - ); + $wgWBClientSettings = []; $wgRecentChangesFlags['wikibase-edit'] = array( 'letter' => 'wikibase-rc-wikibase-edit-letter', diff --git a/lib/includes/WikibaseSettings.php b/lib/includes/WikibaseSettings.php index b4869c4..0705a75 100644 --- a/lib/includes/WikibaseSettings.php +++ b/lib/includes/WikibaseSettings.php @@ -42,7 +42,12 @@ throw new MWException( 'Cannot access repo settings: Wikibase Repository component is not enabled!' ); } - $settings = self::getSettings( 'wgWBRepoSettings' ); + $defaults = array_merge( + require __DIR__ . '/../../lib/config/WikibaseLib.default.php', + require __DIR__ . '/../../repo/config/Wikibase.default.php' + ); + + $settings = self::getSettings( 'wgWBRepoSettings', $defaults ); $settings->setSetting( 'entityNamespaces', self::buildEntityNamespaceConfigurations( $settings ) ); return $settings; } @@ -64,7 +69,12 @@ throw new MWException( 'Cannot access client settings: Wikibase Client component is not enabled!' ); } - $settings = self::getSettings( 'wgWBClientSettings' ); + $defaults = array_merge( + require __DIR__ . '/../../lib/config/WikibaseLib.default.php', + require __DIR__ . '/../../client/config/WikibaseClient.default.php' + ); + + $settings = self::getSettings( 'wgWBClientSettings', $defaults ); $settings->setSetting( 'entityNamespaces', self::buildEntityNamespaceConfigurations( $settings ) ); return $settings; } @@ -74,10 +84,11 @@ * This is intended to be used to access settings specified in LocalSettings.php. * * @param string $var The name of a global variable. + * @param array $defaults * * @return SettingsArray */ - private static function getSettings( $var ) { + private static function getSettings( $var, array $defaults = [] ) { if ( !isset( $GLOBALS[$var] ) ) { throw new OutOfBoundsException( 'No such global configuration variable: ' . $var ); } @@ -86,8 +97,7 @@ throw new OutOfBoundsException( 'Not a Wikibase configuration array: ' . $var ); } - $settings = $GLOBALS[$var]; - + $settings = array_merge( $defaults, $GLOBALS[$var] ); return new SettingsArray( $settings ); } diff --git a/repo/Wikibase.php b/repo/Wikibase.php index 7c142d9..ec4085a 100644 --- a/repo/Wikibase.php +++ b/repo/Wikibase.php @@ -990,8 +990,5 @@ include __DIR__ . '/resources/Resources.php' ); - $wgWBRepoSettings = array_merge( - require __DIR__ . '/../lib/config/WikibaseLib.default.php', - require __DIR__ . '/config/Wikibase.default.php' - ); + $wgWBRepoSettings = []; } ); -- To view, visit https://gerrit.wikimedia.org/r/351873 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I3ba7103195bdddf46a286cc7a54c293eca3ad527 Gerrit-PatchSet: 1 Gerrit-Project: mediawiki/extensions/Wikibase Gerrit-Branch: master Gerrit-Owner: Daniel Kinzler <daniel.kinz...@wikimedia.de> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits