/** * Display copyeditor index page. */ function index($args) { CopyeditorHandler::validate(); CopyeditorHandler::setupTemplate(); $journal =& Request::getJournal(); $user =& Request::getUser(); $copyeditorSubmissionDao =& DAORegistry::getDAO('CopyeditorSubmissionDAO'); // Get the user's search conditions, if any $searchField = Request::getUserVar('searchField'); $dateSearchField = Request::getUserVar('dateSearchField'); $searchMatch = Request::getUserVar('searchMatch'); $search = Request::getUserVar('search'); $fromDate = Request::getUserDateVar('dateFrom', 1, 1); if ($fromDate !== null) { $fromDate = date('Y-m-d H:i:s', $fromDate); } $toDate = Request::getUserDateVar('dateTo', 32, 12, null, 23, 59, 59); if ($toDate !== null) { $toDate = date('Y-m-d H:i:s', $toDate); } $rangeInfo = Handler::getRangeInfo('submissions'); $page = isset($args[0]) ? $args[0] : ''; switch ($page) { case 'completed': $active = false; break; default: $page = 'active'; $active = true; } $submissions = $copyeditorSubmissionDao->getCopyeditorSubmissionsByCopyeditorId($user->getUserId(), $journal->getJournalId(), $searchField, $searchMatch, $search, $dateSearchField, $fromDate, $toDate, $active, $rangeInfo); $templateMgr =& TemplateManager::getManager(); $templateMgr->assign('pageToDisplay', $page); $templateMgr->assign_by_ref('submissions', $submissions); // Set search parameters $duplicateParameters = array('searchField', 'searchMatch', 'search', 'dateFromMonth', 'dateFromDay', 'dateFromYear', 'dateToMonth', 'dateToDay', 'dateToYear', 'dateSearchField'); foreach ($duplicateParameters as $param) { $templateMgr->assign($param, Request::getUserVar($param)); } $templateMgr->assign('dateFrom', $fromDate); $templateMgr->assign('dateTo', $toDate); $templateMgr->assign('fieldOptions', array(SUBMISSION_FIELD_TITLE => 'article.title', SUBMISSION_FIELD_AUTHOR => 'user.role.author', SUBMISSION_FIELD_EDITOR => 'user.role.editor')); $templateMgr->assign('dateFieldOptions', array(SUBMISSION_FIELD_DATE_SUBMITTED => 'submissions.submitted', SUBMISSION_FIELD_DATE_COPYEDIT_COMPLETE => 'submissions.copyeditComplete', SUBMISSION_FIELD_DATE_LAYOUT_COMPLETE => 'submissions.layoutComplete', SUBMISSION_FIELD_DATE_PROOFREADING_COMPLETE => 'submissions.proofreadingComplete')); import('issue.IssueAction'); $issueAction =& new IssueAction(); $templateMgr->register_function('print_issue_id', array($issueAction, 'smartyPrintIssueId')); $templateMgr->assign('helpTopicId', 'editorial.copyeditorsRole.submissions'); $templateMgr->display('copyeditor/index.tpl'); }
/** * Validate that the user is the assigned copyeditor for * the article. * Redirects to copyeditor index page if validation fails. */ function validate($articleId) { parent::validate(); $copyeditorSubmissionDao =& DAORegistry::getDAO('CopyeditorSubmissionDAO'); $journal =& Request::getJournal(); $user =& Request::getUser(); $isValid = true; $copyeditorSubmission =& $copyeditorSubmissionDao->getCopyeditorSubmission($articleId, $user->getId()); if ($copyeditorSubmission == null) { $isValid = false; } else { if ($copyeditorSubmission->getJournalId() != $journal->getId()) { $isValid = false; } else { if ($copyeditorSubmission->getUserIdBySignoffType('SIGNOFF_COPYEDITING_INITIAL') != $user->getId()) { $isValid = false; } } } if (!$isValid) { Request::redirect(null, Request::getRequestedPage()); } $this->submission =& $copyeditorSubmission; return true; }
/** * Validate that the user is the assigned copyeditor for * the article. * Redirects to copyeditor index page if validation fails. */ function validate($articleId) { parent::validate(); $copyeditorSubmissionDao =& DAORegistry::getDAO('CopyeditorSubmissionDAO'); $journal =& Request::getJournal(); $user =& Request::getUser(); $isValid = true; $copyeditorSubmission =& $copyeditorSubmissionDao->getCopyeditorSubmission($articleId, $user->getUserId()); if ($copyeditorSubmission == null) { $isValid = false; } else { if ($copyeditorSubmission->getJournalId() != $journal->getJournalId()) { $isValid = false; } else { if ($copyeditorSubmission->getCopyeditorId() != $user->getUserId()) { $isValid = false; } } } if (!$isValid) { Request::redirect(null, Request::getRequestedPage()); } return array($journal, $copyeditorSubmission); }
/** * Validate that the user is the author of the comment. */ function validate($commentId) { parent::validate(); $isValid = true; $articleCommentDao =& DAORegistry::getDAO('ArticleCommentDAO'); $user =& Request::getUser(); $comment =& $articleCommentDao->getArticleCommentById($commentId); if ($comment == null) { $isValid = false; } else { if ($comment->getAuthorId() != $user->getUserId()) { $isValid = false; } } if (!$isValid) { Request::redirect(null, Request::getRequestedPage()); } return array($comment); }