/**
  * View an assigned submission's layout editing page.
  * @param $args array ($articleId)
  */
 function submission($args)
 {
     $articleId = isset($args[0]) ? $args[0] : 0;
     list($journal, $submission) = SubmissionLayoutHandler::validate($articleId);
     parent::setupTemplate(true, $articleId);
     import('submission.proofreader.ProofreaderAction');
     ProofreaderAction::layoutEditorProofreadingUnderway($submission);
     $layoutAssignment =& $submission->getLayoutAssignment();
     if ($layoutAssignment->getDateNotified() != null && $layoutAssignment->getDateUnderway() == null) {
         // Set underway date
         $layoutAssignment->setDateUnderway(Core::getCurrentDate());
         $layoutDao =& DAORegistry::getDAO('LayoutEditorSubmissionDAO');
         $layoutDao->updateSubmission($submission);
     }
     $disableEdit = !SubmissionLayoutHandler::layoutEditingEnabled($submission);
     $templateMgr =& TemplateManager::getManager();
     $templateMgr->assign_by_ref('submission', $submission);
     $templateMgr->assign('disableEdit', $disableEdit);
     $templateMgr->assign('useProofreaders', $journal->getSetting('useProofreaders'));
     $templateMgr->assign('templates', $journal->getSetting('templates'));
     $templateMgr->assign('helpTopicId', 'editorial.layoutEditorsRole.layout');
     $publishedArticleDao =& DAORegistry::getDAO('PublishedArticleDAO');
     $publishedArticle =& $publishedArticleDao->getPublishedArticleByArticleId($submission->getArticleId());
     if ($publishedArticle) {
         $issueDao =& DAORegistry::getDAO('IssueDAO');
         $issue =& $issueDao->getIssueById($publishedArticle->getIssueId());
         $templateMgr->assign_by_ref('publishedArticle', $publishedArticle);
         $templateMgr->assign_by_ref('issue', $issue);
     }
     $templateMgr->display('layoutEditor/submission.tpl');
 }