diff --git a/Classes/Domain/Model/FileReference.php b/Classes/Domain/Model/FileReference.php index 631af0a..215651e 100644 --- a/Classes/Domain/Model/FileReference.php +++ b/Classes/Domain/Model/FileReference.php @@ -71,9 +71,8 @@ class FileReference extends \TYPO3\CMS\Extbase\Domain\Model\FileReference * Set File uid * * @param int $fileUid - * @return void */ - public function setFileUid($fileUid) + public function setFileUid($fileUid): void { $this->uidLocal = $fileUid; } @@ -92,9 +91,8 @@ public function getFileUid() * Set alternative * * @param string $alternative - * @return void */ - public function setAlternative($alternative) + public function setAlternative($alternative): void { $this->alternative = $alternative; } @@ -113,9 +111,8 @@ public function getAlternative() * Set description * * @param string $description - * @return void */ - public function setDescription($description) + public function setDescription($description): void { $this->description = $description; } @@ -134,9 +131,8 @@ public function getDescription() * Set link * * @param string $link - * @return void */ - public function setLink($link) + public function setLink($link): void { $this->link = $link; } @@ -156,9 +152,8 @@ public function getLink() * Set title * * @param string $title - * @return void */ - public function setTitle($title) + public function setTitle($title): void { $this->title = $title; } @@ -177,9 +172,8 @@ public function getTitle() * Set showinpreview * * @param bool $showinpreview - * @return void */ - public function setShowinpreview($showinpreview) + public function setShowinpreview($showinpreview): void { $this->showinpreview = $showinpreview; } @@ -194,18 +188,12 @@ public function getShowinpreview() return $this->showinpreview; } - /** - * @param \TYPO3\CMS\Core\Resource\ResourceInterface $originalResource - */ - public function setOriginalResource(\TYPO3\CMS\Core\Resource\ResourceInterface $originalResource) { + public function setOriginalResource(\TYPO3\CMS\Core\Resource\ResourceInterface $originalResource): void { $this->originalResource = $originalResource; $this->originalFileIdentifier = (int)$originalResource->getOriginalFile()->getUid(); } - /** - * @param \TYPO3\CMS\Core\Resource\File $falFile - */ - public function setFile(\TYPO3\CMS\Core\Resource\File $falFile) { + public function setFile(\TYPO3\CMS\Core\Resource\File $falFile): void { $this->originalFileIdentifier = (int)$falFile->getUid(); } diff --git a/Classes/Domain/Model/ImportedEntity.php b/Classes/Domain/Model/ImportedEntity.php index 2b40582..76c5839 100644 --- a/Classes/Domain/Model/ImportedEntity.php +++ b/Classes/Domain/Model/ImportedEntity.php @@ -79,7 +79,7 @@ public function getSourceUniqueIdentifier() /** * @param string $sourceUniqueIdentifier */ - public function setSourceUniqueIdentifier($sourceUniqueIdentifier) + public function setSourceUniqueIdentifier($sourceUniqueIdentifier): void { $this->sourceUniqueIdentifier = $sourceUniqueIdentifier; } @@ -95,7 +95,7 @@ public function getSourceFieldHashes() /** * @param array $sourceFieldHashes */ - public function setSourceFieldHashes($sourceFieldHashes) + public function setSourceFieldHashes($sourceFieldHashes): void { $this->sourceFieldHashes = $sourceFieldHashes; } @@ -111,7 +111,7 @@ public function getInternalUid() /** * @param int $internalUid */ - public function setInternalUid($internalUid) + public function setInternalUid($internalUid): void { $this->internalUid = $internalUid; } @@ -127,7 +127,7 @@ public function getInternalPid() /** * @param pid $internalPid */ - public function setInternalPid($internalPid) + public function setInternalPid($internalPid): void { $this->internalPid = $internalPid; } @@ -143,7 +143,7 @@ public function getInternalEntityClassname() /** * @param string $internalEntityClassName */ - public function setInternalEntityClassName($internalEntityClassname) + public function setInternalEntityClassName($internalEntityClassname): void { $this->internalEntityClassname = $internalEntityClassname; } @@ -159,7 +159,7 @@ public function getInternalLanguage() /** * @param int $language */ - public function setInternalLanguage($internalLanguage) + public function setInternalLanguage($internalLanguage): void { $this->internalLanguage = $internalLanguage; } diff --git a/Classes/Domain/Model/Resource.php b/Classes/Domain/Model/Resource.php index c3299dd..4331588 100644 --- a/Classes/Domain/Model/Resource.php +++ b/Classes/Domain/Model/Resource.php @@ -84,7 +84,7 @@ public function getSource() /** * @param string $source */ - public function setSource($source) + public function setSource($source): void { $this->source = $source; } @@ -100,7 +100,7 @@ public function getSourceData() /** * @param string $sourceData */ - public function setSourceData($sourceData) + public function setSourceData($sourceData): void { $this->sourceData = $sourceData; } @@ -116,7 +116,7 @@ public function getFilename() /** * @param string $filename */ - public function setFilename($filename) + public function setFilename($filename): void { $this->filename = $filename; } @@ -132,7 +132,7 @@ public function getFileObject() /** * @param \TYPO3\CMS\Core\Resource\File $fileObject */ - public function setFileObject($fileObject) + public function setFileObject($fileObject): void { $this->fileObject = $fileObject; } @@ -148,7 +148,7 @@ public function getTitle() /** * @param string $title */ - public function setTitle($title) + public function setTitle($title): void { $this->title = $title; } @@ -164,7 +164,7 @@ public function getDescription() /** * @param string $description */ - public function setDescription($description) + public function setDescription($description): void { $this->description = $description; } diff --git a/Classes/Domain/Repository/ImportedEntityRepository.php b/Classes/Domain/Repository/ImportedEntityRepository.php index 9b7523f..7f9549b 100644 --- a/Classes/Domain/Repository/ImportedEntityRepository.php +++ b/Classes/Domain/Repository/ImportedEntityRepository.php @@ -33,7 +33,7 @@ class ImportedEntityRepository extends \TYPO3\CMS\Extbase\Persistence\Repository /** * */ - public function initializeObject() + public function initializeObject(): void { $querySettings = $this->createQuery()->getQuerySettings(); $querySettings->setRespectStoragePage(false); diff --git a/Classes/Service/AbstractSyncService.php b/Classes/Service/AbstractSyncService.php index 6cee792..c43eb4a 100644 --- a/Classes/Service/AbstractSyncService.php +++ b/Classes/Service/AbstractSyncService.php @@ -30,7 +30,7 @@ abstract class AbstractSyncService { - public function run() { + public function run(): void { $this->fetch(); $this->transform(); $this->store(); diff --git a/Classes/Service/DomainObjectTranslationService.php b/Classes/Service/DomainObjectTranslationService.php index e0bbb4a..602597c 100644 --- a/Classes/Service/DomainObjectTranslationService.php +++ b/Classes/Service/DomainObjectTranslationService.php @@ -29,11 +29,15 @@ class DomainObjectTranslationService implements SingletonInterface { protected \TYPO3\CMS\Extbase\Persistence\Generic\Mapper\DataMapper $dataMapper; + public function __construct(\TYPO3\CMS\Extbase\Persistence\Generic\Mapper\DataMapper $dataMapper) + { + $this->dataMapper = $dataMapper; + } /** * Translates a domain object */ - public function translate(DomainObjectInterface $origin, DomainObjectInterface $translation, int $language) + public function translate(DomainObjectInterface $origin, DomainObjectInterface $translation, int $language): void { if (get_class($origin) !== get_class($translation)) { throw new \Exception('Origin and translation must be the same type.', 1432499926); @@ -57,9 +61,4 @@ public function translate(DomainObjectInterface $origin, DomainObjectInterface $ $translation->_setProperty('_languageUid', $language); } - - public function injectDataMapper(DataMapper $dataMapper): void - { - $this->dataMapper = $dataMapper; - } } diff --git a/Classes/Service/Extractor/JsonExtractor.php b/Classes/Service/Extractor/JsonExtractor.php index ce19032..2663db0 100644 --- a/Classes/Service/Extractor/JsonExtractor.php +++ b/Classes/Service/Extractor/JsonExtractor.php @@ -31,7 +31,7 @@ class JsonExtractor extends AbstractExtractor { - protected $content = NULL; + protected $content; protected $source; @@ -46,7 +46,7 @@ public function getContent() /** * @param mixed $content */ - public function setContent($content) + public function setContent($content): void { $this->content = $content; } @@ -62,18 +62,14 @@ public function getSource() /** * @param mixed $source */ - public function setSource($source) + public function setSource($source): void { $this->source = $source; } function extract() { - if (is_null($this->content)) { - $rawData = file_get_contents($this->source); - } else { - $rawData = $this->content; - } + $rawData = is_null($this->content) ? file_get_contents($this->source) : $this->content; $jsonData = json_decode($rawData, true); diff --git a/Classes/Service/Extractor/XmlExtractor.php b/Classes/Service/Extractor/XmlExtractor.php index 9b0d145..afb2bbb 100644 --- a/Classes/Service/Extractor/XmlExtractor.php +++ b/Classes/Service/Extractor/XmlExtractor.php @@ -43,7 +43,7 @@ public function getSource() /** * @param mixed $source */ - public function setSource($source) + public function setSource($source): void { $this->source = $source; } @@ -55,7 +55,7 @@ public function extract() $xmlObject = simplexml_load_string($rawData); if (!is_object($xmlObject)) { - throw new \Exception('no xml in response'); + throw new \Exception('no xml in response', 8369019978); } return $xmlObject; diff --git a/Classes/Service/Loader/DatahandlerLoader.php b/Classes/Service/Loader/DatahandlerLoader.php index 31371b8..beef622 100644 --- a/Classes/Service/Loader/DatahandlerLoader.php +++ b/Classes/Service/Loader/DatahandlerLoader.php @@ -41,13 +41,9 @@ class DatahandlerLoader extends AbstractLoader public function load($transformedData) { - - foreach ($transformedData as $item) { - - } } - public function process() { + public function process(): void { /** @var \TYPO3\CMS\Core\DataHandling\DataHandler $dataHandler */ $dataHandler = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\CMS\Core\DataHandling\DataHandler'); $dataHandler->start($this->datamap, array()); @@ -55,7 +51,7 @@ public function process() { if ($dataHandler->errorLog) { var_dump($dataHandler->errorLog); - throw new \Exception('error while processing datamap'); + throw new \Exception('error while processing datamap', 4318360878); } unset($dataHandler); @@ -66,7 +62,7 @@ public function process() { $dataHandler->process_cmdmap(); if ($dataHandler->errorLog) { - throw new \Exception('error while processing cmdmap'); + throw new \Exception('error while processing cmdmap', 7879108206); } } diff --git a/Classes/Service/Loader/SynchronizedLoader.php b/Classes/Service/Loader/SynchronizedLoader.php index d09ef0f..f7d43b1 100644 --- a/Classes/Service/Loader/SynchronizedLoader.php +++ b/Classes/Service/Loader/SynchronizedLoader.php @@ -47,14 +47,12 @@ class SynchronizedLoader extends DatahandlerLoader public function load($transformedData) { - foreach ($transformedData as $item) { - } } protected function sync(DomainObjectInterface $domainObject, $uniqueIdentifier) { $tables = array_keys($this->datamap); foreach ($tables as $table) { - foreach ($this->datamap[$table] as $id => $fieldArray) { + foreach ($this->datamap[$table] as $fieldArray) { if (!is_array($fieldArray)) { continue; } diff --git a/Classes/Service/ResourceImportService.php b/Classes/Service/ResourceImportService.php index 14e2a82..9fa1c5e 100644 --- a/Classes/Service/ResourceImportService.php +++ b/Classes/Service/ResourceImportService.php @@ -62,10 +62,9 @@ class ResourceImportService /** * Import a single resource, download the file and store it locally * - * @param \Sinso\Smartimport\Domain\Model\Resource $resource * @throws EmptyContentException */ - public function importResource(\Sinso\Smartimport\Domain\Model\Resource $resource) + public function importResource(\Sinso\Smartimport\Domain\Model\Resource $resource): void { $resourcePathAndFilename = GeneralUtility::getFileAbsFileName($resource->getFilename()); @@ -85,7 +84,7 @@ public function importResource(\Sinso\Smartimport\Domain\Model\Resource $resourc file_put_contents($resourcePathAndFilename, $resource->getSourceData()); } - $fileObject = \TYPO3\CMS\Core\Resource\ResourceFactory::getInstance()->retrieveFileOrFolderObject($resourcePathAndFilename); + $fileObject = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\TYPO3\CMS\Core\Resource\ResourceFactory::class)->retrieveFileOrFolderObject($resourcePathAndFilename); $resource->setFileObject($fileObject); } @@ -98,11 +97,10 @@ public function importResource(\Sinso\Smartimport\Domain\Model\Resource $resourc * TODO: Remove deleted/missing resources from entity * * @param array<\Sinso\Smartimport\Domain\Model\Resource> $resources - * @param \TYPO3\CMS\Extbase\DomainObject\AbstractEntity $entity * @param string $tablename * @param string $fieldname */ - public function importResourcesToEntity(Array $resources, \TYPO3\CMS\Extbase\DomainObject\AbstractEntity $entity, $tablename, $fieldname) { + public function importResourcesToEntity(Array $resources, \TYPO3\CMS\Extbase\DomainObject\AbstractEntity $entity, $tablename, $fieldname): void { $datamap = array(); foreach ($resources as $resource) { /** @var \Sinso\Smartimport\Domain\Model\Resource $resource */ @@ -120,7 +118,7 @@ public function importResourcesToEntity(Array $resources, \TYPO3\CMS\Extbase\Dom ); } - if (!$datamap) { + if ($datamap === []) { return; } @@ -154,7 +152,7 @@ public function isOverwriteExistingFiles() /** * @param boolean $overwriteExistingFiles */ - public function setOverwriteExistingFiles($overwriteExistingFiles) + public function setOverwriteExistingFiles($overwriteExistingFiles): void { $this->overwriteExistingFiles = $overwriteExistingFiles; } diff --git a/Classes/Service/SimpleSyncService.php b/Classes/Service/SimpleSyncService.php index 61fe320..70ff185 100644 --- a/Classes/Service/SimpleSyncService.php +++ b/Classes/Service/SimpleSyncService.php @@ -30,11 +30,17 @@ class SimpleSyncService extends AbstractSyncService { + public $defaultLanguage; + public $shopItemRepository; + public $persistenceManager; + public $languages; + public $imageFolder; + public $resourceImportService; protected $model; protected $tablename; - public function sync($data) { + public function sync($data): void { foreach ($itemInAllLanguages as $language => $item) { $shopItem = new ShopItem(); $shopItem->setName($item['name']); @@ -57,8 +63,10 @@ public function sync($data) { } $resourcesToImport = array(); - - if (!is_array($productInformationFromWebScraper) || !is_array($productInformationFromWebScraper['images'])) { + if (!is_array($productInformationFromWebScraper)) { + continue; + } + if (!is_array($productInformationFromWebScraper['images'])) { continue; } diff --git a/Classes/Service/Transformer/AbstractTransformer.php b/Classes/Service/Transformer/AbstractTransformer.php index d16e14e..852c926 100644 --- a/Classes/Service/Transformer/AbstractTransformer.php +++ b/Classes/Service/Transformer/AbstractTransformer.php @@ -49,7 +49,7 @@ protected function transformFieldValue($field, $value) { */ if (!in_array($field, $this->sanitizedFields)) { - $value = $this->sanitizeValue($value); + return $this->sanitizeValue($value); } return $value; diff --git a/Configuration/TCA/Overrides/sys_template.php b/Configuration/TCA/Overrides/sys_template.php new file mode 100644 index 0000000..f5f7a2f --- /dev/null +++ b/Configuration/TCA/Overrides/sys_template.php @@ -0,0 +1,3 @@ += 8.1 < 8.4", + "typo3/cms-core": "^11 || ^12" }, "autoload": { "psr-4": { diff --git a/ext_localconf.php b/ext_localconf.php deleted file mode 100644 index e61bdb8..0000000 --- a/ext_localconf.php +++ /dev/null @@ -1,4 +0,0 @@ -