diff --git a/Classes/Domain/Import/Entity/TouristAttraction.php b/Classes/Domain/Import/Entity/TouristAttraction.php
index 52a1687..40455b9 100644
--- a/Classes/Domain/Import/Entity/TouristAttraction.php
+++ b/Classes/Domain/Import/Entity/TouristAttraction.php
@@ -50,6 +50,11 @@ class TouristAttraction extends Place implements MapsToType
*/
protected $museumServices = [];
+ /**
+ * @var string[]
+ */
+ protected $architecturalStyles = [];
+
public function getSlogan(): string
{
return $this->slogan;
@@ -84,6 +89,14 @@ class TouristAttraction extends Place implements MapsToType
return $this->museumServices;
}
+ /**
+ * @return string[]
+ */
+ public function getArchitecturalStyles(): array
+ {
+ return $this->architecturalStyles;
+ }
+
/**
* @internal for mapping via Symfony component.
*/
@@ -145,6 +158,21 @@ class TouristAttraction extends Place implements MapsToType
}, $museumService);
}
+ /**
+ * @internal for mapping via Symfony component.
+ * @param string|array $architecturalStyle
+ */
+ public function setArchitecturalStyle($architecturalStyle): void
+ {
+ if (is_string($architecturalStyle)) {
+ $architecturalStyle = [$architecturalStyle];
+ }
+
+ $this->architecturalStyles = array_map(function (string $architecturalStyle) {
+ return str_replace('thuecat:', '', $architecturalStyle);
+ }, $architecturalStyle);
+ }
+
public static function getSupportedTypes(): array
{
return [
diff --git a/Classes/Domain/Import/Typo3Converter/TouristAttraction.php b/Classes/Domain/Import/Typo3Converter/TouristAttraction.php
index bd10b5d..1db3219 100644
--- a/Classes/Domain/Import/Typo3Converter/TouristAttraction.php
+++ b/Classes/Domain/Import/Typo3Converter/TouristAttraction.php
@@ -118,6 +118,7 @@ class TouristAttraction implements Converter
'offers' => $this->getOffers($entity),
'other_service' => implode(',', $entity->getOtherServices()),
'museum_service' => implode(',', $entity->getMuseumServices()),
+ 'architectural_style' => implode(',', $entity->getArchitecturalStyles()),
]
);
}
diff --git a/Classes/Domain/Model/Frontend/TouristAttraction.php b/Classes/Domain/Model/Frontend/TouristAttraction.php
index b986d3e..df0638c 100644
--- a/Classes/Domain/Model/Frontend/TouristAttraction.php
+++ b/Classes/Domain/Model/Frontend/TouristAttraction.php
@@ -88,6 +88,11 @@ class TouristAttraction extends AbstractEntity
*/
protected $museumService = '';
+ /**
+ * @var string
+ */
+ protected $architecturalStyle = '';
+
public function getTitle(): string
{
return $this->title;
@@ -147,4 +152,9 @@ class TouristAttraction extends AbstractEntity
{
return GeneralUtility::trimExplode(',', $this->museumService, true);
}
+
+ public function getArchitecturalStyles(): array
+ {
+ return GeneralUtility::trimExplode(',', $this->architecturalStyle, true);
+ }
}
diff --git a/Configuration/TCA/tx_thuecat_tourist_attraction.php b/Configuration/TCA/tx_thuecat_tourist_attraction.php
index f61b0e5..47f185a 100644
--- a/Configuration/TCA/tx_thuecat_tourist_attraction.php
+++ b/Configuration/TCA/tx_thuecat_tourist_attraction.php
@@ -117,6 +117,14 @@ return (static function (string $extensionKey, string $tableName) {
'readOnly' => true,
],
],
+ 'architectural_style' => [
+ 'label' => $languagePath . '.architectural_style',
+ 'l10n_mode' => 'prefixLangTitle',
+ 'config' => [
+ 'type' => 'input',
+ 'readOnly' => true,
+ ],
+ ],
'opening_hours' => [
'label' => $languagePath . '.opening_hours',
'l10n_mode' => 'exclude',
@@ -200,7 +208,7 @@ return (static function (string $extensionKey, string $tableName) {
],
'types' => [
'0' => [
- 'showitem' => '--palette--;;language, title, description, slogan, start_of_construction, sanitation, other_service, museum_service, opening_hours, offers, address, media, remote_id, --div--;' . $languagePath . '.tab.relations, town, managed_by',
+ 'showitem' => '--palette--;;language, title, description, slogan, start_of_construction, sanitation, other_service, museum_service, architectural_style, opening_hours, offers, address, media, remote_id, --div--;' . $languagePath . '.tab.relations, town, managed_by',
],
],
];
diff --git a/Resources/Private/Language/de.locallang.xlf b/Resources/Private/Language/de.locallang.xlf
index 725f359..38b4325 100644
--- a/Resources/Private/Language/de.locallang.xlf
+++ b/Resources/Private/Language/de.locallang.xlf
@@ -82,7 +82,7 @@
- Museumsshop
+ Museumsshop
@@ -92,6 +92,131 @@
kein weiterer Service
+
+
+
+ Heimatschutzarchitektur
+
+
+
+ Art Déco
+
+
+
+ Jugendstil
+
+
+
+ Barock
+
+
+
+ Bauhaus
+
+
+
+ Brutalismus
+
+
+
+ Klassizismus
+
+
+
+ Konstruktivismus
+
+
+
+ Kritischer Regionalismus
+
+
+
+ Dekonstruktivismus
+
+
+
+ Expressionismus
+
+
+
+ Funktionalismus
+
+
+
+ Gotik
+
+
+
+ Neogotik
+
+
+
+ High-Tech-Architektur
+
+
+
+ Historismus
+
+
+
+ Internationaler Stil
+
+
+
+ Minimalismus
+
+
+
+ Moderne
+
+
+
+ Neoklassizismus
+
+
+
+ Neorenaissance
+
+
+
+ Neues Bauen
+
+
+
+ Neue Sachlichkeit
+
+
+
+ Organische Architektur
+
+
+
+ Nachkriegsmoderne
+
+
+
+ Postmoderne
+
+
+
+ Rationalismus
+
+
+
+ Renaissance
+
+
+
+ Rokoko
+
+
+
+ Romanik
+
+
+
+ keine Angabe
+