Skip to content
Snippets Groups Projects
Commit c8a9b2ac authored by Fabian Galinski's avatar Fabian Galinski :pouting_cat:
Browse files

[FEATURE] Adding of the AbstractRepositiory

parent c5a11509
No related branches found
No related tags found
1 merge request!1Feature sg mail
<?php
namespace SGalinski\SgMail\Domain\Repository;
/***************************************************************
* Copyright notice
*
* (c) sgalinski Internet Services (http://www.sgalinski.de)
*
* All rights reserved
*
* 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.
*
* The GNU General Public License can be found at
* http://www.gnu.org/copyleft/gpl.html.
*
* 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!
***************************************************************/
use TYPO3\CMS\Backend\Utility\BackendUtility;
use TYPO3\CMS\Extbase\Persistence\Generic\Typo3QuerySettings;
use TYPO3\CMS\Extbase\Persistence\Repository;
use TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController;
use TYPO3\CMS\Frontend\Page\PageRepository;
/**
* Abstract Repository
*/
abstract class AbstractRepository extends Repository {
/**
* Initializes the repository default settings
*
* @return void
*/
public function initializeObject() {
$querySettings = $this->objectManager->get(Typo3QuerySettings::class);
$querySettings->setRespectStoragePage(FALSE);
if (TYPO3_MODE === 'BE') {
$querySettings->setIgnoreEnableFields(TRUE);
}
$this->setDefaultQuerySettings($querySettings);
}
/**
* Method creates a statement string of the enableFields for the given database table.
*
* @param string $table
* @param string $alias
* @param bool $ignoreEnableFields
* @return string
*/
protected function getEnableFieldsStatement($table, $alias = '', $ignoreEnableFields = FALSE) {
if (TYPO3_MODE === 'FE' && $GLOBALS['TSFE'] instanceof TypoScriptFrontendController) {
/** @var PageRepository $pageRepository */
$pageRepository = $GLOBALS['TSFE']->sys_page;
$statement = $pageRepository->enableFields($table);
} else {
$statement = BackendUtility::deleteClause($table);
if (!$ignoreEnableFields) {
$statement .= BackendUtility::BEenableFields($table);
}
}
if ($alias !== '') {
$statement = str_replace($table, $alias, $statement);
}
return $statement;
}
}
?>
......@@ -33,7 +33,7 @@ use TYPO3\CMS\Extbase\Persistence\Repository;
/**
* Repository for the Mail object
*/
class MailRepository extends Repository {
class MailRepository extends AbstractRepository {
/**
* Returns all mails that are still not sent ordered by priority.
*
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment