[MediaWiki-commits] [Gerrit] mediawiki...BlueSpiceFoundation[master]: BSFoundation: Used extension attributes for registration and...

2017-11-30 Thread jenkins-bot (Code Review)
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...

2017-11-27 Thread Pwirth (Code Review)
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'] =