| Server IP : 10.10.92.66 / Your IP : 104.23.197.230 Web Server : Apache/2.4.52 (Ubuntu) System : Linux jurnalpolinema 5.15.0-177-generic #187-Ubuntu SMP Sat Apr 11 22:54:33 UTC 2026 x86_64 User : jurnal ( 1001) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/jurnal/public_html/controllers/tab/workflow/ |
Upload File : |
<?php
/**
* @file controllers/tab/workflow/WorkflowTabHandler.inc.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 WorkflowTabHandler
* @ingroup controllers_tab_workflow
*
* @brief Handle AJAX operations for workflow tabs.
*/
// Import the base Handler.
import('lib.pkp.controllers.tab.workflow.PKPWorkflowTabHandler');
class WorkflowTabHandler extends PKPWorkflowTabHandler {
/**
* @copydoc PKPWorkflowTabHandler::fetchTab
*/
function fetchTab($args, $request) {
$this->setupTemplate($request);
$templateMgr = TemplateManager::getManager($request);
$stageId = $this->getAuthorizedContextObject(ASSOC_TYPE_WORKFLOW_STAGE);
$submission = $this->getAuthorizedContextObject(ASSOC_TYPE_SUBMISSION);
switch ($stageId) {
case WORKFLOW_STAGE_ID_PRODUCTION:
$dispatcher = $request->getDispatcher();
import('lib.pkp.classes.linkAction.request.AjaxModal');
$schedulePublicationLinkAction = new LinkAction(
'schedulePublication',
new AjaxModal(
$dispatcher->url(
$request, ROUTE_COMPONENT, null,
'tab.issueEntry.IssueEntryTabHandler',
'publicationMetadata', null,
array('submissionId' => $submission->getId(), 'stageId' => $stageId)
),
__('submission.publication')
),
__('editor.submission.schedulePublication')
);
$templateMgr->assign('schedulePublicationLinkAction', $schedulePublicationLinkAction);
break;
}
return parent::fetchTab($args, $request);
}
/**
* Get all production notification options to be used in the production stage tab.
* @param $submissionId int
* @return array
*/
protected function getProductionNotificationOptions($submissionId) {
return array(
NOTIFICATION_LEVEL_NORMAL => array(
NOTIFICATION_TYPE_VISIT_CATALOG => array(ASSOC_TYPE_SUBMISSION, $submissionId),
NOTIFICATION_TYPE_ASSIGN_PRODUCTIONUSER => array(ASSOC_TYPE_SUBMISSION, $submissionId),
NOTIFICATION_TYPE_AWAITING_REPRESENTATIONS => array(ASSOC_TYPE_SUBMISSION, $submissionId),
),
NOTIFICATION_LEVEL_TRIVIAL => array()
);
}
}