[MediaWiki-commits] [Gerrit] mediawiki...BlueSpiceFoundation[master]: BSFoundation: Used extension attributes for registration and...
jenkins-bot has submitted this change and it was merged. ( https://gerrit.wikimedia.org/r/393564 ) Change subject: BSFoundation: Used extension attributes for registration and added support for manifest v2 .. BSFoundation: Used extension attributes for registration and added support for manifest v2 Change-Id: I1b5704528e964de10911bb5e1540e96ce1dd9f0e --- M extension.json M includes/DefaultSettings.php M includes/ExtensionManager.class.php M src/DynamicFileDispatcher/Factory.php M src/EntityRegistry.php 5 files changed, 42 insertions(+), 26 deletions(-) Approvals: Robert Vogel: Looks good to me, approved jenkins-bot: Verified diff --git a/extension.json b/extension.json index 7e45d74..aca2f07 100644 --- a/extension.json +++ b/extension.json @@ -8,6 +8,24 @@ "url": "http://bluespice.com";, "descriptionmsg": "bluespicefoundation-desc", "type": "other", + "attributes": { + "BlueSpiceFoundation": { + "Extensions": { + "BlueSpiceFoundation": { + "configDefinitions": { + "Logo": "\\BlueSpice\\ConfigDefinition\\Logo::getInstance", + "FileExtensions": "\\BlueSpice\\ConfigDefinition\\FileExtensions::getInstance", + "ImageExtensions": "\\BlueSpice\\ConfigDefinition\\ImageExtensions::getInstance", + "Favicon": "\\BlueSpice\\ConfigDefinition\\Favicon::getInstance" + } + } + }, + "DynamicFileRegistry": { + "userprofileimage": "\\BlueSpice\\DynamicFileDispatcher\\UserProfileImage" + }, + "EntityRegistry": {} + } + }, "ExtensionFunctions": [ "BsCoreHooks::setup" ], @@ -458,14 +476,6 @@ } }, "ConfigFiles": { - "value": [] - }, - "DynamicFileRegistry": { - "value": { - "userprofileimage": "\\BlueSpice\\DynamicFileDispatcher\\UserProfileImage" - } - }, - "EntityRegistry": { "value": [] } }, diff --git a/includes/DefaultSettings.php b/includes/DefaultSettings.php index 716ce55..add5484 100644 --- a/includes/DefaultSettings.php +++ b/includes/DefaultSettings.php @@ -316,20 +316,10 @@ 'bs-extjs-theme-tree-view-border' => '0px solid black' ) ); - /** * BsExtensionManager extension registration */ -$GLOBALS['bsgExtensions'] = [ - "BlueSpiceFoundation" => [ - "configDefinitions" => [ - "Logo" => "\\BlueSpice\\ConfigDefinition\\Logo::getInstance", - "FileExtensions" => "\\BlueSpice\\ConfigDefinition\\FileExtensions::getInstance", - "ImageExtensions" => "\\BlueSpice\\ConfigDefinition\\ImageExtensions::getInstance", - "Favicon" => "\\BlueSpice\\ConfigDefinition\\Favicon::getInstance", - ] - ] -]; +$GLOBALS['bsgExtensions'] = []; /** * BsTemplateHelper template directory overwrite diff --git a/includes/ExtensionManager.class.php b/includes/ExtensionManager.class.php index 051ccc6..253ffed 100644 --- a/includes/ExtensionManager.class.php +++ b/includes/ExtensionManager.class.php @@ -205,14 +205,22 @@ */ public static function initialiseExtensions( $oCore ) { wfProfileIn( 'Performance: ' . __METHOD__ ); - $aBSExtFromJSON = ExtensionRegistry::getInstance()->getAttribute( + $extRegistry = ExtensionRegistry::getInstance(); + $aBSExtFromJSON = $extRegistry->getAttribute( 'bsgExtensions' ); + if( empty( $GLOBALS['bsgExtensions'] ) ) { + $GLOBALS['bsgExtensions'] = []; + } if( !empty( $aBSExtFromJSON ) ) { - $GLOBALS['bsgExtensions'] = array_replace_recursive( + $GLOBALS['bsgExtensions'] = array_merge( + //old global + $GLOBALS['bsgExtensions'], + //manifest version 1 $aBSExtFromJSON, - $GLOBALS['bsgExtensions'] + //manifest version 2 + $extRegistry->getAttribute( 'BlueSpiceFoundationExtensions' ) ); } diff --git a/src/DynamicFileDisp
[MediaWiki-commits] [Gerrit] mediawiki...BlueSpiceFoundation[master]: BSFoundation: Used extension attributes for registration and...
Pwirth has uploaded a new change for review. ( https://gerrit.wikimedia.org/r/393564 ) Change subject: BSFoundation: Used extension attributes for registration and added support for manifest v2 .. BSFoundation: Used extension attributes for registration and added support for manifest v2 Change-Id: I1b5704528e964de10911bb5e1540e96ce1dd9f0e --- M extension.json M includes/DefaultSettings.php M includes/ExtensionManager.class.php M src/DynamicFileDispatcher/Factory.php M src/EntityRegistry.php 5 files changed, 76 insertions(+), 28 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/BlueSpiceFoundation refs/changes/64/393564/1 diff --git a/extension.json b/extension.json index 7e45d74..eeaf919 100644 --- a/extension.json +++ b/extension.json @@ -8,6 +8,24 @@ "url": "http://bluespice.com";, "descriptionmsg": "bluespicefoundation-desc", "type": "other", + "attributes": { + "BlueSpiceFoundation": { + "bsgExtensions": { + "BlueSpiceFoundation": { + "configDefinitions": { + "Logo": "\\BlueSpice\\ConfigDefinition\\Logo::getInstance", + "FileExtensions": "\\BlueSpice\\ConfigDefinition\\FileExtensions::getInstance", + "ImageExtensions": "\\BlueSpice\\ConfigDefinition\\ImageExtensions::getInstance", + "Favicon": "\\BlueSpice\\ConfigDefinition\\Favicon::getInstance" + } + } + }, + "bsgDynamicFileRegistry": { + "userprofileimage": "\\BlueSpice\\DynamicFileDispatcher\\UserProfileImage" + }, + "bsgEntityRegistry": {} + } + }, "ExtensionFunctions": [ "BsCoreHooks::setup" ], @@ -458,14 +476,6 @@ } }, "ConfigFiles": { - "value": [] - }, - "DynamicFileRegistry": { - "value": { - "userprofileimage": "\\BlueSpice\\DynamicFileDispatcher\\UserProfileImage" - } - }, - "EntityRegistry": { "value": [] } }, diff --git a/includes/DefaultSettings.php b/includes/DefaultSettings.php index 716ce55..59a8529 100644 --- a/includes/DefaultSettings.php +++ b/includes/DefaultSettings.php @@ -318,20 +318,6 @@ ) ); /** - * BsExtensionManager extension registration - */ -$GLOBALS['bsgExtensions'] = [ - "BlueSpiceFoundation" => [ - "configDefinitions" => [ - "Logo" => "\\BlueSpice\\ConfigDefinition\\Logo::getInstance", - "FileExtensions" => "\\BlueSpice\\ConfigDefinition\\FileExtensions::getInstance", - "ImageExtensions" => "\\BlueSpice\\ConfigDefinition\\ImageExtensions::getInstance", - "Favicon" => "\\BlueSpice\\ConfigDefinition\\Favicon::getInstance", - ] - ] -]; - -/** * BsTemplateHelper template directory overwrite * $bsgTemplates = array( *BSExtension.Template.Name": "$wgExtensionsDirectory/MyExtension/PathToTemplateDir", diff --git a/includes/ExtensionManager.class.php b/includes/ExtensionManager.class.php index 051ccc6..92b0f17 100644 --- a/includes/ExtensionManager.class.php +++ b/includes/ExtensionManager.class.php @@ -205,14 +205,30 @@ */ public static function initialiseExtensions( $oCore ) { wfProfileIn( 'Performance: ' . __METHOD__ ); - $aBSExtFromJSON = ExtensionRegistry::getInstance()->getAttribute( + $extRegistry = ExtensionRegistry::getInstance(); + $aBSExtFromJSON = $extRegistry->getAttribute( 'bsgExtensions' ); + foreach( $extRegistry->getAllThings() as $sExtName => $aDefinition ) { + //attributes in manifest version 2+ + $attrName = "{$sExtName}bsgExtensions"; + if( empty( $extRegistry->getAttribute( $attrName ) ) ) { + continue; + } + + $aBSExtFromJSON[$sExtName] = $extRegistry->getAttribute( + $attrName + ); + } + + if( empty( $GLOBALS['bsgExtensions'] ) ) { + $GLOBALS['bsgExtensions'] = []; + } if( !empty( $aBSExtFromJSON ) ) { - $GLOBALS['bsgExtensions'] =