‪TYPO3CMS  11.5
TYPO3\CMS\Backend\Domain\Repository\Localization\LocalizationRepository Class Reference

Public Member Functions

 __construct (TranslationConfigurationProvider $translationConfigurationProvider=null)
 
array fetchOriginLanguage (int $pageId, int $localizedLanguage)
 
int getLocalizedRecordCount (int $pageId, int $languageId)
 
array fetchAvailableLanguages (int $pageId, int $languageId)
 
Result getRecordsToCopyDatabaseResult (int $pageId, int $destLanguageId, int $languageId, string $fields=' *')
 

Protected Member Functions

 getAllowedLanguageConstraintsForBackendUser (int $pageId, QueryBuilder $queryBuilder, BackendUserAuthentication $backendUser, string $alias='')
 
BackendUserAuthentication getBackendUser ()
 
QueryBuilder getQueryBuilderWithWorkspaceRestriction (string $tableName)
 

Protected Attributes

TranslationConfigurationProvider $translationConfigurationProvider
 

Detailed Description

Repository for record localizations

Definition at line 35 of file LocalizationRepository.php.

Constructor & Destructor Documentation

◆ __construct()

TYPO3\CMS\Backend\Domain\Repository\Localization\LocalizationRepository::__construct ( TranslationConfigurationProvider  $translationConfigurationProvider = null)

Member Function Documentation

◆ fetchAvailableLanguages()

array TYPO3\CMS\Backend\Domain\Repository\Localization\LocalizationRepository::fetchAvailableLanguages ( int  $pageId,
int  $languageId 
)

◆ fetchOriginLanguage()

array TYPO3\CMS\Backend\Domain\Repository\Localization\LocalizationRepository::fetchOriginLanguage ( int  $pageId,
int  $localizedLanguage 
)

◆ getAllowedLanguageConstraintsForBackendUser()

TYPO3\CMS\Backend\Domain\Repository\Localization\LocalizationRepository::getAllowedLanguageConstraintsForBackendUser ( int  $pageId,
QueryBuilder  $queryBuilder,
BackendUserAuthentication  $backendUser,
string  $alias = '' 
)
protected

Builds additional query constraints to exclude hidden languages and limit a backend user to its allowed languages (unless the user is an admin)

Parameters
int$pageId
QueryBuilder$queryBuilder
BackendUserAuthentication$backendUser
string$alias

Definition at line 160 of file LocalizationRepository.php.

References TYPO3\CMS\Core\Authentication\BackendUserAuthentication\isAdmin().

Referenced by TYPO3\CMS\Backend\Domain\Repository\Localization\LocalizationRepository\fetchAvailableLanguages(), and TYPO3\CMS\Backend\Domain\Repository\Localization\LocalizationRepository\fetchOriginLanguage().

◆ getBackendUser()

◆ getLocalizedRecordCount()

int TYPO3\CMS\Backend\Domain\Repository\Localization\LocalizationRepository::getLocalizedRecordCount ( int  $pageId,
int  $languageId 
)

Returns number of localized records in given page and language Records which were added to the language directly (not through translation) are not counted.

Parameters
int$pageId
int$languageId
Returns
‪int

Definition at line 96 of file LocalizationRepository.php.

References TYPO3\CMS\Backend\Domain\Repository\Localization\LocalizationRepository\getQueryBuilderWithWorkspaceRestriction(), and TYPO3\CMS\Core\Database\Connection\PARAM_INT.

◆ getQueryBuilderWithWorkspaceRestriction()

QueryBuilder TYPO3\CMS\Backend\Domain\Repository\Localization\LocalizationRepository::getQueryBuilderWithWorkspaceRestriction ( string  $tableName)
protected

◆ getRecordsToCopyDatabaseResult()

Result TYPO3\CMS\Backend\Domain\Repository\Localization\LocalizationRepository::getRecordsToCopyDatabaseResult ( int  $pageId,
int  $destLanguageId,
int  $languageId,
string  $fields = '*' 
)

Get records for copy process

Parameters
int$pageId
int$destLanguageId
int$languageId
string$fields
Returns
‪Result

Definition at line 184 of file LocalizationRepository.php.

References $fields, TYPO3\CMS\Backend\Domain\Repository\Localization\LocalizationRepository\getQueryBuilderWithWorkspaceRestriction(), TYPO3\CMS\Core\Database\Connection\PARAM_INT, and TYPO3\CMS\Core\Utility\GeneralUtility\trimExplode().

Member Data Documentation

◆ $translationConfigurationProvider

TranslationConfigurationProvider TYPO3\CMS\Backend\Domain\Repository\Localization\LocalizationRepository::$translationConfigurationProvider
protected