From d23f023aa1ffeeb53118d34f95daebb90cbc881e Mon Sep 17 00:00:00 2001 From: Dirk Koritnik Date: Tue, 14 Sep 2021 15:02:16 +0200 Subject: [PATCH] Add Twitter Bootstrap markup to templates (#50) This allows out of the box integration into websites using the Twitter Bootstrap Frontend Framework. Resolves: #11 --- .../Rendering/_base.typoscript | 3 + Resources/Private/Language/de.locallang.xlf | 60 ++++ Resources/Private/Language/locallang.xlf | 45 +++ .../ContentElement/Accessibility.html | 136 +++++++++ .../Frontend/ContentElement/Address.html | 21 ++ .../Frontend/ContentElement/Digital.html | 9 + .../Frontend/ContentElement/Languages.html | 9 + .../Frontend/ContentElement/Museum.html | 9 + .../Frontend/ContentElement/Offers.html | 92 +++++++ .../Frontend/ContentElement/Opening.html | 15 + .../Frontend/ContentElement/Parking.html | 8 + .../Frontend/ContentElement/Payment.html | 9 + .../Frontend/ContentElement/Photography.html | 9 + .../Frontend/ContentElement/Sanitation.html | 9 + .../Frontend/ContentElement/Service.html | 5 + .../Frontend/ContentElement/Traffic.html | 9 + .../ContentElement/TouristAttraction.html | 258 +++++++----------- Tests/Functional/FrontendTest.php | 4 +- 18 files changed, 552 insertions(+), 158 deletions(-) create mode 100644 Resources/Private/Partials/Frontend/ContentElement/Accessibility.html create mode 100644 Resources/Private/Partials/Frontend/ContentElement/Address.html create mode 100644 Resources/Private/Partials/Frontend/ContentElement/Digital.html create mode 100644 Resources/Private/Partials/Frontend/ContentElement/Languages.html create mode 100644 Resources/Private/Partials/Frontend/ContentElement/Museum.html create mode 100644 Resources/Private/Partials/Frontend/ContentElement/Offers.html create mode 100644 Resources/Private/Partials/Frontend/ContentElement/Opening.html create mode 100644 Resources/Private/Partials/Frontend/ContentElement/Parking.html create mode 100644 Resources/Private/Partials/Frontend/ContentElement/Payment.html create mode 100644 Resources/Private/Partials/Frontend/ContentElement/Photography.html create mode 100644 Resources/Private/Partials/Frontend/ContentElement/Sanitation.html create mode 100644 Resources/Private/Partials/Frontend/ContentElement/Service.html create mode 100644 Resources/Private/Partials/Frontend/ContentElement/Traffic.html diff --git a/Configuration/TypoScript/ContentElements/Rendering/_base.typoscript b/Configuration/TypoScript/ContentElements/Rendering/_base.typoscript index 967a84f..97108d6 100644 --- a/Configuration/TypoScript/ContentElements/Rendering/_base.typoscript +++ b/Configuration/TypoScript/ContentElements/Rendering/_base.typoscript @@ -1,5 +1,8 @@ lib.thuecatContentElement =< lib.contentElement lib.thuecatContentElement { + partialRootPaths { + 0 = EXT:thuecat/Resources/Private/Partials/Frontend/ContentElement/ + } templateRootPaths { 0 = EXT:thuecat/Resources/Private/Templates/Frontend/ContentElement/ } diff --git a/Resources/Private/Language/de.locallang.xlf b/Resources/Private/Language/de.locallang.xlf index d7b87cd..1f3edd9 100644 --- a/Resources/Private/Language/de.locallang.xlf +++ b/Resources/Private/Language/de.locallang.xlf @@ -91,6 +91,66 @@ Video Guide Videoguide + + Guided tours + Führungen + + + Address + Anschrift + + + Opening hours + Öffnungszeiten + + + Offers + Preise + + + General Information + Allgemeine Informationen + + + Accepted payment + Akzeptierte Bezahlmethoden + + + Available languages + Angebotene Sprachen + + + Sanitation + Sanitäre Anlagen + + + Digital offers + Digitale Angebote + + + Museum services + Museumsangebote + + + Mobility offers + Mobilitätsangebote + + + Photography + Fotografieren + + + Architecture + Architektur + + + Year of construction + Baujahr + + + Information on accessibility + Informationen zur Barrierefreiheit + per package pro Paket diff --git a/Resources/Private/Language/locallang.xlf b/Resources/Private/Language/locallang.xlf index ae46e4d..2b98390 100644 --- a/Resources/Private/Language/locallang.xlf +++ b/Resources/Private/Language/locallang.xlf @@ -137,6 +137,51 @@ Imported configuration "%1$s". But had at least one error. + + Guided tours + + + Address + + + Opening hours + + + Offers + + + General Information + + + Accepted payment + + + Available languages + + + Sanitation + + + Digital offers + + + Museum services + + + Mobility offers + + + Photography + + + Architecture + + + Year of construction + + + Information on accessibility + per package diff --git a/Resources/Private/Partials/Frontend/ContentElement/Accessibility.html b/Resources/Private/Partials/Frontend/ContentElement/Accessibility.html new file mode 100644 index 0000000..045fd98 --- /dev/null +++ b/Resources/Private/Partials/Frontend/ContentElement/Accessibility.html @@ -0,0 +1,136 @@ + +
+
+
+ +
    + + +
  • {f:translate(id: 'content.accessibilitySpecification.searchCriteria.criteria.{criteria}', default: criteria, extensionName: 'Thuecat')}
  • +
    +
    +
+
+
+
+
    + +
  • {f:translate(id: 'content.accessibilitySpecification.certification.{specification.certificationDeaf}', default: specification.certificationDeaf, extensionName: 'Thuecat')} {f:translate(id: 'content.accessibilitySpecification.certification.deaf', extensionName: 'Thuecat')}
  • +
    + +
  • {f:translate(id: 'content.accessibilitySpecification.certification.{specification.certificationMental}', default: specification.certificationMental, extensionName: 'Thuecat')} {f:translate(id: 'content.accessibilitySpecification.certification.mental', extensionName: 'Thuecat')}
  • +
    + +
  • {f:translate(id: 'content.accessibilitySpecification.certification.{specification.certificationPartiallyDeaf}', default: specification.certificationPartiallyDeaf, extensionName: 'Thuecat')} {f:translate(id: 'content.accessibilitySpecification.certification.partiallyDeaf', extensionName: 'Thuecat')}
  • +
    + +
  • {f:translate(id: 'content.accessibilitySpecification.certification.{specification.certificationPartiallyVisual}', default: specification.certificationPartiallyVisual, extensionName: 'Thuecat')} {f:translate(id: 'content.accessibilitySpecification.certification.partiallyVisual', extensionName: 'Thuecat')}
  • +
    + +
  • {f:translate(id: 'content.accessibilitySpecification.certification.{specification.certificationVisual}', default: specification.certificationVisual, extensionName: 'Thuecat')} {f:translate(id: 'content.accessibilitySpecification.certification.visual', extensionName: 'Thuecat')}
  • +
    + +
  • {f:translate(id: 'content.accessibilitySpecification.certification.{specification.certificationWalking}', default: specification.certificationWalking, extensionName: 'Thuecat')} {f:translate(id: 'content.accessibilitySpecification.certification.walking', extensionName: 'Thuecat')}
  • +
    + +
  • {f:translate(id: 'content.accessibilitySpecification.certification.{specification.certificationWheelchair}', default: specification.certificationWheelchair, extensionName: 'Thuecat')} {f:translate(id: 'content.accessibilitySpecification.certification.wheelchair', extensionName: 'Thuecat')}
  • +
    +
+
+
+ +
+ + +
+

+ +

+
+
+

{specification.shortDescriptionAllGenerations -> f:format.nl2br()}

+
+
+
+
+ + +
+

+ +

+
+
+

{specification.shortDescriptionAllergic -> f:format.nl2br()}

+
+
+
+
+ + +
+

+ +

+
+
+

{specification.shortDescriptionDeaf -> f:format.nl2br()}

+
+
+
+
+ + +
+

+ +

+
+
+

{specification.shortDescriptionMental -> f:format.nl2br()}

+
+
+
+
+ + +
+

+ +

+
+
+

{specification.shortDescriptionVisual -> f:format.nl2br()}

+
+
+
+
+ + +
+

+ +

+
+
+

{specification.shortDescriptionWalking -> f:format.nl2br()}

+
+
+
+
+
+ +
+ diff --git a/Resources/Private/Partials/Frontend/ContentElement/Address.html b/Resources/Private/Partials/Frontend/ContentElement/Address.html new file mode 100644 index 0000000..90bae65 --- /dev/null +++ b/Resources/Private/Partials/Frontend/ContentElement/Address.html @@ -0,0 +1,21 @@ + +
+

+ + {address.street}
+
+ + {address.zip} {address.city}
+
+ + {address.email}
+
+ + {address.phone}
+
+ + {address.fax} + +

+
+ diff --git a/Resources/Private/Partials/Frontend/ContentElement/Digital.html b/Resources/Private/Partials/Frontend/ContentElement/Digital.html new file mode 100644 index 0000000..d2ead8b --- /dev/null +++ b/Resources/Private/Partials/Frontend/ContentElement/Digital.html @@ -0,0 +1,9 @@ + +
+

+ + {f:translate(id: 'content.digitalOffer.{offer}', default: offer, extensionName: 'Thuecat')} + +

+
+ diff --git a/Resources/Private/Partials/Frontend/ContentElement/Languages.html b/Resources/Private/Partials/Frontend/ContentElement/Languages.html new file mode 100644 index 0000000..d81134f --- /dev/null +++ b/Resources/Private/Partials/Frontend/ContentElement/Languages.html @@ -0,0 +1,9 @@ + +
+

+ + {f:translate(id: 'content.availableLanguage.{language}', default: language, extensionName: 'Thuecat')} + +

+
+ diff --git a/Resources/Private/Partials/Frontend/ContentElement/Museum.html b/Resources/Private/Partials/Frontend/ContentElement/Museum.html new file mode 100644 index 0000000..cbc1ec0 --- /dev/null +++ b/Resources/Private/Partials/Frontend/ContentElement/Museum.html @@ -0,0 +1,9 @@ + +
+

+ + {f:translate(id: 'content.museumService.{service}', default: service, extensionName: 'Thuecat')} + +

+
+ diff --git a/Resources/Private/Partials/Frontend/ContentElement/Offers.html b/Resources/Private/Partials/Frontend/ContentElement/Offers.html new file mode 100644 index 0000000..ec41013 --- /dev/null +++ b/Resources/Private/Partials/Frontend/ContentElement/Offers.html @@ -0,0 +1,92 @@ + +
+ + + + + + + + +
+ + +
+ +
+

+ +

+
+
+ +
+

{offer.description}

+
+
+ + + + + + + + + + + + +
+ {price.title} + + {price.price -> f:format.currency(decimalSeparator: ',', thousandsSeparator: '.', decimals: 2, currencySign: price.currency)} + {f:translate(id: 'content.price.rule.{price.rules.0}', default: price.rule, extensionName: 'Thuecat')} +
+ {price.description} +
+
+
+
+
+
+
+ + + +
+
+
{offer.title} ({f:translate(id: 'content.price.type.{offer.type}', default: offer.type, extensionName: 'Thuecat')})
+ +
+

{offer.description}

+
+
+ + + + + + + + + + + + + +
+ {price.title} + + {price.price -> f:format.currency(decimalSeparator: ',', thousandsSeparator: '.', decimals: 2, currencySign: price.currency)} + {f:translate(id: 'content.price.rule.{price.rules.0}', default: price.rule, extensionName: 'Thuecat')} +
+ {price.description} +
+
+
+
+
+
+ diff --git a/Resources/Private/Partials/Frontend/ContentElement/Opening.html b/Resources/Private/Partials/Frontend/ContentElement/Opening.html new file mode 100644 index 0000000..b0b43dc --- /dev/null +++ b/Resources/Private/Partials/Frontend/ContentElement/Opening.html @@ -0,0 +1,15 @@ + +
+ +
+ {openingHour.from -> f:format.date(format: 'd.m.Y')} - + {openingHour.through -> f:format.date(format: 'd.m.Y')} +
+

+ + {f:translate(id: 'content.openingHour.weekday.{weekday}', default: weekday, extensionName: 'Thuecat')} {openingHour.opens} - {openingHour.closes}
+
+

+
+
+ diff --git a/Resources/Private/Partials/Frontend/ContentElement/Parking.html b/Resources/Private/Partials/Frontend/ContentElement/Parking.html new file mode 100644 index 0000000..b141888 --- /dev/null +++ b/Resources/Private/Partials/Frontend/ContentElement/Parking.html @@ -0,0 +1,8 @@ + +
+ + {parkingFacility.title} + {f:render(partial: 'Address', arguments: {address: parkingFacility.address})} + +
+ diff --git a/Resources/Private/Partials/Frontend/ContentElement/Payment.html b/Resources/Private/Partials/Frontend/ContentElement/Payment.html new file mode 100644 index 0000000..6b6bb90 --- /dev/null +++ b/Resources/Private/Partials/Frontend/ContentElement/Payment.html @@ -0,0 +1,9 @@ + +
+

+ + {f:translate(id: 'content.paymentAccepted.{payment}', default: payment, extensionName: 'Thuecat')} + +

+
+ diff --git a/Resources/Private/Partials/Frontend/ContentElement/Photography.html b/Resources/Private/Partials/Frontend/ContentElement/Photography.html new file mode 100644 index 0000000..4f3d2a9 --- /dev/null +++ b/Resources/Private/Partials/Frontend/ContentElement/Photography.html @@ -0,0 +1,9 @@ + +
+

+ + {f:translate(id: 'content.photography.{photography}', default: photography, extensionName: 'Thuecat')} + +

+
+ diff --git a/Resources/Private/Partials/Frontend/ContentElement/Sanitation.html b/Resources/Private/Partials/Frontend/ContentElement/Sanitation.html new file mode 100644 index 0000000..0f084d7 --- /dev/null +++ b/Resources/Private/Partials/Frontend/ContentElement/Sanitation.html @@ -0,0 +1,9 @@ + +
+

+ + {f:translate(id: 'content.sanitation.{sanitation}', default: sanitation, extensionName: 'Thuecat')} + +

+
+ diff --git a/Resources/Private/Partials/Frontend/ContentElement/Service.html b/Resources/Private/Partials/Frontend/ContentElement/Service.html new file mode 100644 index 0000000..d478ea5 --- /dev/null +++ b/Resources/Private/Partials/Frontend/ContentElement/Service.html @@ -0,0 +1,5 @@ + + + {f:translate(id: 'content.otherService.{service}', default: service, extensionName: 'Thuecat')} + + diff --git a/Resources/Private/Partials/Frontend/ContentElement/Traffic.html b/Resources/Private/Partials/Frontend/ContentElement/Traffic.html new file mode 100644 index 0000000..3ace88d --- /dev/null +++ b/Resources/Private/Partials/Frontend/ContentElement/Traffic.html @@ -0,0 +1,9 @@ + +
+

+ + {f:translate(id: 'content.trafficInfrastructure.{trafficInfrastructure}', default: trafficInfrastructure, extensionName: 'Thuecat')} + +

+
+ diff --git a/Resources/Private/Templates/Frontend/ContentElement/TouristAttraction.html b/Resources/Private/Templates/Frontend/ContentElement/TouristAttraction.html index 2508eb2..1c9fd37 100644 --- a/Resources/Private/Templates/Frontend/ContentElement/TouristAttraction.html +++ b/Resources/Private/Templates/Frontend/ContentElement/TouristAttraction.html @@ -1,174 +1,120 @@ -
{entity.title} ({entity.town.title})
- {entity.slogan} - {entity.description -> f:format.html()} - - - - - - -

- - {f:translate(id: 'content.openingHour.weekday.{weekday}', default: weekday, extensionName: 'Thuecat')} {openingHour.opens} - {openingHour.closes}
-
- {openingHour.from -> f:format.date(format: 'd.m.Y')} - - {openingHour.through -> f:format.date(format: 'd.m.Y')} -

-
- - - {f:render(section: 'Address', arguments: {address: entity.address})} - - - - -

{offer.title} ({f:translate(id: 'content.price.type.{offer.type}', default: offer.type, extensionName: 'Thuecat')})

- -

{offer.description}

+
+
+ {entity.slogan} +

{entity.title} ({entity.town.title})

+ {entity.description -> f:format.html()} +
+
+ + - -

{price.title}

- -

{price.description}

+
+
+ +
+
+ +
{f:translate(id: 'content.address', extensionName: 'Thuecat')}
+ {f:render(partial: 'Address', arguments: {address: entity.address})} +
+ +
{f:translate(id: 'content.distanceToPublicTransport', extensionName: 'Thuecat')}
+

+ {entity.distanceToPublicTransport.value} {f:translate(id: 'content.unit.{entity.distanceToPublicTransport.unit}', default: entity.distanceToPublicTransport.unit, extensionName: 'Thuecat')} +

+
+ +
{f:translate(id: 'content.parkingFacilitiesNearBy', extensionName: 'Thuecat')}
+ {f:render(partial: 'Parking', arguments: {parkingFacilitiesNearBy: entity.parkingFacilitiesNearBy})} +
+
+
+
{f:translate(id: 'content.generalInformation', extensionName: 'Thuecat')}
+

+ + {f:render(partial: 'Service', arguments: {otherServices: entity.otherServices})} - {price.price -> f:format.currency(decimalSeparator: ',', thousandsSeparator: '.', decimals: 2, currencySign: price.currency)} - - {f:translate(id: 'content.price.rule.{rule}', default: rule, extensionName: 'Thuecat')} - - - - - {entity.startOfConstruction} + {f:translate(id: 'content.petsAllowed.{entity.petsAllowed}', default: entity.petsAllowed, extensionName: 'Thuecat')} + {f:translate(id: 'content.isAccessibleForFree.{entity.isAccessibleForFree}', default: entity.isAccessibleForFree, extensionName: 'Thuecat')} + {f:translate(id: 'content.publicAccess.{entity.publicAccess}', default: entity.publicAccess, extensionName: 'Thuecat')} + {f:translate(id: 'content.accessibilitySpecification.certificationStatus.{entity.accessibilitySpecification.certificationStatus}', default: entity.accessibilitySpecification.certificationStatus, extensionName: 'Thuecat')} +

- - {f:translate(id: 'content.sanitation.{sanitation}', default: sanitation, extensionName: 'thuecat')} - + +
{f:translate(id: 'content.museum', extensionName: 'Thuecat')}
+ {f:render(partial: 'Museum', arguments: {museumServices: entity.museumServices})} +
- - {f:translate(id: 'content.otherService.{service}', default: service, extensionName: 'thuecat')} - + +
{f:translate(id: 'content.digital', extensionName: 'Thuecat')}
+ {f:render(partial: 'Digital', arguments: {digitalOffer: entity.digitalOffer})} +
- - {f:translate(id: 'content.museumService.{service}', default: service, extensionName: 'thuecat')} - + +
{f:translate(id: 'content.traffic', extensionName: 'Thuecat')}
+ {f:render(partial: 'Traffic', arguments: {trafficInfrastructures: entity.trafficInfrastructures})} +
- - {f:translate(id: 'content.architecturalStyle.{style}', default: style, extensionName: 'thuecat')} - + +
{f:translate(id: 'content.payment', extensionName: 'Thuecat')}
+ {f:render(partial: 'Payment', arguments: {paymentAccepted: entity.paymentAccepted})} +
- - {f:translate(id: 'content.trafficInfrastructure.{trafficInfrastructure}', default: trafficInfrastructure, extensionName: 'thuecat')} - + +
{f:translate(id: 'content.languages', extensionName: 'Thuecat')}
+ {f:render(partial: 'Payment', arguments: {availableLanguages: entity.availableLanguages})} +
- - {f:translate(id: 'content.paymentAccepted.{payment}', default: payment, extensionName: 'thuecat')} - + +
{f:translate(id: 'content.sanitation', extensionName: 'Thuecat')}
+ {f:render(partial: 'Sanitation', arguments: {sanitation: entity.sanitation})} +
- - {f:translate(id: 'content.digitalOffer.{offer}', default: offer, extensionName: 'thuecat')} - + +
{f:translate(id: 'content.photography', extensionName: 'Thuecat')}
+ {f:render(partial: 'Photography', arguments: {photography: entity.photography})} +
- - {f:translate(id: 'content.photography.{photography}', default: photography, extensionName: 'thuecat')} - + +
{f:translate(id: 'content.construction', extensionName: 'Thuecat')}
+

+ {entity.startOfConstruction} +

+
- {f:translate(id: 'content.petsAllowed.{entity.petsAllowed}', default: entity.petsAllowed, extensionName: 'thuecat')} - {f:translate(id: 'content.isAccessibleForFree.{entity.isAccessibleForFree}', default: entity.isAccessibleForFree, extensionName: 'thuecat')} - {f:translate(id: 'content.publicAccess.{entity.publicAccess}', default: entity.publicAccess, extensionName: 'thuecat')} - - - {f:translate(id: 'content.availableLanguage.{language}', default: language, extensionName: 'thuecat')} - - - - {f:translate(id: 'content.distanceToPublicTransport', extensionName: 'thuecat')} {entity.distanceToPublicTransport.value} {f:translate(id: 'content.unit.{entity.distanceToPublicTransport.unit}', default: entity.distanceToPublicTransport.unit, extensionName: 'thuecat')} - - - - {f:translate(id: 'content.parkingFacilitiesNearBy', extensionName: 'Thuecat')} - - {parkingFacility.title} - {f:render(section: 'Address', arguments: {address: parkingFacility.address})} - - - - - {f:render(section: 'AccessiblitySpecification', arguments: {specification: entity.accessibilitySpecification})} + +
{f:translate(id: 'content.architecture', extensionName: 'Thuecat')}
+

+ + {f:translate(id: 'content.architecturalStyle.{style}', default: style, extensionName: 'Thuecat')} + +

+
+
+
+ +
{f:translate(id: 'content.openingHours', extensionName: 'Thuecat')}
+ {f:render(partial: 'Opening', arguments: {openingHours: entity.openingHours})} +
+
+
+ +
{f:translate(id: 'content.offers', extensionName: 'Thuecat')}
+ {f:render(partial: 'Offers', arguments: {offers: entity.offers, uid: entity.uid})} +
+
+
+ +
+
+

{f:translate(id: 'content.accessibility', extensionName: 'Thuecat')}

+ {f:render(partial: 'Accessibility', arguments: {specification: entity.accessibilitySpecification, uid: entity.uid})} +
+
- - -

- {address.street}
- {address.zip} {address.city}
- {address.email}
- {address.phone}
- {address.fax} -

-
- - - {f:translate(id: 'content.accessibilitySpecification.certificationStatus.{specification.certificationStatus}', default: specification.certificationStatus, extensionName: 'Thuecat')} - - - {f:translate(id: 'content.accessibilitySpecification.certification.{specification.certificationDeaf}', default: specification.certificationDeaf, extensionName: 'Thuecat')} {f:translate(id: 'content.accessibilitySpecification.certification.deaf', extensionName: 'Thuecat')} - - - {f:translate(id: 'content.accessibilitySpecification.certification.{specification.certificationMental}', default: specification.certificationMental, extensionName: 'Thuecat')} {f:translate(id: 'content.accessibilitySpecification.certification.mental', extensionName: 'Thuecat')} - - - {f:translate(id: 'content.accessibilitySpecification.certification.{specification.certificationPartiallyDeaf}', default: specification.certificationPartiallyDeaf, extensionName: 'Thuecat')} {f:translate(id: 'content.accessibilitySpecification.certification.partiallyDeaf', extensionName: 'Thuecat')} - - - {f:translate(id: 'content.accessibilitySpecification.certification.{specification.certificationPartiallyVisual}', default: specification.certificationPartiallyVisual, extensionName: 'Thuecat')} {f:translate(id: 'content.accessibilitySpecification.certification.partiallyVisual', extensionName: 'Thuecat')} - - - {f:translate(id: 'content.accessibilitySpecification.certification.{specification.certificationVisual}', default: specification.certificationVisual, extensionName: 'Thuecat')} {f:translate(id: 'content.accessibilitySpecification.certification.visual', extensionName: 'Thuecat')} - - - {f:translate(id: 'content.accessibilitySpecification.certification.{specification.certificationWalking}', default: specification.certificationWalking, extensionName: 'Thuecat')} {f:translate(id: 'content.accessibilitySpecification.certification.walking', extensionName: 'Thuecat')} - - - {f:translate(id: 'content.accessibilitySpecification.certification.{specification.certificationWheelchair}', default: specification.certificationWheelchair, extensionName: 'Thuecat')} {f:translate(id: 'content.accessibilitySpecification.certification.wheelchair', extensionName: 'Thuecat')} - - - - {f:translate(id: 'content.accessibilitySpecification.shortDescriptionAllGenerations', extensionName: 'Thuecat')} -

{specification.shortDescriptionAllGenerations -> f:format.nl2br()}

-
- - {f:translate(id: 'content.accessibilitySpecification.shortDescriptionAllergic', extensionName: 'Thuecat')} -

{specification.shortDescriptionAllergic -> f:format.nl2br()}

-
- - {f:translate(id: 'content.accessibilitySpecification.shortDescriptionDeaf', extensionName: 'Thuecat')} -

{specification.shortDescriptionDeaf -> f:format.nl2br()}

-
- - {f:translate(id: 'content.accessibilitySpecification.shortDescriptionMental', extensionName: 'Thuecat')} -

{specification.shortDescriptionMental -> f:format.nl2br()}

-
- - {f:translate(id: 'content.accessibilitySpecification.shortDescriptionVisual', extensionName: 'Thuecat')} -

{specification.shortDescriptionVisual -> f:format.nl2br()}

-
- - {f:translate(id: 'content.accessibilitySpecification.shortDescriptionWalking', extensionName: 'Thuecat')} -

{specification.shortDescriptionWalking -> f:format.nl2br()}

-
- - -
    - - -
  • {f:translate(id: 'content.accessibilitySpecification.searchCriteria.criteria.{criteria}', default: criteria, extensionName: 'Thuecat')}
  • -
    -
    -
-
-
diff --git a/Tests/Functional/FrontendTest.php b/Tests/Functional/FrontendTest.php index 061e302..47bc8a3 100644 --- a/Tests/Functional/FrontendTest.php +++ b/Tests/Functional/FrontendTest.php @@ -74,7 +74,7 @@ class FrontendTest extends FunctionalTestCase self::assertStringContainsString('Highlight', (string)$result->getBody()); - self::assertStringContainsString('', (string)$result->getBody()); + self::assertStringContainsString('', (string)$result->getBody()); self::assertStringContainsString('Beispielstraße 1a', (string)$result->getBody()); self::assertStringContainsString('99084', (string)$result->getBody()); @@ -178,7 +178,7 @@ class FrontendTest extends FunctionalTestCase self::assertStringContainsString('Fotografieren nicht gestattet', (string)$result->getBody()); self::assertStringContainsString('some free text value for photography', (string)$result->getBody()); - self::assertStringContainsString('Entfernung zum ÖPNV: 250 Meter', (string)$result->getBody()); + self::assertStringContainsString('250 Meter', (string)$result->getBody()); self::assertStringNotContainsString('Keine tiere erlaubt', (string)$result->getBody()); self::assertStringNotContainsString('Tiere erlaubt', (string)$result->getBody());