issue = $issue; $this->issueGalley = $issueGalley; parent::__construct($assocType, $context, $submission, $galley, $submissionFile); } /** * Get the canonical URL for the usage object * * @throws Exception */ protected function getCanonicalUrl(): string { if (in_array($this->assocType, [Application::ASSOC_TYPE_ISSUE, Application::ASSOC_TYPE_ISSUE_GALLEY])) { $canonicalUrlPage = $canonicalUrlOp = null; $canonicalUrlParams = []; switch ($this->assocType) { case Application::ASSOC_TYPE_ISSUE_GALLEY: $canonicalUrlOp = 'download'; $canonicalUrlParams = [$this->issue->getId(), $this->issueGalley->getId()]; break; case Application::ASSOC_TYPE_ISSUE: $canonicalUrlOp = 'view'; $canonicalUrlParams = [$this->issue->getId()]; break; } $canonicalUrl = $this->getRouterCanonicalUrl($this->request, $canonicalUrlPage, $canonicalUrlOp, $canonicalUrlParams); return $canonicalUrl; } else { return parent::getCanonicalUrl(); } } }