mirror of
https://github.com/werkraum-media/thuecat.git
synced 2024-12-04 19:16:13 +01:00
Add accessibility_specification
This commit is contained in:
parent
cc216429a5
commit
8315d42934
19 changed files with 1221 additions and 26 deletions
185
Classes/Domain/Import/Entity/AccessibilityCertification.php
Normal file
185
Classes/Domain/Import/Entity/AccessibilityCertification.php
Normal file
|
@ -0,0 +1,185 @@
|
|||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
/*
|
||||
* Copyright (C) 2021 Daniel Siepmann <coding@daniel-siepmann.de>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation; either version 2
|
||||
* of the License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
|
||||
* 02110-1301, USA.
|
||||
*/
|
||||
|
||||
namespace WerkraumMedia\ThueCat\Domain\Import\Entity;
|
||||
|
||||
use WerkraumMedia\ThueCat\Domain\Import\EntityMapper\PropertyValues;
|
||||
|
||||
class AccessibilityCertification implements MapsToType
|
||||
{
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
protected $accessibilityCertificationStatus = '';
|
||||
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
protected $certificationAccessibilityDeaf = '';
|
||||
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
protected $certificationAccessibilityMental = '';
|
||||
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
protected $certificationAccessibilityPartiallyDeaf = '';
|
||||
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
protected $certificationAccessibilityPartiallyVisual = '';
|
||||
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
protected $certificationAccessibilityVisual = '';
|
||||
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
protected $certificationAccessibilityWalking = '';
|
||||
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
protected $certificationAccessibilityWheelchair = '';
|
||||
|
||||
public function getAccessibilityCertificationStatus(): string
|
||||
{
|
||||
return $this->accessibilityCertificationStatus;
|
||||
}
|
||||
|
||||
public function getCertificationAccessibilityDeaf(): string
|
||||
{
|
||||
return $this->certificationAccessibilityDeaf;
|
||||
}
|
||||
|
||||
public function getCertificationAccessibilityMental(): string
|
||||
{
|
||||
return $this->certificationAccessibilityMental;
|
||||
}
|
||||
|
||||
public function getCertificationAccessibilityPartiallyDeaf(): string
|
||||
{
|
||||
return $this->certificationAccessibilityPartiallyDeaf;
|
||||
}
|
||||
|
||||
public function getCertificationAccessibilityPartiallyVisual(): string
|
||||
{
|
||||
return $this->certificationAccessibilityPartiallyVisual;
|
||||
}
|
||||
|
||||
public function getCertificationAccessibilityVisual(): string
|
||||
{
|
||||
return $this->certificationAccessibilityVisual;
|
||||
}
|
||||
|
||||
public function getCertificationAccessibilityWalking(): string
|
||||
{
|
||||
return $this->certificationAccessibilityWalking;
|
||||
}
|
||||
|
||||
public function getCertificationAccessibilityWheelchair(): string
|
||||
{
|
||||
return $this->certificationAccessibilityWheelchair;
|
||||
}
|
||||
|
||||
/**
|
||||
* @internal for mapping via Symfony component.
|
||||
*/
|
||||
public function setAccessibilityCertificationStatus(string $accessibilityCertificationStatus): void
|
||||
{
|
||||
$this->accessibilityCertificationStatus = PropertyValues::removePrefixFromEntry($accessibilityCertificationStatus);
|
||||
}
|
||||
|
||||
/**
|
||||
* @internal for mapping via Symfony component.
|
||||
*/
|
||||
public function setCertificationAccessibilityDeaf(string $certificationAccessibilityDeaf): void
|
||||
{
|
||||
$this->certificationAccessibilityDeaf = PropertyValues::removePrefixFromEntry($certificationAccessibilityDeaf);
|
||||
}
|
||||
|
||||
/**
|
||||
* @internal for mapping via Symfony component.
|
||||
*/
|
||||
public function setCertificationAccessibilityMental(string $certificationAccessibilityMental): void
|
||||
{
|
||||
$this->certificationAccessibilityMental = PropertyValues::removePrefixFromEntry($certificationAccessibilityMental);
|
||||
}
|
||||
|
||||
/**
|
||||
* @internal for mapping via Symfony component.
|
||||
*/
|
||||
public function setCertificationAccessibilityPartiallyDeaf(string $certificationAccessibilityPartiallyDeaf): void
|
||||
{
|
||||
$this->certificationAccessibilityPartiallyDeaf = PropertyValues::removePrefixFromEntry($certificationAccessibilityPartiallyDeaf);
|
||||
}
|
||||
|
||||
/**
|
||||
* @internal for mapping via Symfony component.
|
||||
*/
|
||||
public function setCertificationAccessibilityPartiallyVisual(string $certificationAccessibilityPartiallyVisual): void
|
||||
{
|
||||
$this->certificationAccessibilityPartiallyVisual = PropertyValues::removePrefixFromEntry($certificationAccessibilityPartiallyVisual);
|
||||
}
|
||||
|
||||
/**
|
||||
* @internal for mapping via Symfony component.
|
||||
*/
|
||||
public function setCertificationAccessibilityVisual(string $certificationAccessibilityVisual): void
|
||||
{
|
||||
$this->certificationAccessibilityVisual = PropertyValues::removePrefixFromEntry($certificationAccessibilityVisual);
|
||||
}
|
||||
|
||||
/**
|
||||
* @internal for mapping via Symfony component.
|
||||
*/
|
||||
public function setCertificationAccessibilityWalking(string $certificationAccessibilityWalking): void
|
||||
{
|
||||
$this->certificationAccessibilityWalking = PropertyValues::removePrefixFromEntry($certificationAccessibilityWalking);
|
||||
}
|
||||
|
||||
/**
|
||||
* @internal for mapping via Symfony component.
|
||||
*/
|
||||
public function setCertificationAccessibilityWheelchair(string $certificationAccessibilityWheelchair): void
|
||||
{
|
||||
$this->certificationAccessibilityWheelchair = PropertyValues::removePrefixFromEntry($certificationAccessibilityWheelchair);
|
||||
}
|
||||
|
||||
public static function getSupportedTypes(): array
|
||||
{
|
||||
return [
|
||||
'thuecat:AccessibilityCertification',
|
||||
];
|
||||
}
|
||||
|
||||
public static function getPriority(): int
|
||||
{
|
||||
return 10;
|
||||
}
|
||||
}
|
188
Classes/Domain/Import/Entity/AccessibilitySpecification.php
Normal file
188
Classes/Domain/Import/Entity/AccessibilitySpecification.php
Normal file
|
@ -0,0 +1,188 @@
|
|||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
/*
|
||||
* Copyright (C) 2021 Daniel Siepmann <coding@daniel-siepmann.de>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation; either version 2
|
||||
* of the License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
|
||||
* 02110-1301, USA.
|
||||
*/
|
||||
|
||||
namespace WerkraumMedia\ThueCat\Domain\Import\Entity;
|
||||
|
||||
use WerkraumMedia\ThueCat\Domain\Import\EntityMapper\PropertyValues;
|
||||
|
||||
class AccessibilitySpecification implements MapsToType
|
||||
{
|
||||
/**
|
||||
* @var AccessibilityCertification
|
||||
*/
|
||||
protected $accessibilityCertification;
|
||||
|
||||
/**
|
||||
* @var array
|
||||
*/
|
||||
protected $accessibilitySearchCriteria = [];
|
||||
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
protected $shortDescriptionAccessibilityAllGenerations = '';
|
||||
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
protected $shortDescriptionAccessibilityAllergic = '';
|
||||
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
protected $shortDescriptionAccessibilityDeaf = '';
|
||||
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
protected $shortDescriptionAccessibilityMental = '';
|
||||
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
protected $shortDescriptionAccessibilityVisual = '';
|
||||
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
protected $shortDescriptionAccessibilityWalking = '';
|
||||
|
||||
public function getAccessibilityCertification(): ?AccessibilityCertification
|
||||
{
|
||||
return $this->accessibilityCertification;
|
||||
}
|
||||
|
||||
public function getAccessibilitySearchCriteria(): array
|
||||
{
|
||||
return $this->accessibilitySearchCriteria;
|
||||
}
|
||||
|
||||
public function getShortDescriptionAccessibilityAllGenerations(): string
|
||||
{
|
||||
return $this->shortDescriptionAccessibilityAllGenerations;
|
||||
}
|
||||
|
||||
public function getShortDescriptionAccessibilityAllergic(): string
|
||||
{
|
||||
return $this->shortDescriptionAccessibilityAllergic;
|
||||
}
|
||||
|
||||
public function getShortDescriptionAccessibilityDeaf(): string
|
||||
{
|
||||
return $this->shortDescriptionAccessibilityDeaf;
|
||||
}
|
||||
|
||||
public function getShortDescriptionAccessibilityMental(): string
|
||||
{
|
||||
return $this->shortDescriptionAccessibilityMental;
|
||||
}
|
||||
|
||||
public function getShortDescriptionAccessibilityVisual(): string
|
||||
{
|
||||
return $this->shortDescriptionAccessibilityVisual;
|
||||
}
|
||||
|
||||
public function getShortDescriptionAccessibilityWalking(): string
|
||||
{
|
||||
return $this->shortDescriptionAccessibilityWalking;
|
||||
}
|
||||
|
||||
/**
|
||||
* @internal for mapping via Symfony component.
|
||||
*/
|
||||
public function setAccessibilitySearchCriteria(array $accessibilitySearchCriteria): void
|
||||
{
|
||||
foreach ($accessibilitySearchCriteria as $criteria) {
|
||||
$criteria = PropertyValues::removePrefixFromEntries($criteria);
|
||||
$this->accessibilitySearchCriteria[$criteria['type']][] = $criteria['value'];
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @internal for mapping via Symfony component.
|
||||
*/
|
||||
public function setAccessibilityCertification(AccessibilityCertification $accessibilityCertification): void
|
||||
{
|
||||
$this->accessibilityCertification = $accessibilityCertification;
|
||||
}
|
||||
|
||||
/**
|
||||
* @internal for mapping via Symfony component.
|
||||
*/
|
||||
public function setShortDescriptionAccessibilityAllGenerations(string $shortDescriptionAccessibilityAllGenerations): void
|
||||
{
|
||||
$this->shortDescriptionAccessibilityAllGenerations = $shortDescriptionAccessibilityAllGenerations;
|
||||
}
|
||||
|
||||
/**
|
||||
* @internal for mapping via Symfony component.
|
||||
*/
|
||||
public function setShortDescriptionAccessibilityAllergic(string $shortDescriptionAccessibilityAllergic): void
|
||||
{
|
||||
$this->shortDescriptionAccessibilityAllergic = $shortDescriptionAccessibilityAllergic;
|
||||
}
|
||||
|
||||
/**
|
||||
* @internal for mapping via Symfony component.
|
||||
*/
|
||||
public function setShortDescriptionAccessibilityDeaf(string $shortDescriptionAccessibilityDeaf): void
|
||||
{
|
||||
$this->shortDescriptionAccessibilityDeaf = $shortDescriptionAccessibilityDeaf;
|
||||
}
|
||||
|
||||
/**
|
||||
* @internal for mapping via Symfony component.
|
||||
*/
|
||||
public function setShortDescriptionAccessibilityMental(string $shortDescriptionAccessibilityMental): void
|
||||
{
|
||||
$this->shortDescriptionAccessibilityMental = $shortDescriptionAccessibilityMental;
|
||||
}
|
||||
|
||||
/**
|
||||
* @internal for mapping via Symfony component.
|
||||
*/
|
||||
public function setShortDescriptionAccessibilityVisual(string $shortDescriptionAccessibilityVisual): void
|
||||
{
|
||||
$this->shortDescriptionAccessibilityVisual = $shortDescriptionAccessibilityVisual;
|
||||
}
|
||||
|
||||
/**
|
||||
* @internal for mapping via Symfony component.
|
||||
*/
|
||||
public function setShortDescriptionAccessibilityWalking(string $shortDescriptionAccessibilityWalking): void
|
||||
{
|
||||
$this->shortDescriptionAccessibilityWalking = $shortDescriptionAccessibilityWalking;
|
||||
}
|
||||
|
||||
public static function getSupportedTypes(): array
|
||||
{
|
||||
return [
|
||||
'thuecat:AccessibilitySpecification',
|
||||
];
|
||||
}
|
||||
|
||||
public static function getPriority(): int
|
||||
{
|
||||
return 10;
|
||||
}
|
||||
}
|
|
@ -81,6 +81,11 @@ class Place extends Base
|
|||
*/
|
||||
protected $distanceToPublicTransport = '';
|
||||
|
||||
/**
|
||||
* @var ForeignReference
|
||||
*/
|
||||
protected $accessibilitySpecification;
|
||||
|
||||
public function getAddress(): ?Address
|
||||
{
|
||||
return $this->address;
|
||||
|
@ -136,6 +141,11 @@ class Place extends Base
|
|||
return $this->distanceToPublicTransport;
|
||||
}
|
||||
|
||||
public function getAccessibilitySpecification(): ?ForeignReference
|
||||
{
|
||||
return $this->accessibilitySpecification;
|
||||
}
|
||||
|
||||
/**
|
||||
* @internal for mapping via Symfony component.
|
||||
*/
|
||||
|
@ -263,4 +273,12 @@ class Place extends Base
|
|||
$this->distanceToPublicTransport = $value . ':' . PropertyValues::removePrefixFromEntry($unit);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @internal for mapping via Symfony component.
|
||||
*/
|
||||
public function setAccessibilitySpecification(ForeignReference $accessibilitySpecification): void
|
||||
{
|
||||
$this->accessibilitySpecification = $accessibilitySpecification;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -36,6 +36,16 @@ class JsonDecode extends SymfonyJsonDecode
|
|||
{
|
||||
public const ACTIVE_LANGUAGE = 'active_language';
|
||||
|
||||
/**
|
||||
* @var array[]
|
||||
*/
|
||||
private $rulesToKeepTypeInfo = [
|
||||
[
|
||||
'type' => 'beginsWith',
|
||||
'comparisonValue' => 'thuecat:facilityAccessibility',
|
||||
],
|
||||
];
|
||||
|
||||
public function decode(
|
||||
string $data,
|
||||
string $format,
|
||||
|
@ -155,9 +165,21 @@ class JsonDecode extends SymfonyJsonDecode
|
|||
return $value;
|
||||
}
|
||||
|
||||
if (array_key_exists('@language', $value)) {
|
||||
return $value;
|
||||
}
|
||||
|
||||
$type = $value['@type'] ?? null;
|
||||
if (is_string($type)) {
|
||||
foreach ($this->rulesToKeepTypeInfo as $rule) {
|
||||
if ($this->doesRuleMatch($rule, $type)) {
|
||||
return $value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$newValue = $value['@value'] ?? null;
|
||||
$language = $value['@language'] ?? null;
|
||||
if (is_string($newValue) && $language === null) {
|
||||
if (is_string($newValue)) {
|
||||
return $newValue;
|
||||
}
|
||||
|
||||
|
@ -212,4 +234,13 @@ class JsonDecode extends SymfonyJsonDecode
|
|||
|
||||
return $key;
|
||||
}
|
||||
|
||||
private function doesRuleMatch(array $rule, string $type): bool
|
||||
{
|
||||
if ($rule['type'] === 'beginsWith') {
|
||||
return StringUtility::beginsWith($type, $rule['comparisonValue']);
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -24,6 +24,7 @@ declare(strict_types=1);
|
|||
namespace WerkraumMedia\ThueCat\Domain\Import\Typo3Converter;
|
||||
|
||||
use TYPO3\CMS\Extbase\Persistence\QueryResultInterface;
|
||||
use WerkraumMedia\ThueCat\Domain\Import\Entity\AccessibilitySpecification;
|
||||
use WerkraumMedia\ThueCat\Domain\Import\Entity\Base;
|
||||
use WerkraumMedia\ThueCat\Domain\Import\Entity\MapsToType;
|
||||
use WerkraumMedia\ThueCat\Domain\Import\Entity\MediaObject;
|
||||
|
@ -177,6 +178,8 @@ class GeneralConverter implements Converter
|
|||
'is_accessible_for_free' => method_exists($entity, 'getIsAccessibleForFree') ? $entity->getIsAccessibleForFree() : '',
|
||||
'public_access' => method_exists($entity, 'getPublicAccess') ? $entity->getPublicAccess() : '',
|
||||
'available_languages' => method_exists($entity, 'getAvailableLanguages') ? implode(',', $entity->getAvailableLanguages()) : '',
|
||||
|
||||
'accessibility_specification' => $this->getAccessibilitySpecification($entity, $language),
|
||||
];
|
||||
}
|
||||
|
||||
|
@ -240,6 +243,50 @@ class GeneralConverter implements Converter
|
|||
);
|
||||
}
|
||||
|
||||
private function getAccessibilitySpecification(
|
||||
object $entity,
|
||||
string $language
|
||||
): string {
|
||||
if (
|
||||
method_exists($entity, 'getAccessibilitySpecification') === false
|
||||
|| $entity->getAccessibilitySpecification() === null
|
||||
) {
|
||||
return '{}';
|
||||
}
|
||||
|
||||
$access = $this->resolveForeignReference->resolve(
|
||||
$entity->getAccessibilitySpecification(),
|
||||
$language
|
||||
);
|
||||
if (!$access instanceof AccessibilitySpecification) {
|
||||
return '{}';
|
||||
}
|
||||
|
||||
$cert = $access->getAccessibilityCertification();
|
||||
|
||||
$result = json_encode(array_filter([
|
||||
'accessibilityCertificationStatus' => $cert ? $cert->getAccessibilityCertificationStatus() : '',
|
||||
'certificationAccessibilityDeaf' => $cert ? $cert->getCertificationAccessibilityDeaf() : '',
|
||||
'certificationAccessibilityMental' => $cert ? $cert->getCertificationAccessibilityMental() : '',
|
||||
'certificationAccessibilityPartiallyDeaf' => $cert ? $cert->getCertificationAccessibilityPartiallyDeaf() : '',
|
||||
'certificationAccessibilityPartiallyVisual' => $cert ? $cert->getCertificationAccessibilityPartiallyVisual() : '',
|
||||
'certificationAccessibilityVisual' => $cert ? $cert->getCertificationAccessibilityVisual() : '',
|
||||
'certificationAccessibilityWalking' => $cert ? $cert->getCertificationAccessibilityWalking() : '',
|
||||
'certificationAccessibilityWheelchair' => $cert ? $cert->getCertificationAccessibilityWheelchair() : '',
|
||||
'accessibilitySearchCriteria' => $access->getAccessibilitySearchCriteria(),
|
||||
'shortDescriptionAccessibilityAllGenerations' => $access->getShortDescriptionAccessibilityAllGenerations(),
|
||||
'shortDescriptionAccessibilityAllergic' => $access->getShortDescriptionAccessibilityAllergic(),
|
||||
'shortDescriptionAccessibilityDeaf' => $access->getShortDescriptionAccessibilityDeaf(),
|
||||
'shortDescriptionAccessibilityMental' => $access->getShortDescriptionAccessibilityMental(),
|
||||
'shortDescriptionAccessibilityVisual' => $access->getShortDescriptionAccessibilityVisual(),
|
||||
'shortDescriptionAccessibilityWalking' => $access->getShortDescriptionAccessibilityWalking(),
|
||||
]));
|
||||
if ($result === false || $result === '[]') {
|
||||
return '{}';
|
||||
}
|
||||
return $result;
|
||||
}
|
||||
|
||||
private function getMedia(
|
||||
Base $entity,
|
||||
string $language
|
||||
|
|
125
Classes/Domain/Model/Frontend/AccessiblitySpecification.php
Normal file
125
Classes/Domain/Model/Frontend/AccessiblitySpecification.php
Normal file
|
@ -0,0 +1,125 @@
|
|||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
/*
|
||||
* Copyright (C) 2021 Daniel Siepmann <coding@daniel-siepmann.de>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation; either version 2
|
||||
* of the License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
|
||||
* 02110-1301, USA.
|
||||
*/
|
||||
|
||||
namespace WerkraumMedia\ThueCat\Domain\Model\Frontend;
|
||||
|
||||
use TYPO3\CMS\Core\Type\TypeInterface;
|
||||
|
||||
class AccessiblitySpecification implements TypeInterface
|
||||
{
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
private $serialized;
|
||||
|
||||
/**
|
||||
* @var mixed[]
|
||||
*/
|
||||
private $data;
|
||||
|
||||
public function __construct(string $serialized)
|
||||
{
|
||||
$this->serialized = $serialized;
|
||||
$this->data = json_decode($serialized, true);
|
||||
}
|
||||
|
||||
public function getCertificationStatus(): string
|
||||
{
|
||||
return $this->data['accessibilityCertificationStatus'] ?? '';
|
||||
}
|
||||
|
||||
public function getSearchCriteria(): array
|
||||
{
|
||||
return $this->data['accessibilitySearchCriteria'] ?? [];
|
||||
}
|
||||
|
||||
public function getCertificationDeaf(): string
|
||||
{
|
||||
return $this->data['certificationAccessibilityDeaf'] ?? '';
|
||||
}
|
||||
|
||||
public function getCertificationMental(): string
|
||||
{
|
||||
return $this->data['certificationAccessibilityMental'] ?? '';
|
||||
}
|
||||
|
||||
public function getCertificationPartiallyDeaf(): string
|
||||
{
|
||||
return $this->data['certificationAccessibilityPartiallyDeaf'] ?? '';
|
||||
}
|
||||
|
||||
public function getCertificationPartiallyVisual(): string
|
||||
{
|
||||
return $this->data['certificationAccessibilityPartiallyVisual'] ?? '';
|
||||
}
|
||||
|
||||
public function getCertificationVisual(): string
|
||||
{
|
||||
return $this->data['certificationAccessibilityVisual'] ?? '';
|
||||
}
|
||||
|
||||
public function getCertificationWalking(): string
|
||||
{
|
||||
return $this->data['certificationAccessibilityWalking'] ?? '';
|
||||
}
|
||||
|
||||
public function getCertificationWheelchair(): string
|
||||
{
|
||||
return $this->data['certificationAccessibilityWheelchair'] ?? '';
|
||||
}
|
||||
|
||||
public function getShortDescriptionAllGenerations(): string
|
||||
{
|
||||
return $this->data['shortDescriptionAccessibilityAllGenerations'] ?? '';
|
||||
}
|
||||
|
||||
public function getShortDescriptionAllergic(): string
|
||||
{
|
||||
return $this->data['shortDescriptionAccessibilityAllergic'] ?? '';
|
||||
}
|
||||
|
||||
public function getShortDescriptionDeaf(): string
|
||||
{
|
||||
return $this->data['shortDescriptionAccessibilityDeaf'] ?? '';
|
||||
}
|
||||
|
||||
public function getShortDescriptionMental(): string
|
||||
{
|
||||
return $this->data['shortDescriptionAccessibilityMental'] ?? '';
|
||||
}
|
||||
|
||||
public function getShortDescriptionVisual(): string
|
||||
{
|
||||
return $this->data['shortDescriptionAccessibilityVisual'] ?? '';
|
||||
}
|
||||
|
||||
public function getShortDescriptionWalking(): string
|
||||
{
|
||||
return $this->data['shortDescriptionAccessibilityWalking'] ?? '';
|
||||
}
|
||||
|
||||
public function __toString(): string
|
||||
{
|
||||
return $this->serialized;
|
||||
}
|
||||
}
|
|
@ -68,6 +68,11 @@ abstract class Place extends Base
|
|||
*/
|
||||
protected $distanceToPublicTransport = '';
|
||||
|
||||
/**
|
||||
* @var AccessiblitySpecification|null
|
||||
*/
|
||||
protected $accessibilitySpecification = null;
|
||||
|
||||
public function initializeObject(): void
|
||||
{
|
||||
$this->parkingFacilityNearBy = new ObjectStorage();
|
||||
|
@ -119,4 +124,9 @@ abstract class Place extends Base
|
|||
'unit' => $values[1] ?? '',
|
||||
];
|
||||
}
|
||||
|
||||
public function getAccessibilitySpecification(): ?AccessiblitySpecification
|
||||
{
|
||||
return $this->accessibilitySpecification;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -229,6 +229,13 @@ return (static function (string $extensionKey, string $tableName) {
|
|||
'readOnly' => true,
|
||||
],
|
||||
],
|
||||
'accessibility_specification' => [
|
||||
'label' => $languagePath . '.accessibility_specification',
|
||||
'config' => [
|
||||
'type' => 'text',
|
||||
'readOnly' => true,
|
||||
],
|
||||
],
|
||||
'remote_id' => [
|
||||
'label' => $languagePath . '.remote_id',
|
||||
'l10n_mode' => 'exclude',
|
||||
|
@ -296,7 +303,7 @@ return (static function (string $extensionKey, string $tableName) {
|
|||
],
|
||||
'types' => [
|
||||
'0' => [
|
||||
'showitem' => '--palette--;;language, title, description, slogan, start_of_construction, sanitation, other_service, museum_service, architectural_style, traffic_infrastructure, payment_accepted, digital_offer, photography, pets_allowed, is_accessible_for_free, public_access, available_languages, distance_to_public_transport, opening_hours, offers, address, media, remote_id, --div--;' . $languagePath . '.tab.relations, town, managed_by, parking_facility_near_by',
|
||||
'showitem' => '--palette--;;language, title, description, slogan, start_of_construction, sanitation, other_service, museum_service, architectural_style, traffic_infrastructure, payment_accepted, digital_offer, photography, pets_allowed, is_accessible_for_free, public_access, available_languages, distance_to_public_transport, opening_hours, offers, accessibility_specification, address, media, remote_id, --div--;' . $languagePath . '.tab.relations, town, managed_by, parking_facility_near_by',
|
||||
],
|
||||
],
|
||||
];
|
||||
|
|
|
@ -455,6 +455,219 @@
|
|||
<source>Seconds</source>
|
||||
<target>Sekunden</target>
|
||||
</trans-unit>
|
||||
|
||||
<trans-unit id="content.accessibilitySpecification.certificationStatus.AccessibilityChecked">
|
||||
<source>Accessibility Checked</source>
|
||||
<target>barrierefrei</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.certificationStatus.CertificationAccessibilityNoCertification">
|
||||
<source>Certification Accessibility No Certification</source>
|
||||
<target>nicht zertifiziert</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.certificationStatus.CertificationInformationAboutAccessibility">
|
||||
<source>Certification Information About Accessibility</source>
|
||||
<target>teilweise barrierefrei</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.certification.deaf">
|
||||
<source>for deaf</source>
|
||||
<target>für taube Menschen</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.certification.mental">
|
||||
<source>for mental</source>
|
||||
<target>für Menschen mit kognitiven Beeinträchtigungen</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.certification.partiallyDeaf">
|
||||
<source>for partially deaf</source>
|
||||
<target>für Menschen mit Hörbehinderung</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.certification.partiallyVisual">
|
||||
<source>for partially visual</source>
|
||||
<target>für Menschen mit Sehbehinderung</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.certification.visual">
|
||||
<source>for visual</source>
|
||||
<target>für blinde Menschen</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.certification.walking">
|
||||
<source>for walking</source>
|
||||
<target>für Menschen mit Gehbehinderung</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.certification.wheelchair">
|
||||
<source>for wheelchair</source>
|
||||
<target>für Rollstuhlfahrer</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.certification.None">
|
||||
<source>not certified</source>
|
||||
<target>nicht zertifiziert</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.certification.Full">
|
||||
<source>accessible</source>
|
||||
<target>barrierefrei</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.certification.Info">
|
||||
<source>partially accessible</source>
|
||||
<target>teilweise barrierefrei</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.shortDescriptionAllGenerations">
|
||||
<source>Short Description all Generations</source>
|
||||
<target>Kurzbeschreibung Alle Generationen</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.shortDescriptionAllergic">
|
||||
<source>Short Description all allergic</source>
|
||||
<target>Kurzbeschreibung Allergiker</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.shortDescriptionDeaf">
|
||||
<source>Short Description all deaf</source>
|
||||
<target>Kurzbeschreibung Hörbehinderte / Gehörlos</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.shortDescriptionMental">
|
||||
<source>Short Description all mental</source>
|
||||
<target>Kurzbeschreibung Kognitive Beeinträchtigungen</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.shortDescriptionVisual">
|
||||
<source>Short Description all visual</source>
|
||||
<target>Kurzbeschreibung Sehbehinderung / Blinde</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.shortDescriptionWalking">
|
||||
<source>Short Description all walking</source>
|
||||
<target>Kurzbeschreibung Gehbehindert/Rollstuhl</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.AudioInductionLoop">
|
||||
<source>Audio Induction Loop</source>
|
||||
<target>Induktive Höranlage/ -schleife</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.FlashingSignalCallWaitingDoor">
|
||||
<source>Flashing Signal Call Waiting Door</source>
|
||||
<target>Blinksignal bei Anklopfen an die Zimmertür</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.SpecialOffersDeafPeople">
|
||||
<source>Special Offers Deaf People</source>
|
||||
<target>Spezielle Angebote für gehörlose Menschen</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.SpecialOffersHearingImpairment">
|
||||
<source>Special Offers Hearing Impairment</source>
|
||||
<target>Spezielle Angbote für Menschen mit Hörbehinderung</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.VisualConfirmationDistressCallElevator">
|
||||
<source>Visual Confirmation Distress Call Elevator</source>
|
||||
<target>Optische Bestätigung des Notrufs im Aufzug</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.ColoredOrPictorialGuidanceSystem">
|
||||
<source>Colored Or Pictorial Guidance System</source>
|
||||
<target>Farbliches oder bildhaftes Leitsystem</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.InformationInEasyLanguage">
|
||||
<source>Information In Easy Language</source>
|
||||
<target>Informationen in leichter Sprache (Führung, Begleitheft o.ä.)</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.InformationWithPictogramsOrPictures">
|
||||
<source>Information With Pictograms Or Pictures</source>
|
||||
<target>Informationen mit Piktogrammen oder Bildern</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.AssistanceDogsWelcome">
|
||||
<source>Assistance Dogs Welcome</source>
|
||||
<target>Assistenzhunde willkommen</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.GuidanceSystemWithFloorIndicators">
|
||||
<source>Guidance System With Floor Indicators</source>
|
||||
<target>Durchgehendes Leitsystem mit Bodenindikatoren</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.InformationBrailleOrPrismaticFont">
|
||||
<source>Information Braille Or Prismatic Font</source>
|
||||
<target>Informationen in Braille- oder Prismenschrift</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.OffersInPictoralLanguage">
|
||||
<source>Offers In Pictoral Language</source>
|
||||
<target>Angebote in bildhafter Sprache (Führung, Audioguide o.ä.)</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.SpecialOffersBlindPeople">
|
||||
<source>Special Offers Blind People</source>
|
||||
<target>Spezielle Angebote für blinde Menschen</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.SpecialOffersVisualImpairment">
|
||||
<source>Special Offers Visual Impairment</source>
|
||||
<target>Spezielle Angbote für Menschen mit Sehbehinderung</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.TactileOffers">
|
||||
<source>Tactile Offers</source>
|
||||
<target>Taktile Angebote (Tastmodell, Lageplan o.ä.)</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.VisuallyContrastingStepEdges">
|
||||
<source>Visually ContrastingStep Edges</source>
|
||||
<target>Visuell kontrastierende Stufenkanten</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.AllRoomsStepFreeAccess">
|
||||
<source>All Rooms Step Free Access</source>
|
||||
<target>Alle nutzbaren Räume und Einrichtungen stufenlos bzw. über Aufzug erreichbar</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.EightyCMWidthPassageWays">
|
||||
<source>Eighty CM Width Passage Ways</source>
|
||||
<target>80 cm Mindestbreite aller Durchgänge / Türen</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.EntryAidSwimmingPool">
|
||||
<source>Entry Aid Swimming Pool</source>
|
||||
<target>Einstiegshilfe Schwimmbecken</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.GrabRailInShower">
|
||||
<source>Grab Rail In Shower</source>
|
||||
<target>Haltegriff in der Dusche</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.HandrailsOnBothSidesOfAllStaircases">
|
||||
<source>Handrails On Both Sides Of All Staircases</source>
|
||||
<target>Beidseitige Handläufe an allen Treppen</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.HingedGrabRailToilet">
|
||||
<source>Hinged Grab Rail Toilet</source>
|
||||
<target>Klappbarer Haltegriff am WC</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.LateralAccessibleToilet">
|
||||
<source>Lateral Accessible Toilet</source>
|
||||
<target>WC seitlich anfahrbar</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.MinumumManoeuvringSpaceShower">
|
||||
<source>Minumum Manoeuvring Space Shower</source>
|
||||
<target>Bewegungsfläche der Dusche min. 1m x 1m</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.NinetyCMWidthPassageWays">
|
||||
<source>Ninety CM Width Passage Ways</source>
|
||||
<target>90 cm Mindestbreite aller Durchgänge / Türen</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.NursingBed">
|
||||
<source>Nursing Bed</source>
|
||||
<target>Pflegebett</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.ParkingPeopleWithDisabilities">
|
||||
<source>Parking People With Disabilities</source>
|
||||
<target>Parkplatz für Menschen mit Behinderung</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.SeventyCMWidthPassageWays">
|
||||
<source>Seventy CM Width Passage Ways</source>
|
||||
<target>70 cm Mindestbreite aller Durchgänge / Türen</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.ShowerSeat">
|
||||
<source>Shower Seat</source>
|
||||
<target>Duschstuhl oder sitz</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.SpecialOffersWalkingImpairment">
|
||||
<source>Special Offers Walking Impairment</source>
|
||||
<target>Spezielle Angbote für Menschen mit Gehbehinderung</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.SpecialOffersWheelchairUsers">
|
||||
<source>Special Offers Wheelchair Users</source>
|
||||
<target>Spezielle Angebote für Rollstuhlfahrer</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.StepFreeAccess">
|
||||
<source>Step Free Access</source>
|
||||
<target>Stufenloser Zugang zum Gebäude/ Objekt/ Gelände</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.StepFreeShower">
|
||||
<source>Step Free Shower</source>
|
||||
<target>Stufenlose Dusche</target>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.ToiletsPeopleWithDisabilities">
|
||||
<source>Toilets People With Disabilities</source>
|
||||
<target>WC für Menschen mit Behinderung</target>
|
||||
</trans-unit>
|
||||
</body>
|
||||
</file>
|
||||
</xliff>
|
||||
|
|
|
@ -431,6 +431,166 @@
|
|||
<trans-unit id="content.unit.SEC">
|
||||
<source>Seconds</source>
|
||||
</trans-unit>
|
||||
|
||||
<trans-unit id="content.accessibilitySpecification.certificationStatus.AccessibilityChecked">
|
||||
<source>Accessibility Checked</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.certificationStatus.CertificationAccessibilityNoCertification">
|
||||
<source>Certification Accessibility No Certification</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.certificationStatus.CertificationInformationAboutAccessibility">
|
||||
<source>Certification Information About Accessibility</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.certification.deaf">
|
||||
<source>for deaf</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.certification.mental">
|
||||
<source>for mental</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.certification.partiallyDeaf">
|
||||
<source>for partially deaf</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.certification.partiallyVisual">
|
||||
<source>for partially visual</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.certification.visual">
|
||||
<source>for visual</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.certification.walking">
|
||||
<source>for walking</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.certification.wheelchair">
|
||||
<source>for wheelchair</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.certification.None">
|
||||
<source>not certified</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.certification.Full">
|
||||
<source>accessible</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.certification.Info">
|
||||
<source>partially accessible</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.shortDescriptionAllGenerations">
|
||||
<source>Short Description all Generations</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.shortDescriptionAllergic">
|
||||
<source>Short Description all allergic</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.shortDescriptionDeaf">
|
||||
<source>Short Description all deaf</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.shortDescriptionMental">
|
||||
<source>Short Description all mental</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.shortDescriptionVisual">
|
||||
<source>Short Description all visual</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.shortDescriptionWalking">
|
||||
<source>Short Description all walking</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.AudioInductionLoop">
|
||||
<source>Audio Induction Loop</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.FlashingSignalCallWaitingDoor">
|
||||
<source>Flashing Signal Call Waiting Door</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.SpecialOffersDeafPeople">
|
||||
<source>Special Offers Deaf People</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.SpecialOffersHearingImpairment">
|
||||
<source>Special Offers Hearing Impairment</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.VisualConfirmationDistressCallElevator">
|
||||
<source>Visual Confirmation Distress Call Elevator</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.ColoredOrPictorialGuidanceSystem">
|
||||
<source>Colored Or Pictorial Guidance System</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.InformationInEasyLanguage">
|
||||
<source>Information In Easy Language</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.InformationWithPictogramsOrPictures">
|
||||
<source>Information With Pictograms Or Pictures</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.AssistanceDogsWelcome">
|
||||
<source>Assistance Dogs Welcome</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.GuidanceSystemWithFloorIndicators">
|
||||
<source>Guidance System With Floor Indicators</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.InformationBrailleOrPrismaticFont">
|
||||
<source>Information Braille Or Prismatic Font</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.OffersInPictoralLanguage">
|
||||
<source>Offers In Pictoral Language</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.SpecialOffersBlindPeople">
|
||||
<source>Special Offers Blind People</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.SpecialOffersVisualImpairment">
|
||||
<source>Special Offers Visual Impairment</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.TactileOffers">
|
||||
<source>Tactile Offers</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.VisuallyContrastingStepEdges">
|
||||
<source>Visually ContrastingStep Edges</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.AllRoomsStepFreeAccess">
|
||||
<source>All Rooms Step Free Access</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.EightyCMWidthPassageWays">
|
||||
<source>Eighty CM Width Passage Ways</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.EntryAidSwimmingPool">
|
||||
<source>Entry Aid Swimming Pool</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.GrabRailInShower">
|
||||
<source>Grab Rail In Shower</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.HandrailsOnBothSidesOfAllStaircases">
|
||||
<source>Handrails On Both Sides Of All Staircases</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.HingedGrabRailToilet">
|
||||
<source>Hinged Grab Rail Toilet</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.LateralAccessibleToilet">
|
||||
<source>Lateral Accessible Toilet</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.MinumumManoeuvringSpaceShower">
|
||||
<source>Minumum Manoeuvring Space Shower</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.NinetyCMWidthPassageWays">
|
||||
<source>Ninety CM Width Passage Ways</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.NursingBed">
|
||||
<source>Nursing Bed</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.ParkingPeopleWithDisabilities">
|
||||
<source>Parking People With Disabilities</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.SeventyCMWidthPassageWays">
|
||||
<source>Seventy CM Width Passage Ways</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.ShowerSeat">
|
||||
<source>Shower Seat</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.SpecialOffersWalkingImpairment">
|
||||
<source>Special Offers Walking Impairment</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.SpecialOffersWheelchairUsers">
|
||||
<source>Special Offers Wheelchair Users</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.StepFreeAccess">
|
||||
<source>Step Free Access</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.StepFreeShower">
|
||||
<source>Step Free Shower</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="content.accessibilitySpecification.searchCriteria.criteria.ToiletsPeopleWithDisabilities">
|
||||
<source>Toilets People With Disabilities</source>
|
||||
</trans-unit>
|
||||
</body>
|
||||
</file>
|
||||
</xliff>
|
||||
|
|
|
@ -150,6 +150,9 @@
|
|||
<trans-unit id="tx_thuecat_tourist_attraction.offers" xml:space="preserve">
|
||||
<source>Offers</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="tx_thuecat_tourist_attraction.accessibility_specification" xml:space="preserve">
|
||||
<source>Accessibility Specification</source>
|
||||
</trans-unit>
|
||||
<trans-unit id="tx_thuecat_tourist_attraction.town" xml:space="preserve">
|
||||
<source>Town</source>
|
||||
</trans-unit>
|
||||
|
|
|
@ -93,6 +93,10 @@
|
|||
{f:render(section: 'Address', arguments: {address: parkingFacility.address})}
|
||||
</f:for>
|
||||
</f:if>
|
||||
|
||||
<f:if condition="{entity.accessibilitySpecification}">
|
||||
{f:render(section: 'AccessiblitySpecification', arguments: {specification: entity.accessibilitySpecification})}
|
||||
</f:if>
|
||||
</f:for>
|
||||
|
||||
<f:section name="Address">
|
||||
|
@ -104,4 +108,65 @@
|
|||
{address.fax}
|
||||
</p>
|
||||
</f:section>
|
||||
|
||||
<f:section name="AccessiblitySpecification">
|
||||
{f:translate(id: 'content.accessibilitySpecification.certificationStatus.{specification.certificationStatus}', default: specification.certificationStatus, extensionName: 'Thuecat')}
|
||||
|
||||
<f:if condition="{specification.certificationDeaf}">
|
||||
{f:translate(id: 'content.accessibilitySpecification.certification.{specification.certificationDeaf}', default: specification.certificationDeaf, extensionName: 'Thuecat')} {f:translate(id: 'content.accessibilitySpecification.certification.deaf', extensionName: 'Thuecat')}
|
||||
</f:if>
|
||||
<f:if condition="{specification.certificationMental}">
|
||||
{f:translate(id: 'content.accessibilitySpecification.certification.{specification.certificationMental}', default: specification.certificationMental, extensionName: 'Thuecat')} {f:translate(id: 'content.accessibilitySpecification.certification.mental', extensionName: 'Thuecat')}
|
||||
</f:if>
|
||||
<f:if condition="{specification.certificationPartiallyDeaf}">
|
||||
{f:translate(id: 'content.accessibilitySpecification.certification.{specification.certificationPartiallyDeaf}', default: specification.certificationPartiallyDeaf, extensionName: 'Thuecat')} {f:translate(id: 'content.accessibilitySpecification.certification.partiallyDeaf', extensionName: 'Thuecat')}
|
||||
</f:if>
|
||||
<f:if condition="{specification.certificationPartiallyVisual}">
|
||||
{f:translate(id: 'content.accessibilitySpecification.certification.{specification.certificationPartiallyVisual}', default: specification.certificationPartiallyVisual, extensionName: 'Thuecat')} {f:translate(id: 'content.accessibilitySpecification.certification.partiallyVisual', extensionName: 'Thuecat')}
|
||||
</f:if>
|
||||
<f:if condition="{specification.certificationVisual}">
|
||||
{f:translate(id: 'content.accessibilitySpecification.certification.{specification.certificationVisual}', default: specification.certificationVisual, extensionName: 'Thuecat')} {f:translate(id: 'content.accessibilitySpecification.certification.visual', extensionName: 'Thuecat')}
|
||||
</f:if>
|
||||
<f:if condition="{specification.certificationWalking}">
|
||||
{f:translate(id: 'content.accessibilitySpecification.certification.{specification.certificationWalking}', default: specification.certificationWalking, extensionName: 'Thuecat')} {f:translate(id: 'content.accessibilitySpecification.certification.walking', extensionName: 'Thuecat')}
|
||||
</f:if>
|
||||
<f:if condition="{specification.certificationWheelchair}">
|
||||
{f:translate(id: 'content.accessibilitySpecification.certification.{specification.certificationWheelchair}', default: specification.certificationWheelchair, extensionName: 'Thuecat')} {f:translate(id: 'content.accessibilitySpecification.certification.wheelchair', extensionName: 'Thuecat')}
|
||||
</f:if>
|
||||
|
||||
<f:if condition="{specification.shortDescriptionAllGenerations}">
|
||||
{f:translate(id: 'content.accessibilitySpecification.shortDescriptionAllGenerations', extensionName: 'Thuecat')}
|
||||
<p>{specification.shortDescriptionAllGenerations -> f:format.nl2br()}</p>
|
||||
</f:if>
|
||||
<f:if condition="{specification.shortDescriptionAllergic}">
|
||||
{f:translate(id: 'content.accessibilitySpecification.shortDescriptionAllergic', extensionName: 'Thuecat')}
|
||||
<p>{specification.shortDescriptionAllergic -> f:format.nl2br()}</p>
|
||||
</f:if>
|
||||
<f:if condition="{specification.shortDescriptionDeaf}">
|
||||
{f:translate(id: 'content.accessibilitySpecification.shortDescriptionDeaf', extensionName: 'Thuecat')}
|
||||
<p>{specification.shortDescriptionDeaf -> f:format.nl2br()}</p>
|
||||
</f:if>
|
||||
<f:if condition="{specification.shortDescriptionMental}">
|
||||
{f:translate(id: 'content.accessibilitySpecification.shortDescriptionMental', extensionName: 'Thuecat')}
|
||||
<p>{specification.shortDescriptionMental -> f:format.nl2br()}</p>
|
||||
</f:if>
|
||||
<f:if condition="{specification.shortDescriptionVisual}">
|
||||
{f:translate(id: 'content.accessibilitySpecification.shortDescriptionVisual', extensionName: 'Thuecat')}
|
||||
<p>{specification.shortDescriptionVisual -> f:format.nl2br()}</p>
|
||||
</f:if>
|
||||
<f:if condition="{specification.shortDescriptionWalking}">
|
||||
{f:translate(id: 'content.accessibilitySpecification.shortDescriptionWalking', extensionName: 'Thuecat')}
|
||||
<p>{specification.shortDescriptionWalking -> f:format.nl2br()}</p>
|
||||
</f:if>
|
||||
|
||||
<f:if condition="{specification.searchCriteria}">
|
||||
<ul>
|
||||
<f:for each="{specification.searchCriteria}" key="id" as="criterias">
|
||||
<f:for each="{criterias}" as="criteria">
|
||||
<li>{f:translate(id: 'content.accessibilitySpecification.searchCriteria.criteria.{criteria}', default: criteria, extensionName: 'Thuecat')}</li>
|
||||
</f:for>
|
||||
</f:for>
|
||||
</ul>
|
||||
</f:if>
|
||||
</f:section>
|
||||
</html>
|
||||
|
|
|
@ -24,6 +24,7 @@
|
|||
<available_languages>German,English,French</available_languages>
|
||||
<distance_to_public_transport>250:MTR</distance_to_public_transport>
|
||||
<parking_facility_near_by>1,2</parking_facility_near_by>
|
||||
<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>
|
||||
</tx_thuecat_tourist_attraction>
|
||||
<tx_thuecat_town>
|
||||
<uid>1</uid>
|
||||
|
|
File diff suppressed because one or more lines are too long
|
@ -0,0 +1,19 @@
|
|||
HTTP/1.1 200 OK
|
||||
Date: Wed, 17 Feb 2021 08:03:50 GMT
|
||||
Content-Type: application/ld+json; charset=utf-8
|
||||
Content-Length: 7756
|
||||
Connection: keep-alive
|
||||
Set-Cookie: ahSession=3df5d27f7b64e4de290f4f81b2a6b540621a3c83;path=/;expires=Sat, 20 Mar 2021 08:03:50 GMT;httpOnly=true;
|
||||
Access-Control-Allow-Methods: HEAD, GET, POST, DELETE, OPTIONS
|
||||
Access-Control-Allow-Headers: Authorization, Content-Type
|
||||
Strict-Transport-Security: max-age=15724800; includeSubDomains
|
||||
Access-Control-Allow-Credentials: true
|
||||
X-Frame-Options: deny
|
||||
X-XSS-Protection: 1; mode=block
|
||||
X-Content-Type-Options: nosniff
|
||||
Referrer-Policy: same-origin
|
||||
Feature-Policy: microphone 'none'; camera 'none'; payment 'none'
|
||||
Content-Security-Policy: default-src 'self'; script-src 'self' 'sha256-xfTbtWk8kVI65iLJs8LB3lWf2g0g10DS71pDdoutFHc='; style-src 'self' 'unsafe-inline' https://stackpath.bootstrapcdn.com; img-src 'self' data: blob: *
|
||||
Access-Control-Allow-Origin: https://cdb.thuecat.org
|
||||
|
||||
{"@context":{"schema":"http://schema.org/","dbo":"http://dbpedia.org/ontology/","dsv":"http://ontologies.sti-innsbruck.at/dsv/","foaf":"http://xmlns.com/foaf/0.1/","owl":"http://www.w3.org/2002/07/owl#","rdf":"http://www.w3.org/1999/02/22-rdf-syntax-ns#","rdfs":"http://www.w3.org/2000/01/rdf-schema#","sh":"http://www.w3.org/ns/shacl#","xsd":"http://www.w3.org/2001/XMLSchema#","ttgds":"https://thuecat.org/ontology/ttgds/1.0/","cdb":"https://thuecat.org/ontology/cdb/1.0/","dachkg":"https://thuecat.org/ontology/dachkg/1.0/","thuecat":"https://thuecat.org/ontology/thuecat/1.0/","epapp":"https://thuecat.org/ontology/epapp/1.0/"},"@graph":[{"@id":"https://thuecat.org/resources/e_23bec7f80c864c358da033dd75328f27-rfa","@type":["schema:Intangible","schema:Thing","thuecat:AccessibilitySpecification","ttgds:AccessibilitySpecification"],"schema:name":[{"@language":"de","@value":"Alte Synagoge Erfurt"},{"@language":"en","@value":"Old synagogue Erfurt"}],"thuecat:accessibilityCertification":{"@id":"genid-5215e8f6feb440cda65b5b5735240c68-b0","@type":["schema:Intangible","schema:Thing","thuecat:AccessibilityCertification"],"schema:validFrom":{"@type":"xsd:string","@value":"2019-04-01"},"schema:validThrough":{"@type":"xsd:string","@value":"2022-03-31"},"thuecat:accessibilityCertificationStatus":{"@type":"thuecat:AccessibilityCertificationStatus","@value":"thuecat:AccessibilityChecked"},"thuecat:certificationAccessibilityDeaf":{"@type":"thuecat:CertificationLevel","@value":"thuecat:None"},"thuecat:certificationAccessibilityMental":{"@type":"thuecat:CertificationLevel","@value":"thuecat:None"},"thuecat:certificationAccessibilityPartiallyDeaf":{"@type":"thuecat:CertificationLevel","@value":"thuecat:None"},"thuecat:certificationAccessibilityPartiallyVisual":{"@type":"thuecat:CertificationLevel","@value":"thuecat:Info"},"thuecat:certificationAccessibilityVisual":{"@type":"thuecat:CertificationLevel","@value":"thuecat:None"},"thuecat:certificationAccessibilityWalking":{"@type":"thuecat:CertificationLevel","@value":"thuecat:Info"},"thuecat:certificationAccessibilityWheelchair":{"@type":"thuecat:CertificationLevel","@value":"thuecat:Info"}},"thuecat:accessibilitySearchCriteria":[{"@type":"thuecat:facilityAccessibilityWalking","@value":"thuecat:AllRoomsStepFreeAccess"},{"@type":"thuecat:facilityAccessibilityVisual","@value":"thuecat:AssistanceDogsWelcome"},{"@type":"thuecat:facilityAccessibilityWalking","@value":"thuecat:HingedGrabRailToilet"},{"@type":"thuecat:facilityAccessibilityWalking","@value":"thuecat:LateralAccessibleToilet"},{"@type":"thuecat:facilityAccessibilityWalking","@value":"thuecat:StepFreeAccess"},{"@type":"thuecat:facilityAccessibilityWalking","@value":"thuecat:ToiletsPeopleWithDisabilities"},{"@type":"thuecat:facilityAccessibilityVisual","@value":"thuecat:VisuallyContrastingStepEdges"},{"@type":"thuecat:facilityAccessibilityDeaf","@value":"thuecat:AudioInductionLoop"},{"@type":"thuecat:facilityAccessibilityMental","@value":"thuecat:InformationWithPictogramsOrPictures"},{"@type":"thuecat:facilityAccessibilityWalking","@value":"thuecat:NinetyCMWidthPassageWays"},{"@type":"thuecat:facilityAccessibilityVisual","@value":"thuecat:OffersInPictoralLanguage"},{"@type":"thuecat:facilityAccessibilityVisual","@value":"thuecat:SpecialOffersBlindPeople"},{"@type":"thuecat:facilityAccessibilityDeaf","@value":"thuecat:SpecialOffersHearingImpairment"},{"@type":"thuecat:facilityAccessibilityVisual","@value":"thuecat:SpecialOffersVisualImpairment"},{"@type":"thuecat:facilityAccessibilityWalking","@value":"thuecat:SpecialOffersWalkingImpairment"},{"@type":"thuecat:facilityAccessibilityWalking","@value":"thuecat:SpecialOffersWheelchairUsers"},{"@type":"thuecat:facilityAccessibilityVisual","@value":"thuecat:TactileOffers"}],"thuecat:shortDescriptionAccessibilityDeaf":[{"@language":"de","@value":"Deutsche Beschreibung von shortDescriptionAccessibilityDeaf"},{"@language":"en","@value":"English description of shortDescriptionAccessibilityDeaf"}],"thuecat:shortDescriptionAccessibilityMental":[{"@language":"de","@value":"Deutsche Beschreibung von shortDescriptionAccessibilityMental"},{"@language":"en","@value":"English description of shortDescriptionAccessibilityMental"}],"thuecat:shortDescriptionAccessibilityVisual":[{"@language":"en","@value":"English description of shortDescriptionAccessibilityVisual"},{"@language":"de","@value":"Deutsche Beschreibung von shortDescriptionAccessibilityVisual"}],"thuecat:shortDescriptionAccessibilityWalking":[{"@language":"en","@value":"English description of shortDescriptionAccessibilityWalking"},{"@language":"de","@value":"Deutsche Beschreibung von shortDescriptionAccessibilityWalking"}]}]}
|
File diff suppressed because one or more lines are too long
|
@ -180,7 +180,6 @@ class FrontendTest extends FunctionalTestCase
|
|||
self::assertStringNotContainsString('nicht öffentlich zugänglich', (string)$result->getBody());
|
||||
self::assertStringNotContainsString('öffentlich zugänglich', (string)$result->getBody());
|
||||
|
||||
self::assertStringNotContainsString('Deutsch', (string)$result->getBody());
|
||||
self::assertStringNotContainsString('Englisch', (string)$result->getBody());
|
||||
self::assertStringNotContainsString('Französisch', (string)$result->getBody());
|
||||
|
||||
|
@ -195,6 +194,63 @@ class FrontendTest extends FunctionalTestCase
|
|||
self::assertStringContainsString('99084 Erfurt', (string)$result->getBody());
|
||||
self::assertStringContainsString('servicecenter@q-park.de', (string)$result->getBody());
|
||||
self::assertStringContainsString('+49 218 18190290', (string)$result->getBody());
|
||||
|
||||
self::assertStringContainsString('barrierefrei', (string)$result->getBody());
|
||||
self::assertStringContainsString('barrierefrei für taube Menschen', (string)$result->getBody());
|
||||
self::assertStringContainsString('nicht zertifiziert für Menschen mit kognitiven Beeinträchtigungen', (string)$result->getBody());
|
||||
self::assertStringContainsString('nicht zertifiziert für Menschen mit Hörbehinderung', (string)$result->getBody());
|
||||
self::assertStringContainsString('teilweise barrierefrei für Menschen mit Sehbehinderung', (string)$result->getBody());
|
||||
self::assertStringContainsString('nicht zertifiziert für blinde Menschen', (string)$result->getBody());
|
||||
self::assertStringContainsString('teilweise barrierefrei für Menschen mit Gehbehinderung', (string)$result->getBody());
|
||||
self::assertStringContainsString('teilweise barrierefrei für Rollstuhlfahrer', (string)$result->getBody());
|
||||
|
||||
self::assertStringContainsString('Kurzbeschreibung Alle Generationen', (string)$result->getBody());
|
||||
self::assertStringContainsString('Deutsche Beschreibung von shortDescriptionAccessibilityAllGenerations', (string)$result->getBody());
|
||||
self::assertStringContainsString('Kurzbeschreibung Allergiker', (string)$result->getBody());
|
||||
self::assertStringContainsString('Deutsche Beschreibung von shortDescriptionAccessibilityAllergic', (string)$result->getBody());
|
||||
self::assertStringContainsString('Kurzbeschreibung Hörbehinderte / Gehörlos', (string)$result->getBody());
|
||||
self::assertStringContainsString('Deutsche Beschreibung von shortDescriptionAccessibilityDeaf', (string)$result->getBody());
|
||||
self::assertStringContainsString('Kurzbeschreibung Kognitive Beeinträchtigungen', (string)$result->getBody());
|
||||
self::assertStringContainsString('Deutsche Beschreibung von shortDescriptionAccessibilityMental', (string)$result->getBody());
|
||||
self::assertStringContainsString('Kurzbeschreibung Sehbehinderung / Blinde', (string)$result->getBody());
|
||||
self::assertStringContainsString('Deutsche Beschreibung von shortDescriptionAccessibilityVisual', (string)$result->getBody());
|
||||
self::assertStringContainsString('Kurzbeschreibung Gehbehindert/Rollstuhl', (string)$result->getBody());
|
||||
self::assertStringContainsString('Deutsche Beschreibung von shortDescriptionAccessibilityWalking', (string)$result->getBody());
|
||||
|
||||
self::assertStringContainsString('Induktive Höranlage/ -schleife', (string)$result->getBody());
|
||||
self::assertStringContainsString('Blinksignal bei Anklopfen an die Zimmertür', (string)$result->getBody());
|
||||
self::assertStringContainsString('Spezielle Angebote für gehörlose Menschen', (string)$result->getBody());
|
||||
self::assertStringContainsString('Spezielle Angbote für Menschen mit Hörbehinderung', (string)$result->getBody());
|
||||
self::assertStringContainsString('Optische Bestätigung des Notrufs im Aufzug', (string)$result->getBody());
|
||||
self::assertStringContainsString('Farbliches oder bildhaftes Leitsystem', (string)$result->getBody());
|
||||
self::assertStringContainsString('Informationen in leichter Sprache (Führung, Begleitheft o.ä.)', (string)$result->getBody());
|
||||
self::assertStringContainsString('Informationen mit Piktogrammen oder Bildern', (string)$result->getBody());
|
||||
self::assertStringContainsString('Assistenzhunde willkommen', (string)$result->getBody());
|
||||
self::assertStringContainsString('Durchgehendes Leitsystem mit Bodenindikatoren', (string)$result->getBody());
|
||||
self::assertStringContainsString('Informationen in Braille- oder Prismenschrift', (string)$result->getBody());
|
||||
self::assertStringContainsString('Angebote in bildhafter Sprache (Führung, Audioguide o.ä.)', (string)$result->getBody());
|
||||
self::assertStringContainsString('Spezielle Angebote für blinde Menschen', (string)$result->getBody());
|
||||
self::assertStringContainsString('Spezielle Angbote für Menschen mit Sehbehinderung', (string)$result->getBody());
|
||||
self::assertStringContainsString('Taktile Angebote (Tastmodell, Lageplan o.ä.)', (string)$result->getBody());
|
||||
self::assertStringContainsString('Visuell kontrastierende Stufenkanten', (string)$result->getBody());
|
||||
self::assertStringContainsString('Alle nutzbaren Räume und Einrichtungen stufenlos bzw. über Aufzug erreichbar', (string)$result->getBody());
|
||||
self::assertStringContainsString('80 cm Mindestbreite aller Durchgänge / Türen', (string)$result->getBody());
|
||||
self::assertStringContainsString('Einstiegshilfe Schwimmbecken', (string)$result->getBody());
|
||||
self::assertStringContainsString('Haltegriff in der Dusche', (string)$result->getBody());
|
||||
self::assertStringContainsString('Beidseitige Handläufe an allen Treppen', (string)$result->getBody());
|
||||
self::assertStringContainsString('Klappbarer Haltegriff am WC', (string)$result->getBody());
|
||||
self::assertStringContainsString('WC seitlich anfahrbar', (string)$result->getBody());
|
||||
self::assertStringContainsString('Bewegungsfläche der Dusche min. 1m x 1m', (string)$result->getBody());
|
||||
self::assertStringContainsString('90 cm Mindestbreite aller Durchgänge / Türen', (string)$result->getBody());
|
||||
self::assertStringContainsString('Pflegebett', (string)$result->getBody());
|
||||
self::assertStringContainsString('Parkplatz für Menschen mit Behinderung', (string)$result->getBody());
|
||||
self::assertStringContainsString('70 cm Mindestbreite aller Durchgänge / Türen', (string)$result->getBody());
|
||||
self::assertStringContainsString('Duschstuhl oder sitz', (string)$result->getBody());
|
||||
self::assertStringContainsString('Spezielle Angbote für Menschen mit Gehbehinderung', (string)$result->getBody());
|
||||
self::assertStringContainsString('Spezielle Angebote für Rollstuhlfahrer', (string)$result->getBody());
|
||||
self::assertStringContainsString('Stufenloser Zugang zum Gebäude/ Objekt/ Gelände', (string)$result->getBody());
|
||||
self::assertStringContainsString('Stufenlose Dusche', (string)$result->getBody());
|
||||
self::assertStringContainsString('WC für Menschen mit Behinderung', (string)$result->getBody());
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -156,6 +156,32 @@ class JsonDecodingTest extends TestCase
|
|||
], $result);
|
||||
}
|
||||
|
||||
/**
|
||||
* @test
|
||||
*/
|
||||
public function decodesPropertyWithMultipleLanguagesNotMatchingRequestOne(): void
|
||||
{
|
||||
$subject = new JsonDecode();
|
||||
$result = $subject->decode((string) json_encode([
|
||||
'schema:description' => [
|
||||
0 => [
|
||||
'@language' => 'en',
|
||||
'@value' => 'English plain',
|
||||
],
|
||||
1 => [
|
||||
'@language' => 'de',
|
||||
'@value' => 'Deutsch plain',
|
||||
],
|
||||
],
|
||||
]), 'json', [
|
||||
JsonDecode::ACTIVE_LANGUAGE => 'fr',
|
||||
]);
|
||||
|
||||
self::assertSame([
|
||||
'description' => '',
|
||||
], $result);
|
||||
}
|
||||
|
||||
/**
|
||||
* @test
|
||||
*/
|
||||
|
@ -344,4 +370,44 @@ class JsonDecodingTest extends TestCase
|
|||
],
|
||||
], $result);
|
||||
}
|
||||
|
||||
/**
|
||||
* @test
|
||||
*/
|
||||
public function keepsArrayOfValueAndTypeIfConfigured(): void
|
||||
{
|
||||
$subject = new JsonDecode();
|
||||
$result = $subject->decode((string) json_encode([
|
||||
'thuecat:AccessibilitySearchCriteria' => [
|
||||
0 => [
|
||||
'@type' => 'thuecat:facilityAccessibilityWalking',
|
||||
'@value' => 'thuecat:AllRoomsStepFreeAccess',
|
||||
],
|
||||
1 => [
|
||||
'@type' => 'thuecat:facilityAccessibilityVisual',
|
||||
'@value' => 'thuecat:AssistanceDogsWelcome',
|
||||
],
|
||||
2 => [
|
||||
'@type' => 'something else',
|
||||
'@value' => 'something else',
|
||||
],
|
||||
],
|
||||
]), 'json', [
|
||||
JsonDecode::ACTIVE_LANGUAGE => 'de',
|
||||
]);
|
||||
|
||||
self::assertSame([
|
||||
'AccessibilitySearchCriteria' => [
|
||||
0 => [
|
||||
'type' => 'thuecat:facilityAccessibilityWalking',
|
||||
'value' => 'thuecat:AllRoomsStepFreeAccess',
|
||||
],
|
||||
1 => [
|
||||
'type' => 'thuecat:facilityAccessibilityVisual',
|
||||
'value' => 'thuecat:AssistanceDogsWelcome',
|
||||
],
|
||||
2 => 'something else',
|
||||
],
|
||||
], $result);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -72,6 +72,7 @@ CREATE TABLE tx_thuecat_tourist_attraction (
|
|||
public_access text DEFAULT '' NOT NULL,
|
||||
available_languages text DEFAULT '' NOT NULL,
|
||||
distance_to_public_transport text DEFAULT '' NOT NULL,
|
||||
accessibility_specification text DEFAULT '' NOT NULL,
|
||||
);
|
||||
|
||||
CREATE TABLE tx_thuecat_parking_facility (
|
||||
|
|
Loading…
Reference in a new issue