diff --git a/public/typo3conf/ext/ep_products/Classes/Service/ProductDataService.php b/public/typo3conf/ext/ep_products/Classes/Service/ProductDataService.php index 0400cabf..ea577785 100644 --- a/public/typo3conf/ext/ep_products/Classes/Service/ProductDataService.php +++ b/public/typo3conf/ext/ep_products/Classes/Service/ProductDataService.php @@ -194,7 +194,7 @@ class ProductDataService implements SingletonInterface 'daytrip' => $teaserData['daytrip'], 'hideBookingButton' => $teaserData['hideBookingButton'], 'lowContingent' => $teaserData['lowContingent'], - 'servicesIncluded' => unserialize($teaserData['servicesIncluded']), + 'servicesIncluded' => unserialize($teaserData['servicesIncluded'], ['allowed_classes' => false]), 'season' => $teaserData['season'], 'product' => [ 'uid' => $teaserData['productUid'], diff --git a/public/typo3conf/ext/ep_theme/Resources/Private/Assets/js/controllers/teasergrid_controller.js b/public/typo3conf/ext/ep_theme/Resources/Private/Assets/js/controllers/teasergrid_controller.js index ff684980..85c7b80d 100644 --- a/public/typo3conf/ext/ep_theme/Resources/Private/Assets/js/controllers/teasergrid_controller.js +++ b/public/typo3conf/ext/ep_theme/Resources/Private/Assets/js/controllers/teasergrid_controller.js @@ -5,24 +5,33 @@ export default class extends Controller { static classes = [ 'grid' ] static targets = [ - 'icon', + 'button', 'container', ] static values = { disabled: Boolean } - toggle(e) { + grid(e) { e.preventDefault() - this.disabledValue = !this.disabledValue + this.disabledValue = false + this.toggleButtonClass(e) + } + + block(e) { + e.preventDefault() + this.disabledValue = true + this.toggleButtonClass(e) + } + + toggleButtonClass(e) { + this.buttonTargets.forEach(element => { + element.classList.toggle('opacity-50', element === e.currentTarget) + }) } disabledValueChanged() { if (this.hasContainerTarget) { this.containerTarget.classList.toggle(this.gridClass, this.disabledValue === false) } - if (this.hasIconTarget) { - let icon = this.disabledValue ? '#icon-grid' : '#icon-block' - this.iconTarget.setAttribute('href', icon) - } } } diff --git a/public/typo3conf/ext/ep_theme/Resources/Private/Partials/Product/Teaser.html b/public/typo3conf/ext/ep_theme/Resources/Private/Partials/Product/Teaser.html index 17e5e476..0c9323a7 100644 --- a/public/typo3conf/ext/ep_theme/Resources/Private/Partials/Product/Teaser.html +++ b/public/typo3conf/ext/ep_theme/Resources/Private/Partials/Product/Teaser.html @@ -3,7 +3,7 @@ xmlns:f="http://typo3.org/ns/fluid/ViewHelpers"> -
+
@@ -13,7 +13,7 @@
- + {teaser.concept.name}
@@ -31,77 +31,72 @@
-
- -
+ class="flex flex-col h-full bg-white"> +
+ + {teaser.product.name} + + -
-
+
+
{teaser.product.name}
-
-
- - +
+ {teaser.region.name} + + + +
+
+ {ep:nightsOptions(options: teaser.nights, daytrip: teaser.daytrip)} inkl. +
+
    +
  • + + -
-
-
- {teaser.region.name} + + {f:if(condition: '{teaser.season} == "s"', then: 'Bergbahnticket', else: 'Skipass')} + + + +
  • + + + + + {teaser.product.feature} + +
  • +
    + +
  • + + + + + {teaser.board} + +
  • +
    + +
    +
    +
    + ab {teaser.minPrice} €
    -
    - {ep:nightsOptions(options: teaser.nights, daytrip: teaser.daytrip)} -
    -
      -
    • - - - - - {f:if(condition: '{teaser.season} == "s"', then: 'Bergbahnticket', else: 'Skipass')} - -
    • -
    • - - - - - {f:if(condition: '{teaser.season} == "s"', then: 'Bergbahnticket', else: 'Skipass')} - -
    • -
    • - - - - - {f:if(condition: '{teaser.season} == "s"', then: 'Bergbahnticket', else: 'Skipass')} - -
    • -
    • - - - - - {f:if(condition: '{teaser.season} == "s"', then: 'Bergbahnticket', else: 'Skipass')} - -
    • -
    -
    -
    - ab {teaser.minPrice} € -
    -
    - p. P. / inkl. {f:if(condition: '{teaser.season} == "s"', then: 'Bergbahnticket', else: 'Skipass')} -
    +
    + p. P. / inkl. {f:if(condition: '{teaser.season} == "s"', then: 'Bergbahnticket', else: 'Skipass')}
    diff --git a/public/typo3conf/ext/ep_theme/Resources/Private/Templates/Product/Teasergroup.html b/public/typo3conf/ext/ep_theme/Resources/Private/Templates/Product/Teasergroup.html index b45ac884..a0e25686 100644 --- a/public/typo3conf/ext/ep_theme/Resources/Private/Templates/Product/Teasergroup.html +++ b/public/typo3conf/ext/ep_theme/Resources/Private/Templates/Product/Teasergroup.html @@ -13,15 +13,24 @@
    + data-teasergrid-grid-class="grid-cols-2" + data-teasergrid-disabled-value="false"> - +
    + + +