One Hat Cyber Team
Your IP :
216.73.216.115
Server IP :
194.44.31.54
Server :
Linux zen.imath.kiev.ua 4.18.0-553.77.1.el8_10.x86_64 #1 SMP Fri Oct 3 14:30:23 UTC 2025 x86_64
Server Software :
Apache/2.4.37 (Rocky Linux) OpenSSL/1.1.1k
PHP Version :
5.6.40
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
var
/
www
/
ojs-nosc
/
pages
/
dois
/
View File Name :
DoisHandler.php
<?php /** * @file /pages/dois/DoiManagementHandler.php * * Copyright (c) 2014-2021 Simon Fraser University * Copyright (c) 2003-2021 John Willinsky * Distributed under the GNU GPL v3. For full terms see the file docs/COPYING. * * @class DoisHandler * * @ingroup pages_doi * * @brief Handle requests for DOI management functions. */ namespace APP\pages\dois; use APP\components\listPanels\DoiListPanel; use APP\facades\Repo; use PKP\core\PKPApplication; use PKP\pages\dois\PKPDoisHandler; class DoisHandler extends PKPDoisHandler { /** * Set app-specific state components to appear on DOI management page */ protected function getAppStateComponents(\APP\core\Request $request, array $enabledDoiTypes, array $commonArgs): array { $context = $request->getContext(); $stateComponents = []; // Publication and Galley DOIs if (count(array_intersect($enabledDoiTypes, [Repo::doi()::TYPE_PUBLICATION, Repo::doi()::TYPE_REPRESENTATION])) > 0) { $submissionDoiListPanel = new DoiListPanel( 'submissionDoiListPanel', __('doi.manager.submissionDois'), array_merge( $commonArgs, [ 'apiUrl' => $request->getDispatcher()->url($request, PKPApplication::ROUTE_API, $context->getPath(), 'submissions'), 'getParams' => [ 'stageIds' => [WORKFLOW_STAGE_ID_EDITING, WORKFLOW_STAGE_ID_PRODUCTION], ], 'isSubmission' => true, 'includeIssuesFilter' => true, 'itemType' => 'submission' ] ) ); $stateComponents[$submissionDoiListPanel->id] = $submissionDoiListPanel->getConfig(); } // Issues DOIs if (in_array(Repo::doi()::TYPE_ISSUE, $enabledDoiTypes)) { $issueDoiListPanel = new DoiListPanel( 'issueDoiListPanel', __('doi.manager.issueDois'), array_merge( $commonArgs, [ 'apiUrl' => $request->getDispatcher()->url($request, PKPApplication::ROUTE_API, $context->getPath(), 'issues'), 'getParams' => [], 'isSubmission' => false, 'includeIssuesFilter' => false, 'itemType' => 'issue', ] ) ); $stateComponents[$issueDoiListPanel->id] = $issueDoiListPanel->getConfig(); } return $stateComponents; } /** * Set Smarty template variables. Which tabs to display are set by the APP. */ protected function getTemplateVariables(array $enabledDoiTypes): array { $templateVariables = parent::getTemplateVariables($enabledDoiTypes); return array_merge( $templateVariables, [ 'displaySubmissionsTab' => count(array_intersect($enabledDoiTypes, [Repo::doi()::TYPE_PUBLICATION, Repo::doi()::TYPE_REPRESENTATION])) > 0, 'displayIssuesTab' => in_array(Repo::doi()::TYPE_ISSUE, $enabledDoiTypes), ] ); } }