Initial commit - Typo3 11.5.41
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
<?php
|
||||
|
||||
namespace Brightside\Paginatedprocessors\DataProcessing;
|
||||
|
||||
use TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer;
|
||||
use TYPO3\CMS\Frontend\DataProcessing\DatabaseQueryProcessor;
|
||||
|
||||
// Use DataToPaginatedData class
|
||||
use Brightside\Paginatedprocessors\Processing\DataToPaginatedData;
|
||||
|
||||
class PaginatedDatabaseQueryProcessor extends DatabaseQueryProcessor
|
||||
{
|
||||
public function process(
|
||||
ContentObjectRenderer $cObj,
|
||||
array $contentObjectConfiguration,
|
||||
array $processorConfiguration,
|
||||
array $processedData
|
||||
) {
|
||||
$allProcessedData = parent::process($cObj, $contentObjectConfiguration, $processorConfiguration, $processedData);
|
||||
|
||||
// Get pagination settings from TypoScript
|
||||
$paginationSettings = $processorConfiguration['pagination.'];
|
||||
|
||||
// If pagination activated
|
||||
if ((int)($cObj->stdWrapValue('isActive', $paginationSettings ?? []))) {
|
||||
$paginatedData = new DataToPaginatedData();
|
||||
$allProcessedData = $paginatedData->getPaginatedData(
|
||||
$cObj,
|
||||
$contentObjectConfiguration,
|
||||
$processorConfiguration,
|
||||
$allProcessedData,
|
||||
$allProcessedData[$processorConfiguration['as']], // Data to paginate
|
||||
$processorConfiguration['as'] // Array key for the paginated data
|
||||
);
|
||||
return $allProcessedData;
|
||||
} else {
|
||||
return $allProcessedData;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
<?php
|
||||
namespace Brightside\Paginatedprocessors\DataProcessing;
|
||||
|
||||
use TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer;
|
||||
use TYPO3\CMS\Frontend\Resource\FileCollector;
|
||||
use TYPO3\CMS\Frontend\DataProcessing\FilesProcessor;
|
||||
use Brightside\Paginatedprocessors\Processing\DataToPaginatedData;
|
||||
|
||||
class PaginatedFilesProcessor extends FilesProcessor
|
||||
{
|
||||
public function process(
|
||||
ContentObjectRenderer $cObj,
|
||||
array $contentObjectConfiguration,
|
||||
array $processorConfiguration,
|
||||
array $processedData
|
||||
) {
|
||||
$allProcessedData = parent::process($cObj, $contentObjectConfiguration, $processorConfiguration, $processedData);
|
||||
$paginationSettings = $processorConfiguration['pagination.'];
|
||||
if ((int)($cObj->stdWrapValue('isActive', $paginationSettings ?? []))) {
|
||||
$paginatedData = new DataToPaginatedData();
|
||||
$allProcessedData = $paginatedData->getPaginatedData(
|
||||
$cObj,
|
||||
$contentObjectConfiguration,
|
||||
$processorConfiguration,
|
||||
$allProcessedData,
|
||||
$allProcessedData[$processorConfiguration['as']],
|
||||
$processorConfiguration['as']
|
||||
);
|
||||
return $allProcessedData;
|
||||
} else {
|
||||
return $allProcessedData;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,80 @@
|
||||
<?php
|
||||
namespace Brightside\Paginatedprocessors\DataProcessing;
|
||||
|
||||
use TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer;
|
||||
use TYPO3\CMS\Frontend\DataProcessing\MenuProcessor;
|
||||
use Brightside\Paginatedprocessors\Processing\DataToPaginatedData;
|
||||
|
||||
class PaginatedMenuProcessor extends MenuProcessor
|
||||
{
|
||||
/**
|
||||
* Allowed configuration keys for menu generation, other keys
|
||||
* will throw an exception to prevent configuration errors.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
public $allowedConfigurationKeys = [
|
||||
'cache_period',
|
||||
'entryLevel',
|
||||
'entryLevel.',
|
||||
'special',
|
||||
'special.',
|
||||
'minItems',
|
||||
'minItems.',
|
||||
'maxItems',
|
||||
'maxItems.',
|
||||
'begin',
|
||||
'begin.',
|
||||
'alternativeSortingField',
|
||||
'alternativeSortingField.',
|
||||
'showAccessRestrictedPages',
|
||||
'showAccessRestrictedPages.',
|
||||
'excludeUidList',
|
||||
'excludeUidList.',
|
||||
'excludeDoktypes',
|
||||
'includeNotInMenu',
|
||||
'includeNotInMenu.',
|
||||
'alwaysActivePIDlist',
|
||||
'alwaysActivePIDlist.',
|
||||
'protectLvar',
|
||||
'addQueryString',
|
||||
'addQueryString.',
|
||||
'if',
|
||||
'if.',
|
||||
'levels',
|
||||
'levels.',
|
||||
'expandAll',
|
||||
'expandAll.',
|
||||
'includeSpacer',
|
||||
'includeSpacer.',
|
||||
'as',
|
||||
'titleField',
|
||||
'titleField.',
|
||||
'dataProcessing',
|
||||
'dataProcessing.',
|
||||
'pagination.',
|
||||
];
|
||||
public function process(
|
||||
ContentObjectRenderer $cObj,
|
||||
array $contentObjectConfiguration,
|
||||
array $processorConfiguration,
|
||||
array $processedData
|
||||
) {
|
||||
$allProcessedData = parent::process($cObj, $contentObjectConfiguration, $processorConfiguration, $processedData);
|
||||
$paginationSettings = $processorConfiguration['pagination.'];
|
||||
if ((int)($cObj->stdWrapValue('isActive', $paginationSettings ?? []))) {
|
||||
$paginatedData = new DataToPaginatedData();
|
||||
$allProcessedData = $paginatedData->getPaginatedData(
|
||||
$cObj,
|
||||
$contentObjectConfiguration,
|
||||
$processorConfiguration,
|
||||
$allProcessedData,
|
||||
$allProcessedData[$processorConfiguration['as']],
|
||||
$processorConfiguration['as']
|
||||
);
|
||||
return $allProcessedData;
|
||||
} else {
|
||||
return $allProcessedData;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user