diff --git a/Classes/Domain/Model/FileReference.php b/Classes/Domain/Model/FileReference.php index 6f91148687887060870ef1f0f96a7322c5259ba2..620e0c07aec2d6b19b065796daec544dd8dbf34b 100644 --- a/Classes/Domain/Model/FileReference.php +++ b/Classes/Domain/Model/FileReference.php @@ -1,54 +1,40 @@ <?php - -namespace SGalinski\SgJobs\Domain\Model; - -/*************************************************************** - * Copyright notice +/** * - * (c) 2014 Helmut Hummel + * Copyright notice * - * All rights reserved + * (c) sgalinski Internet Services (https://www.sgalinski.de) * - * This script is part of the TYPO3 project. The TYPO3 project 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 3 of the License, or - * (at your option) any later version. + * All rights reserved * - * The GNU General Public License can be found at - * http://www.gnu.org/copyleft/gpl.html. + * This script is part of the TYPO3 project. The TYPO3 project 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 3 of the License, or + * (at your option) any later version. * - * This script 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. + * The GNU General Public License can be found at + * http://www.gnu.org/copyleft/gpl.html. * - * This copyright notice MUST APPEAR in all copies of the script! - ***************************************************************/ + * This script 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. + * + * This copyright notice MUST APPEAR in all copies of the script! + */ + +namespace SGalinski\SgJobs\Domain\Model; /** * Class FileReference + * + * @package SGalinski\SgJobs\Domain\Model + * @author Kevin Ditscheid <kevin.ditscheid@sgalinski.de> */ class FileReference extends \TYPO3\CMS\Extbase\Domain\Model\FileReference { /** - * Uid of a sys_file - * - * @var int - */ - protected $originalFileIdentifier; - - /** - * @param \TYPO3\CMS\Core\Resource\ResourceInterface $originalResource - */ - public function setOriginalResource(\TYPO3\CMS\Core\Resource\ResourceInterface $originalResource) { - $this->setFileReference($originalResource); - } - - /** - * @param \TYPO3\CMS\Core\Resource\FileReference $originalResource + * @var string */ - private function setFileReference(\TYPO3\CMS\Core\Resource\FileReference $originalResource) { - $this->originalResource = $originalResource; - $this->originalFileIdentifier = (int) $originalResource->getOriginalFile()->getUid(); - } + protected $tablenames = 'tx_sgjobs_domain_model_job_application'; } diff --git a/Classes/Domain/Model/JobApplication.php b/Classes/Domain/Model/JobApplication.php index 90b73fa39135773b7f7c2778b45277de8c1b23f6..d9873857ce2f8c178e8fa199706c5e2631450b7b 100644 --- a/Classes/Domain/Model/JobApplication.php +++ b/Classes/Domain/Model/JobApplication.php @@ -27,8 +27,6 @@ namespace SGalinski\SgJobs\Domain\Model; ***************************************************************/ use TYPO3\CMS\Extbase\DomainObject\AbstractEntity; -use TYPO3\CMS\Extbase\Persistence\Generic\LazyLoadingProxy; -use TYPO3\CMS\Extbase\Persistence\ObjectStorage; /** * The JobApplication model @@ -135,19 +133,19 @@ class JobApplication extends AbstractEntity { protected $email = ''; /** - * @var \SGalinski\SgJobs\Domain\Model\FileReference $coverLetter + * @var \TYPO3\CMS\Extbase\Domain\Model\FileReference $coverLetter * @validate NotEmpty */ protected $coverLetter; /** - * @var \SGalinski\SgJobs\Domain\Model\FileReference $cv + * @var \TYPO3\CMS\Extbase\Domain\Model\FileReference $cv * @validate NotEmpty */ protected $cv; /** - * @var \SGalinski\SgJobs\Domain\Model\FileReference $certificate + * @var \TYPO3\CMS\Extbase\Domain\Model\FileReference $certificate * @validate NotEmpty */ protected $certificate; @@ -360,44 +358,44 @@ class JobApplication extends AbstractEntity { } /** - * @return \SGalinski\SgJobs\Domain\Model\FileReference + * @return \TYPO3\CMS\Extbase\Domain\Model\FileReference */ public function getCoverLetter() { return $this->coverLetter; } /** - * @param \SGalinski\SgJobs\Domain\Model\FileReference $coverLetter + * @param \TYPO3\CMS\Extbase\Domain\Model\FileReference $coverLetter */ - public function setCoverLetter(\SGalinski\SgJobs\Domain\Model\FileReference $coverLetter = NULL) { + public function setCoverLetter(\TYPO3\CMS\Extbase\Domain\Model\FileReference $coverLetter = NULL) { $this->coverLetter = $coverLetter; } /** - * @return \SGalinski\SgJobs\Domain\Model\FileReference + * @return \TYPO3\CMS\Extbase\Domain\Model\FileReference */ public function getCv() { return $this->cv; } /** - * @param \SGalinski\SgJobs\Domain\Model\FileReference $cv + * @param \TYPO3\CMS\Extbase\Domain\Model\FileReference $cv */ - public function setCV(\SGalinski\SgJobs\Domain\Model\FileReference $cv = NULL) { + public function setCV(\TYPO3\CMS\Extbase\Domain\Model\FileReference $cv = NULL) { $this->cv = $cv; } /** - * @return \SGalinski\SgJobs\Domain\Model\FileReference + * @return \TYPO3\CMS\Extbase\Domain\Model\FileReference */ public function getCertificate() { return $this->certificate; } /** - * @param \SGalinski\SgJobs\Domain\Model\FileReference $certificate + * @param \TYPO3\CMS\Extbase\Domain\Model\FileReference $certificate */ - public function setCertificate(\SGalinski\SgJobs\Domain\Model\FileReference $certificate = NULL) { + public function setCertificate(\TYPO3\CMS\Extbase\Domain\Model\FileReference $certificate = NULL) { $this->certificate = $certificate; } diff --git a/Classes/Property/TypeConverter/UploadedFileReferenceConverter.php b/Classes/Property/TypeConverter/UploadedFileReferenceConverter.php index 3141fe5405e3a1e879fa4dfa236346263542f4b8..6729420966cdd2fc8fa8f6daf6472ceb6ab8a7a6 100644 --- a/Classes/Property/TypeConverter/UploadedFileReferenceConverter.php +++ b/Classes/Property/TypeConverter/UploadedFileReferenceConverter.php @@ -32,7 +32,7 @@ use TYPO3\CMS\Core\Resource\FileReference as FalFileReference; use TYPO3\CMS\Core\Resource\ResourceFactory; use TYPO3\CMS\Core\Utility\GeneralUtility; use TYPO3\CMS\Core\Utility\PathUtility; -use TYPO3\CMS\Extbase\Domain\Model\FileReference; +use SGalinski\SgJobs\Domain\Model\FileReference; use TYPO3\CMS\Extbase\Error\Error; use TYPO3\CMS\Extbase\Object\ObjectManagerInterface; use TYPO3\CMS\Extbase\Persistence\Generic\PersistenceManager; @@ -302,7 +302,7 @@ class UploadedFileReferenceConverter implements TypeConverterInterface { * @param string $targetType * @param array $convertedChildProperties * @param PropertyMappingConfigurationInterface $configuration - * @return null|\TYPO3\CMS\Core\Resource\FileInterface|FileReference|Error + * @return null|FileReference|Error * @api */ public function convertFrom( @@ -354,7 +354,7 @@ class UploadedFileReferenceConverter implements TypeConverterInterface { * Import a resource and respect configuration given for properties * * @param array $uploadInfo - * @return \SGalinski\SgJobs\Domain\Model\FileReference|NULL + * @return FileReference|NULL * @throws \InvalidArgumentException * @throws TypeConverterException * @throws \Exception @@ -419,10 +419,10 @@ class UploadedFileReferenceConverter implements TypeConverterInterface { /** * @param FalFile $file - * @return \SGalinski\SgJobs\Domain\Model\FileReference + * @return FileReference */ protected function createFileReferenceFromFalFileObject(FalFile $file - ): \SGalinski\SgJobs\Domain\Model\FileReference { + ): FileReference { $fileReference = $this->resourceFactory->createFileReferenceObject( [ 'uid_local' => $file->getUid(), @@ -436,11 +436,10 @@ class UploadedFileReferenceConverter implements TypeConverterInterface { /** * @param FalFileReference $falFileReference - * @return \SGalinski\SgJobs\Domain\Model\FileReference + * @return FileReference */ protected function createFileReferenceFromFalFileReferenceObject(FalFileReference $falFileReference - ): \SGalinski\SgJobs\Domain\Model\FileReference { - /** @var \SGalinski\SgJobs\Domain\Model\FileReference $fileReference */ + ): FileReference { $fileReference = $this->objectManager->get(FileReference::class); $fileReference->setOriginalResource($falFileReference); return $fileReference; diff --git a/Configuration/TCA/tx_sgjobs_domain_model_job_application.php b/Configuration/TCA/tx_sgjobs_domain_model_job_application.php index 1f3ed4182d85934e2f393a41304bf3528646cd92..336e96794ff6746dd45dcbc4df3767a0d5306465 100644 --- a/Configuration/TCA/tx_sgjobs_domain_model_job_application.php +++ b/Configuration/TCA/tx_sgjobs_domain_model_job_application.php @@ -73,7 +73,7 @@ return call_user_func( 'columns' => [ 'sys_language_uid' => [ 'exclude' => TRUE, - 'label' => 'LLL:EXT:lang/Resources/Private/Language/locallang_general.xml:LGL.language', + 'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.language', 'config' => [ 'type' => 'select', 'special' => 'languages', @@ -82,7 +82,7 @@ return call_user_func( 'l10n_parent' => [ 'displayCond' => 'FIELD:sys_language_uid:>:0', 'exclude' => TRUE, - 'label' => 'LLL:EXT:lang/Resources/Private/Language/locallang_general.xml:LGL.l18n_parent', + 'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.l18n_parent', 'config' => [ 'type' => 'select', 'items' => [ @@ -98,7 +98,7 @@ return call_user_func( ], ], 't3ver_label' => [ - 'label' => 'LLL:EXT:lang/Resources/Private/Language/locallang_general.xml:LGL.versionLabel', + 'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.versionLabel', 'config' => [ 'type' => 'input', 'size' => 30, @@ -114,7 +114,7 @@ return call_user_func( ], 'hidden' => [ 'exclude' => TRUE, - 'label' => 'LLL:EXT:lang/Resources/Private/Language/locallang_general.xml:LGL.hidden', + 'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.hidden', 'config' => [ 'type' => 'check', ], @@ -122,7 +122,7 @@ return call_user_func( 'starttime' => [ 'exclude' => TRUE, 'l10n_mode' => 'mergeIfNotBlank', - 'label' => 'LLL:EXT:lang/Resources/Private/Language/locallang_general.xml:LGL.starttime', + 'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.starttime', 'config' => [ 'type' => 'input', 'size' => 13, @@ -138,7 +138,7 @@ return call_user_func( 'endtime' => [ 'exclude' => TRUE, 'l10n_mode' => 'mergeIfNotBlank', - 'label' => 'LLL:EXT:lang/Resources/Private/Language/locallang_general.xml:LGL.endtime', + 'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.endtime', 'config' => [ 'type' => 'input', 'size' => 13, diff --git a/Configuration/TypoScript/Common/setup.typoscript b/Configuration/TypoScript/Common/setup.typoscript index dbe4f43461b2e4fdea8b52eec443e6c4a94afd58..1ea1c722e2f7aae2338c838cdee9663c0148b36a 100644 --- a/Configuration/TypoScript/Common/setup.typoscript +++ b/Configuration/TypoScript/Common/setup.typoscript @@ -1,6 +1,11 @@ config.tx_extbase { persistence { classes { + SGalinski\SgJobs\Domain\Model\FileReference { + mapping { + tableName = sys_file_reference + } + } SGalinski\SgJobs\Domain\Model\JobApplication { mapping { tableName = tx_sgjobs_domain_model_job_application diff --git a/ext_typoscript_setup.txt b/ext_typoscript_setup.txt deleted file mode 100644 index 9e7800a80c7448d6fb846e914e41e2a749cfd2b9..0000000000000000000000000000000000000000 --- a/ext_typoscript_setup.txt +++ /dev/null @@ -1,18 +0,0 @@ -config.tx_extbase { - persistence { - classes { - SGalinski\SgJobs\Domain\Model\FileReference { - mapping { - tableName = sys_file_reference - columns { - uid_local.mapOnProperty = originalFileIdentifier - } - } - } - } - } - - objects { - TYPO3\CMS\Extbase\Domain\Model\FileReference.className = SGalinski\SgJobs\Domain\Model\FileReference - } -}