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, ] ); } }