2 namespace TYPO3\CMS\Install\Configuration;
62 public function initializePresets(array
$postValues)
65 $featurePostValues = array();
66 if (!empty($postValues[$this->name])) {
69 $this->postValues = $featurePostValues;
71 $isNonCustomPresetActive =
false;
72 $customPresetFound =
false;
73 foreach ($this->presetRegistry as $presetClass) {
75 $presetInstance = $this->objectManager->get($presetClass);
76 if (!($presetInstance instanceof PresetInterface)) {
78 'Preset ' . $presetClass .
' does not implement PresetInterface',
83 $presetInstance->setPostValues($featurePostValues);
86 if ($presetInstance->isActive()) {
87 $isNonCustomPresetActive =
true;
89 if ($presetInstance instanceof CustomPresetInterface
90 && !$isNonCustomPresetActive
93 if ($customPresetFound ===
true) {
95 'Preset ' . $presetClass .
' implements CustomPresetInterface, but another'
96 .
' custom preset is already registered',
102 $presetInstance->setActive();
103 $customPresetFound =
true;
106 $this->presetInstances[] = $presetInstance;
116 public function getPresetsOrderedByPriority()
118 if (empty($this->presetInstances)) {
120 'Presets not initialized',
124 $orderedPresets = array();
125 foreach ($this->presetInstances as $presetInstance) {
127 $orderedPresets[$presetInstance->getPriority()] = $presetInstance;
129 krsort($orderedPresets, SORT_NUMERIC);
130 return $orderedPresets;