00001 <?php
00002
00015
00016
00017
00018 import('submission.proofreader.ProofreaderAction');
00019
00020 class ProofreaderHandler extends Handler {
00021
00025 function index($args) {
00026 ProofreaderHandler::validate();
00027 ProofreaderHandler::setupTemplate();
00028
00029 $journal = &Request::getJournal();
00030 $user = &Request::getUser();
00031 $proofreaderSubmissionDao = &DAORegistry::getDAO('ProofreaderSubmissionDAO');
00032
00033
00034 $searchField = Request::getUserVar('searchField');
00035 $dateSearchField = Request::getUserVar('dateSearchField');
00036 $searchMatch = Request::getUserVar('searchMatch');
00037 $search = Request::getUserVar('search');
00038
00039 $fromDate = Request::getUserDateVar('dateFrom', 1, 1);
00040 if ($fromDate !== null) $fromDate = date('Y-m-d H:i:s', $fromDate);
00041 $toDate = Request::getUserDateVar('dateTo', 32, 12, null, 23, 59, 59);
00042 if ($toDate !== null) $toDate = date('Y-m-d H:i:s', $toDate);
00043
00044 $rangeInfo = Handler::getRangeInfo('submissions');
00045
00046 $page = isset($args[0]) ? $args[0] : '';
00047 switch($page) {
00048 case 'completed':
00049 $active = false;
00050 break;
00051 default:
00052 $page = 'active';
00053 $active = true;
00054 }
00055
00056 $submissions = $proofreaderSubmissionDao->getSubmissions($user->getUserId(), $journal->getJournalId(), $searchField, $searchMatch, $search, $dateSearchField, $fromDate, $toDate, $active, $rangeInfo);
00057
00058 $templateMgr = &TemplateManager::getManager();
00059 $templateMgr->assign('pageToDisplay', $page);
00060 $templateMgr->assign_by_ref('submissions', $submissions);
00061
00062
00063 $duplicateParameters = array(
00064 'searchField', 'searchMatch', 'search',
00065 'dateFromMonth', 'dateFromDay', 'dateFromYear',
00066 'dateToMonth', 'dateToDay', 'dateToYear',
00067 'dateSearchField'
00068 );
00069 foreach ($duplicateParameters as $param)
00070 $templateMgr->assign($param, Request::getUserVar($param));
00071
00072 $templateMgr->assign('dateFrom', $fromDate);
00073 $templateMgr->assign('dateTo', $toDate);
00074 $templateMgr->assign('fieldOptions', Array(
00075 SUBMISSION_FIELD_TITLE => 'article.title',
00076 SUBMISSION_FIELD_AUTHOR => 'user.role.author',
00077 SUBMISSION_FIELD_EDITOR => 'user.role.editor'
00078 ));
00079 $templateMgr->assign('dateFieldOptions', Array(
00080 SUBMISSION_FIELD_DATE_SUBMITTED => 'submissions.submitted',
00081 SUBMISSION_FIELD_DATE_COPYEDIT_COMPLETE => 'submissions.copyeditComplete',
00082 SUBMISSION_FIELD_DATE_LAYOUT_COMPLETE => 'submissions.layoutComplete',
00083 SUBMISSION_FIELD_DATE_PROOFREADING_COMPLETE => 'submissions.proofreadingComplete'
00084 ));
00085
00086 import('issue.IssueAction');
00087 $issueAction = &new IssueAction();
00088 $templateMgr->register_function('print_issue_id', array($issueAction, 'smartyPrintIssueId'));
00089 $templateMgr->assign('helpTopicId', 'editorial.proofreadersRole.submissions');
00090 $templateMgr->display('proofreader/index.tpl');
00091 }
00092
00097 function validate() {
00098 parent::validate();
00099 $journal = &Request::getJournal();
00100 if (!isset($journal) || !Validation::isProofreader($journal->getJournalId())) {
00101 Validation::redirectLogin();
00102 }
00103 }
00104
00109 function setupTemplate($subclass = false, $articleId = 0, $parentPage = null, $showSidebar = true) {
00110 $templateMgr = &TemplateManager::getManager();
00111 $pageHierarchy = $subclass ? array(array(Request::url(null, 'user'), 'navigation.user'), array(Request::url(null, 'proofreader'), 'user.role.proofreader'))
00112 : array(array(Request::url(null, 'user'), 'navigation.user'), array(Request::url(null, 'proofreader'), 'user.role.proofreader'));
00113
00114 import('submission.sectionEditor.SectionEditorAction');
00115 $submissionCrumb = SectionEditorAction::submissionBreadcrumb($articleId, $parentPage, 'proofreader');
00116 if (isset($submissionCrumb)) {
00117 $pageHierarchy = array_merge($pageHierarchy, $submissionCrumb);
00118 }
00119 $templateMgr->assign('pageHierarchy', $pageHierarchy);
00120 }
00121
00126 function instructions($args) {
00127 if (!isset($args[0]) || !ProofreaderAction::instructions($args[0], array('proof'))) {
00128 Request::redirect(null, Request::getRequestedPage());
00129 }
00130 }
00131
00132
00133
00134
00135
00136 function submission($args) {
00137 import('pages.proofreader.SubmissionProofreadHandler');
00138 SubmissionProofreadHandler::submission($args);
00139 }
00140
00141 function completeProofreader($args) {
00142 import('pages.proofreader.SubmissionProofreadHandler');
00143 SubmissionProofreadHandler::completeProofreader($args);
00144 }
00145
00146
00147
00148
00149
00150 function viewProofreadComments($args) {
00151 import('pages.proofreader.SubmissionCommentsHandler');
00152 SubmissionCommentsHandler::viewProofreadComments($args);
00153 }
00154
00155 function postProofreadComment() {
00156 import('pages.proofreader.SubmissionCommentsHandler');
00157 SubmissionCommentsHandler::postProofreadComment();
00158 }
00159
00160 function viewLayoutComments($args) {
00161 import('pages.proofreader.SubmissionCommentsHandler');
00162 SubmissionCommentsHandler::viewLayoutComments($args);
00163 }
00164
00165 function postLayoutComment() {
00166 import('pages.proofreader.SubmissionCommentsHandler');
00167 SubmissionCommentsHandler::postLayoutComment();
00168 }
00169
00170
00171
00172
00173
00174 function downloadFile($args) {
00175 import('pages.proofreader.SubmissionProofreadHandler');
00176 SubmissionProofreadHandler::downloadFile($args);
00177 }
00178
00179 function viewFile($args) {
00180 import('pages.proofreader.SubmissionProofreadHandler');
00181 SubmissionProofreadHandler::viewFile($args);
00182 }
00183
00184 function proofGalley($args) {
00185 import('pages.proofreader.SubmissionProofreadHandler');
00186 SubmissionProofreadHandler::proofGalley($args);
00187 }
00188
00189 function proofGalleyTop($args) {
00190 import('pages.proofreader.SubmissionProofreadHandler');
00191 SubmissionProofreadHandler::proofGalleyTop($args);
00192 }
00193
00194 function proofGalleyFile($args) {
00195 import('pages.proofreader.SubmissionProofreadHandler');
00196 SubmissionProofreadHandler::proofGalleyFile($args);
00197 }
00198
00199 function viewMetadata($args) {
00200 import('pages.proofreader.SubmissionProofreadHandler');
00201 SubmissionProofreadHandler::viewMetadata($args);
00202 }
00203
00204 function editComment($args) {
00205 import('pages.proofreader.SubmissionCommentsHandler');
00206 SubmissionCommentsHandler::editComment($args);
00207 }
00208
00209 function deleteComment($args) {
00210 import('pages.proofreader.SubmissionCommentsHandler');
00211 SubmissionCommentsHandler::deleteComment($args);
00212 }
00213
00214 function saveComment($args) {
00215 import('pages.proofreader.SubmissionCommentsHandler');
00216 SubmissionCommentsHandler::saveComment($args);
00217 }
00218
00219 }
00220
00221 ?>