16 import(
'classes.handler.Handler');
27 parent::__construct();
30 array(ROLE_ID_SUB_EDITOR, ROLE_ID_MANAGER),
45 function authorize($request, &$args, $roleAssignments) {
46 import(
'lib.pkp.classes.security.authorization.PKPSiteAccessPolicy');
48 return parent::authorize($request, $args, $roleAssignments);
58 parent::initialize($request);
71 function index($args, $request) {
73 $context = $request->getContext();
76 import(
'lib.pkp.classes.submission.PKPSubmissionDAO');
77 list($catalogSortBy, $catalogSortDir) = explode(
'-', $context->getData(
'catalogSortOption'));
78 $catalogSortBy = empty($catalogSortBy) ? ORDERBY_DATE_PUBLISHED : $catalogSortBy;
79 $catalogSortDir = $catalogSortDir == SORT_DIRECTION_ASC ?
'ASC' :
'DESC';
80 $catalogList = new \APP\components\listPanels\CatalogListPanel(
82 __(
'submission.list.monographs'),
84 'apiUrl' => $request->getDispatcher()->url(
90 'catalogSortBy' => $catalogSortBy,
91 'catalogSortDir' => $catalogSortDir,
93 'status' => STATUS_PUBLISHED,
94 'orderByFeatured' =>
true,
95 'orderBy' => $catalogSortBy,
96 'orderDirection' => $catalogSortDir,
102 $params = array_merge($catalogList->getParams, [
103 'count' => $catalogList->count,
104 'contextId' => $context->getId(),
106 $submissionsIterator = $submissionService->getMany($params);
108 foreach ($submissionsIterator as $submission) {
109 $items[] = $submissionService->getBackendListProperties($submission, [
'request' => $request]);
113 'itemsMax' => $submissionService->getMax($params),
117 $templateMgr->setState([
119 'catalog' => $catalogList->getConfig()
122 return $templateMgr->display(
'manageCatalog/index.tpl');