[ Mini Kiebo ]
Server: Windows NT DESKTOP-5B8S0D4 6.2 build 9200 (Windows 8 Professional Edition) i586
Path:
D:
/
Backup
/
05122024
/
htdocs
/
jurnal-kesmas
/
baru
/
lib
/
pkp
/
classes
/
mail
/
traits
/
[
Home
]
File: OneClickReviewerAccess.php
<?php /** * @file classes/mail/traits/OneClickReviewerAccess.php * * Copyright (c) 2014-2023 Simon Fraser University * Copyright (c) 2000-2023 John Willinsky * Distributed under the GNU GPL v3. For full terms see the file docs/COPYING. * * @class OneClickReviewerAccess * * @ingroup mail_traits * * @brief Mailable trait to override the review assignment URL with the * secure, one-click access URL for reviewers */ namespace PKP\mail\traits; use APP\core\Application; use PKP\context\Context; use PKP\mail\variables\ReviewAssignmentEmailVariable; use PKP\security\AccessKeyManager; use PKP\submission\reviewAssignment\ReviewAssignment; trait OneClickReviewerAccess { protected function setOneClickAccessUrl(Context $context, ReviewAssignment $reviewAssignment): void { if (!$context->getData('reviewerAccessKeysEnabled')) { return; } $application = Application::get(); $request = $application->getRequest(); $dispatcher = $application->getDispatcher(); $accessKeyManager = new AccessKeyManager(); $expiryDays = ($this->context->getData('numWeeksPerReview') + 4) * 7; $accessKey = $accessKeyManager->createKey( $context->getId(), $reviewAssignment->getReviewerId(), $reviewAssignment->getId(), $expiryDays ); $this->viewData[ReviewAssignmentEmailVariable::REVIEW_ASSIGNMENT_URL] = $dispatcher->url( $request, Application::ROUTE_PAGE, $context->getData('urlPath'), 'reviewer', 'submission', null, [ 'submissionId' => $reviewAssignment->getSubmissionId(), 'reviewId' => $reviewAssignment->getId(), 'key' => $accessKey, ] ); } }