Prepare i10n of events page

This commit is contained in:
Björn Fromme
2018-10-05 15:03:05 +02:00
parent b26b1b4758
commit 374afb0ea6
35 changed files with 828 additions and 242 deletions
@@ -2,23 +2,33 @@
namespace EP\EpEvents\Service;
use TYPO3\CMS\Core\Utility\GeneralUtility;
use TYPO3\CMS\Extbase\Configuration\ConfigurationManagerInterface;
use TYPO3\CMS\Extensionmanager\Utility\ConfigurationUtility;
class ConfigurationService
{
/**
* @var ConfigurationUtility
* @var ConfigurationManagerInterface
*/
protected $configurationUtility;
protected $configurationManager;
/**
* @param ConfigurationUtility $configurationUtility
* @var array
*/
public function __construct(ConfigurationUtility $configurationUtility)
{
protected $settings;
$this->configurationUtility = $configurationUtility;
/**
* @param ConfigurationManagerInterface $configurationManager
*/
public function __construct(ConfigurationManagerInterface $configurationManager)
{
$this->configurationManager = $configurationManager;
$settings = GeneralUtility::removeDotsFromTS(
$this->configurationManager->getConfiguration(ConfigurationManagerInterface::CONFIGURATION_TYPE_FULL_TYPOSCRIPT)
);
$this->settings = $settings['plugin']['tx_epevents'];
}
/**
@@ -26,17 +36,17 @@ class ConfigurationService
*/
public function getConfiguratorConfig()
{
$extensionConfig = $this->configurationUtility->getCurrentConfiguration('ep_events');
$extensionConfig = $this->settings['settings']['configurator']['options'];
return [
'budgetOptions' => $this->parseConfigItem($extensionConfig, 'configuratorBudgetOptions'),
'paxOptions' => $this->parseConfigItem($extensionConfig, 'configuratorPaxOptions'),
'periodOptions' => $this->parseConfigItem($extensionConfig, 'configuratorPeriodOptions'),
'travelTypeOptions' => $this->parseConfigItem($extensionConfig, 'configuratorTravelTypeOptions'),
'locationTypeOptions' => $this->parseConfigItem($extensionConfig, 'configuratorLocationTypeOptions'),
'accommodationTypeOptions' => $this->parseConfigItem($extensionConfig, 'configuratorAccommodationTypeOptions'),
'programmeTypeOptions' => $this->parseConfigItem($extensionConfig, 'configuratorProgrammeTypeOptions'),
'distanceOptions' => $this->parseConfigItem($extensionConfig, 'configuratorDistanceOptions'),
'budgetOptions' => $this->parseConfigItem($extensionConfig, 'budget'),
'paxOptions' => $this->parseConfigItem($extensionConfig, 'pax'),
'periodOptions' => $this->parseConfigItem($extensionConfig, 'period'),
'travelTypeOptions' => $this->parseConfigItem($extensionConfig, 'travelType'),
'locationTypeOptions' => $this->parseConfigItem($extensionConfig, 'locationType'),
'accommodationTypeOptions' => $this->parseConfigItem($extensionConfig, 'accommodationType'),
'programmeTypeOptions' => $this->parseConfigItem($extensionConfig, 'programmeType'),
'distanceOptions' => $this->parseConfigItem($extensionConfig, 'distance'),
];
}
@@ -48,7 +58,7 @@ class ConfigurationService
protected function parseConfigItem($configArray, $itemName)
{
$config = [];
foreach (explode(';', $configArray[$itemName]['value']) as $item)
foreach (explode(';', $configArray[$itemName]) as $item)
{
[ $value, $label ] = explode(':', $item);
$config[$value] = $label;