89 lines
3.4 KiB
PHP
89 lines
3.4 KiB
PHP
<?php
|
|
|
|
/**
|
|
* @defgroup decision Decision
|
|
*/
|
|
|
|
/**
|
|
* @file classes/decision/Decision.php
|
|
*
|
|
* Copyright (c) 2014-2022 Simon Fraser University
|
|
* Copyright (c) 2000-2022 John Willinsky
|
|
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
|
|
*
|
|
* @class Decision
|
|
*
|
|
* @ingroup decision
|
|
*
|
|
* @see DAO
|
|
*
|
|
* @brief An editorial decision taken on a submission, such as to accept, decline or request revisions.
|
|
*/
|
|
|
|
namespace PKP\decision;
|
|
|
|
use APP\facades\Repo;
|
|
use Exception;
|
|
use PKP\core\DataObject;
|
|
|
|
class Decision extends DataObject
|
|
{
|
|
public const INTERNAL_REVIEW = 1;
|
|
public const ACCEPT = 2;
|
|
public const EXTERNAL_REVIEW = 3;
|
|
public const PENDING_REVISIONS = 4;
|
|
public const RESUBMIT = 5;
|
|
public const DECLINE = 6;
|
|
public const SEND_TO_PRODUCTION = 7;
|
|
public const INITIAL_DECLINE = 8;
|
|
public const RECOMMEND_ACCEPT = 9;
|
|
public const RECOMMEND_PENDING_REVISIONS = 10;
|
|
public const RECOMMEND_RESUBMIT = 11;
|
|
public const RECOMMEND_DECLINE = 12;
|
|
public const RECOMMEND_EXTERNAL_REVIEW = 13; // OMP Specific
|
|
public const NEW_EXTERNAL_ROUND = 14;
|
|
public const REVERT_DECLINE = 15;
|
|
public const REVERT_INITIAL_DECLINE = 16;
|
|
public const SKIP_EXTERNAL_REVIEW = 17;
|
|
public const SKIP_INTERNAL_REVIEW = 18; // OMP Specific
|
|
public const ACCEPT_INTERNAL = 19; // OMP Specific
|
|
public const PENDING_REVISIONS_INTERNAL = 20; // OMP Specific
|
|
public const RESUBMIT_INTERNAL = 21; // OMP Specific
|
|
public const DECLINE_INTERNAL = 22; // OMP Specific
|
|
public const RECOMMEND_ACCEPT_INTERNAL = 23; // OMP Specific
|
|
public const RECOMMEND_PENDING_REVISIONS_INTERNAL = 24; // OMP Specific
|
|
public const RECOMMEND_RESUBMIT_INTERNAL = 25; // OMP Specific
|
|
public const RECOMMEND_DECLINE_INTERNAL = 26; // OMP Specific
|
|
public const REVERT_INTERNAL_DECLINE = 27; // OMP Specific
|
|
public const NEW_INTERNAL_ROUND = 28; // OMP Specific
|
|
public const BACK_FROM_PRODUCTION = 29;
|
|
public const BACK_FROM_COPYEDITING = 30;
|
|
public const CANCEL_REVIEW_ROUND = 31;
|
|
public const CANCEL_INTERNAL_REVIEW_ROUND = 32; // OMP Specific
|
|
|
|
|
|
/**
|
|
* Get the decision type for this decision
|
|
*/
|
|
public function getDecisionType(): DecisionType
|
|
{
|
|
$decisionType = Repo::decision()->getDecisionType($this->getData('decision'));
|
|
if (!$decisionType) {
|
|
throw new Exception('Decision exists with an unknown type. Decision: ' . $this->getData('decisions'));
|
|
}
|
|
return $decisionType;
|
|
}
|
|
}
|
|
|
|
if (!PKP_STRICT_MODE) {
|
|
// Some constants are not redefined here because they never existed as global constants
|
|
define('SUBMISSION_EDITOR_DECISION_INITIAL_DECLINE', Decision::INITIAL_DECLINE);
|
|
define('SUBMISSION_EDITOR_RECOMMEND_ACCEPT', Decision::RECOMMEND_ACCEPT);
|
|
define('SUBMISSION_EDITOR_RECOMMEND_PENDING_REVISIONS', Decision::RECOMMEND_PENDING_REVISIONS);
|
|
define('SUBMISSION_EDITOR_RECOMMEND_RESUBMIT', Decision::RECOMMEND_RESUBMIT);
|
|
define('SUBMISSION_EDITOR_RECOMMEND_DECLINE', Decision::RECOMMEND_DECLINE);
|
|
define('SUBMISSION_EDITOR_DECISION_REVERT_DECLINE', Decision::REVERT_DECLINE);
|
|
define('SUBMISSION_EDITOR_DECISION_SEND_TO_PRODUCTION', Decision::SEND_TO_PRODUCTION);
|
|
define('SUBMISSION_EDITOR_DECISION_NEW_ROUND', Decision::NEW_EXTERNAL_ROUND);
|
|
}
|