40 public function collectPages($selectedCategories, $configuration, $parentObject) {
41 $selectedPages = array();
42 $categoriesPerPage = array();
45 if (isset($configuration[
'relation.'])) {
46 $relationField = $parentObject->parent_cObj->stdWrap(
47 $configuration[
'relation'],
48 $configuration[
'relation.']
50 } elseif (isset($configuration[
'relation'])) {
51 $relationField = $configuration[
'relation'];
55 foreach ($selectedCategories as $aCategory) {
62 $categoryUid = $collection->getUid();
64 foreach ($collection as $pageItem) {
65 $parentObject->getSysPage()->versionOL(
'pages', $pageItem, TRUE);
66 if (is_array($pageItem)) {
67 $selectedPages[$pageItem[
'uid']] = $parentObject->getSysPage()->getPageOverlay($pageItem);
69 if (!isset($categoriesPerPage[$pageItem[
'uid']])) {
70 $categoriesPerPage[$pageItem[
'uid']] = array();
72 $categoriesPerPage[$pageItem[
'uid']][] = $categoryUid;
78 foreach ($selectedPages as
$uid => $pageRecord) {
79 $selectedPages[
$uid][
'_categories'] = implode(
',', $categoriesPerPage[
$uid]);
83 self::$sortingField = isset($configuration[
'sorting.']) ? $parentObject->getParentContentObject()->stdWrap($configuration[
'sorting'], $configuration[
'sorting.']) : $configuration[
'sorting'];
84 $order = isset($configuration[
'order.']) ? $parentObject->getParentContentObject()->stdWrap($configuration[
'order'], $configuration[
'order.']) : $configuration[
'order'];
85 $selectedPages = $this->
sortPages($selectedPages, $order);
87 return $selectedPages;
102 if (!empty(self::$sortingField)) {
104 $firstPage = current($pages);
105 if (isset($firstPage[self::$sortingField])) {
107 if (!empty($order)) {
108 $order = strtolower($order);
109 if ($order !=
'desc') {
116 '\TYPO3\CMS\Frontend\ContentObject\Menu\CategoryMenuUtility',
121 if ($order ==
'desc') {
122 $pages = array_reverse($pages, TRUE);
137 return strnatcasecmp($pageA[self::$sortingField], $pageB[self::$sortingField]);
static intExplode($delimiter, $string, $removeEmptyValues=FALSE, $limit=0)
static load($id, $fillItems=FALSE, $tableName='', $fieldName='')