Streamline CGL (#21)

Use php-cs-fixer as within other extensions.
Use same configuration.
Apply configuration
This commit is contained in:
Daniel Siepmann 2023-06-07 08:56:42 +02:00 committed by GitHub
parent d6d3330bd3
commit d4a11436c6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
53 changed files with 269 additions and 264 deletions

View file

@ -65,21 +65,20 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
needs: needs:
- php-linting - php-linting
- xml-linting
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- name: Install PHP - name: Install PHP
uses: shivammathur/setup-php@v2 uses: shivammathur/setup-php@v2
with: with:
php-version: "8.2" php-version: "8.1"
tools: composer:v2 tools: composer:v2
- name: Install dependencies - name: Install dependencies
run: composer install --prefer-dist --no-progress --no-suggest run: composer install --prefer-dist --no-progress --no-suggest
- name: Coding Guideline - name: Coding Guideline
run: ./vendor/bin/ecs check --no-progress-bar --clear-cache run: ./vendor/bin/php-cs-fixer fix
code-quality: code-quality:
runs-on: ubuntu-latest runs-on: ubuntu-latest

63
.php-cs-fixer.dist.php Normal file
View file

@ -0,0 +1,63 @@
<?php
$finder = (new PhpCsFixer\Finder())
->ignoreVCSIgnored(true)
->in(realpath(__DIR__))
;
return (new \PhpCsFixer\Config())
->setRiskyAllowed(true)
->setRules([
'@DoctrineAnnotation' => true,
'@PSR2' => true,
'array_syntax' => ['syntax' => 'short'],
'blank_line_after_opening_tag' => true,
'braces' => ['allow_single_line_closure' => true],
'cast_spaces' => ['space' => 'none'],
'compact_nullable_typehint' => true,
'concat_space' => ['spacing' => 'one'],
'declare_equal_normalize' => ['space' => 'none'],
'dir_constant' => true,
'function_to_constant' => ['functions' => ['get_called_class', 'get_class', 'get_class_this', 'php_sapi_name', 'phpversion', 'pi']],
'function_typehint_space' => true,
'lowercase_cast' => true,
'method_argument_space' => ['on_multiline' => 'ensure_fully_multiline'],
'modernize_strpos' => true,
'modernize_types_casting' => true,
'native_function_casing' => true,
'new_with_braces' => true,
'no_alias_functions' => true,
'no_blank_lines_after_phpdoc' => true,
'no_empty_phpdoc' => true,
'no_empty_statement' => true,
'no_extra_blank_lines' => true,
'no_leading_import_slash' => true,
'no_leading_namespace_whitespace' => true,
'no_null_property_initialization' => true,
'no_short_bool_cast' => true,
'no_singleline_whitespace_before_semicolons' => true,
'no_superfluous_elseif' => true,
'no_trailing_comma_in_singleline_array' => true,
'no_unneeded_control_parentheses' => true,
'no_unused_imports' => true,
'no_useless_else' => true,
'no_whitespace_in_blank_line' => true,
'ordered_imports' => true,
'php_unit_construct' => ['assertions' => ['assertEquals', 'assertSame', 'assertNotEquals', 'assertNotSame']],
'php_unit_mock_short_will_return' => true,
'php_unit_test_case_static_method_calls' => ['call_type' => 'self'],
'phpdoc_no_access' => true,
'phpdoc_no_package' => true,
'phpdoc_scalar' => true,
'phpdoc_trim' => true,
'phpdoc_types' => true,
'phpdoc_types_order' => ['null_adjustment' => 'always_last', 'sort_algorithm' => 'none'],
'return_type_declaration' => ['space_before' => 'none'],
'single_quote' => true,
'single_line_comment_style' => ['comment_types' => ['hash']],
'single_trait_insert_per_statement' => true,
'trailing_comma_in_multiline' => ['elements' => ['arrays']],
'whitespace_after_comma_in_array' => true,
'yoda_style' => ['equal' => false, 'identical' => false, 'less_and_greater' => false],
])
->setFinder($finder)
;

View file

@ -42,9 +42,9 @@ use Wrm\Events\Events\Controller\DateListVariables;
class PageCacheTimeout implements SingletonInterface class PageCacheTimeout implements SingletonInterface
{ {
/** /**
* @var null|DateTimeImmutable * @var DateTimeImmutable|null
*/ */
private $timeout = null; private $timeout;
/** /**
* @var FrontendInterface * @var FrontendInterface
@ -136,7 +136,7 @@ class PageCacheTimeout implements SingletonInterface
return null; return null;
} }
return ((int) $this->timeout->format('U')) - ((int) $this->getExecution()->format('U')); return ((int)$this->timeout->format('U')) - ((int)$this->getExecution()->format('U'));
} }
private function getExecution(): DateTimeImmutable private function getExecution(): DateTimeImmutable

View file

@ -3,7 +3,6 @@
namespace Wrm\Events\Command; namespace Wrm\Events\Command;
use Symfony\Component\Console\Command\Command; use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Input\InputArgument;
use Symfony\Component\Console\Input\InputInterface; use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface; use Symfony\Component\Console\Output\OutputInterface;
use TYPO3\CMS\Core\Core\Bootstrap; use TYPO3\CMS\Core\Core\Bootstrap;

View file

@ -49,7 +49,7 @@ class ImportDestinationDataViaConfigruationCommand extends Command
$configurationUid = $input->getArgument('configurationUid'); $configurationUid = $input->getArgument('configurationUid');
if (is_numeric($configurationUid)) { if (is_numeric($configurationUid)) {
$configurationUid = (int) $configurationUid; $configurationUid = (int)$configurationUid;
} else { } else {
throw new \Exception('No numeric uid for configuration provided.', 1643267138); throw new \Exception('No numeric uid for configuration provided.', 1643267138);
} }

View file

@ -3,12 +3,9 @@
namespace Wrm\Events\Controller; namespace Wrm\Events\Controller;
use TYPO3\CMS\Core\EventDispatcher\EventDispatcher; use TYPO3\CMS\Core\EventDispatcher\EventDispatcher;
use TYPO3\CMS\Core\Utility\GeneralUtility;
use TYPO3\CMS\Extbase\Annotation as Extbase; use TYPO3\CMS\Extbase\Annotation as Extbase;
use TYPO3\CMS\Extbase\Configuration\ConfigurationManagerInterface;
use TYPO3\CMS\Extbase\Service\ExtensionService; use TYPO3\CMS\Extbase\Service\ExtensionService;
use Wrm\Events\Domain\Model\Date; use Wrm\Events\Domain\Model\Date;
use Wrm\Events\Domain\Model\Dto\DateDemand;
use Wrm\Events\Domain\Model\Dto\DateDemandFactory; use Wrm\Events\Domain\Model\Dto\DateDemandFactory;
use Wrm\Events\Domain\Repository\CategoryRepository; use Wrm\Events\Domain\Repository\CategoryRepository;
use Wrm\Events\Domain\Repository\DateRepository; use Wrm\Events\Domain\Repository\DateRepository;
@ -176,7 +173,7 @@ class DateController extends AbstractController
'parameter' => 't3://page?uid=current', 'parameter' => 't3://page?uid=current',
'additionalParams' => '&' . http_build_query([ 'additionalParams' => '&' . http_build_query([
$namespace => [ $namespace => [
'search' => array_filter($this->request->getArgument('search')) 'search' => array_filter($this->request->getArgument('search')),
], ],
]), ]),
])); ]));

View file

@ -3,7 +3,6 @@
namespace Wrm\Events\Controller; namespace Wrm\Events\Controller;
use TYPO3\CMS\Extbase\Annotation as Extbase; use TYPO3\CMS\Extbase\Annotation as Extbase;
use Wrm\Events\Domain\Model\Dto\EventDemand;
use Wrm\Events\Domain\Model\Dto\EventDemandFactory; use Wrm\Events\Domain\Model\Dto\EventDemandFactory;
use Wrm\Events\Domain\Model\Event; use Wrm\Events\Domain\Model\Event;
use Wrm\Events\Domain\Repository\EventRepository; use Wrm\Events\Domain\Repository\EventRepository;

View file

@ -12,32 +12,32 @@ class Date extends AbstractEntity
/** /**
* @var \DateTime * @var \DateTime
*/ */
protected $start = null; protected $start;
/** /**
* @var \DateTime * @var \DateTime
*/ */
protected $end = null; protected $end;
/** /**
* @var string * @var string
*/ */
protected $canceled = "no"; protected $canceled = 'no';
/** /**
* @var null|Date * @var Date|null
*/ */
protected $postponedDate; protected $postponedDate;
/** /**
* @var null|Date * @var Date|null
*/ */
protected $originalDate; protected $originalDate;
/** /**
* @var \Wrm\Events\Domain\Model\Event * @var \Wrm\Events\Domain\Model\Event
*/ */
protected $event = null; protected $event;
/** /**
* @var string * @var string

View file

@ -67,14 +67,14 @@ class DateDemand
protected $limit = ''; protected $limit = '';
/** /**
* @var null|\DateTimeImmutable * @var \DateTimeImmutable|null
*/ */
protected $startObject = null; protected $startObject;
/** /**
* @var null|\DateTimeImmutable * @var \DateTimeImmutable|null
*/ */
protected $endObject = null; protected $endObject;
/** /**
* Use midnight as "start". * Use midnight as "start".

View file

@ -2,8 +2,6 @@
namespace Wrm\Events\Domain\Model\Dto; namespace Wrm\Events\Domain\Model\Dto;
use Wrm\Events\Domain\Model\Region;
class EventDemand class EventDemand
{ {
/** /**

View file

@ -5,9 +5,7 @@ namespace Wrm\Events\Domain\Model;
use TYPO3\CMS\Extbase\Annotation as Extbase; use TYPO3\CMS\Extbase\Annotation as Extbase;
use TYPO3\CMS\Extbase\Domain\Model\FileReference; use TYPO3\CMS\Extbase\Domain\Model\FileReference;
use TYPO3\CMS\Extbase\DomainObject\AbstractEntity; use TYPO3\CMS\Extbase\DomainObject\AbstractEntity;
use TYPO3\CMS\Extbase\Object\ObjectManager;
use TYPO3\CMS\Extbase\Persistence\ObjectStorage; use TYPO3\CMS\Extbase\Persistence\ObjectStorage;
use Wrm\Events\Domain\Repository\DateRepository;
use Wrm\Events\Service\DataProcessingForModels; use Wrm\Events\Service\DataProcessingForModels;
class Event extends AbstractEntity class Event extends AbstractEntity
@ -93,17 +91,17 @@ class Event extends AbstractEntity
/** /**
* @var Location|null * @var Location|null
*/ */
protected $location = null; protected $location;
/** /**
* @var Organizer|null * @var Organizer|null
*/ */
protected $organizer = null; protected $organizer;
/** /**
* @var Region|null * @var Region|null
*/ */
protected $region = null; protected $region;
/** /**
* @var string * @var string
@ -138,7 +136,7 @@ class Event extends AbstractEntity
/** /**
* @var DataProcessingForModels * @var DataProcessingForModels
*/ */
protected $dataProcessing = null; protected $dataProcessing;
public function __construct() public function __construct()
{ {

View file

@ -146,7 +146,7 @@ class Location extends AbstractEntity
|| $this->district !== '' || $this->district !== ''
|| $this->country !== '' || $this->country !== ''
|| $this->phone !== '' || $this->phone !== ''
; ;
} }
private function generateGlobalId(): string private function generateGlobalId(): string

View file

@ -40,7 +40,7 @@ class Partner extends AbstractEntity
/** /**
* @var ObjectStorage<FileReference> * @var ObjectStorage<FileReference>
*/ */
protected $images = null; protected $images;
public function getTitle(): string public function getTitle(): string
{ {

View file

@ -24,7 +24,6 @@ namespace Wrm\Events\Domain\Repository;
*/ */
use TYPO3\CMS\Core\Database\ConnectionPool; use TYPO3\CMS\Core\Database\ConnectionPool;
use TYPO3\CMS\Core\Database\Query\QueryBuilder;
use TYPO3\CMS\Extbase\Domain\Model\Category; use TYPO3\CMS\Extbase\Domain\Model\Category;
use TYPO3\CMS\Extbase\Persistence\Generic\Mapper\DataMapper; use TYPO3\CMS\Extbase\Persistence\Generic\Mapper\DataMapper;
use TYPO3\CMS\Extbase\Persistence\Repository; use TYPO3\CMS\Extbase\Persistence\Repository;
@ -108,7 +107,7 @@ class CategoryRepository extends Repository
$query->matching($query->logicalAnd([ $query->matching($query->logicalAnd([
$query->equals('parent', $parentCategory), $query->equals('parent', $parentCategory),
$query->equals('title', $title) $query->equals('title', $title),
])); ]));
$query->setLimit(1); $query->setLimit(1);

View file

@ -10,7 +10,6 @@ use TYPO3\CMS\Core\Utility\GeneralUtility;
use TYPO3\CMS\Extbase\Persistence\Generic\Qom\ConstraintInterface; use TYPO3\CMS\Extbase\Persistence\Generic\Qom\ConstraintInterface;
use TYPO3\CMS\Extbase\Persistence\Generic\QueryResult; use TYPO3\CMS\Extbase\Persistence\Generic\QueryResult;
use TYPO3\CMS\Extbase\Persistence\QueryInterface; use TYPO3\CMS\Extbase\Persistence\QueryInterface;
use TYPO3\CMS\Extbase\Persistence\QueryResultInterface;
use TYPO3\CMS\Extbase\Persistence\Repository; use TYPO3\CMS\Extbase\Persistence\Repository;
use UnexpectedValueException; use UnexpectedValueException;
use Wrm\Events\Domain\Model\Dto\DateDemand; use Wrm\Events\Domain\Model\Dto\DateDemand;
@ -98,7 +97,7 @@ class DateRepository extends Repository
$constraints['nowAndFuture'] = $query->logicalOr([ $constraints['nowAndFuture'] = $query->logicalOr([
$query->greaterThanOrEqual('start', $now), $query->greaterThanOrEqual('start', $now),
$query->greaterThanOrEqual('end', $now) $query->greaterThanOrEqual('end', $now),
]); ]);
} elseif ($demand->shouldShowUpcoming()) { } elseif ($demand->shouldShowUpcoming()) {
$now = $this->getNow(); $now = $this->getNow();
@ -107,13 +106,13 @@ class DateRepository extends Repository
$query->greaterThan('start', $now), $query->greaterThan('start', $now),
$query->logicalOr([ $query->logicalOr([
$query->equals('end', 0), $query->equals('end', 0),
$query->greaterThan('end', $now) $query->greaterThan('end', $now),
]) ]),
]); ]);
} }
if ($demand->getLimit() !== '') { if ($demand->getLimit() !== '') {
$query->setLimit((int) $demand->getLimit()); $query->setLimit((int)$demand->getLimit());
} }
$query->matching($query->logicalAnd($constraints)); $query->matching($query->logicalAnd($constraints));

View file

@ -59,7 +59,7 @@ class EventRepository extends Repository
} }
if ($demand->getLimit() !== '') { if ($demand->getLimit() !== '') {
$query->setLimit((int) $demand->getLimit()); $query->setLimit((int)$demand->getLimit());
} }
return $query; return $query;

View file

@ -1,6 +1,5 @@
<?php <?php
namespace Wrm\Events\Events\Controller; namespace Wrm\Events\Events\Controller;
use TYPO3\CMS\Core\Pagination\PaginationInterface; use TYPO3\CMS\Core\Pagination\PaginationInterface;

View file

@ -72,7 +72,7 @@ class AddSpecialProperties
return; return;
} }
$date->_setProperty('originalDate', $this->getOriginalDate((int) $localizedUid)); $date->_setProperty('originalDate', $this->getOriginalDate((int)$localizedUid));
} }
} }

View file

@ -23,7 +23,6 @@ namespace Wrm\Events\Service\Cleanup;
use TYPO3\CMS\Core\Database\Connection; use TYPO3\CMS\Core\Database\Connection;
use TYPO3\CMS\Core\Database\ConnectionPool; use TYPO3\CMS\Core\Database\ConnectionPool;
use TYPO3\CMS\Core\Database\Query\QueryBuilder;
class Database class Database
{ {

View file

@ -23,7 +23,6 @@ namespace Wrm\Events\Service\Cleanup;
use TYPO3\CMS\Core\Database\Connection; use TYPO3\CMS\Core\Database\Connection;
use TYPO3\CMS\Core\Database\ConnectionPool; use TYPO3\CMS\Core\Database\ConnectionPool;
use TYPO3\CMS\Core\Database\Query\QueryBuilder;
use TYPO3\CMS\Core\Resource\StorageRepository; use TYPO3\CMS\Core\Resource\StorageRepository;
class Files class Files
@ -139,8 +138,8 @@ class Files
$uidsToRemove = []; $uidsToRemove = [];
foreach ($filesToDelete as $fileToDelete) { foreach ($filesToDelete as $fileToDelete) {
$this->deleteFromFal((int) $fileToDelete['storage'], (string) $fileToDelete['identifier']); $this->deleteFromFal((int)$fileToDelete['storage'], (string)$fileToDelete['identifier']);
$uidsToRemove[] = (int) $fileToDelete['uid']; $uidsToRemove[] = (int)$fileToDelete['uid'];
} }
$this->deleteFromDb(...$uidsToRemove); $this->deleteFromDb(...$uidsToRemove);

View file

@ -3,28 +3,20 @@
namespace Wrm\Events\Service; namespace Wrm\Events\Service;
use Exception; use Exception;
use TYPO3\CMS\Core\Database\ConnectionPool;
use TYPO3\CMS\Core\DataHandling\DataHandler; use TYPO3\CMS\Core\DataHandling\DataHandler;
use TYPO3\CMS\Core\DataHandling\SlugHelper;
use TYPO3\CMS\Core\Log\Logger; use TYPO3\CMS\Core\Log\Logger;
use TYPO3\CMS\Core\Log\LogManager; use TYPO3\CMS\Core\Log\LogManager;
use TYPO3\CMS\Core\Resource\Exception\FolderDoesNotExistException;
use TYPO3\CMS\Core\Resource\File; use TYPO3\CMS\Core\Resource\File;
use TYPO3\CMS\Core\Resource\Index\MetaDataRepository; use TYPO3\CMS\Core\Resource\Index\MetaDataRepository;
use TYPO3\CMS\Core\Resource\ResourceStorage;
use TYPO3\CMS\Core\Utility\GeneralUtility; use TYPO3\CMS\Core\Utility\GeneralUtility;
use TYPO3\CMS\Extbase\Configuration\ConfigurationManager; use TYPO3\CMS\Extbase\Configuration\ConfigurationManager;
use TYPO3\CMS\Extbase\Configuration\ConfigurationManagerInterface; use TYPO3\CMS\Extbase\Configuration\ConfigurationManagerInterface;
use TYPO3\CMS\Extbase\Object\ObjectManager; use TYPO3\CMS\Extbase\Object\ObjectManager;
use TYPO3\CMS\Extbase\Persistence\Generic\PersistenceManager; use TYPO3\CMS\Extbase\Persistence\Generic\PersistenceManager;
use TYPO3\CMS\Extbase\Persistence\ObjectStorage;
use Wrm\Events\Domain\Model\Category;
use Wrm\Events\Domain\Model\Date;
use Wrm\Events\Domain\Model\Event; use Wrm\Events\Domain\Model\Event;
use Wrm\Events\Domain\Model\Import; use Wrm\Events\Domain\Model\Import;
use Wrm\Events\Domain\Model\Organizer; use Wrm\Events\Domain\Model\Organizer;
use Wrm\Events\Domain\Model\Region; use Wrm\Events\Domain\Model\Region;
use Wrm\Events\Domain\Repository\CategoryRepository;
use Wrm\Events\Domain\Repository\DateRepository; use Wrm\Events\Domain\Repository\DateRepository;
use Wrm\Events\Domain\Repository\EventRepository; use Wrm\Events\Domain\Repository\EventRepository;
use Wrm\Events\Domain\Repository\OrganizerRepository; use Wrm\Events\Domain\Repository\OrganizerRepository;
@ -257,7 +249,7 @@ class DestinationDataImportService
if ($event['timeIntervals'] ?? false) { if ($event['timeIntervals'] ?? false) {
$this->setDates( $this->setDates(
$event['timeIntervals'], $event['timeIntervals'],
(bool) $this->getAttributeValue($event, 'DETAILS_ABGESAGT') (bool)$this->getAttributeValue($event, 'DETAILS_ABGESAGT')
); );
} }
@ -329,7 +321,7 @@ class DestinationDataImportService
private function setOrganizer(array $addresses): void private function setOrganizer(array $addresses): void
{ {
foreach ($addresses as $address) { foreach ($addresses as $address) {
if ($address['rel'] == "organizer") { if ($address['rel'] == 'organizer') {
$tmpOrganizer = $this->organizerRepository->findOneByName($address['name']); $tmpOrganizer = $this->organizerRepository->findOneByName($address['name']);
if ($tmpOrganizer) { if ($tmpOrganizer) {
$this->tmpCurrentEvent->setOrganizer($tmpOrganizer); $this->tmpCurrentEvent->setOrganizer($tmpOrganizer);
@ -357,13 +349,13 @@ class DestinationDataImportService
private function setSocial(array $media): void private function setSocial(array $media): void
{ {
foreach ($media as $link) { foreach ($media as $link) {
if ($link['rel'] == "socialmedia" && $link['value'] == "Facebook") { if ($link['rel'] == 'socialmedia' && $link['value'] == 'Facebook') {
$this->tmpCurrentEvent->setFacebook($link['url']); $this->tmpCurrentEvent->setFacebook($link['url']);
} }
if ($link['rel'] == "socialmedia" && $link['value'] == "YouTube") { if ($link['rel'] == 'socialmedia' && $link['value'] == 'YouTube') {
$this->tmpCurrentEvent->setYouTube($link['url']); $this->tmpCurrentEvent->setYouTube($link['url']);
} }
if ($link['rel'] == "socialmedia" && $link['value'] == "Instagram") { if ($link['rel'] == 'socialmedia' && $link['value'] == 'Instagram') {
$this->tmpCurrentEvent->setInstagram($link['url']); $this->tmpCurrentEvent->setInstagram($link['url']);
} }
} }
@ -422,13 +414,13 @@ class DestinationDataImportService
continue; continue;
} }
if ($text['rel'] == "details" && $text['type'] == "text/plain") { if ($text['rel'] == 'details' && $text['type'] == 'text/plain') {
$this->tmpCurrentEvent->setDetails(str_replace("\n\n", "\n", $text['value'])); $this->tmpCurrentEvent->setDetails(str_replace("\n\n", "\n", $text['value']));
} }
if ($text['rel'] == "teaser" && $text['type'] == "text/plain") { if ($text['rel'] == 'teaser' && $text['type'] == 'text/plain') {
$this->tmpCurrentEvent->setTeaser(str_replace("\n\n", "\n", $text['value'])); $this->tmpCurrentEvent->setTeaser(str_replace("\n\n", "\n", $text['value']));
} }
if ($text['rel'] == "PRICE_INFO" && $text['type'] == "text/plain") { if ($text['rel'] == 'PRICE_INFO' && $text['type'] == 'text/plain') {
$this->tmpCurrentEvent->setPriceInfo(str_replace("\n\n", "\n", $text['value'])); $this->tmpCurrentEvent->setPriceInfo(str_replace("\n\n", "\n", $text['value']));
} }
} }
@ -461,7 +453,7 @@ class DestinationDataImportService
private function setAssets(array $assets): void private function setAssets(array $assets): void
{ {
$this->logger->info("Set assets"); $this->logger->info('Set assets');
$allowedMimeTypes = [ $allowedMimeTypes = [
'image/jpeg', 'image/jpeg',
@ -473,7 +465,7 @@ class DestinationDataImportService
foreach ($assets as $media_object) { foreach ($assets as $media_object) {
if ( if (
$media_object['rel'] == "default" $media_object['rel'] == 'default'
&& in_array($media_object['type'], $allowedMimeTypes) && in_array($media_object['type'], $allowedMimeTypes)
) { ) {
$fileUrl = urldecode($media_object['url']); $fileUrl = urldecode($media_object['url']);
@ -523,7 +515,7 @@ class DestinationDataImportService
[ [
'title' => $this->getShortenedString($media_object['value'], 100), 'title' => $this->getShortenedString($media_object['value'], 100),
'description' => $media_object['description'] ?? '', 'description' => $media_object['description'] ?? '',
'alternative' => 'DD Import' 'alternative' => 'DD Import',
] ]
); );
$this->createFileRelations( $this->createFileRelations(
@ -576,23 +568,23 @@ class DestinationDataImportService
): bool { ): bool {
$newId = 'NEW1234'; $newId = 'NEW1234';
$data = array(); $data = [];
$data['sys_file_reference'][$newId] = array( $data['sys_file_reference'][$newId] = [
'table_local' => 'sys_file', 'table_local' => 'sys_file',
'uid_local' => $uid_local, 'uid_local' => $uid_local,
'tablenames' => $tablenames, 'tablenames' => $tablenames,
'uid_foreign' => $uid_foreign, 'uid_foreign' => $uid_foreign,
'fieldname' => $fieldname, 'fieldname' => $fieldname,
'pid' => $storagePid
);
$data[$tablenames][$uid_foreign] = array(
'pid' => $storagePid, 'pid' => $storagePid,
$fieldname => $newId ];
);
$data[$tablenames][$uid_foreign] = [
'pid' => $storagePid,
$fieldname => $newId,
];
$dataHandler = $this->objectManager->get(DataHandler::class); $dataHandler = $this->objectManager->get(DataHandler::class);
$dataHandler->start($data, array()); $dataHandler->start($data, []);
$dataHandler->process_datamap(); $dataHandler->process_datamap();
if (count($dataHandler->errorLog) === 0) { if (count($dataHandler->errorLog) === 0) {
@ -633,7 +625,7 @@ class DestinationDataImportService
return false; return false;
} }
return (bool) $value; return (bool)$value;
} }
private function getShortenedString(string $string, int $lenght): string private function getShortenedString(string $string, int $lenght): string

View file

@ -1,6 +1,5 @@
<?php <?php
namespace Wrm\Events\Service\DestinationDataImportService; namespace Wrm\Events\Service\DestinationDataImportService;
use TYPO3\CMS\Extbase\Persistence\ObjectStorage; use TYPO3\CMS\Extbase\Persistence\ObjectStorage;

View file

@ -193,7 +193,7 @@ class DatesFactory
foreach ($date['weekdays'] as $day) { foreach ($date['weekdays'] as $day) {
$dateToUse = $start->modify($day); $dateToUse = $start->modify($day);
$dateToUse = $dateToUse->setTime((int) $start->format('H'), (int) $start->format('i')); $dateToUse = $dateToUse->setTime((int)$start->format('H'), (int)$start->format('i'));
$period = new \DatePeriod($dateToUse, new \DateInterval('P1W'), $until); $period = new \DatePeriod($dateToUse, new \DateInterval('P1W'), $until);
foreach ($period as $day) { foreach ($period as $day) {
@ -220,8 +220,8 @@ class DatesFactory
bool $canceled bool $canceled
): Date { ): Date {
return Date::createFromDestinationData( return Date::createFromDestinationData(
$dateToUse->setTime((int) $start->format('H'), (int) $start->format('i')), $dateToUse->setTime((int)$start->format('H'), (int)$start->format('i')),
$dateToUse->setTime((int) $end->format('H'), (int) $end->format('i')), $dateToUse->setTime((int)$end->format('H'), (int)$end->format('i')),
$canceled $canceled
); );
} }

View file

@ -90,7 +90,7 @@ class Slugger
{ {
$tableName = $sluggerType->getSupportedTableName(); $tableName = $sluggerType->getSupportedTableName();
$record = $sluggerType->prepareRecordForSlugGeneration($record); $record = $sluggerType->prepareRecordForSlugGeneration($record);
$slug = $this->getSlugHelper($sluggerType)->generate($record, (int) $record['pid']); $slug = $this->getSlugHelper($sluggerType)->generate($record, (int)$record['pid']);
$queryBuilder = $this->getQueryBuilder($tableName); $queryBuilder = $this->getQueryBuilder($tableName);
$queryBuilder->update($tableName) $queryBuilder->update($tableName)

View file

@ -42,7 +42,7 @@ class Date implements SluggerType
{ {
$start = new \DateTimeImmutable('@' . $record['start']); $start = new \DateTimeImmutable('@' . $record['start']);
$record['event-title'] = $this->getEventTitle((int) $record['event']); $record['event-title'] = $this->getEventTitle((int)$record['event']);
$record['start'] = $start->format('Y-m-d'); $record['start'] = $start->format('Y-m-d');
$record['start-with-time'] = $start->format('Y-m-d\TH-i-s'); $record['start-with-time'] = $start->format('Y-m-d\TH-i-s');
return $record; return $record;

View file

@ -40,13 +40,13 @@ class UrlFactory
'mode' => $this->settings['restMode'] ?? '', 'mode' => $this->settings['restMode'] ?? '',
'limit' => $this->settings['restLimit'] ?? '', 'limit' => $this->settings['restLimit'] ?? '',
'template' => $this->settings['restTemplate'] ?? '', 'template' => $this->settings['restTemplate'] ?? '',
'q' => $import->getSearchQuery() 'q' => $import->getSearchQuery(),
]; ];
$parameter = array_filter($parameter); $parameter = array_filter($parameter);
$url = new Uri($this->settings['restUrl']); $url = new Uri($this->settings['restUrl']);
$url = $url->withQuery(http_build_query($parameter)); $url = $url->withQuery(http_build_query($parameter));
return (string) $url; return (string)$url;
} }
} }

View file

@ -10,7 +10,7 @@
'fieldConfiguration' => [ 'fieldConfiguration' => [
'minitems' => 0, 'minitems' => 0,
'multiple' => true, 'multiple' => true,
] ],
] ]
); );
@ -23,7 +23,7 @@
'fieldConfiguration' => [ 'fieldConfiguration' => [
'minitems' => 0, 'minitems' => 0,
'multiple' => true, 'multiple' => true,
] ],
] ]
); );
})('events', 'tx_events_domain_model_event'); })('events', 'tx_events_domain_model_event');

View file

@ -20,7 +20,7 @@ return [
'endtime' => 'endtime', 'endtime' => 'endtime',
], ],
'searchFields' => '', 'searchFields' => '',
'iconfile' => 'EXT:events/Resources/Public/Icons/tx_events_domain_model_date.svg' 'iconfile' => 'EXT:events/Resources/Public/Icons/tx_events_domain_model_date.svg',
], ],
'types' => [ 'types' => [
'1' => ['showitem' => 'sys_language_uid, l10n_parent, l10n_diffsource, hidden, start, end, canceled, postponed_date, canceled_link, slug, event, --div--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:tabs.access, starttime, endtime'], '1' => ['showitem' => 'sys_language_uid, l10n_parent, l10n_diffsource, hidden, start, end, canceled, postponed_date, canceled_link, slug, event, --div--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:tabs.access, starttime, endtime'],
@ -37,8 +37,8 @@ return [
[ [
'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.allLanguages', 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.allLanguages',
-1, -1,
'flags-multiple' 'flags-multiple',
] ],
], ],
'default' => 0, 'default' => 0,
], ],
@ -80,8 +80,8 @@ return [
[ [
0 => '', 0 => '',
1 => '', 1 => '',
'invertStateDisplay' => true 'invertStateDisplay' => true,
] ],
], ],
], ],
], ],
@ -94,8 +94,8 @@ return [
'eval' => 'datetime,int', 'eval' => 'datetime,int',
'default' => 0, 'default' => 0,
'behaviour' => [ 'behaviour' => [
'allowLanguageSynchronization' => true 'allowLanguageSynchronization' => true,
] ],
], ],
], ],
'endtime' => [ 'endtime' => [
@ -107,11 +107,11 @@ return [
'eval' => 'datetime,int', 'eval' => 'datetime,int',
'default' => 0, 'default' => 0,
'range' => [ 'range' => [
'upper' => mktime(0, 0, 0, 1, 1, 2038) 'upper' => mktime(0, 0, 0, 1, 1, 2038),
], ],
'behaviour' => [ 'behaviour' => [
'allowLanguageSynchronization' => true 'allowLanguageSynchronization' => true,
] ],
], ],
], ],
@ -215,10 +215,10 @@ return [
'default' => '', 'default' => '',
], ],
], ],
'event' => array( 'event' => [
'exclude' => 1, 'exclude' => 1,
'label' => 'LLL:EXT:events/Resources/Private/Language/locallang_csh_date.xlf:tx_events_domain_model_date.event', 'label' => 'LLL:EXT:events/Resources/Private/Language/locallang_csh_date.xlf:tx_events_domain_model_date.event',
'config' => array( 'config' => [
'type' => 'select', 'type' => 'select',
'renderType' => 'selectSingle', 'renderType' => 'selectSingle',
'foreign_table' => 'tx_events_domain_model_event', 'foreign_table' => 'tx_events_domain_model_event',
@ -226,7 +226,7 @@ return [
'minitems' => 0, 'minitems' => 0,
'maxitems' => 1, 'maxitems' => 1,
'readOnly' => 1, 'readOnly' => 1,
) ],
) ],
], ],
]; ];

View file

@ -24,7 +24,7 @@ return [
'endtime' => 'endtime', 'endtime' => 'endtime',
], ],
'searchFields' => 'title,subtitle,global_id,teaser', 'searchFields' => 'title,subtitle,global_id,teaser',
'iconfile' => 'EXT:events/Resources/Public/Icons/tx_events_domain_model_event.svg' 'iconfile' => 'EXT:events/Resources/Public/Icons/tx_events_domain_model_event.svg',
], ],
'types' => [ 'types' => [
'1' => [ '1' => [
@ -64,7 +64,7 @@ return [
instagram, instagram,
--div--;' . $l10nPathFE . ':tabs.access, --div--;' . $l10nPathFE . ':tabs.access,
starttime, starttime,
endtime' endtime',
], ],
], ],
@ -80,8 +80,8 @@ return [
[ [
$l10nPathGeneral . ':LGL.allLanguages', $l10nPathGeneral . ':LGL.allLanguages',
-1, -1,
'flags-multiple' 'flags-multiple',
] ],
], ],
'default' => 0, 'default' => 0,
], ],
@ -123,8 +123,8 @@ return [
[ [
0 => '', 0 => '',
1 => '', 1 => '',
'invertStateDisplay' => true 'invertStateDisplay' => true,
] ],
], ],
], ],
], ],
@ -137,8 +137,8 @@ return [
'eval' => 'datetime,int', 'eval' => 'datetime,int',
'default' => 0, 'default' => 0,
'behaviour' => [ 'behaviour' => [
'allowLanguageSynchronization' => true 'allowLanguageSynchronization' => true,
] ],
], ],
], ],
'endtime' => [ 'endtime' => [
@ -150,11 +150,11 @@ return [
'eval' => 'datetime,int', 'eval' => 'datetime,int',
'default' => 0, 'default' => 0,
'range' => [ 'range' => [
'upper' => mktime(0, 0, 0, 1, 1, 2038) 'upper' => mktime(0, 0, 0, 1, 1, 2038),
], ],
'behaviour' => [ 'behaviour' => [
'allowLanguageSynchronization' => true 'allowLanguageSynchronization' => true,
] ],
], ],
], ],
@ -165,8 +165,8 @@ return [
'type' => 'text', 'type' => 'text',
'cols' => 40, 'cols' => 40,
'rows' => 2, 'rows' => 2,
'eval' => 'trim' 'eval' => 'trim',
] ],
], ],
'subtitle' => [ 'subtitle' => [
'exclude' => true, 'exclude' => true,
@ -175,8 +175,8 @@ return [
'type' => 'text', 'type' => 'text',
'cols' => 40, 'cols' => 40,
'rows' => 2, 'rows' => 2,
'eval' => 'trim' 'eval' => 'trim',
] ],
], ],
'global_id' => [ 'global_id' => [
'exclude' => true, 'exclude' => true,
@ -184,7 +184,7 @@ return [
'config' => [ 'config' => [
'type' => 'input', 'type' => 'input',
'size' => 30, 'size' => 30,
'eval' => 'trim' 'eval' => 'trim',
], ],
], ],
'slug' => [ 'slug' => [
@ -210,11 +210,11 @@ return [
'type' => 'check', 'type' => 'check',
'items' => [ 'items' => [
'1' => [ '1' => [
'0' => $l10nPathLang . ':labels.enabled' '0' => $l10nPathLang . ':labels.enabled',
] ],
], ],
'default' => 0, 'default' => 0,
] ],
], ],
'teaser' => [ 'teaser' => [
'exclude' => true, 'exclude' => true,
@ -223,8 +223,8 @@ return [
'type' => 'text', 'type' => 'text',
'cols' => 30, 'cols' => 30,
'rows' => 5, 'rows' => 5,
'eval' => 'trim' 'eval' => 'trim',
] ],
], ],
'details' => [ 'details' => [
'exclude' => true, 'exclude' => true,
@ -250,8 +250,8 @@ return [
'type' => 'text', 'type' => 'text',
'cols' => 40, 'cols' => 40,
'rows' => 15, 'rows' => 15,
'eval' => 'trim' 'eval' => 'trim',
] ],
], ],
'web' => [ 'web' => [
'exclude' => true, 'exclude' => true,
@ -259,7 +259,7 @@ return [
'config' => [ 'config' => [
'type' => 'input', 'type' => 'input',
'size' => 30, 'size' => 30,
'eval' => 'trim' 'eval' => 'trim',
], ],
], ],
'ticket' => [ 'ticket' => [
@ -280,7 +280,7 @@ return [
'config' => [ 'config' => [
'type' => 'input', 'type' => 'input',
'size' => 30, 'size' => 30,
'eval' => 'trim' 'eval' => 'trim',
], ],
], ],
'youtube' => [ 'youtube' => [
@ -289,7 +289,7 @@ return [
'config' => [ 'config' => [
'type' => 'input', 'type' => 'input',
'size' => 30, 'size' => 30,
'eval' => 'trim' 'eval' => 'trim',
], ],
], ],
'instagram' => [ 'instagram' => [
@ -298,7 +298,7 @@ return [
'config' => [ 'config' => [
'type' => 'input', 'type' => 'input',
'size' => 30, 'size' => 30,
'eval' => 'trim' 'eval' => 'trim',
], ],
], ],
'images' => [ 'images' => [
@ -323,35 +323,35 @@ return [
'0' => [ '0' => [
'showitem' => ' 'showitem' => '
--palette--;' . $l10nPathFE . ':sys_file_reference.imageoverlayPalette;imageoverlayPalette, --palette--;' . $l10nPathFE . ':sys_file_reference.imageoverlayPalette;imageoverlayPalette,
--palette--;;filePalette' --palette--;;filePalette',
], ],
\TYPO3\CMS\Core\Resource\File::FILETYPE_TEXT => [ \TYPO3\CMS\Core\Resource\File::FILETYPE_TEXT => [
'showitem' => ' 'showitem' => '
--palette--;' . $l10nPathFE . ':sys_file_reference.imageoverlayPalette;imageoverlayPalette, --palette--;' . $l10nPathFE . ':sys_file_reference.imageoverlayPalette;imageoverlayPalette,
--palette--;;filePalette' --palette--;;filePalette',
], ],
\TYPO3\CMS\Core\Resource\File::FILETYPE_IMAGE => [ \TYPO3\CMS\Core\Resource\File::FILETYPE_IMAGE => [
'showitem' => ' 'showitem' => '
--palette--;' . $l10nPathFE . ':sys_file_reference.imageoverlayPalette;imageoverlayPalette, --palette--;' . $l10nPathFE . ':sys_file_reference.imageoverlayPalette;imageoverlayPalette,
--palette--;;filePalette' --palette--;;filePalette',
], ],
\TYPO3\CMS\Core\Resource\File::FILETYPE_AUDIO => [ \TYPO3\CMS\Core\Resource\File::FILETYPE_AUDIO => [
'showitem' => ' 'showitem' => '
--palette--;' . $l10nPathFE . ':sys_file_reference.imageoverlayPalette;imageoverlayPalette, --palette--;' . $l10nPathFE . ':sys_file_reference.imageoverlayPalette;imageoverlayPalette,
--palette--;;filePalette' --palette--;;filePalette',
], ],
\TYPO3\CMS\Core\Resource\File::FILETYPE_VIDEO => [ \TYPO3\CMS\Core\Resource\File::FILETYPE_VIDEO => [
'showitem' => ' 'showitem' => '
--palette--;' . $l10nPathFE . ':sys_file_reference.imageoverlayPalette;imageoverlayPalette, --palette--;' . $l10nPathFE . ':sys_file_reference.imageoverlayPalette;imageoverlayPalette,
--palette--;;filePalette' --palette--;;filePalette',
], ],
\TYPO3\CMS\Core\Resource\File::FILETYPE_APPLICATION => [ \TYPO3\CMS\Core\Resource\File::FILETYPE_APPLICATION => [
'showitem' => ' 'showitem' => '
--palette--;' . $l10nPathFE . ':sys_file_reference.imageoverlayPalette;imageoverlayPalette, --palette--;' . $l10nPathFE . ':sys_file_reference.imageoverlayPalette;imageoverlayPalette,
--palette--;;filePalette' --palette--;;filePalette',
] ],
], ],
'maxitems' => 8 'maxitems' => 8,
], ],
$GLOBALS['TYPO3_CONF_VARS']['GFX']['imagefile_ext'] $GLOBALS['TYPO3_CONF_VARS']['GFX']['imagefile_ext']
), ),
@ -386,7 +386,7 @@ return [
'collapseAll' => 1, 'collapseAll' => 1,
'useSortable' => 0, 'useSortable' => 0,
'expandSingle' => 1, 'expandSingle' => 1,
'enabledControls' => array( 'enabledControls' => [
'info' => false, 'info' => false,
'new' => true, 'new' => true,
'dragdrop' => true, 'dragdrop' => true,
@ -394,7 +394,7 @@ return [
'hide' => false, 'hide' => false,
'delete' => true, 'delete' => true,
'localize' => false, 'localize' => false,
), ],
'levelLinksPosition' => 'top', 'levelLinksPosition' => 'top',
'showPossibleLocalizationRecords' => false, 'showPossibleLocalizationRecords' => false,
'showRemovedLocalizationRecords' => false, 'showRemovedLocalizationRecords' => false,

View file

@ -14,29 +14,29 @@ return [
'disabled' => 'hidden', 'disabled' => 'hidden',
], ],
'searchFields' => 'title', 'searchFields' => 'title',
'iconfile' => 'EXT:events/Resources/Public/Icons/tx_events_domain_model_import.svg' 'iconfile' => 'EXT:events/Resources/Public/Icons/tx_events_domain_model_import.svg',
], ],
'types' => [ 'types' => [
'1' => [ '1' => [
'showitem' => 'title, hidden, --div--;LLL:EXT:events/Resources/Private/Language/locallang_csh_import.xlf:tx_events_domain_model_import.div.typo3, --palette--;;typo3_storage, --palette--;;categories, --palette--;;features,--palette--;;relations, --div--;LLL:EXT:events/Resources/Private/Language/locallang_csh_import.xlf:tx_events_domain_model_import.div.rest, rest_experience, rest_search_query' 'showitem' => 'title, hidden, --div--;LLL:EXT:events/Resources/Private/Language/locallang_csh_import.xlf:tx_events_domain_model_import.div.typo3, --palette--;;typo3_storage, --palette--;;categories, --palette--;;features,--palette--;;relations, --div--;LLL:EXT:events/Resources/Private/Language/locallang_csh_import.xlf:tx_events_domain_model_import.div.rest, rest_experience, rest_search_query',
], ],
], ],
'palettes' => [ 'palettes' => [
'typo3_storage' => [ 'typo3_storage' => [
'label' => 'LLL:EXT:events/Resources/Private/Language/locallang_csh_import.xlf:tx_events_domain_model_import.palette.typo3_storage', 'label' => 'LLL:EXT:events/Resources/Private/Language/locallang_csh_import.xlf:tx_events_domain_model_import.palette.typo3_storage',
'showitem' => 'storage_pid, files_folder' 'showitem' => 'storage_pid, files_folder',
], ],
'categories' => [ 'categories' => [
'label' => 'LLL:EXT:events/Resources/Private/Language/locallang_csh_import.xlf:tx_events_domain_model_import.palette.categories', 'label' => 'LLL:EXT:events/Resources/Private/Language/locallang_csh_import.xlf:tx_events_domain_model_import.palette.categories',
'showitem' => 'category_parent, categories_pid' 'showitem' => 'category_parent, categories_pid',
], ],
'features' => [ 'features' => [
'label' => 'LLL:EXT:events/Resources/Private/Language/locallang_csh_import.xlf:tx_events_domain_model_import.palette.features', 'label' => 'LLL:EXT:events/Resources/Private/Language/locallang_csh_import.xlf:tx_events_domain_model_import.palette.features',
'showitem' => 'features_parent, features_pid, ' 'showitem' => 'features_parent, features_pid, ',
], ],
'relations' => [ 'relations' => [
'label' => 'LLL:EXT:events/Resources/Private/Language/locallang_csh_import.xlf:tx_events_domain_model_import.palette.relations', 'label' => 'LLL:EXT:events/Resources/Private/Language/locallang_csh_import.xlf:tx_events_domain_model_import.palette.relations',
'showitem' => 'region' 'showitem' => 'region',
], ],
], ],
'columns' => [ 'columns' => [
@ -50,8 +50,8 @@ return [
[ [
0 => '', 0 => '',
1 => '', 1 => '',
'invertStateDisplay' => true 'invertStateDisplay' => true,
] ],
], ],
], ],
], ],

View file

@ -21,7 +21,7 @@ return [
'endtime' => 'endtime', 'endtime' => 'endtime',
], ],
'searchFields' => 'name', 'searchFields' => 'name',
'iconfile' => 'EXT:events/Resources/Public/Icons/tx_events_domain_model_location.svg' 'iconfile' => 'EXT:events/Resources/Public/Icons/tx_events_domain_model_location.svg',
], ],
'types' => [ 'types' => [
'1' => [ '1' => [
@ -43,7 +43,7 @@ return [
longitude, longitude,
--div--;' . $l10nPath . ':tabs.access, --div--;' . $l10nPath . ':tabs.access,
starttime, starttime,
endtime' endtime',
], ],
], ],
'columns' => [ 'columns' => [
@ -58,8 +58,8 @@ return [
[ [
$l10nPathGeneral . ':LGL.allLanguages', $l10nPathGeneral . ':LGL.allLanguages',
-1, -1,
'flags-multiple' 'flags-multiple',
] ],
], ],
'default' => 0, 'default' => 0,
], ],
@ -101,8 +101,8 @@ return [
[ [
0 => '', 0 => '',
1 => '', 1 => '',
'invertStateDisplay' => true 'invertStateDisplay' => true,
] ],
], ],
], ],
], ],
@ -115,8 +115,8 @@ return [
'eval' => 'datetime,int', 'eval' => 'datetime,int',
'default' => 0, 'default' => 0,
'behaviour' => [ 'behaviour' => [
'allowLanguageSynchronization' => true 'allowLanguageSynchronization' => true,
] ],
], ],
], ],
'endtime' => [ 'endtime' => [
@ -128,11 +128,11 @@ return [
'eval' => 'datetime,int', 'eval' => 'datetime,int',
'default' => 0, 'default' => 0,
'range' => [ 'range' => [
'upper' => mktime(0, 0, 0, 1, 1, 2038) 'upper' => mktime(0, 0, 0, 1, 1, 2038),
], ],
'behaviour' => [ 'behaviour' => [
'allowLanguageSynchronization' => true 'allowLanguageSynchronization' => true,
] ],
], ],
], ],
@ -143,7 +143,7 @@ return [
'config' => [ 'config' => [
'type' => 'input', 'type' => 'input',
'size' => 30, 'size' => 30,
'eval' => 'trim' 'eval' => 'trim',
], ],
], ],
'name' => [ 'name' => [
@ -152,7 +152,7 @@ return [
'config' => [ 'config' => [
'type' => 'input', 'type' => 'input',
'size' => 30, 'size' => 30,
'eval' => 'trim' 'eval' => 'trim',
], ],
], ],
'street' => [ 'street' => [
@ -161,7 +161,7 @@ return [
'config' => [ 'config' => [
'type' => 'input', 'type' => 'input',
'size' => 30, 'size' => 30,
'eval' => 'trim' 'eval' => 'trim',
], ],
], ],
'district' => [ 'district' => [
@ -170,7 +170,7 @@ return [
'config' => [ 'config' => [
'type' => 'input', 'type' => 'input',
'size' => 30, 'size' => 30,
'eval' => 'trim' 'eval' => 'trim',
], ],
], ],
'city' => [ 'city' => [
@ -179,7 +179,7 @@ return [
'config' => [ 'config' => [
'type' => 'input', 'type' => 'input',
'size' => 30, 'size' => 30,
'eval' => 'trim' 'eval' => 'trim',
], ],
], ],
'zip' => [ 'zip' => [
@ -188,7 +188,7 @@ return [
'config' => [ 'config' => [
'type' => 'input', 'type' => 'input',
'size' => 30, 'size' => 30,
'eval' => 'trim' 'eval' => 'trim',
], ],
], ],
'country' => [ 'country' => [
@ -197,7 +197,7 @@ return [
'config' => [ 'config' => [
'type' => 'input', 'type' => 'input',
'size' => 30, 'size' => 30,
'eval' => 'trim' 'eval' => 'trim',
], ],
], ],
'phone' => [ 'phone' => [
@ -206,7 +206,7 @@ return [
'config' => [ 'config' => [
'type' => 'input', 'type' => 'input',
'size' => 30, 'size' => 30,
'eval' => 'trim' 'eval' => 'trim',
], ],
], ],
'latitude' => [ 'latitude' => [
@ -215,7 +215,7 @@ return [
'config' => [ 'config' => [
'type' => 'input', 'type' => 'input',
'size' => 30, 'size' => 30,
'eval' => 'trim' 'eval' => 'trim',
], ],
], ],
'longitude' => [ 'longitude' => [
@ -224,7 +224,7 @@ return [
'config' => [ 'config' => [
'type' => 'input', 'type' => 'input',
'size' => 30, 'size' => 30,
'eval' => 'trim' 'eval' => 'trim',
], ],
], ],
], ],

View file

@ -18,7 +18,7 @@ return [
'endtime' => 'endtime', 'endtime' => 'endtime',
], ],
'searchFields' => 'name,street,district,city,zip,phone,web,email', 'searchFields' => 'name,street,district,city,zip,phone,web,email',
'iconfile' => 'EXT:events/Resources/Public/Icons/tx_events_domain_model_organizer.svg' 'iconfile' => 'EXT:events/Resources/Public/Icons/tx_events_domain_model_organizer.svg',
], ],
'types' => [ 'types' => [
'1' => ['showitem' => 'sys_language_uid, l10n_parent, l10n_diffsource, hidden, name, street, district, city, zip, phone, web, email, --div--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:tabs.access, starttime, endtime'], '1' => ['showitem' => 'sys_language_uid, l10n_parent, l10n_diffsource, hidden, name, street, district, city, zip, phone, web, email, --div--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:tabs.access, starttime, endtime'],
@ -35,8 +35,8 @@ return [
[ [
'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.allLanguages', 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.allLanguages',
-1, -1,
'flags-multiple' 'flags-multiple',
] ],
], ],
'default' => 0, 'default' => 0,
], ],
@ -78,8 +78,8 @@ return [
[ [
0 => '', 0 => '',
1 => '', 1 => '',
'invertStateDisplay' => true 'invertStateDisplay' => true,
] ],
], ],
], ],
], ],
@ -92,8 +92,8 @@ return [
'eval' => 'datetime,int', 'eval' => 'datetime,int',
'default' => 0, 'default' => 0,
'behaviour' => [ 'behaviour' => [
'allowLanguageSynchronization' => true 'allowLanguageSynchronization' => true,
] ],
], ],
], ],
'endtime' => [ 'endtime' => [
@ -105,11 +105,11 @@ return [
'eval' => 'datetime,int', 'eval' => 'datetime,int',
'default' => 0, 'default' => 0,
'range' => [ 'range' => [
'upper' => mktime(0, 0, 0, 1, 1, 2038) 'upper' => mktime(0, 0, 0, 1, 1, 2038),
], ],
'behaviour' => [ 'behaviour' => [
'allowLanguageSynchronization' => true 'allowLanguageSynchronization' => true,
] ],
], ],
], ],
@ -119,7 +119,7 @@ return [
'config' => [ 'config' => [
'type' => 'input', 'type' => 'input',
'size' => 30, 'size' => 30,
'eval' => 'trim' 'eval' => 'trim',
], ],
], ],
'street' => [ 'street' => [
@ -128,7 +128,7 @@ return [
'config' => [ 'config' => [
'type' => 'input', 'type' => 'input',
'size' => 30, 'size' => 30,
'eval' => 'trim' 'eval' => 'trim',
], ],
], ],
'district' => [ 'district' => [
@ -137,7 +137,7 @@ return [
'config' => [ 'config' => [
'type' => 'input', 'type' => 'input',
'size' => 30, 'size' => 30,
'eval' => 'trim' 'eval' => 'trim',
], ],
], ],
'city' => [ 'city' => [
@ -146,7 +146,7 @@ return [
'config' => [ 'config' => [
'type' => 'input', 'type' => 'input',
'size' => 30, 'size' => 30,
'eval' => 'trim' 'eval' => 'trim',
], ],
], ],
'zip' => [ 'zip' => [
@ -155,7 +155,7 @@ return [
'config' => [ 'config' => [
'type' => 'input', 'type' => 'input',
'size' => 30, 'size' => 30,
'eval' => 'trim' 'eval' => 'trim',
], ],
], ],
'phone' => [ 'phone' => [
@ -164,7 +164,7 @@ return [
'config' => [ 'config' => [
'type' => 'input', 'type' => 'input',
'size' => 30, 'size' => 30,
'eval' => 'trim' 'eval' => 'trim',
], ],
], ],
'web' => [ 'web' => [
@ -173,7 +173,7 @@ return [
'config' => [ 'config' => [
'type' => 'input', 'type' => 'input',
'size' => 30, 'size' => 30,
'eval' => 'trim' 'eval' => 'trim',
], ],
], ],
'email' => [ 'email' => [
@ -182,7 +182,7 @@ return [
'config' => [ 'config' => [
'type' => 'input', 'type' => 'input',
'size' => 30, 'size' => 30,
'eval' => 'trim' 'eval' => 'trim',
], ],
], ],

View file

@ -16,7 +16,7 @@ return [
'disabled' => 'hidden', 'disabled' => 'hidden',
], ],
'searchFields' => 'title', 'searchFields' => 'title',
'iconfile' => 'EXT:events/Resources/Public/Icons/tx_events_domain_model_partner.svg' 'iconfile' => 'EXT:events/Resources/Public/Icons/tx_events_domain_model_partner.svg',
], ],
'types' => [ 'types' => [
'1' => ['showitem' => 'sys_language_uid, l10n_parent, l10n_diffsource, hidden, title, link, images, --div--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:tabs.access'], '1' => ['showitem' => 'sys_language_uid, l10n_parent, l10n_diffsource, hidden, title, link, images, --div--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:tabs.access'],
@ -33,8 +33,8 @@ return [
[ [
'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.allLanguages', 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.allLanguages',
-1, -1,
'flags-multiple' 'flags-multiple',
] ],
], ],
'default' => 0, 'default' => 0,
], ],
@ -76,8 +76,8 @@ return [
[ [
0 => '', 0 => '',
1 => '', 1 => '',
'invertStateDisplay' => true 'invertStateDisplay' => true,
] ],
], ],
], ],
], ],
@ -88,8 +88,8 @@ return [
'config' => [ 'config' => [
'type' => 'input', 'type' => 'input',
'size' => 30, 'size' => 30,
'eval' => 'trim' 'eval' => 'trim',
] ],
], ],
'link' => [ 'link' => [
'exclude' => true, 'exclude' => true,
@ -108,7 +108,7 @@ return [
'label' => 'LLL:EXT:events/Resources/Private/Language/locallang_csh_partner.xlf:tx_events_domain_model_partner.images', 'label' => 'LLL:EXT:events/Resources/Private/Language/locallang_csh_partner.xlf:tx_events_domain_model_partner.images',
'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig('images', [ 'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig('images', [
'appearance' => [ 'appearance' => [
'createNewRelationLinkTitle' => 'LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:images.addFileReference' 'createNewRelationLinkTitle' => 'LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:images.addFileReference',
], ],
// custom configuration for displaying fields in the overlay/reference table // custom configuration for displaying fields in the overlay/reference table
// to use the imageoverlayPalette instead of the basicoverlayPalette // to use the imageoverlayPalette instead of the basicoverlayPalette
@ -117,16 +117,16 @@ return [
'0' => [ '0' => [
'showitem' => ' 'showitem' => '
--palette--;;imageoverlayPalette, --palette--;;imageoverlayPalette,
--palette--;;filePalette' --palette--;;filePalette',
], ],
\TYPO3\CMS\Core\Resource\File::FILETYPE_IMAGE => [ \TYPO3\CMS\Core\Resource\File::FILETYPE_IMAGE => [
'showitem' => ' 'showitem' => '
--palette--;;imageoverlayPalette, --palette--;;imageoverlayPalette,
--palette--;;filePalette' --palette--;;filePalette',
], ],
], ],
], ],
], $GLOBALS['TYPO3_CONF_VARS']['GFX']['imagefile_ext']) ], $GLOBALS['TYPO3_CONF_VARS']['GFX']['imagefile_ext']),
], ],
], ],
]; ];

View file

@ -18,7 +18,7 @@ return [
'endtime' => 'endtime', 'endtime' => 'endtime',
], ],
'searchFields' => 'title', 'searchFields' => 'title',
'iconfile' => 'EXT:events/Resources/Public/Icons/tx_events_domain_model_region.svg' 'iconfile' => 'EXT:events/Resources/Public/Icons/tx_events_domain_model_region.svg',
], ],
'types' => [ 'types' => [
'1' => ['showitem' => 'sys_language_uid, l10n_parent, l10n_diffsource, hidden, title, --div--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:tabs.access, starttime, endtime'], '1' => ['showitem' => 'sys_language_uid, l10n_parent, l10n_diffsource, hidden, title, --div--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:tabs.access, starttime, endtime'],
@ -35,8 +35,8 @@ return [
[ [
'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.allLanguages', 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.allLanguages',
-1, -1,
'flags-multiple' 'flags-multiple',
] ],
], ],
'default' => 0, 'default' => 0,
], ],
@ -78,8 +78,8 @@ return [
[ [
0 => '', 0 => '',
1 => '', 1 => '',
'invertStateDisplay' => true 'invertStateDisplay' => true,
] ],
], ],
], ],
], ],
@ -92,8 +92,8 @@ return [
'eval' => 'datetime,int', 'eval' => 'datetime,int',
'default' => 0, 'default' => 0,
'behaviour' => [ 'behaviour' => [
'allowLanguageSynchronization' => true 'allowLanguageSynchronization' => true,
] ],
], ],
], ],
'endtime' => [ 'endtime' => [
@ -105,11 +105,11 @@ return [
'eval' => 'datetime,int', 'eval' => 'datetime,int',
'default' => 0, 'default' => 0,
'range' => [ 'range' => [
'upper' => mktime(0, 0, 0, 1, 1, 2038) 'upper' => mktime(0, 0, 0, 1, 1, 2038),
], ],
'behaviour' => [ 'behaviour' => [
'allowLanguageSynchronization' => true 'allowLanguageSynchronization' => true,
] ],
], ],
], ],
@ -119,7 +119,7 @@ return [
'config' => [ 'config' => [
'type' => 'input', 'type' => 'input',
'size' => 30, 'size' => 30,
'eval' => 'trim' 'eval' => 'trim',
], ],
], ],

View file

@ -3,8 +3,8 @@
namespace Wrm\Events\Tests; namespace Wrm\Events\Tests;
use GuzzleHttp\Client; use GuzzleHttp\Client;
use GuzzleHttp\HandlerStack;
use GuzzleHttp\Handler\MockHandler; use GuzzleHttp\Handler\MockHandler;
use GuzzleHttp\HandlerStack;
use GuzzleHttp\Middleware; use GuzzleHttp\Middleware;
use GuzzleHttp\Psr7\Response; use GuzzleHttp\Psr7\Response;

View file

@ -27,9 +27,7 @@ use Codappix\Typo3PhpDatasets\PhpDataSet;
use DateTimeImmutable; use DateTimeImmutable;
use DateTimeZone; use DateTimeZone;
use Psr\Http\Message\ResponseInterface; use Psr\Http\Message\ResponseInterface;
use TYPO3\CMS\Core\TypoScript\TemplateService;
use TYPO3\TestingFramework\Core\Functional\Framework\Frontend\InternalRequest; use TYPO3\TestingFramework\Core\Functional\Framework\Frontend\InternalRequest;
use TYPO3\TestingFramework\Core\Functional\Framework\Frontend\Internal\TypoScriptInstruction;
/** /**
* @covers \Wrm\Events\Caching\PageCacheTimeout * @covers \Wrm\Events\Caching\PageCacheTimeout
@ -251,7 +249,7 @@ class CacheTest extends AbstractTestCase
$this->setUpFrontendRootPage(1, array_merge_recursive($this->getTypoScriptFiles(), [ $this->setUpFrontendRootPage(1, array_merge_recursive($this->getTypoScriptFiles(), [
'setup' => [ 'setup' => [
'EXT:events/Tests/Functional/Frontend/Fixtures/TypoScript/CachingMidnight.typoscript' 'EXT:events/Tests/Functional/Frontend/Fixtures/TypoScript/CachingMidnight.typoscript',
], ],
])); ]));
@ -277,7 +275,7 @@ class CacheTest extends AbstractTestCase
// We might be seconds off due to our created offset within the rendering. // We might be seconds off due to our created offset within the rendering.
$value = (int)$value; $value = (int)$value;
$age = ((int) $end->format('U')) - time(); $age = ((int)$end->format('U')) - time();
self::assertLessThanOrEqual($age + 3, $value, 'Max age of cached response is higher than expected.'); self::assertLessThanOrEqual($age + 3, $value, 'Max age of cached response is higher than expected.');
self::assertGreaterThanOrEqual($age - 3, $value, 'Max age of cached response is less than expected.'); self::assertGreaterThanOrEqual($age - 3, $value, 'Max age of cached response is less than expected.');
} }
@ -291,7 +289,7 @@ class CacheTest extends AbstractTestCase
'setup' => [ 'setup' => [
'EXT:fluid_styled_content/Configuration/TypoScript/setup.typoscript', 'EXT:fluid_styled_content/Configuration/TypoScript/setup.typoscript',
'EXT:events/Configuration/TypoScript/setup.typoscript', 'EXT:events/Configuration/TypoScript/setup.typoscript',
'EXT:events/Tests/Functional/Frontend/Fixtures/TypoScript/Rendering.typoscript' 'EXT:events/Tests/Functional/Frontend/Fixtures/TypoScript/Rendering.typoscript',
], ],
]; ];
} }
@ -310,7 +308,7 @@ class CacheTest extends AbstractTestCase
], ],
], ],
], ],
])) ])),
]); ]);
return $request; return $request;

View file

@ -55,7 +55,7 @@ class DatesTest extends AbstractTestCase
'setup' => [ 'setup' => [
'EXT:fluid_styled_content/Configuration/TypoScript/setup.typoscript', 'EXT:fluid_styled_content/Configuration/TypoScript/setup.typoscript',
'EXT:events/Configuration/TypoScript/setup.typoscript', 'EXT:events/Configuration/TypoScript/setup.typoscript',
'EXT:events/Tests/Functional/Frontend/Fixtures/TypoScript/Rendering.typoscript' 'EXT:events/Tests/Functional/Frontend/Fixtures/TypoScript/Rendering.typoscript',
], ],
]); ]);
} }
@ -78,7 +78,7 @@ class DatesTest extends AbstractTestCase
$response = $this->executeFrontendRequest($request); $response = $this->executeFrontendRequest($request);
self::assertSame(200, $response->getStatusCode()); self::assertSame(200, $response->getStatusCode());
$html = (string) $response->getBody(); $html = (string)$response->getBody();
self::assertStringNotContainsString('Event 1 hidden', $html); self::assertStringNotContainsString('Event 1 hidden', $html);
self::assertStringContainsString('Event 2 visible', $html); self::assertStringContainsString('Event 2 visible', $html);
@ -99,7 +99,7 @@ class DatesTest extends AbstractTestCase
$response = $this->executeFrontendRequest($request); $response = $this->executeFrontendRequest($request);
self::assertSame(200, $response->getStatusCode()); self::assertSame(200, $response->getStatusCode());
$html = (string) $response->getBody(); $html = (string)$response->getBody();
self::assertStringNotContainsString('Event 1', $html); self::assertStringNotContainsString('Event 1', $html);
self::assertStringNotContainsString('Event 2', $html); self::assertStringNotContainsString('Event 2', $html);
@ -127,7 +127,7 @@ class DatesTest extends AbstractTestCase
$response = $this->executeFrontendRequest($request); $response = $this->executeFrontendRequest($request);
self::assertSame(200, $response->getStatusCode()); self::assertSame(200, $response->getStatusCode());
$html = (string) $response->getBody(); $html = (string)$response->getBody();
self::assertStringContainsString('Event 1', $html); self::assertStringContainsString('Event 1', $html);
self::assertStringContainsString('Event 2', $html); self::assertStringContainsString('Event 2', $html);
@ -160,7 +160,7 @@ class DatesTest extends AbstractTestCase
$response = $this->executeFrontendRequest($request); $response = $this->executeFrontendRequest($request);
self::assertSame(200, $response->getStatusCode()); self::assertSame(200, $response->getStatusCode());
$html = (string) $response->getBody(); $html = (string)$response->getBody();
self::assertStringNotContainsString('Event 1', $html); self::assertStringNotContainsString('Event 1', $html);
self::assertStringNotContainsString('Event 2', $html); self::assertStringNotContainsString('Event 2', $html);
@ -192,12 +192,12 @@ class DatesTest extends AbstractTestCase
], ],
], ],
], ],
]) ]),
]); ]);
$response = $this->executeFrontendRequest($request); $response = $this->executeFrontendRequest($request);
self::assertSame(200, $response->getStatusCode()); self::assertSame(200, $response->getStatusCode());
$html = (string) $response->getBody(); $html = (string)$response->getBody();
self::assertStringNotContainsString('Event 1', $html); self::assertStringNotContainsString('Event 1', $html);
self::assertStringContainsString('Event 2', $html); self::assertStringContainsString('Event 2', $html);

View file

@ -36,7 +36,7 @@ class FilterTest extends AbstractTestCase
'setup' => [ 'setup' => [
'EXT:fluid_styled_content/Configuration/TypoScript/setup.typoscript', 'EXT:fluid_styled_content/Configuration/TypoScript/setup.typoscript',
'EXT:events/Configuration/TypoScript/setup.typoscript', 'EXT:events/Configuration/TypoScript/setup.typoscript',
'EXT:events/Tests/Functional/Frontend/Fixtures/TypoScript/Rendering.typoscript' 'EXT:events/Tests/Functional/Frontend/Fixtures/TypoScript/Rendering.typoscript',
], ],
]); ]);
} }
@ -53,7 +53,7 @@ class FilterTest extends AbstractTestCase
$response = $this->executeFrontendRequest($request); $response = $this->executeFrontendRequest($request);
self::assertSame(200, $response->getStatusCode()); self::assertSame(200, $response->getStatusCode());
$html = (string) $response->getBody(); $html = (string)$response->getBody();
self::assertStringNotContainsString('Lotte in Weimar', $html); self::assertStringNotContainsString('Lotte in Weimar', $html);
self::assertStringContainsString('Was hat das Universum mit mir zu tun?', $html); self::assertStringContainsString('Was hat das Universum mit mir zu tun?', $html);
@ -71,7 +71,7 @@ class FilterTest extends AbstractTestCase
$response = $this->executeFrontendRequest($request); $response = $this->executeFrontendRequest($request);
self::assertSame(200, $response->getStatusCode()); self::assertSame(200, $response->getStatusCode());
$html = (string) $response->getBody(); $html = (string)$response->getBody();
self::assertStringContainsString('Lotte in Weimar', $html); self::assertStringContainsString('Lotte in Weimar', $html);
self::assertStringContainsString('Was hat das Universum mit mir zu tun?', $html); self::assertStringContainsString('Was hat das Universum mit mir zu tun?', $html);

View file

@ -40,7 +40,7 @@ class UserFunc
public function sleep(string $content, array $configuration): string public function sleep(string $content, array $configuration): string
{ {
$sleep = (int) $this->cObj->stdWrapValue('sleep', $configuration['userFunc.'], 0); $sleep = (int)$this->cObj->stdWrapValue('sleep', $configuration['userFunc.'], 0);
sleep($sleep); sleep($sleep);
return 'Sleep for ' . $sleep . ' seconds'; return 'Sleep for ' . $sleep . ' seconds';
} }

View file

@ -3,8 +3,6 @@
namespace Wrm\Events\Tests\Functional\Import\DestinationDataTest; namespace Wrm\Events\Tests\Functional\Import\DestinationDataTest;
use GuzzleHttp\Psr7\Response; use GuzzleHttp\Psr7\Response;
use TYPO3\CMS\Core\Context\Context;
use TYPO3\CMS\Core\Context\DateTimeAspect;
use TYPO3\CMS\Core\Utility\GeneralUtility; use TYPO3\CMS\Core\Utility\GeneralUtility;
class ImportDoesntEndUpInEndlessDateCreationTest extends AbstractTest class ImportDoesntEndUpInEndlessDateCreationTest extends AbstractTest

View file

@ -3,8 +3,6 @@
namespace Wrm\Events\Tests\Functional\Import\DestinationDataTest; namespace Wrm\Events\Tests\Functional\Import\DestinationDataTest;
use GuzzleHttp\Psr7\Response; use GuzzleHttp\Psr7\Response;
use TYPO3\CMS\Core\Utility\GeneralUtility;
use Wrm\Events\Command\ImportDestinationDataViaConfigruationCommand;
/** /**
* @testdox DestinationData import * @testdox DestinationData import
@ -26,7 +24,6 @@ class ImportsFeaturesTest extends AbstractTest
]); ]);
$tester = $this->executeCommand(); $tester = $this->executeCommand();
$this->assertCSVDataSet('EXT:events/Tests/Functional/Import/DestinationDataTest/Assertions/ImportsFeaturesAddsNewFeatures.csv'); $this->assertCSVDataSet('EXT:events/Tests/Functional/Import/DestinationDataTest/Assertions/ImportsFeaturesAddsNewFeatures.csv');
self::assertFileEquals( self::assertFileEquals(
__DIR__ . '/Assertions/EmptyLogFile.txt', __DIR__ . '/Assertions/EmptyLogFile.txt',

View file

@ -3,7 +3,6 @@
namespace Wrm\Events\Tests\Functional\Import\DestinationDataTest; namespace Wrm\Events\Tests\Functional\Import\DestinationDataTest;
use GuzzleHttp\Psr7\Response; use GuzzleHttp\Psr7\Response;
use Wrm\Events\Command\ImportDestinationDataViaConfigruationCommand;
/** /**
* @testdox DestinationData import * @testdox DestinationData import

View file

@ -4,7 +4,6 @@ namespace Wrm\Events\Tests\Functional\Import\DestinationDataTest;
use GuzzleHttp\Psr7\Response; use GuzzleHttp\Psr7\Response;
use TYPO3\CMS\Core\Utility\GeneralUtility; use TYPO3\CMS\Core\Utility\GeneralUtility;
use Wrm\Events\Command\ImportDestinationDataViaConfigruationCommand;
/** /**
* @testdox Import of configuration * @testdox Import of configuration

View file

@ -3,7 +3,6 @@
namespace Wrm\Events\Tests\Functional\Import\DestinationDataTest; namespace Wrm\Events\Tests\Functional\Import\DestinationDataTest;
use GuzzleHttp\Psr7\Response; use GuzzleHttp\Psr7\Response;
use Wrm\Events\Command\ImportDestinationDataViaConfigruationCommand;
/** /**
* @testdox DestinationData import * @testdox DestinationData import

View file

@ -64,7 +64,6 @@ class ImportsWithoutCategoryIfNotProvidedTest extends AbstractTest
); );
$this->assertCSVDataSet('EXT:events/Tests/Functional/Import/DestinationDataTest/Assertions/ImportsWithoutCategoryIfNotProvided.csv'); $this->assertCSVDataSet('EXT:events/Tests/Functional/Import/DestinationDataTest/Assertions/ImportsWithoutCategoryIfNotProvided.csv');
$importedFiles = GeneralUtility::getFilesInDir($fileImportPath); $importedFiles = GeneralUtility::getFilesInDir($fileImportPath);
self::assertIsArray($importedFiles, 'Failed to retrieve imported files from filesystem.'); self::assertIsArray($importedFiles, 'Failed to retrieve imported files from filesystem.');
self::assertSame( self::assertSame(

View file

@ -58,7 +58,6 @@ class ImportsWithoutRegionIfNotProvidedTest extends AbstractTest
); );
$this->assertCSVDataSet('EXT:events/Tests/Functional/Import/DestinationDataTest/Assertions/ImportsWithoutRegionIfNotProvided.csv'); $this->assertCSVDataSet('EXT:events/Tests/Functional/Import/DestinationDataTest/Assertions/ImportsWithoutRegionIfNotProvided.csv');
$importedFiles = GeneralUtility::getFilesInDir($fileImportPath); $importedFiles = GeneralUtility::getFilesInDir($fileImportPath);
self::assertIsArray($importedFiles, 'Failed to retrieve imported files from filesystem.'); self::assertIsArray($importedFiles, 'Failed to retrieve imported files from filesystem.');
self::assertSame( self::assertSame(

View file

@ -27,7 +27,6 @@ use PHPUnit\Framework\TestCase;
use TYPO3\CMS\Core\TypoScript\TypoScriptService; use TYPO3\CMS\Core\TypoScript\TypoScriptService;
use Wrm\Events\Domain\Model\Dto\DateDemand; use Wrm\Events\Domain\Model\Dto\DateDemand;
use Wrm\Events\Domain\Model\Dto\DateDemandFactory; use Wrm\Events\Domain\Model\Dto\DateDemandFactory;
use Wrm\Events\Tests\ProphecyTrait;
/** /**
* @covers \Wrm\Events\Domain\Model\Dto\DateDemandFactory * @covers \Wrm\Events\Domain\Model\Dto\DateDemandFactory

View file

@ -23,9 +23,9 @@ declare(strict_types=1);
namespace Wrm\Events\Tests\Unit\Domain\Model\Dto; namespace Wrm\Events\Tests\Unit\Domain\Model\Dto;
use PHPUnit\Framework\TestCase;
use Wrm\Events\Domain\Model\Dto\EventDemand; use Wrm\Events\Domain\Model\Dto\EventDemand;
use Wrm\Events\Domain\Model\Dto\EventDemandFactory; use Wrm\Events\Domain\Model\Dto\EventDemandFactory;
use PHPUnit\Framework\TestCase;
/** /**
* @covers \Wrm\Events\Domain\Model\Dto\EventDemandFactory * @covers \Wrm\Events\Domain\Model\Dto\EventDemandFactory

View file

@ -2,10 +2,10 @@
namespace Wrm\Events\Tests\Unit\Domain\Model; namespace Wrm\Events\Tests\Unit\Domain\Model;
use PHPUnit\Framework\TestCase;
use TYPO3\CMS\Core\Resource\Folder; use TYPO3\CMS\Core\Resource\Folder;
use Wrm\Events\Domain\Model\Category; use Wrm\Events\Domain\Model\Category;
use Wrm\Events\Domain\Model\Import; use Wrm\Events\Domain\Model\Import;
use PHPUnit\Framework\TestCase;
use Wrm\Events\Domain\Model\Region; use Wrm\Events\Domain\Model\Region;
use Wrm\Events\Tests\ProphecyTrait; use Wrm\Events\Tests\ProphecyTrait;

View file

@ -4,12 +4,11 @@ declare(strict_types=1);
namespace Wrm\Events\Tests\Unit\Service\DestinationDataImportService; namespace Wrm\Events\Tests\Unit\Service\DestinationDataImportService;
use PHPUnit\Framework\MockObject\Stub;
use PHPUnit\Framework\TestCase; use PHPUnit\Framework\TestCase;
use TYPO3\CMS\Core\Context\Context; use TYPO3\CMS\Core\Context\Context;
use TYPO3\CMS\Core\Context\DateTimeAspect; use TYPO3\CMS\Core\Context\DateTimeAspect;
use TYPO3\CMS\Core\Log\LogManager;
use TYPO3\CMS\Core\Log\Logger; use TYPO3\CMS\Core\Log\Logger;
use TYPO3\CMS\Core\Log\LogManager;
use TYPO3\CMS\Extbase\Configuration\ConfigurationManager; use TYPO3\CMS\Extbase\Configuration\ConfigurationManager;
use Wrm\Events\Domain\Model\Date; use Wrm\Events\Domain\Model\Date;
use Wrm\Events\Service\DestinationDataImportService\DatesFactory; use Wrm\Events\Service\DestinationDataImportService\DatesFactory;
@ -116,7 +115,7 @@ class DatesFactoryTest extends TestCase
'end' => '2023-01-06T15:00:00+01:00', 'end' => '2023-01-06T15:00:00+01:00',
'tz' => 'Europe/Berlin', 'tz' => 'Europe/Berlin',
'freq' => 'Weekly', 'freq' => 'Weekly',
'interval' => 1 'interval' => 1,
]], false); ]], false);
self::assertInstanceOf(\Generator::class, $result); self::assertInstanceOf(\Generator::class, $result);

View file

@ -47,6 +47,7 @@
}, },
"require-dev": { "require-dev": {
"codappix/typo3-php-datasets": "^1.2", "codappix/typo3-php-datasets": "^1.2",
"friendsofphp/php-cs-fixer": "^3.4",
"guzzlehttp/guzzle": "^6.3 || ^7.3", "guzzlehttp/guzzle": "^6.3 || ^7.3",
"jangregor/phpstan-prophecy": "1.0.0", "jangregor/phpstan-prophecy": "1.0.0",
"phpspec/prophecy-phpunit": "^1.0 || ^2.0", "phpspec/prophecy-phpunit": "^1.0 || ^2.0",
@ -55,7 +56,6 @@
"phpstan/phpstan-phpunit": "1.1.1", "phpstan/phpstan-phpunit": "1.1.1",
"saschaegerer/phpstan-typo3": "1.1.2", "saschaegerer/phpstan-typo3": "1.1.2",
"squizlabs/php_codesniffer": "^3.5", "squizlabs/php_codesniffer": "^3.5",
"symplify/easy-coding-standard": "^9.4",
"typo3/cms-backend": "^10.4 || ^11.5", "typo3/cms-backend": "^10.4 || ^11.5",
"typo3/cms-fluid-styled-content": "^10.4 || ^11.5", "typo3/cms-fluid-styled-content": "^10.4 || ^11.5",
"typo3/testing-framework": "^6.14" "typo3/testing-framework": "^6.14"

20
ecs.php
View file

@ -1,20 +0,0 @@
<?php
use Symfony\Component\DependencyInjection\Loader\Configurator\ContainerConfigurator;
use Symplify\EasyCodingStandard\ValueObject\Option;
use Symplify\EasyCodingStandard\ValueObject\Set\SetList;
return static function (ContainerConfigurator $containerConfigurator): void {
$containerConfigurator->import(SetList::PSR_12);
$parameters = $containerConfigurator->parameters();
$parameters->set(Option::PATHS, [
__DIR__ . '/Classes',
__DIR__ . '/Configuration',
__DIR__ . '/ecs.php',
__DIR__ . '/ext_emconf.php',
__DIR__ . '/ext_localconf.php',
__DIR__ . '/ext_tables.php',
]);
};

View file

@ -13,7 +13,7 @@ let
memory_limit = 4G memory_limit = 4G
''; '';
}; };
inherit(pkgs.php82Packages) composer; inherit(php.packages) composer;
projectInstall = pkgs.writeShellApplication { projectInstall = pkgs.writeShellApplication {
name = "project-install"; name = "project-install";
@ -74,7 +74,7 @@ let
]; ];
text = '' text = ''
./vendor/bin/ecs check --no-progress-bar --clear-cache PHP_CS_FIXER_IGNORE_ENV=1 ./vendor/bin/php-cs-fixer fix --dry-run --diff
''; '';
}; };
@ -86,7 +86,7 @@ let
]; ];
text = '' text = ''
./vendor/bin/ecs check --fix --no-progress-bar --clear-cache PHP_CS_FIXER_IGNORE_ENV=1 ./vendor/bin/php-cs-fixer fix
''; '';
}; };