Open Monograph Press  3.3.0
ViewSubmissionMetadataHandler.inc.php
1 <?php
15 // Import the base Handler.
16 import('classes.handler.Handler');
17 
18 class ViewSubmissionMetadataHandler extends handler {
19 
23  function __construct() {
24  parent::__construct();
25  $this->addRoleAssignment(array(ROLE_ID_REVIEWER), array('display'));
26  }
27 
31  function authorize($request, &$args, $roleAssignments) {
32  import('lib.pkp.classes.security.authorization.SubmissionAccessPolicy');
33  $this->addPolicy(new SubmissionAccessPolicy($request, $args, $roleAssignments));
34  return parent::authorize($request, $args, $roleAssignments);
35  }
36 
40  function display($args, $request) {
41  $submission = $this->getAuthorizedContextObject(ASSOC_TYPE_SUBMISSION);
42  $reviewAssignment = $this->getAuthorizedContextObject(ASSOC_TYPE_REVIEW_ASSIGNMENT);
43  $context = $request->getContext();
44  $templateMgr = TemplateManager::getManager($request);
45  $publication = $submission->getCurrentPublication();
46 
47  if ($reviewAssignment->getReviewMethod() != SUBMISSION_REVIEW_METHOD_DOUBLEBLIND) { /* SUBMISSION_REVIEW_METHOD_BLIND or _OPEN */
48  $userGroupDao = DAORegistry::getDAO('UserGroupDAO'); /* @var $userGroupDao UserGroupDAO */
49  $userGroups = $userGroupDao->getByContextId($context->getId())->toArray();
50  $templateMgr->assign('authors', $publication->getAuthorString($userGroups));
51  }
52 
53  $templateMgr->assign('publication', $publication);
54 
55  if ($publication->getLocalizedData('keywords')) {
56  $additionalMetadata[] = array(__('common.keywords'), implode(', ', $publication->getLocalizedData('keywords')));
57  }
58  if ($publication->getLocalizedData('subjects')) {
59  $additionalMetadata[] = array(__('common.subjects'), implode(', ', $publication->getLocalizedData('subjects')));
60  }
61  if ($publication->getLocalizedData('disciplines')) {
62  $additionalMetadata[] = array(__('common.discipline'), implode(', ', $publication->getLocalizedData('disciplines')));
63  }
64  if ($publication->getLocalizedData('agencies')) {
65  $additionalMetadata[] = array(__('submission.agencies'), implode(', ', $publication->getLocalizedData('agencies')));
66  }
67  if ($publication->getLocalizedData('languages')) {
68  $additionalMetadata[] = array(__('common.languages'), implode(', ', $publication->getLocalizedData('languages')));
69  }
70 
71  $templateMgr->assign('additionalMetadata', $additionalMetadata);
72 
73  return $templateMgr->fetchJson('controllers/modals/submission/viewSubmissionMetadata.tpl');
74 
75  }
76 }
DAORegistry\getDAO
static & getDAO($name, $dbconn=null)
Definition: DAORegistry.inc.php:57
ViewSubmissionMetadataHandler
Display submission metadata.
Definition: ViewSubmissionMetadataHandler.inc.php:18
PKPTemplateManager\getManager
static & getManager($request=null)
Definition: PKPTemplateManager.inc.php:1239
ViewSubmissionMetadataHandler\__construct
__construct()
Definition: ViewSubmissionMetadataHandler.inc.php:23
ViewSubmissionMetadataHandler\display
display($args, $request)
Definition: ViewSubmissionMetadataHandler.inc.php:40
SubmissionAccessPolicy
Base class to control (write) access to submissions and (read) access to submission details in OMP.
Definition: SubmissionAccessPolicy.inc.php:19
ViewSubmissionMetadataHandler\authorize
authorize($request, &$args, $roleAssignments)
Definition: ViewSubmissionMetadataHandler.inc.php:31