/** * @return null|\TYPO3\CMS\Install\Configuration\AbstractPreset * @throws \TYPO3\CMS\Install\Configuration\Exception */ public function isDevelopPresetActive() { $features = $this->featureManager->getInitializedFeatures(array()); /** @var \TYPO3\CMS\Install\Configuration\Context\ContextFeature $contextPreset */ $contextFeature = NULL; foreach ($features as $feature) { if ($feature instanceof \TYPO3\CMS\Install\Configuration\Context\ContextFeature) { $contextFeature = $feature; continue; } } if ($contextFeature === NULL) { return NULL; } $activePreset = NULL; $presets = $contextFeature->getPresetsOrderedByPriority(); foreach ($presets as $preset) { /** @var \TYPO3\CMS\Install\Configuration\AbstractPreset $preset */ if ($preset->isActive()) { $activePreset = $preset; continue; } } if ($activePreset->getName() === 'Development') { return true; } return false; }
/** * Configure selected feature presets to be active * * @return \TYPO3\CMS\Install\Status\StatusInterface */ protected function activate() { $configurationValues = $this->featureManager->getConfigurationForSelectedFeaturePresets($this->postValues['values']); if (!empty($configurationValues)) { $this->configurationManager->setLocalConfigurationValuesByPathValuePairs($configurationValues); /** @var $message \TYPO3\CMS\Install\Status\StatusInterface */ $message = $this->objectManager->get(\TYPO3\CMS\Install\Status\OkStatus::class); $message->setTitle('Configuration written'); $messageBody = array(); foreach ($configurationValues as $configurationKey => $configurationValue) { $messageBody[] = '\'' . $configurationKey . '\' => \'' . $configurationValue . '\''; } $message->setMessage(implode(LF, $messageBody)); } else { /** @var $message \TYPO3\CMS\Install\Status\StatusInterface */ $message = $this->objectManager->get(\TYPO3\CMS\Install\Status\InfoStatus::class); $message->setTitle('No configuration change selected'); } return $message; }