getDataObjectId(); if (!$representationId) { return AuthorizationPolicy::AUTHORIZATION_DENY; } // Need a valid submission in request. $submission = $this->getAuthorizedContextObject(Application::ASSOC_TYPE_SUBMISSION); if (!$submission instanceof Submission) { return AuthorizationPolicy::AUTHORIZATION_DENY; } // Need a valid publication in request $publication = $this->getAuthorizedContextObject(Application::ASSOC_TYPE_PUBLICATION); if (!$publication instanceof Publication) { return AuthorizationPolicy::AUTHORIZATION_DENY; } // Make sure the representation belongs to the submission. $representationDao = Application::getRepresentationDAO(); $representation = $representationDao->getById($representationId, $publication->getId()); if (!$representation instanceof Representation) { return AuthorizationPolicy::AUTHORIZATION_DENY; } // Save the representation to the authorization context. $this->addAuthorizedContextObject(Application::ASSOC_TYPE_REPRESENTATION, $representation); return AuthorizationPolicy::AUTHORIZATION_PERMIT; } } if (!PKP_STRICT_MODE) { class_alias('\PKP\security\authorization\internal\RepresentationRequiredPolicy', '\RepresentationRequiredPolicy'); }