00001 <?php
00002
00015
00016
00017
00018 import('plugins.BlockPlugin');
00019
00020 class RoleBlockPlugin extends BlockPlugin {
00021 function register($category, $path) {
00022 $success = parent::register($category, $path);
00023 if ($success) {
00024 $this->addLocaleData();
00025 }
00026 return $success;
00027 }
00028
00034 function getName() {
00035 return 'RoleBlockPlugin';
00036 }
00037
00042 function getNewJournalPluginSettingsFile() {
00043 return $this->getPluginPath() . '/settings.xml';
00044 }
00045
00050 function getDisplayName() {
00051 return Locale::translate('plugins.block.role.displayName');
00052 }
00053
00057 function getDescription() {
00058 return Locale::translate('plugins.block.role.description');
00059 }
00060
00065 function getSupportedContexts() {
00066 return array(BLOCK_CONTEXT_LEFT_SIDEBAR, BLOCK_CONTEXT_RIGHT_SIDEBAR);
00067 }
00068
00074 function getBlockTemplateFilename() {
00075 $journal =& Request::getJournal();
00076 $user =& Request::getUser();
00077 if (!$journal || !$user) return null;
00078
00079 $userId = $user->getUserId();
00080 $journalId = $journal->getJournalId();
00081
00082 $templateMgr =& TemplateManager::getManager();
00083
00084 switch (Request::getRequestedPage()) {
00085 case 'author': switch (Request::getRequestedOp()) {
00086 case 'submit':
00087 case 'saveSubmit':
00088 case 'submitSuppFile':
00089 case 'saveSubmitSuppFile':
00090 case 'deleteSubmitSuppFile':
00091 case 'expediteSubmission':
00092
00093 return null;
00094 default:
00095 $authorSubmissionDao =& DAORegistry::getDAO('AuthorSubmissionDAO');
00096 $submissionsCount = $authorSubmissionDao->getSubmissionsCount($userId, $journalId);
00097 $templateMgr->assign('submissionsCount', $submissionsCount);
00098 return 'author.tpl';
00099 }
00100 case 'copyeditor':
00101 $copyeditorSubmissionDao =& DAORegistry::getDAO('CopyeditorSubmissionDAO');
00102 $submissionsCount = $copyeditorSubmissionDao->getSubmissionsCount($userId, $journalId);
00103 $templateMgr->assign('submissionsCount', $submissionsCount);
00104 return 'copyeditor.tpl';
00105 case 'layoutEditor':
00106 $layoutEditorSubmissionDao =& DAORegistry::getDAO('LayoutEditorSubmissionDAO');
00107 $submissionsCount = $layoutEditorSubmissionDao->getSubmissionsCount($userId, $journalId);
00108 $templateMgr->assign('submissionsCount', $submissionsCount);
00109 return 'layoutEditor.tpl';
00110 case 'editor':
00111 if (Request::getRequestedOp() == 'index') return null;
00112 $editorSubmissionDao =& DAORegistry::getDAO('EditorSubmissionDAO');
00113 $submissionsCount =& $editorSubmissionDao->getEditorSubmissionsCount($journal->getJournalId());
00114 $templateMgr->assign('submissionsCount', $submissionsCount);
00115 return 'editor.tpl';
00116 case 'sectionEditor':
00117 $sectionEditorSubmissionDao =& DAORegistry::getDAO('SectionEditorSubmissionDAO');
00118 $submissionsCount =& $sectionEditorSubmissionDao->getSectionEditorSubmissionsCount($userId, $journalId);
00119 $templateMgr->assign('submissionsCount', $submissionsCount);
00120 return 'sectionEditor.tpl';
00121 case 'proofreader':
00122 $proofreaderSubmissionDao =& DAORegistry::getDAO('ProofreaderSubmissionDAO');
00123 $submissionsCount = $proofreaderSubmissionDao->getSubmissionsCount($userId, $journalId);
00124 $templateMgr->assign('submissionsCount', $submissionsCount);
00125 return 'proofreader.tpl';
00126 case 'reviewer':
00127 $reviewerSubmissionDao =& DAORegistry::getDAO('ReviewerSubmissionDAO');
00128 $submissionsCount = $reviewerSubmissionDao->getSubmissionsCount($userId, $journalId);
00129 $templateMgr->assign('submissionsCount', $submissionsCount);
00130 return 'reviewer.tpl';
00131 }
00132 return null;
00133 }
00134 }
00135
00136 ?>