Use new JSON TCA Type

This commit is contained in:
Daniel Siepmann 2023-12-04 10:21:27 +01:00
parent aeaae9b42c
commit a9a6da1c70
Signed by: Daniel Siepmann
GPG key ID: 33D6629915560EF4
13 changed files with 806 additions and 183 deletions

View file

@ -85,7 +85,7 @@ return (static function (string $extensionKey, string $tableName) {
'errors' => [ 'errors' => [
'label' => $languagePath . '.errors', 'label' => $languagePath . '.errors',
'config' => [ 'config' => [
'type' => 'text', 'type' => 'json',
'readOnly' => true, 'readOnly' => true,
], ],
], ],

View file

@ -127,7 +127,7 @@ return (static function (string $extensionKey, string $tableName) {
'label' => $languagePath . '.opening_hours', 'label' => $languagePath . '.opening_hours',
'l10n_mode' => 'exclude', 'l10n_mode' => 'exclude',
'config' => [ 'config' => [
'type' => 'text', 'type' => 'json',
'readOnly' => true, 'readOnly' => true,
], ],
], ],
@ -135,7 +135,7 @@ return (static function (string $extensionKey, string $tableName) {
'label' => $languagePath . '.special_opening_hours', 'label' => $languagePath . '.special_opening_hours',
'l10n_mode' => 'exclude', 'l10n_mode' => 'exclude',
'config' => [ 'config' => [
'type' => 'text', 'type' => 'json',
'readOnly' => true, 'readOnly' => true,
], ],
], ],
@ -143,7 +143,7 @@ return (static function (string $extensionKey, string $tableName) {
'label' => $languagePath . '.address', 'label' => $languagePath . '.address',
'l10n_mode' => 'exclude', 'l10n_mode' => 'exclude',
'config' => [ 'config' => [
'type' => 'text', 'type' => 'json',
'readOnly' => true, 'readOnly' => true,
], ],
], ],
@ -151,7 +151,7 @@ return (static function (string $extensionKey, string $tableName) {
'label' => $languagePath . '.media', 'label' => $languagePath . '.media',
'l10n_mode' => 'exclude', 'l10n_mode' => 'exclude',
'config' => [ 'config' => [
'type' => 'text', 'type' => 'json',
'readOnly' => true, 'readOnly' => true,
], ],
], ],
@ -159,7 +159,7 @@ return (static function (string $extensionKey, string $tableName) {
'label' => $languagePath . '.offers', 'label' => $languagePath . '.offers',
'l10n_mode' => 'exclude', 'l10n_mode' => 'exclude',
'config' => [ 'config' => [
'type' => 'text', 'type' => 'json',
'readOnly' => true, 'readOnly' => true,
], ],
], ],

View file

@ -192,7 +192,7 @@ return (static function (string $extensionKey, string $tableName) {
'label' => $languagePath . '.opening_hours', 'label' => $languagePath . '.opening_hours',
'l10n_mode' => 'exclude', 'l10n_mode' => 'exclude',
'config' => [ 'config' => [
'type' => 'text', 'type' => 'json',
'readOnly' => true, 'readOnly' => true,
], ],
], ],
@ -200,7 +200,7 @@ return (static function (string $extensionKey, string $tableName) {
'label' => $languagePath . '.special_opening_hours', 'label' => $languagePath . '.special_opening_hours',
'l10n_mode' => 'exclude', 'l10n_mode' => 'exclude',
'config' => [ 'config' => [
'type' => 'text', 'type' => 'json',
'readOnly' => true, 'readOnly' => true,
], ],
], ],
@ -208,7 +208,7 @@ return (static function (string $extensionKey, string $tableName) {
'label' => $languagePath . '.address', 'label' => $languagePath . '.address',
'l10n_mode' => 'exclude', 'l10n_mode' => 'exclude',
'config' => [ 'config' => [
'type' => 'text', 'type' => 'json',
'readOnly' => true, 'readOnly' => true,
], ],
], ],
@ -224,21 +224,21 @@ return (static function (string $extensionKey, string $tableName) {
'label' => $languagePath . '.media', 'label' => $languagePath . '.media',
'l10n_mode' => 'exclude', 'l10n_mode' => 'exclude',
'config' => [ 'config' => [
'type' => 'text', 'type' => 'json',
'readOnly' => true, 'readOnly' => true,
], ],
], ],
'offers' => [ 'offers' => [
'label' => $languagePath . '.offers', 'label' => $languagePath . '.offers',
'config' => [ 'config' => [
'type' => 'text', 'type' => 'json',
'readOnly' => true, 'readOnly' => true,
], ],
], ],
'accessibility_specification' => [ 'accessibility_specification' => [
'label' => $languagePath . '.accessibility_specification', 'label' => $languagePath . '.accessibility_specification',
'config' => [ 'config' => [
'type' => 'text', 'type' => 'json',
'readOnly' => true, 'readOnly' => true,
], ],
], ],

View file

@ -23,7 +23,8 @@ Nothing
Tasks Tasks
----- -----
Nothing * Use new TYPO3 JSON types.
That way TYPO3 backend will properly render the stored JSON of those fields.
Deprecation Deprecation
----------- -----------

View file

@ -10,11 +10,198 @@ return [
'title' => 'Eine weitere Attraktion', 'title' => 'Eine weitere Attraktion',
'description' => 'Die Beschreibung der Attraktion', 'description' => 'Die Beschreibung der Attraktion',
'town' => '1', 'town' => '1',
'media' => '[{"mainImage":true,"type":"image","title":"Erfurt-Dom und Severikirche-beleuchtet.jpg","description":"","url":"https:\\/\\/cms.thuecat.org\\/o\\/adaptive-media\\/image\\/5159216\\/Preview-1280x0\\/image","copyrightYear":2016,"author":"Image Author","license":{"type":"https:\\/\\/creativecommons.org\\/licenses\\/by\\/4.0\\/","author":""}},{"mainImage":false,"type":"image","title":"Erfurt-Dom-und-Severikirche.jpg","description":"Sicht auf Dom St. Marien, St. Severikirche sowie die davor liegenden Klostergeb\\u00e4ude und einem Ausschnitt des Biergartens umgeben von einem d\\u00e4mmerungsverf\\u00e4rten Himmel","url":"https:\\/\\/cms.thuecat.org\\/o\\/adaptive-media\\/image\\/5159186\\/Preview-1280x0\\/image","copyrightYear":2020,"license":{"type":"https:\\/\\/creativecommons.org\\/licenses\\/by\\/4.0\\/","author":""}},{"mainImage":false,"type":"image","title":"Erfurt-Dom und Severikirche-beleuchtet.jpg","description":"","url":"https:\\/\\/cms.thuecat.org\\/o\\/adaptive-media\\/image\\/5159216\\/Preview-1280x0\\/image","copyrightYear":2016,"license":{"type":"https:\\/\\/creativecommons.org\\/licenses\\/by\\/4.0\\/","author":""}}]', 'media' => [
'opening_hours' => '[{"opens":"09:30:00","closes":"18:00:00","from":{"date":"2021-05-01 00:00:00.000000","timezone_type":3,"timezone":"UTC"},"through":{"date":"2021-10-31 00:00:00.000000","timezone_type":3,"timezone":"UTC"},"daysOfWeek":["Saturday","Friday","Thursday","Tuesday","Monday","Wednesday"]},{"opens":"13:00:00","closes":"18:00:00","from":{"date":"2021-05-01 00:00:00.000000","timezone_type":3,"timezone":"UTC"},"through":{"date":"2021-10-31 00:00:00.000000","timezone_type":3,"timezone":"UTC"},"daysOfWeek":["Sunday"]},{"opens":"09:30:00","closes":"17:00:00","from":{"date":"2021-11-01 00:00:00.000000","timezone_type":3,"timezone":"UTC"},"through":{"date":"2022-04-30 00:00:00.000000","timezone_type":3,"timezone":"UTC"},"daysOfWeek":["Saturday","Friday","Thursday","Tuesday","Monday","Wednesday"]},{"opens":"13:00:00","closes":"17:00:00","from":{"date":"2021-11-01 00:00:00.000000","timezone_type":3,"timezone":"UTC"},"through":{"date":"2022-04-30 00:00:00.000000","timezone_type":3,"timezone":"UTC"},"daysOfWeek":["Sunday","PublicHolidays"]}]', 0 => (object)[
'address' => '{"street":"Beispielstraße 1a","zip":"99084","city":"Beispielstadt","email":"example@example.com","phone":"(0)30 23125 000","fax":"","geo":{"latitude":50.975955358589545,"longitude":11.023667024961856}}', 'mainImage' => true,
'type' => 'image',
'title' => 'Erfurt-Dom und Severikirche-beleuchtet.jpg',
'description' => '',
'url' => 'https://cms.thuecat.org/o/adaptive-media/image/5159216/Preview-1280x0/image',
'copyrightYear' => 2016,
'author' => 'Image Author',
'license' => (object)[
'type' => 'https://creativecommons.org/licenses/by/4.0/',
'author' => '',
],
],
1 => (object)[
'mainImage' => false,
'type' => 'image',
'title' => 'Erfurt-Dom-und-Severikirche.jpg',
'description' => 'Sicht auf Dom St. Marien, St. Severikirche sowie die davor liegenden Klostergebäude und einem Ausschnitt des Biergartens umgeben von einem dämmerungsverfärten Himmel',
'url' => 'https://cms.thuecat.org/o/adaptive-media/image/5159186/Preview-1280x0/image',
'copyrightYear' => 2020,
'license' => (object)[
'type' => 'https://creativecommons.org/licenses/by/4.0/',
'author' => '',
],
],
2 => (object)[
'mainImage' => false,
'type' => 'image',
'title' => 'Erfurt-Dom und Severikirche-beleuchtet.jpg',
'description' => '',
'url' => 'https://cms.thuecat.org/o/adaptive-media/image/5159216/Preview-1280x0/image',
'copyrightYear' => 2016,
'license' => (object)[
'type' => 'https://creativecommons.org/licenses/by/4.0/',
'author' => '',
],
],
],
'opening_hours' => [
0 => (object)[
'opens' => '09:30:00',
'closes' => '18:00:00',
'from' => (object)[
'date' => '2021-05-01 00:00:00.000000',
'timezone_type' => 3,
'timezone' => 'UTC',
],
'through' => (object)[
'date' => '2021-10-31 00:00:00.000000',
'timezone_type' => 3,
'timezone' => 'UTC',
],
'daysOfWeek' => [
0 => 'Saturday',
1 => 'Friday',
2 => 'Thursday',
3 => 'Tuesday',
4 => 'Monday',
5 => 'Wednesday',
],
],
1 => (object)[
'opens' => '13:00:00',
'closes' => '18:00:00',
'from' => (object)[
'date' => '2021-05-01 00:00:00.000000',
'timezone_type' => 3,
'timezone' => 'UTC',
],
'through' => (object)[
'date' => '2021-10-31 00:00:00.000000',
'timezone_type' => 3,
'timezone' => 'UTC',
],
'daysOfWeek' => [
0 => 'Sunday',
],
],
2 => (object)[
'opens' => '09:30:00',
'closes' => '17:00:00',
'from' => (object)[
'date' => '2021-11-01 00:00:00.000000',
'timezone_type' => 3,
'timezone' => 'UTC',
],
'through' => (object)[
'date' => '2022-04-30 00:00:00.000000',
'timezone_type' => 3,
'timezone' => 'UTC',
],
'daysOfWeek' => [
0 => 'Saturday',
1 => 'Friday',
2 => 'Thursday',
3 => 'Tuesday',
4 => 'Monday',
5 => 'Wednesday',
],
],
3 => (object)[
'opens' => '13:00:00',
'closes' => '17:00:00',
'from' => (object)[
'date' => '2021-11-01 00:00:00.000000',
'timezone_type' => 3,
'timezone' => 'UTC',
],
'through' => (object)[
'date' => '2022-04-30 00:00:00.000000',
'timezone_type' => 3,
'timezone' => 'UTC',
],
'daysOfWeek' => [
0 => 'Sunday',
1 => 'PublicHolidays',
],
],
],
'address' => (object)[
'street' => 'Beispielstraße 1a',
'zip' => '99084',
'city' => 'Beispielstadt',
'email' => 'example@example.com',
'phone' => '(0)30 23125 000',
'fax' => '',
'geo' => (object)[
'latitude' => 50.975955358589545,
'longitude' => 11.023667024961856,
],
],
'url' => 'https://example.com/attraction', 'url' => 'https://example.com/attraction',
'offers' => '[{"type":"GuidedTourOffer","title":"F\\u00fchrungen","description":"Immer samstags, um 11:15 Uhr findet eine \\u00f6ffentliche F\\u00fchrung durch das Museum statt. Dauer etwa 90 Minuten","prices":[{"title":"Erwachsene","description":"","price":8,"currency":"EUR","rule":"PerPerson"},{"title":"Erm\\u00e4\\u00dfigt","description":"als erm\\u00e4\\u00dfigt gelten schulpflichtige Kinder, Auszubildende, Studierende, Rentner\\/-innen, Menschen mit Behinderungen, Inhaber Sozialausweis der Landeshauptstadt Erfurt","price":5,"currency":"EUR","rule":"PerPerson"}]},{"type":"EntryOffer","title":"Eintritt","description":"Schulklassen und Kitagruppen im Rahmen des Unterrichts: Eintritt frei\\nAn jedem ersten Dienstag im Monat: Eintritt frei","prices":[{"title":"Erm\\u00e4\\u00dfigt","description":"als erm\\u00e4\\u00dfigt gelten schulpflichtige Kinder, Auszubildende, Studierende, Rentner\\/-innen, Menschen mit Behinderungen, Inhaber Sozialausweis der Landeshauptstadt Erfurt","price":5,"currency":"EUR","rule":"PerPerson"},{"title":"Familienkarte","description":"","price":17,"currency":"EUR","rule":"PerGroup"},{"title":"ErfurtCard","description":"","price":14.9,"currency":"EUR","rule":"PerPackage"},{"title":"Erwachsene","description":"","price":8,"currency":"EUR","rule":"PerPerson"}]}]', 'offers' => [
0 => (object)[
'type' => 'GuidedTourOffer',
'title' => 'Führungen',
'description' => 'Immer samstags, um 11:15 Uhr findet eine öffentliche Führung durch das Museum statt. Dauer etwa 90 Minuten',
'prices' => [
0 => (object)[
'title' => 'Erwachsene',
'description' => '',
'price' => 8,
'currency' => 'EUR',
'rule' => 'PerPerson',
],
1 => (object)[
'title' => 'Ermäßigt',
'description' => 'als ermäßigt gelten schulpflichtige Kinder, Auszubildende, Studierende, Rentner/-innen, Menschen mit Behinderungen, Inhaber Sozialausweis der Landeshauptstadt Erfurt',
'price' => 5,
'currency' => 'EUR',
'rule' => 'PerPerson',
],
],
],
1 => (object)[
'type' => 'EntryOffer',
'title' => 'Eintritt',
'description' => 'Schulklassen und Kitagruppen im Rahmen des Unterrichts: Eintritt frei'
. PHP_EOL . 'An jedem ersten Dienstag im Monat: Eintritt frei',
'prices' => [
0 => (object)[
'title' => 'Ermäßigt',
'description' => 'als ermäßigt gelten schulpflichtige Kinder, Auszubildende, Studierende, Rentner/-innen, Menschen mit Behinderungen, Inhaber Sozialausweis der Landeshauptstadt Erfurt',
'price' => 5,
'currency' => 'EUR',
'rule' => 'PerPerson',
],
1 => (object)[
'title' => 'Familienkarte',
'description' => '',
'price' => 17,
'currency' => 'EUR',
'rule' => 'PerGroup',
],
2 => (object)[
'title' => 'ErfurtCard',
'description' => '',
'price' => 14.9,
'currency' => 'EUR',
'rule' => 'PerPackage',
],
3 => (object)[
'title' => 'Erwachsene',
'description' => '',
'price' => 8,
'currency' => 'EUR',
'rule' => 'PerPerson',
],
],
],
],
'slogan' => 'Highlight', 'slogan' => 'Highlight',
'start_of_construction' => '11. Jh', 'start_of_construction' => '11. Jh',
'sanitation' => 'Toilets,DisabledToilets,NappyChangingArea,FamilyAndChildFriendly', 'sanitation' => 'Toilets,DisabledToilets,NappyChangingArea,FamilyAndChildFriendly',
@ -29,7 +216,66 @@ return [
'available_languages' => 'German,English,French', 'available_languages' => 'German,English,French',
'distance_to_public_transport' => '250:MTR', 'distance_to_public_transport' => '250:MTR',
'parking_facility_near_by' => '1,2', 'parking_facility_near_by' => '1,2',
'accessibility_specification' => '{"accessibilityCertificationStatus":"AccessibilityChecked","accessibilitySearchCriteria":{"facilityAccessibilityDeaf":["AudioInductionLoop","FlashingSignalCallWaitingDoor","SpecialOffersDeafPeople","SpecialOffersHearingImpairment","VisualConfirmationDistressCallElevator"],"facilityAccessibilityMental":["ColoredOrPictorialGuidanceSystem","InformationInEasyLanguage","InformationWithPictogramsOrPictures"],"facilityAccessibilityVisual":["AssistanceDogsWelcome","GuidanceSystemWithFloorIndicators","InformationBrailleOrPrismaticFont","OffersInPictoralLanguage","SpecialOffersBlindPeople","SpecialOffersVisualImpairment","TactileOffers","VisuallyContrastingStepEdges"],"facilityAccessibilityWalking":["AllRoomsStepFreeAccess","EightyCMWidthPassageWays","EntryAidSwimmingPool","GrabRailInShower","HandrailsOnBothSidesOfAllStaircases","HingedGrabRailToilet","LateralAccessibleToilet","MinumumManoeuvringSpaceShower","NinetyCMWidthPassageWays","NursingBed","ParkingPeopleWithDisabilities","SeventyCMWidthPassageWays","ShowerSeat","SpecialOffersWalkingImpairment","SpecialOffersWheelchairUsers","StepFreeAccess","StepFreeShower","ToiletsPeopleWithDisabilities"]},"certificationAccessibilityDeaf":"Full","certificationAccessibilityMental":"None","certificationAccessibilityPartiallyDeaf":"None","certificationAccessibilityPartiallyVisual":"Info","certificationAccessibilityVisual":"None","certificationAccessibilityWalking":"Info","certificationAccessibilityWheelchair":"Info","shortDescriptionAccessibilityAllGenerations":"Deutsche Beschreibung von shortDescriptionAccessibilityAllGenerations","shortDescriptionAccessibilityAllergic":"Deutsche Beschreibung von shortDescriptionAccessibilityAllergic","shortDescriptionAccessibilityDeaf":"Deutsche Beschreibung von shortDescriptionAccessibilityDeaf","shortDescriptionAccessibilityMental":"Deutsche Beschreibung von shortDescriptionAccessibilityMental","shortDescriptionAccessibilityVisual":"Deutsche Beschreibung von shortDescriptionAccessibilityVisual","shortDescriptionAccessibilityWalking":"Deutsche Beschreibung von shortDescriptionAccessibilityWalking"}', 'accessibility_specification' => (object)[
'accessibilityCertificationStatus' => 'AccessibilityChecked',
'accessibilitySearchCriteria' => (object)[
'facilityAccessibilityDeaf' => [
0 => 'AudioInductionLoop',
1 => 'FlashingSignalCallWaitingDoor',
2 => 'SpecialOffersDeafPeople',
3 => 'SpecialOffersHearingImpairment',
4 => 'VisualConfirmationDistressCallElevator',
],
'facilityAccessibilityMental' => [
0 => 'ColoredOrPictorialGuidanceSystem',
1 => 'InformationInEasyLanguage',
2 => 'InformationWithPictogramsOrPictures',
],
'facilityAccessibilityVisual' => [
0 => 'AssistanceDogsWelcome',
1 => 'GuidanceSystemWithFloorIndicators',
2 => 'InformationBrailleOrPrismaticFont',
3 => 'OffersInPictoralLanguage',
4 => 'SpecialOffersBlindPeople',
5 => 'SpecialOffersVisualImpairment',
6 => 'TactileOffers',
7 => 'VisuallyContrastingStepEdges',
],
'facilityAccessibilityWalking' => [
0 => 'AllRoomsStepFreeAccess',
1 => 'EightyCMWidthPassageWays',
2 => 'EntryAidSwimmingPool',
3 => 'GrabRailInShower',
4 => 'HandrailsOnBothSidesOfAllStaircases',
5 => 'HingedGrabRailToilet',
6 => 'LateralAccessibleToilet',
7 => 'MinumumManoeuvringSpaceShower',
8 => 'NinetyCMWidthPassageWays',
9 => 'NursingBed',
10 => 'ParkingPeopleWithDisabilities',
11 => 'SeventyCMWidthPassageWays',
12 => 'ShowerSeat',
13 => 'SpecialOffersWalkingImpairment',
14 => 'SpecialOffersWheelchairUsers',
15 => 'StepFreeAccess',
16 => 'StepFreeShower',
17 => 'ToiletsPeopleWithDisabilities',
],
],
'certificationAccessibilityDeaf' => 'Full',
'certificationAccessibilityMental' => 'None',
'certificationAccessibilityPartiallyDeaf' => 'None',
'certificationAccessibilityPartiallyVisual' => 'Info',
'certificationAccessibilityVisual' => 'None',
'certificationAccessibilityWalking' => 'Info',
'certificationAccessibilityWheelchair' => 'Info',
'shortDescriptionAccessibilityAllGenerations' => 'Deutsche Beschreibung von shortDescriptionAccessibilityAllGenerations',
'shortDescriptionAccessibilityAllergic' => 'Deutsche Beschreibung von shortDescriptionAccessibilityAllergic',
'shortDescriptionAccessibilityDeaf' => 'Deutsche Beschreibung von shortDescriptionAccessibilityDeaf',
'shortDescriptionAccessibilityMental' => 'Deutsche Beschreibung von shortDescriptionAccessibilityMental',
'shortDescriptionAccessibilityVisual' => 'Deutsche Beschreibung von shortDescriptionAccessibilityVisual',
'shortDescriptionAccessibilityWalking' => 'Deutsche Beschreibung von shortDescriptionAccessibilityWalking',
],
], ],
], ],
]; ];

View file

@ -8,7 +8,78 @@ return [
'uid' => '1', 'uid' => '1',
'pid' => '3', 'pid' => '3',
'title' => 'Attraktion mit Angebotstypen', 'title' => 'Attraktion mit Angebotstypen',
'offers' => '[{"description":"","prices":[{"currency":"EUR","description":"","price":8,"rule":"PerGroup","title":"Schulklassen"}],"title":"Führungen","type":"GuidedTourOffer"},{"description":"","prices":[{"currency":"EUR","description":"","price":8,"rule":"PerGroup","title":"Schulklassen"}],"title":"Verkostung","type":"Tasting"},{"description":"","prices":[{"currency":"EUR","description":"","price":8,"rule":"PerGroup","title":"Schulklassen"}],"title":"Eintritt 1","type":"EntryOffer"},{"description":"","prices":[{"currency":"EUR","description":"","price":8,"rule":"PerGroup","title":"Schulklassen"}],"title":"Eintritt 2","type":"EntryOffer"},{"description":"","prices":[{"currency":"EUR","description":"","price":8,"rule":"PerGroup","title":"Schulklassen"}],"title":"Parkgebühr","type":"ParkingFee"}]', 'offers' => [
0 => (object)[
'description' => '',
'prices' => [
0 => (object)[
'currency' => 'EUR',
'description' => '',
'price' => 8,
'rule' => 'PerGroup',
'title' => 'Schulklassen',
],
],
'title' => 'Führungen',
'type' => 'GuidedTourOffer',
],
1 => (object)[
'description' => '',
'prices' => [
0 => (object)[
'currency' => 'EUR',
'description' => '',
'price' => 8,
'rule' => 'PerGroup',
'title' => 'Schulklassen',
],
],
'title' => 'Verkostung',
'type' => 'Tasting',
],
2 => (object)[
'description' => '',
'prices' => [
0 => (object)[
'currency' => 'EUR',
'description' => '',
'price' => 8,
'rule' => 'PerGroup',
'title' => 'Schulklassen',
],
],
'title' => 'Eintritt 1',
'type' => 'EntryOffer',
],
3 => (object)[
'description' => '',
'prices' => [
0 => (object)[
'currency' => 'EUR',
'description' => '',
'price' => 8,
'rule' => 'PerGroup',
'title' => 'Schulklassen',
],
],
'title' => 'Eintritt 2',
'type' => 'EntryOffer',
],
4 => (object)[
'description' => '',
'prices' => [
0 => (object)[
'currency' => 'EUR',
'description' => '',
'price' => 8,
'rule' => 'PerGroup',
'title' => 'Schulklassen',
],
],
'title' => 'Parkgebühr',
'type' => 'ParkingFee',
],
],
], ],
], ],
]; ];

View file

@ -8,7 +8,43 @@ return [
'uid' => '1', 'uid' => '1',
'pid' => '3', 'pid' => '3',
'title' => 'Attraktion mit Preisen', 'title' => 'Attraktion mit Preisen',
'offers' => '[{"prices":[{"currency":"EUR","description":"","price":8,"rule":"PerGroup","title":"Schulklassen"},{"currency":"EUR","description":"","price":8,"rule":"PerPerson","title":"Erwachsene"},{"currency":"EUR","description":"","price":5,"rule":"PerPerson","title":"Familienkarte B"},{"currency":"EUR","description":"","price":5,"rule":"PerPerson","title":"Familienkarte A"}],"description":"","title":"Führungen","type":"GuidedTourOffer"}]', 'offers' => [
0 => (object)[
'prices' => [
0 => (object)[
'currency' => 'EUR',
'description' => '',
'price' => 8,
'rule' => 'PerGroup',
'title' => 'Schulklassen',
],
1 => (object)[
'currency' => 'EUR',
'description' => '',
'price' => 8,
'rule' => 'PerPerson',
'title' => 'Erwachsene',
],
2 => (object)[
'currency' => 'EUR',
'description' => '',
'price' => 5,
'rule' => 'PerPerson',
'title' => 'Familienkarte B',
],
3 => (object)[
'currency' => 'EUR',
'description' => '',
'price' => 5,
'rule' => 'PerPerson',
'title' => 'Familienkarte A',
],
],
'description' => '',
'title' => 'Führungen',
'type' => 'GuidedTourOffer',
],
],
], ],
], ],
]; ];

View file

@ -10,11 +10,199 @@ return [
'title' => 'Erste Attraktion', 'title' => 'Erste Attraktion',
'description' => 'Die Beschreibung der Attraktion', 'description' => 'Die Beschreibung der Attraktion',
'town' => '1', 'town' => '1',
'media' => '[{"mainImage":true,"type":"image","title":"Erfurt-Dom und Severikirche-beleuchtet.jpg","description":"","url":"https:\\/\\/cms.thuecat.org\\/o\\/adaptive-media\\/image\\/5159216\\/Preview-1280x0\\/image","copyrightYear":2016,"author":"Image Author","license":{"type":"https:\\/\\/creativecommons.org\\/licenses\\/by\\/4.0\\/","author":""}},{"mainImage":false,"type":"image","title":"Erfurt-Dom-und-Severikirche.jpg","description":"Sicht auf Dom St. Marien, St. Severikirche sowie die davor liegenden Klostergeb\\u00e4ude und einem Ausschnitt des Biergartens umgeben von einem d\\u00e4mmerungsverf\\u00e4rten Himmel","url":"https:\\/\\/cms.thuecat.org\\/o\\/adaptive-media\\/image\\/5159186\\/Preview-1280x0\\/image","copyrightYear":2020,"license":{"type":"https:\\/\\/creativecommons.org\\/licenses\\/by\\/4.0\\/","author":""}},{"mainImage":false,"type":"image","title":"Erfurt-Dom und Severikirche-beleuchtet.jpg","description":"","url":"https:\\/\\/cms.thuecat.org\\/o\\/adaptive-media\\/image\\/5159216\\/Preview-1280x0\\/image","copyrightYear":2016,"license":{"type":"https:\\/\\/creativecommons.org\\/licenses\\/by\\/4.0\\/","author":""}}]', 'media' => [
'opening_hours' => '[{"opens":"09:30:00","closes":"18:00:00","from":{"date":"2021-05-01 00:00:00.000000","timezone_type":3,"timezone":"UTC"},"through":{"date":"2021-10-31 00:00:00.000000","timezone_type":3,"timezone":"UTC"},"daysOfWeek":["Saturday","Friday","Thursday","Tuesday","Monday","Wednesday"]},{"opens":"13:00:00","closes":"18:00:00","from":{"date":"2021-05-01 00:00:00.000000","timezone_type":3,"timezone":"UTC"},"through":{"date":"2021-10-31 00:00:00.000000","timezone_type":3,"timezone":"UTC"},"daysOfWeek":["Sunday"]},{"opens":"09:30:00","closes":"17:00:00","from":{"date":"2021-11-01 00:00:00.000000","timezone_type":3,"timezone":"UTC"},"through":{"date":"2022-04-30 00:00:00.000000","timezone_type":3,"timezone":"UTC"},"daysOfWeek":["Saturday","Friday","Thursday","Tuesday","Monday","Wednesday"]},{"opens":"13:00:00","closes":"17:00:00","from":{"date":"2021-11-01 00:00:00.000000","timezone_type":3,"timezone":"UTC"},"through":{"date":"2022-04-30 00:00:00.000000","timezone_type":3,"timezone":"UTC"},"daysOfWeek":["Sunday","PublicHolidays"]}]', 0 => (object)[
'address' => '{"street":"Beispielstraße 1a","zip":"99084","city":"Beispielstadt","email":"example@example.com","phone":"(0)30 23125 000","fax":"","geo":{"latitude":50.975955358589545,"longitude":11.023667024961856}}', 'mainImage' => true,
'type' => 'image',
'title' => 'Erfurt-Dom und Severikirche-beleuchtet.jpg',
'description' => '',
'url' => 'https://cms.thuecat.org/o/adaptive-media/image/5159216/Preview-1280x0/image',
'copyrightYear' => 2016,
'author' => 'Image Author',
'license' => (object)[
'type' => 'https://creativecommons.org/licenses/by/4.0/',
'author' => '',
],
],
1 => (object)[
'mainImage' => false,
'type' => 'image',
'title' => 'Erfurt-Dom-und-Severikirche.jpg',
'description' => 'Sicht auf Dom St. Marien, St. Severikirche sowie die davor liegenden Klostergebäude und einem Ausschnitt des Biergartens umgeben von einem dämmerungsverfärten Himmel',
'url' => 'https://cms.thuecat.org/o/adaptive-media/image/5159186/Preview-1280x0/image',
'copyrightYear' => 2020,
'license' => (object)[
'type' => 'https://creativecommons.org/licenses/by/4.0/',
'author' => '',
],
],
2 => (object)[
'mainImage' => false,
'type' => 'image',
'title' => 'Erfurt-Dom und Severikirche-beleuchtet.jpg',
'description' => '',
'url' => 'https://cms.thuecat.org/o/adaptive-media/image/5159216/Preview-1280x0/image',
'copyrightYear' => 2016,
'license' => (object)[
'type' => 'https://creativecommons.org/licenses/by/4.0/',
'author' => '',
],
],
],
'opening_hours' => [
0 => (object)[
'opens' => '09:30:00',
'closes' => '18:00:00',
'from' => (object)[
'date' => '2021-05-01 00:00:00.000000',
'timezone_type' => 3,
'timezone' => 'UTC',
],
'through' => (object)[
'date' => '2021-10-31 00:00:00.000000',
'timezone_type' => 3,
'timezone' => 'UTC',
],
'daysOfWeek' => [
0 => 'Saturday',
1 => 'Friday',
2 => 'Thursday',
3 => 'Tuesday',
4 => 'Monday',
5 => 'Wednesday',
],
],
1 => (object)[
'opens' => '13:00:00',
'closes' => '18:00:00',
'from' => (object)[
'date' => '2021-05-01 00:00:00.000000',
'timezone_type' => 3,
'timezone' => 'UTC',
],
'through' => (object)[
'date' => '2021-10-31 00:00:00.000000',
'timezone_type' => 3,
'timezone' => 'UTC',
],
'daysOfWeek' => [
0 => 'Sunday',
],
],
2 => (object)[
'opens' => '09:30:00',
'closes' => '17:00:00',
'from' => (object)[
'date' => '2021-11-01 00:00:00.000000',
'timezone_type' => 3,
'timezone' => 'UTC',
],
'through' => (object)[
'date' => '2022-04-30 00:00:00.000000',
'timezone_type' => 3,
'timezone' => 'UTC',
],
'daysOfWeek' => [
0 => 'Saturday',
1 => 'Friday',
2 => 'Thursday',
3 => 'Tuesday',
4 => 'Monday',
5 => 'Wednesday',
],
],
3 => (object)[
'opens' => '13:00:00',
'closes' => '17:00:00',
'from' => (object)[
'date' => '2021-11-01 00:00:00.000000',
'timezone_type' => 3,
'timezone' => 'UTC',
],
'through' => (object)[
'date' => '2022-04-30 00:00:00.000000',
'timezone_type' => 3,
'timezone' => 'UTC',
],
'daysOfWeek' => [
0 => 'Sunday',
1 => 'PublicHolidays',
],
],
],
'address' => (object)[
'street' => 'Beispielstraße 1a',
'zip' => '99084',
'city' => 'Beispielstadt',
'email' => 'example@example.com',
'phone' => '(0)30 23125 000',
'fax' => '',
'geo' => (object)[
'latitude' => 50.975955358589545,
'longitude' => 11.023667024961856,
],
]
,
'url' => 'https://example.com/attraction', 'url' => 'https://example.com/attraction',
'offers' => '[{"type":"GuidedTourOffer","title":"F\\u00fchrungen","description":"Immer samstags, um 11:15 Uhr findet eine \\u00f6ffentliche F\\u00fchrung durch das Museum statt. Dauer etwa 90 Minuten","prices":[{"title":"Erwachsene","description":"","price":8,"currency":"EUR","rule":"PerPerson"},{"title":"Erm\\u00e4\\u00dfigt","description":"als erm\\u00e4\\u00dfigt gelten schulpflichtige Kinder, Auszubildende, Studierende, Rentner\\/-innen, Menschen mit Behinderungen, Inhaber Sozialausweis der Landeshauptstadt Erfurt","price":5,"currency":"EUR","rule":"PerPerson"}]},{"type":"EntryOffer","title":"Eintritt","description":"Schulklassen und Kitagruppen im Rahmen des Unterrichts: Eintritt frei\\nAn jedem ersten Dienstag im Monat: Eintritt frei","prices":[{"title":"Erm\\u00e4\\u00dfigt","description":"als erm\\u00e4\\u00dfigt gelten schulpflichtige Kinder, Auszubildende, Studierende, Rentner\\/-innen, Menschen mit Behinderungen, Inhaber Sozialausweis der Landeshauptstadt Erfurt","price":5,"currency":"EUR","rule":"PerPerson"},{"title":"Familienkarte","description":"","price":17,"currency":"EUR","rule":"PerGroup"},{"title":"ErfurtCard","description":"","price":14.9,"currency":"EUR","rule":"PerPackage"},{"title":"Erwachsene","description":"","price":8,"currency":"EUR","rule":"PerPerson"}]}]', 'offers' => [
0 => (object)[
'type' => 'GuidedTourOffer',
'title' => 'Führungen',
'description' => 'Immer samstags, um 11:15 Uhr findet eine öffentliche Führung durch das Museum statt. Dauer etwa 90 Minuten',
'prices' => [
0 => (object)[
'title' => 'Erwachsene',
'description' => '',
'price' => 8,
'currency' => 'EUR',
'rule' => 'PerPerson',
],
1 => (object)[
'title' => 'Ermäßigt',
'description' => 'als ermäßigt gelten schulpflichtige Kinder, Auszubildende, Studierende, Rentner/-innen, Menschen mit Behinderungen, Inhaber Sozialausweis der Landeshauptstadt Erfurt',
'price' => 5,
'currency' => 'EUR',
'rule' => 'PerPerson',
],
],
],
1 => (object)[
'type' => 'EntryOffer',
'title' => 'Eintritt',
'description' => 'Schulklassen und Kitagruppen im Rahmen des Unterrichts: Eintritt frei'
. PHP_EOL . 'An jedem ersten Dienstag im Monat: Eintritt frei',
'prices' => [
0 => (object)[
'title' => 'Ermäßigt',
'description' => 'als ermäßigt gelten schulpflichtige Kinder, Auszubildende, Studierende, Rentner/-innen, Menschen mit Behinderungen, Inhaber Sozialausweis der Landeshauptstadt Erfurt',
'price' => 5,
'currency' => 'EUR',
'rule' => 'PerPerson',
],
1 => (object)[
'title' => 'Familienkarte',
'description' => '',
'price' => 17,
'currency' => 'EUR',
'rule' => 'PerGroup',
],
2 => (object)[
'title' => 'ErfurtCard',
'description' => '',
'price' => 14.9,
'currency' => 'EUR',
'rule' => 'PerPackage',
],
3 => (object)[
'title' => 'Erwachsene',
'description' => '',
'price' => 8,
'currency' => 'EUR',
'rule' => 'PerPerson',
],
],
],
],
'slogan' => 'Highlight', 'slogan' => 'Highlight',
'start_of_construction' => '11. Jh', 'start_of_construction' => '11. Jh',
'sanitation' => 'Toilets,DisabledToilets,NappyChangingArea,FamilyAndChildFriendly', 'sanitation' => 'Toilets,DisabledToilets,NappyChangingArea,FamilyAndChildFriendly',
@ -29,7 +217,66 @@ return [
'available_languages' => 'German,English,French', 'available_languages' => 'German,English,French',
'distance_to_public_transport' => '250:MTR', 'distance_to_public_transport' => '250:MTR',
'parking_facility_near_by' => '1,2', 'parking_facility_near_by' => '1,2',
'accessibility_specification' => '{"accessibilityCertificationStatus":"AccessibilityChecked","accessibilitySearchCriteria":{"facilityAccessibilityDeaf":["AudioInductionLoop","FlashingSignalCallWaitingDoor","SpecialOffersDeafPeople","SpecialOffersHearingImpairment","VisualConfirmationDistressCallElevator"],"facilityAccessibilityMental":["ColoredOrPictorialGuidanceSystem","InformationInEasyLanguage","InformationWithPictogramsOrPictures"],"facilityAccessibilityVisual":["AssistanceDogsWelcome","GuidanceSystemWithFloorIndicators","InformationBrailleOrPrismaticFont","OffersInPictoralLanguage","SpecialOffersBlindPeople","SpecialOffersVisualImpairment","TactileOffers","VisuallyContrastingStepEdges"],"facilityAccessibilityWalking":["AllRoomsStepFreeAccess","EightyCMWidthPassageWays","EntryAidSwimmingPool","GrabRailInShower","HandrailsOnBothSidesOfAllStaircases","HingedGrabRailToilet","LateralAccessibleToilet","MinumumManoeuvringSpaceShower","NinetyCMWidthPassageWays","NursingBed","ParkingPeopleWithDisabilities","SeventyCMWidthPassageWays","ShowerSeat","SpecialOffersWalkingImpairment","SpecialOffersWheelchairUsers","StepFreeAccess","StepFreeShower","ToiletsPeopleWithDisabilities"]},"certificationAccessibilityDeaf":"Full","certificationAccessibilityMental":"None","certificationAccessibilityPartiallyDeaf":"None","certificationAccessibilityPartiallyVisual":"Info","certificationAccessibilityVisual":"None","certificationAccessibilityWalking":"Info","certificationAccessibilityWheelchair":"Info","shortDescriptionAccessibilityAllGenerations":"Deutsche Beschreibung von shortDescriptionAccessibilityAllGenerations","shortDescriptionAccessibilityAllergic":"Deutsche Beschreibung von shortDescriptionAccessibilityAllergic","shortDescriptionAccessibilityDeaf":"Deutsche Beschreibung von shortDescriptionAccessibilityDeaf","shortDescriptionAccessibilityMental":"Deutsche Beschreibung von shortDescriptionAccessibilityMental","shortDescriptionAccessibilityVisual":"Deutsche Beschreibung von shortDescriptionAccessibilityVisual","shortDescriptionAccessibilityWalking":"Deutsche Beschreibung von shortDescriptionAccessibilityWalking"}', 'accessibility_specification' => (object)[
'accessibilityCertificationStatus' => 'AccessibilityChecked',
'accessibilitySearchCriteria' => (object)[
'facilityAccessibilityDeaf' => [
0 => 'AudioInductionLoop',
1 => 'FlashingSignalCallWaitingDoor',
2 => 'SpecialOffersDeafPeople',
3 => 'SpecialOffersHearingImpairment',
4 => 'VisualConfirmationDistressCallElevator',
],
'facilityAccessibilityMental' => [
0 => 'ColoredOrPictorialGuidanceSystem',
1 => 'InformationInEasyLanguage',
2 => 'InformationWithPictogramsOrPictures',
],
'facilityAccessibilityVisual' => [
0 => 'AssistanceDogsWelcome',
1 => 'GuidanceSystemWithFloorIndicators',
2 => 'InformationBrailleOrPrismaticFont',
3 => 'OffersInPictoralLanguage',
4 => 'SpecialOffersBlindPeople',
5 => 'SpecialOffersVisualImpairment',
6 => 'TactileOffers',
7 => 'VisuallyContrastingStepEdges',
],
'facilityAccessibilityWalking' => [
0 => 'AllRoomsStepFreeAccess',
1 => 'EightyCMWidthPassageWays',
2 => 'EntryAidSwimmingPool',
3 => 'GrabRailInShower',
4 => 'HandrailsOnBothSidesOfAllStaircases',
5 => 'HingedGrabRailToilet',
6 => 'LateralAccessibleToilet',
7 => 'MinumumManoeuvringSpaceShower',
8 => 'NinetyCMWidthPassageWays',
9 => 'NursingBed',
10 => 'ParkingPeopleWithDisabilities',
11 => 'SeventyCMWidthPassageWays',
12 => 'ShowerSeat',
13 => 'SpecialOffersWalkingImpairment',
14 => 'SpecialOffersWheelchairUsers',
15 => 'StepFreeAccess',
16 => 'StepFreeShower',
17 => 'ToiletsPeopleWithDisabilities',
],
],
'certificationAccessibilityDeaf' => 'Full',
'certificationAccessibilityMental' => 'None',
'certificationAccessibilityPartiallyDeaf' => 'None',
'certificationAccessibilityPartiallyVisual' => 'Info',
'certificationAccessibilityVisual' => 'None',
'certificationAccessibilityWalking' => 'Info',
'certificationAccessibilityWheelchair' => 'Info',
'shortDescriptionAccessibilityAllGenerations' => 'Deutsche Beschreibung von shortDescriptionAccessibilityAllGenerations',
'shortDescriptionAccessibilityAllergic' => 'Deutsche Beschreibung von shortDescriptionAccessibilityAllergic',
'shortDescriptionAccessibilityDeaf' => 'Deutsche Beschreibung von shortDescriptionAccessibilityDeaf',
'shortDescriptionAccessibilityMental' => 'Deutsche Beschreibung von shortDescriptionAccessibilityMental',
'shortDescriptionAccessibilityVisual' => 'Deutsche Beschreibung von shortDescriptionAccessibilityVisual',
'shortDescriptionAccessibilityWalking' => 'Deutsche Beschreibung von shortDescriptionAccessibilityWalking',
],
], ],
], ],
'tx_thuecat_town' => [ 'tx_thuecat_town' => [
@ -45,13 +292,35 @@ return [
'uid' => '1', 'uid' => '1',
'pid' => '3', 'pid' => '3',
'title' => 'Parkhaus Domplatz', 'title' => 'Parkhaus Domplatz',
'address' => '{"street":"Bechtheimer Str. 1","zip":"99084","city":"Erfurt","email":"info@stadtwerke-erfurt.de","phone":"+49 361 5640","fax":"","geo":{"latitude":50.977648905044,"longitude":11.022127985954299}}', 'address' => (object)[
'street' => 'Bechtheimer Str. 1',
'zip' => '99084',
'city' => 'Erfurt',
'email' => 'info@stadtwerke-erfurt.de',
'phone' => '+49 361 5640',
'fax' => '',
'geo' => (object)[
'latitude' => 50.977648905044,
'longitude' => 11.022127985954299,
],
],
], ],
1 => [ 1 => [
'uid' => '2', 'uid' => '2',
'pid' => '3', 'pid' => '3',
'title' => 'Q-Park Anger 1 Parkhaus', 'title' => 'Q-Park Anger 1 Parkhaus',
'address' => '{"street":"Anger 1","zip":"99084","city":"Erfurt","email":"servicecenter@q-park.de","phone":"+49 218 18190290","fax":"","geo":{"latitude":50.977999330565794,"longitude":11.037503264052475}}', 'address' => (object)[
'street' => 'Anger 1',
'zip' => '99084',
'city' => 'Erfurt',
'email' => 'servicecenter@q-park.de',
'phone' => '+49 218 18190290',
'fax' => '',
'geo' => (object)[
'latitude' => 50.977999330565794,
'longitude' => 11.037503264052475,
],
],
], ],
], ],
]; ];

View file

@ -10,10 +10,10 @@ return [
'title' => 'Attraktion mit false', 'title' => 'Attraktion mit false',
'description' => '', 'description' => '',
'town' => '0', 'town' => '0',
'media' => '', 'media' => [],
'opening_hours' => '', 'opening_hours' => [],
'address' => '', 'address' => [],
'offers' => '', 'offers' => [],
'slogan' => '', 'slogan' => '',
'start_of_construction' => '', 'start_of_construction' => '',
'sanitation' => '', 'sanitation' => '',
@ -33,10 +33,10 @@ return [
'title' => 'Attraktion mit true', 'title' => 'Attraktion mit true',
'description' => '', 'description' => '',
'town' => '0', 'town' => '0',
'media' => '', 'media' => [],
'opening_hours' => '', 'opening_hours' => [],
'address' => '', 'address' => [],
'offers' => '', 'offers' => [],
'slogan' => '', 'slogan' => '',
'start_of_construction' => '', 'start_of_construction' => '',
'sanitation' => '', 'sanitation' => '',

View file

@ -10,10 +10,10 @@ return [
'title' => 'Attraktion mit pets_allowed = false', 'title' => 'Attraktion mit pets_allowed = false',
'description' => '', 'description' => '',
'town' => '0', 'town' => '0',
'media' => '', 'media' => [],
'opening_hours' => '', 'opening_hours' => [],
'address' => '', 'address' => [],
'offers' => '', 'offers' => [],
'slogan' => '', 'slogan' => '',
'start_of_construction' => '', 'start_of_construction' => '',
'sanitation' => '', 'sanitation' => '',
@ -32,10 +32,10 @@ return [
'title' => 'Attraktion mit pets_allowed = true', 'title' => 'Attraktion mit pets_allowed = true',
'description' => '', 'description' => '',
'town' => '0', 'town' => '0',
'media' => '', 'media' => [],
'opening_hours' => '', 'opening_hours' => [],
'address' => '', 'address' => [],
'offers' => '', 'offers' => [],
'slogan' => '', 'slogan' => '',
'start_of_construction' => '', 'start_of_construction' => '',
'sanitation' => '', 'sanitation' => '',

View file

@ -10,10 +10,10 @@ return [
'title' => 'Attraktion mit public_access = false', 'title' => 'Attraktion mit public_access = false',
'description' => '', 'description' => '',
'town' => '0', 'town' => '0',
'media' => '', 'media' => [],
'opening_hours' => '', 'opening_hours' => [],
'address' => '', 'address' => [],
'offers' => '', 'offers' => [],
'slogan' => '', 'slogan' => '',
'start_of_construction' => '', 'start_of_construction' => '',
'sanitation' => '', 'sanitation' => '',
@ -32,10 +32,10 @@ return [
'title' => 'Attraktion mit public_access = true', 'title' => 'Attraktion mit public_access = true',
'description' => '', 'description' => '',
'town' => '0', 'town' => '0',
'media' => '', 'media' => [],
'opening_hours' => '', 'opening_hours' => [],
'address' => '', 'address' => [],
'offers' => '', 'offers' => [],
'slogan' => '', 'slogan' => '',
'start_of_construction' => '', 'start_of_construction' => '',
'sanitation' => '', 'sanitation' => '',

View file

@ -449,7 +449,8 @@ class FrontendTest extends FunctionalTestCase
->getConnectionForTable('tx_thuecat_tourist_attraction') ->getConnectionForTable('tx_thuecat_tourist_attraction')
->update( ->update(
'tx_thuecat_tourist_attraction', 'tx_thuecat_tourist_attraction',
['opening_hours' => json_encode([ [
'opening_hours' => [
[ [
'closes' => '14:00:00', 'closes' => '14:00:00',
'opens' => '13:00:00', 'opens' => '13:00:00',
@ -480,8 +481,11 @@ class FrontendTest extends FunctionalTestCase
'timezone_type' => 3, 'timezone_type' => 3,
], ],
], ],
])], ],
['uid' => 1] ],
[
'uid' => 1,
]
) )
; ;
@ -516,7 +520,8 @@ class FrontendTest extends FunctionalTestCase
->getConnectionForTable('tx_thuecat_tourist_attraction') ->getConnectionForTable('tx_thuecat_tourist_attraction')
->update( ->update(
'tx_thuecat_tourist_attraction', 'tx_thuecat_tourist_attraction',
['opening_hours' => json_encode([ [
'opening_hours' => [
[ [
'closes' => '17:00:00', 'closes' => '17:00:00',
'opens' => '13:00:00', 'opens' => '13:00:00',
@ -562,8 +567,11 @@ class FrontendTest extends FunctionalTestCase
'timezone_type' => 3, 'timezone_type' => 3,
], ],
], ],
])], ],
['uid' => 1] ],
[
'uid' => 1,
]
) )
; ;
@ -593,7 +601,8 @@ class FrontendTest extends FunctionalTestCase
->getConnectionForTable('tx_thuecat_tourist_attraction') ->getConnectionForTable('tx_thuecat_tourist_attraction')
->update( ->update(
'tx_thuecat_tourist_attraction', 'tx_thuecat_tourist_attraction',
['special_opening_hours' => json_encode([ [
'special_opening_hours' => [
[ [
'closes' => '12:00:00', 'closes' => '12:00:00',
'opens' => '11:00:00', 'opens' => '11:00:00',
@ -639,8 +648,11 @@ class FrontendTest extends FunctionalTestCase
'timezone_type' => 3, 'timezone_type' => 3,
], ],
], ],
])], ],
['uid' => 1] ],
[
'uid' => 1,
]
) )
; ;

View file

@ -17,7 +17,6 @@ CREATE TABLE tx_thuecat_import_log (
CREATE TABLE tx_thuecat_import_log_entry ( CREATE TABLE tx_thuecat_import_log_entry (
type varchar(255) DEFAULT 'savingEntity' NOT NULL, type varchar(255) DEFAULT 'savingEntity' NOT NULL,
import_log int(11) unsigned DEFAULT '0' NOT NULL, import_log int(11) unsigned DEFAULT '0' NOT NULL,
errors text,
remote_id varchar(255) DEFAULT '' NOT NULL, remote_id varchar(255) DEFAULT '' NOT NULL,
record_uid int(11) unsigned DEFAULT '0' NOT NULL, record_uid int(11) unsigned DEFAULT '0' NOT NULL,
table_name varchar(255) DEFAULT '' NOT NULL, table_name varchar(255) DEFAULT '' NOT NULL,
@ -56,12 +55,7 @@ CREATE TABLE tx_thuecat_tourist_attraction (
parking_facility_near_by varchar(255) DEFAULT '' NOT NULL, parking_facility_near_by varchar(255) DEFAULT '' NOT NULL,
title varchar(255) DEFAULT '' NOT NULL, title varchar(255) DEFAULT '' NOT NULL,
description text, description text,
opening_hours text,
special_opening_hours text,
address text,
url text, url text,
media text,
offers text,
slogan text, slogan text,
start_of_construction text, start_of_construction text,
sanitation text, sanitation text,
@ -77,7 +71,6 @@ CREATE TABLE tx_thuecat_tourist_attraction (
public_access text, public_access text,
available_languages text, available_languages text,
distance_to_public_transport text, distance_to_public_transport text,
accessibility_specification text,
editorial_images int(11) unsigned DEFAULT '0' NOT NULL, editorial_images int(11) unsigned DEFAULT '0' NOT NULL,
); );
@ -87,11 +80,6 @@ CREATE TABLE tx_thuecat_parking_facility (
town int(11) unsigned DEFAULT '0' NOT NULL, town int(11) unsigned DEFAULT '0' NOT NULL,
title varchar(255) DEFAULT '' NOT NULL, title varchar(255) DEFAULT '' NOT NULL,
description text, description text,
opening_hours text,
special_opening_hours text,
address text,
media text,
offers text,
sanitation text, sanitation text,
other_service text, other_service text,
traffic_infrastructure text, traffic_infrastructure text,