/** * action show * * @param \VID\UniversalContentLists\Domain\Model\UniversalContent $universalContent * @return void */ public function showAction(\VID\UniversalContentLists\Domain\Model\UniversalContent $universalContent) { $currentPage = 1; if ($this->request->hasArgument('currentPage')) { $currentPage = (int) $this->request->getArgument('currentPage'); } $this->view->assign('currentPage', $currentPage); $this->view->assign("sysLanguageUid", $GLOBALS['TSFE']->sys_language_uid); $this->view->assign('showImageMaxWidth', $this->settings["variables"]["showImageMaxWidth"]); $this->view->assign('biggerwidth', $this->settings["variables"]["biggerwidth"] <= $this->settings["variables"]["showImageMaxWidth"] ? $this->settings["variables"]["biggerwidth"] : $this->settings["variables"]["showImageMaxWidth"]); $this->view->assign('largewidth', $this->settings["variables"]["largewidth"] <= $this->settings["variables"]["showImageMaxWidth"] ? $this->settings["variables"]["largewidth"] : $this->settings["variables"]["showImageMaxWidth"]); $this->view->assign('mediumwidth', $this->settings["variables"]["mediumwidth"] <= $this->settings["variables"]["showImageMaxWidth"] ? $this->settings["variables"]["mediumwidth"] : $this->settings["variables"]["showImageMaxWidth"]); $this->view->assign('smallwidth', $this->settings["variables"]["smallwidth"] <= $this->settings["variables"]["showImageMaxWidth"] ? $this->settings["variables"]["smallwidth"] : $this->settings["variables"]["showImageMaxWidth"]); $this->view->assign('listImageMaxWidth', $this->settings["variables"]["listImageMaxWidth"]); $this->view->assign('showImageMaxHeight', $this->settings["variables"]["showImageMaxHeight"]); $this->view->assign('biggerheight', $this->settings["variables"]["biggerheight"] <= $this->settings["variables"]["showImageMaxHeight"] ? $this->settings["variables"]["biggerheight"] : $this->settings["variables"]["showImageMaxHeight"]); $this->view->assign('largeheight', $this->settings["variables"]["largeheight"] <= $this->settings["variables"]["showImageMaxHeight"] ? $this->settings["variables"]["largeheight"] : $this->settings["variables"]["showImageMaxHeight"]); $this->view->assign('mediumheight', $this->settings["variables"]["mediumheight"] <= $this->settings["variables"]["showImageMaxHeight"] ? $this->settings["variables"]["mediumheight"] : $this->settings["variables"]["showImageMaxHeight"]); $this->view->assign('smallheight', $this->settings["variables"]["smallheight"] <= $this->settings["variables"]["showImageMaxHeight"] ? $this->settings["variables"]["smallheight"] : $this->settings["variables"]["showImageMaxHeight"]); $this->view->assign('listImageMaxHeight', $this->settings["variables"]["listImageMaxHeight"]); $tags = $universalContent->getTags(); $tagUIDs = array(); /** * @var \VID\UniversalContentLists\Domain\Model\Tag $tag */ foreach ($tags as $tag) { $tagUIDs[] = $tag->getUid(); } if ($this->settings["getRelatedFromTags"] == "1" && count($tagUIDs) > 0) { // sortfield $validSortfields = array("sorting", "colPos", "date", "crdate", "tstamp"); $sortfield_ = $this->settings["sortfield"]; $sortfield = in_array($sortfield_, $validSortfields) ? $sortfield_ : "sorting"; // sorting $validSortings = array("ASC", "DESC"); $sorting_ = $this->settings["sorting"]; $sorting = in_array($sorting_, $validSortings) ? $sorting_ : "ASC"; #\TYPO3\CMS\Extbase\Utility\DebuggerUtility::var_dump(array("tagUIDs"=>$tagUIDs)); $limit = (int) $this->settings["relatedLimit"]; $universalContent->setRelations($this->universalContentRepository->getRelatedByTagList($universalContent, $tagUIDs, $limit, $sortfield, $sorting)); #\TYPO3\CMS\Extbase\Utility\DebuggerUtility::var_dump(array("universalContent"=>$universalContent)); } $this->view->assign('detailArticle', $universalContent); }
/** * action getList * * @param \VID\UniversalContentLists\Domain\Model\Tag $tag * @return QueryResultInterface|array|int */ public function getList($tagID = 0, $currentPage = 1, $countQuery = FALSE, $searchWord = NULL) { // forbiddenCTypes $forbiddenCTypes = array(); if (isset($this->settings["forbiddenCTypes"]) && $this->settings["forbiddenCTypes"] != '') { $forbiddenCTypes = explode(',', $this->settings["forbiddenCTypes"]); } // pids $pidList = array(); switch ($this->settings["selectMode"]) { case "pid": $pidList = explode(',', $this->settings["storagePIDs"]); break; case "currentPage": $pidList = array($GLOBALS['TSFE']->id); break; } // categories $categoriesIDList = array(); if (isset($this->settings["limitToCategories"]) && $this->settings["limitToCategories"] != '') { $categoriesIDList = explode(',', $this->settings["limitToCategories"]); } // columns $ColPosIDList = array(); if (isset($this->settings["limitTocColPosIDs"]) && $this->settings["limitTocColPosIDs"] != '') { $ColPosIDList = explode(',', $this->settings["limitTocColPosIDs"]); } // limit $limit = (int) $this->settings["itemsPerPage"]; $offset = 0; if ($currentPage > 1) { $offset = $limit * ($currentPage - 1); } // sortfield $validSortfields = array("sorting", "colPos", "date", "crdate", "tstamp"); $sortfield_ = $this->settings["sortfield"]; $sortfield = in_array($sortfield_, $validSortfields) ? $sortfield_ : "sorting"; // sorting $validSortings = array("ASC", "DESC"); $sorting_ = $this->settings["sorting"]; $sorting = in_array($sorting_, $validSortings) ? $sorting_ : "ASC"; return $this->universalContentRepository->getListWithQuerySettings($this->cacheInstance, $forbiddenCTypes, $pidList, $categoriesIDList, $ColPosIDList, $limit, $offset, $tagID, $sortfield, $sorting, $countQuery, $searchWord); }