One Hat Cyber Team
Your IP :
216.73.216.216
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
/
classes
/
submissionFile
/
Edit File:
Repository.php
<?php /** * @file classes/submissionFile/Repository.php * * Copyright (c) 2014-2020 Simon Fraser University * Copyright (c) 2000-2020 John Willinsky * Distributed under the GNU GPL v3. For full terms see the file docs/COPYING. * * @class Repository * * @brief A repository to find and manage submission files. */ namespace APP\submissionFile; use APP\core\Application; use APP\facades\Repo; use Exception; use Illuminate\Support\Facades\App; use PKP\observers\events\SubmissionFileDeleted; use PKP\plugins\Hook; use PKP\submissionFile\Collector; use PKP\submissionFile\Repository as BaseRepository; use PKP\submissionFile\SubmissionFile; class Repository extends BaseRepository { public array $reviewFileStages = [ SubmissionFile::SUBMISSION_FILE_REVIEW_REVISION, SubmissionFile::SUBMISSION_FILE_REVIEW_ATTACHMENT, SubmissionFile::SUBMISSION_FILE_REVIEW_FILE, ]; public function getCollector(): Collector { return App::makeWith(Collector::class, ['dao' => $this->dao]); } public function add(SubmissionFile $submissionFile): int { $galley = null; if ($submissionFile->getData('assocType') === Application::ASSOC_TYPE_REPRESENTATION) { $galley = Repo::galley()->get($submissionFile->getData('assocId')); if (!$galley) { throw new Exception('Galley not found when adding submission file.'); } } $submissionFileId = parent::add($submissionFile); if ($galley) { Repo::galley()->edit($galley, ['submissionFileId' => $submissionFile->getId()]); } return $submissionFileId; } public function delete(SubmissionFile $submissionFile): void { $this->deleteRelatedSubmissionFileObjects($submissionFile); parent::delete($submissionFile); } /** * Delete related objects when a submission file is deleted */ public function deleteRelatedSubmissionFileObjects(SubmissionFile $submissionFile): void { // Remove galley associations and update search index if ($submissionFile->getData('assocType') === Application::ASSOC_TYPE_REPRESENTATION) { $galley = Repo::galley()->get((int)$submissionFile->getData('assocId')); if ($galley && $galley->getData('submissionFileId') == $submissionFile->getId()) { $galley->_data['submissionFileId'] = null; // Work around pkp/pkp-lib#5740 Repo::galley()->edit($galley, []); } event( new SubmissionFileDeleted( (int)$submissionFile->getData('submissionId'), (int)$submissionFile->getId() ) ); } } public function getFileStages(): array { $stages = [ SubmissionFile::SUBMISSION_FILE_SUBMISSION, SubmissionFile::SUBMISSION_FILE_NOTE, SubmissionFile::SUBMISSION_FILE_REVIEW_FILE, SubmissionFile::SUBMISSION_FILE_REVIEW_ATTACHMENT, SubmissionFile::SUBMISSION_FILE_FINAL, SubmissionFile::SUBMISSION_FILE_COPYEDIT, SubmissionFile::SUBMISSION_FILE_PROOF, SubmissionFile::SUBMISSION_FILE_PRODUCTION_READY, SubmissionFile::SUBMISSION_FILE_ATTACHMENT, SubmissionFile::SUBMISSION_FILE_REVIEW_REVISION, SubmissionFile::SUBMISSION_FILE_DEPENDENT, SubmissionFile::SUBMISSION_FILE_QUERY, ]; Hook::call('SubmissionFile::fileStages', [&$stages]); return $stages; } }
Simpan