/**
  * Delete comment.
  */
 function deleteComment($args)
 {
     $articleId = $args[0];
     $commentId = $args[1];
     $this->addCheck(new HandlerValidatorSubmissionComment($this, $commentId));
     $this->validate();
     $comment =& $this->comment;
     $this->setupTemplate(true);
     $submissionLayoutHandler = new SubmissionLayoutHandler();
     $submissionLayoutHandler->validate($articleId);
     $submission =& $submissionLayoutHandler->submission;
     LayoutEditorAction::deleteComment($commentId);
     // Redirect back to initial comments page
     if ($comment->getCommentType() == COMMENT_TYPE_LAYOUT) {
         Request::redirect(null, null, 'viewLayoutComments', $articleId);
     } else {
         if ($comment->getCommentType() == COMMENT_TYPE_PROOFREAD) {
             Request::redirect(null, null, 'viewProofreadComments', $articleId);
         }
     }
 }
 function layoutEditorProofreadingComplete($args)
 {
     import('pages.layoutEditor.SubmissionLayoutHandler');
     SubmissionLayoutHandler::layoutEditorProofreadingComplete($args);
 }
 /**
  * Delete comment.
  */
 function deleteComment($args)
 {
     LayoutEditorHandler::validate();
     LayoutEditorHandler::setupTemplate(true);
     $articleId = $args[0];
     $commentId = $args[1];
     list($journal, $submission) = SubmissionLayoutHandler::validate($articleId);
     list($comment) = SubmissionCommentsHandler::validate($commentId);
     LayoutEditorAction::deleteComment($commentId);
     // Redirect back to initial comments page
     if ($comment->getCommentType() == COMMENT_TYPE_LAYOUT) {
         Request::redirect(null, null, 'viewLayoutComments', $articleId);
     } else {
         if ($comment->getCommentType() == COMMENT_TYPE_PROOFREAD) {
             Request::redirect(null, null, 'viewProofreadComments', $articleId);
         }
     }
 }
 /**
  * Validate that the user is the assigned layout editor for the submission.
  * Redirects to layoutEditor index page if validation fails.
  * @param $articleId int the submission being edited
  * @param $checkEdit boolean check if editor has editing permissions
  */
 function validate($articleId, $checkEdit = false)
 {
     parent::validate();
     $isValid = false;
     $journal =& Request::getJournal();
     $user =& Request::getUser();
     $layoutDao =& DAORegistry::getDAO('LayoutEditorSubmissionDAO');
     $submission =& $layoutDao->getSubmission($articleId, $journal->getJournalId());
     if (isset($submission)) {
         $layoutAssignment =& $submission->getLayoutAssignment();
         if (!isset($layoutAssignment)) {
             $isValid = false;
         } elseif ($layoutAssignment->getEditorId() == $user->getUserId()) {
             if ($checkEdit) {
                 $isValid = SubmissionLayoutHandler::layoutEditingEnabled($submission);
             } else {
                 $isValid = true;
             }
         }
     }
     if (!$isValid) {
         Request::redirect(null, Request::getRequestedPage());
     }
     return array($journal, $submission);
 }
 /**
  * Change the sequence order of a supplementary file.
  */
 function orderSuppFile()
 {
     $articleId = Request::getUserVar('articleId');
     $submissionLayoutHandler = new SubmissionLayoutHandler();
     $submissionLayoutHandler->validate($articleId);
     $submission =& $submissionLayoutHandler->submission;
     LayoutEditorAction::orderSuppFile($submission, Request::getUserVar('suppFileId'), Request::getUserVar('d'));
     Request::redirect(null, null, 'submission', $articleId);
 }