00001 <?php
00002
00015
00016
00017
00018 import ('submission.author.AuthorAction');
00019
00020 class AuthorHandler extends Handler {
00021
00025 function index($args) {
00026 list($journal) = AuthorHandler::validate();
00027 AuthorHandler::setupTemplate();
00028
00029 $user = &Request::getUser();
00030 $rangeInfo = &Handler::getRangeInfo('submissions');
00031 $authorSubmissionDao = &DAORegistry::getDAO('AuthorSubmissionDAO');
00032
00033 $page = isset($args[0]) ? $args[0] : '';
00034 switch($page) {
00035 case 'completed':
00036 $active = false;
00037 break;
00038 default:
00039 $page = 'active';
00040 $active = true;
00041 }
00042
00043 $submissions = $authorSubmissionDao->getAuthorSubmissions($user->getUserId(), $journal->getJournalId(), $active, $rangeInfo);
00044
00045 $templateMgr = &TemplateManager::getManager();
00046 $templateMgr->assign('pageToDisplay', $page);
00047 if (!$active) {
00048
00049 $templateMgr->assign('statViews', $journal->getSetting('statViews'));
00050 }
00051 $templateMgr->assign_by_ref('submissions', $submissions);
00052
00053
00054 import('payment.ojs.OJSPaymentManager');
00055 $paymentManager =& OJSPaymentManager::getManager();
00056
00057 if ( $paymentManager->isConfigured() ) {
00058 $templateMgr->assign('submissionEnabled', $paymentManager->submissionEnabled());
00059 $templateMgr->assign('fastTrackEnabled', $paymentManager->fastTrackEnabled());
00060 $templateMgr->assign('publicationEnabled', $paymentManager->publicationEnabled());
00061
00062 $completedPaymentDAO =& DAORegistry::getDAO('OJSCompletedPaymentDAO');
00063 $templateMgr->assign_by_ref('completedPaymentDAO', $completedPaymentDAO);
00064 }
00065
00066 import('issue.IssueAction');
00067 $issueAction = &new IssueAction();
00068 $templateMgr->register_function('print_issue_id', array($issueAction, 'smartyPrintIssueId'));
00069 $templateMgr->assign('helpTopicId', 'editorial.authorsRole.submissions');
00070 $templateMgr->display('author/index.tpl');
00071 }
00072
00077 function validate($reason = null) {
00078 parent::validate();
00079 $journal = &Request::getJournal();
00080 if (!isset($journal) || !Validation::isAuthor($journal->getJournalId())) {
00081 Validation::redirectLogin($reason);
00082 }
00083
00084 return array(&$journal);
00085 }
00086
00091 function setupTemplate($subclass = false, $articleId = 0, $parentPage = null) {
00092 $templateMgr = &TemplateManager::getManager();
00093
00094 $pageHierarchy = $subclass ? array(array(Request::url(null, 'user'), 'navigation.user'), array(Request::url(null, 'author'), 'user.role.author'), array(Request::url(null, 'author'), 'article.submissions'))
00095 : array(array(Request::url(null, 'user'), 'navigation.user'), array(Request::url(null, 'author'), 'user.role.author'));
00096
00097 import('submission.sectionEditor.SectionEditorAction');
00098 $submissionCrumb = SectionEditorAction::submissionBreadcrumb($articleId, $parentPage, 'author');
00099 if (isset($submissionCrumb)) {
00100 $pageHierarchy = array_merge($pageHierarchy, $submissionCrumb);
00101 }
00102 $templateMgr->assign('pageHierarchy', $pageHierarchy);
00103 }
00104
00109 function instructions($args) {
00110 import('submission.proofreader.ProofreaderAction');
00111 if (!isset($args[0]) || !ProofreaderAction::instructions($args[0], array('copy', 'proof'))) {
00112 Request::redirect(null, null, 'index');
00113 }
00114 }
00115
00116
00117
00118
00119
00120
00121 function submit($args) {
00122 import('pages.author.SubmitHandler');
00123 SubmitHandler::submit($args);
00124 }
00125
00126 function saveSubmit($args) {
00127 import('pages.author.SubmitHandler');
00128 SubmitHandler::saveSubmit($args);
00129 }
00130
00131 function submitSuppFile($args) {
00132 import('pages.author.SubmitHandler');
00133 SubmitHandler::submitSuppFile($args);
00134 }
00135
00136 function saveSubmitSuppFile($args) {
00137 import('pages.author.SubmitHandler');
00138 SubmitHandler::saveSubmitSuppFile($args);
00139 }
00140
00141 function deleteSubmitSuppFile($args) {
00142 import('pages.author.SubmitHandler');
00143 SubmitHandler::deleteSubmitSuppFile($args);
00144 }
00145
00146 function expediteSubmission($args) {
00147 import('pages.author.SubmitHandler');
00148 SubmitHandler::expediteSubmission($args);
00149 }
00150
00151
00152
00153
00154
00155 function deleteArticleFile($args) {
00156 import('pages.author.TrackSubmissionHandler');
00157 TrackSubmissionHandler::deleteArticleFile($args);
00158 }
00159
00160 function deleteSubmission($args) {
00161 import('pages.author.TrackSubmissionHandler');
00162 TrackSubmissionHandler::deleteSubmission($args);
00163 }
00164
00165 function submission($args) {
00166 import('pages.author.TrackSubmissionHandler');
00167 TrackSubmissionHandler::submission($args);
00168 }
00169
00170 function editSuppFile($args) {
00171 import('pages.author.TrackSubmissionHandler');
00172 TrackSubmissionHandler::editSuppFile($args);
00173 }
00174
00175 function setSuppFileVisibility($args) {
00176 import('pages.author.TrackSubmissionHandler');
00177 TrackSubmissionHandler::setSuppFileVisibility($args);
00178 }
00179
00180 function saveSuppFile($args) {
00181 import('pages.author.TrackSubmissionHandler');
00182 TrackSubmissionHandler::saveSuppFile($args);
00183 }
00184
00185 function addSuppFile($args) {
00186 import('pages.author.TrackSubmissionHandler');
00187 TrackSubmissionHandler::addSuppFile($args);
00188 }
00189
00190 function submissionReview($args) {
00191 import('pages.author.TrackSubmissionHandler');
00192 TrackSubmissionHandler::submissionReview($args);
00193 }
00194
00195 function submissionEditing($args) {
00196 import('pages.author.TrackSubmissionHandler');
00197 TrackSubmissionHandler::submissionEditing($args);
00198 }
00199
00200 function uploadRevisedVersion() {
00201 import('pages.author.TrackSubmissionHandler');
00202 TrackSubmissionHandler::uploadRevisedVersion();
00203 }
00204
00205 function viewMetadata($args) {
00206 import('pages.author.TrackSubmissionHandler');
00207 TrackSubmissionHandler::viewMetadata($args);
00208 }
00209
00210 function saveMetadata() {
00211 import('pages.author.TrackSubmissionHandler');
00212 TrackSubmissionHandler::saveMetadata();
00213 }
00214
00215 function removeArticleCoverPage($args) {
00216 import('pages.author.TrackSubmissionHandler');
00217 TrackSubmissionHandler::removeCoverPage($args);
00218 }
00219
00220 function uploadCopyeditVersion() {
00221 import('pages.author.TrackSubmissionHandler');
00222 TrackSubmissionHandler::uploadCopyeditVersion();
00223 }
00224
00225 function completeAuthorCopyedit($args) {
00226 import('pages.author.TrackSubmissionHandler');
00227 TrackSubmissionHandler::completeAuthorCopyedit($args);
00228 }
00229
00230
00231
00232
00233
00234 function downloadFile($args) {
00235 import('pages.author.TrackSubmissionHandler');
00236 TrackSubmissionHandler::downloadFile($args);
00237 }
00238
00239 function viewFile($args) {
00240 import('pages.author.TrackSubmissionHandler');
00241 TrackSubmissionHandler::viewFile($args);
00242 }
00243
00244 function download($args) {
00245 import('pages.author.TrackSubmissionHandler');
00246 TrackSubmissionHandler::download($args);
00247 }
00248
00249
00250
00251
00252
00253 function viewEditorDecisionComments($args) {
00254 import('pages.author.SubmissionCommentsHandler');
00255 SubmissionCommentsHandler::viewEditorDecisionComments($args);
00256 }
00257
00258 function viewCopyeditComments($args) {
00259 import('pages.author.SubmissionCommentsHandler');
00260 SubmissionCommentsHandler::viewCopyeditComments($args);
00261 }
00262
00263 function postCopyeditComment() {
00264 import('pages.author.SubmissionCommentsHandler');
00265 SubmissionCommentsHandler::postCopyeditComment();
00266 }
00267
00268 function emailEditorDecisionComment() {
00269 import('pages.author.SubmissionCommentsHandler');
00270 SubmissionCommentsHandler::emailEditorDecisionComment();
00271 }
00272
00273 function viewProofreadComments($args) {
00274 import('pages.author.SubmissionCommentsHandler');
00275 SubmissionCommentsHandler::viewProofreadComments($args);
00276 }
00277
00278 function viewLayoutComments($args) {
00279 import('pages.author.SubmissionCommentsHandler');
00280 SubmissionCommentsHandler::viewLayoutComments($args);
00281 }
00282
00283 function postLayoutComment() {
00284 import('pages.author.SubmissionCommentsHandler');
00285 SubmissionCommentsHandler::postLayoutComment();
00286 }
00287
00288 function postProofreadComment() {
00289 import('pages.author.SubmissionCommentsHandler');
00290 SubmissionCommentsHandler::postProofreadComment();
00291 }
00292
00293 function editComment($args) {
00294 import('pages.author.SubmissionCommentsHandler');
00295 SubmissionCommentsHandler::editComment($args);
00296 }
00297
00298 function saveComment() {
00299 import('pages.author.SubmissionCommentsHandler');
00300 SubmissionCommentsHandler::saveComment();
00301 }
00302
00303 function deleteComment($args) {
00304 import('pages.author.SubmissionCommentsHandler');
00305 SubmissionCommentsHandler::deleteComment($args);
00306 }
00307
00308
00309
00310
00311 function authorProofreadingComplete($args) {
00312 import('pages.author.TrackSubmissionHandler');
00313 TrackSubmissionHandler::authorProofreadingComplete($args);
00314 }
00315
00316 function proofGalley($args) {
00317 import('pages.author.TrackSubmissionHandler');
00318 TrackSubmissionHandler::proofGalley($args);
00319 }
00320
00321 function proofGalleyTop($args) {
00322 import('pages.author.TrackSubmissionHandler');
00323 TrackSubmissionHandler::proofGalleyTop($args);
00324 }
00325
00326 function proofGalleyFile($args) {
00327 import('pages.author.TrackSubmissionHandler');
00328 TrackSubmissionHandler::proofGalleyFile($args);
00329 }
00330
00331
00332
00333
00334 function paySubmissionFee($args) {
00335 import('pages.author.TrackSubmissionHandler');
00336 TrackSubmissionHandler::paySubmissionFee($args);
00337 }
00338
00339 function payFastTrackFee($args) {
00340 import('pages.author.TrackSubmissionHandler');
00341 TrackSubmissionHandler::payFastTrackFee($args);
00342 }
00343
00344 function payPublicationFee($args) {
00345 import('pages.author.TrackSubmissionHandler');
00346 TrackSubmissionHandler::payPublicationFee($args);
00347 }
00348
00349 }
00350
00351 ?>