2 namespace TYPO3\CMS\Extensionmanager\Utility;
30 $_EXTKEY = $extension[
'key'];
31 $path = PATH_site . $extension[
'siteRelPath'] .
'ext_emconf.php';
33 if (file_exists($path)) {
53 if (is_object($extension) && empty($extensionData[
'EM_CONF'][
'constraints'])) {
54 $extensionData[
'EM_CONF'][
'constraints'] = unserialize($extension->getSerializedDependencies());
56 $emConf = $this->
fixEmConf($extensionData[
'EM_CONF']);
57 $emConf = var_export($emConf,
true);
60 /***************************************************************
61 * Extension Manager/Repository config file for ext "' . $extensionData[
'extKey'] .
'".
63 * Auto generated ' . date(
'd-m-Y H:i') .
'
66 * Only the data in the array - everything else is removed by next
67 * writing. "version" and "dependencies" must not be touched!
68 ***************************************************************/
70 $EM_CONF[$_EXTKEY] = ' . $emConf .
';
85 !isset($emConf[
'constraints']) || !isset($emConf[
'constraints'][
'depends'])
86 || !isset($emConf[
'constraints'][
'conflicts']) || !isset($emConf[
'constraints'][
'suggests'])
88 if (!isset($emConf[
'constraints']) || !isset($emConf[
'constraints'][
'depends'])) {
89 $emConf[
'constraints'][
'depends'] = $this->
stringToDependency($emConf[
'dependencies']);
90 if ((
string)$emConf[
'PHP_version'] !==
'') {
91 $emConf[
'constraints'][
'depends'][
'php'] = $emConf[
'PHP_version'];
93 if ((
string)$emConf[
'TYPO3_version'] !==
'') {
94 $emConf[
'constraints'][
'depends'][
'typo3'] = $emConf[
'TYPO3_version'];
97 if (!isset($emConf[
'constraints']) || !isset($emConf[
'constraints'][
'conflicts'])) {
100 if (!isset($emConf[
'constraints']) || !isset($emConf[
'constraints'][
'suggests'])) {
101 $emConf[
'constraints'][
'suggests'] = array();
106 unset($emConf[
'dependencies']);
107 unset($emConf[
'conflicts']);
108 unset($emConf[
'suggests']);
109 unset($emConf[
'private']);
110 unset($emConf[
'download_password']);
111 unset($emConf[
'TYPO3_version']);
112 unset($emConf[
'PHP_version']);
113 unset($emConf[
'internal']);
114 unset($emConf[
'module']);
115 unset($emConf[
'loadOrder']);
116 unset($emConf[
'lockType']);
117 unset($emConf[
'shy']);
118 unset($emConf[
'priority']);
119 unset($emConf[
'modify_tables']);
120 unset($emConf[
'CGLcompliance']);
121 unset($emConf[
'CGLcompliance_note']);
139 $constraint = array();
140 if (is_string($dependency) && $dependency !==
'') {
141 $dependency = explode(
',', $dependency);
142 foreach ($dependency as $v) {
143 $constraint[$v] =
'';