00001 <?php
00002
00015 import('controllers.listbuilder.files.FilesListbuilderHandler');
00016
00017 class ProofFilesListbuilderHandler extends FilesListbuilderHandler {
00021 function ProofFilesListbuilderHandler() {
00022
00023 import('classes.monograph.MonographFile');
00024 parent::FilesListbuilderHandler(MONOGRAPH_FILE_PROOF);
00025 }
00026
00027
00028
00029
00030
00034 function authorize(&$request, &$args, $roleAssignments) {
00035 import('classes.security.authorization.internal.PublicationFormatRequiredPolicy');
00036 $this->addPolicy(new PublicationFormatRequiredPolicy($request, $args));
00037 return parent::authorize($request, $args, $roleAssignments, WORKFLOW_STAGE_ID_PRODUCTION);
00038 }
00039
00040
00045 function initialize(&$request) {
00046 parent::initialize($request);
00047 AppLocale::requireComponents(LOCALE_COMPONENT_OMP_EDITOR);
00048 $this->setTitle('editor.monograph.selectProofreadingFiles');
00049 }
00050
00051
00052
00053
00057 function getOptions() {
00058 import('classes.monograph.MonographFile');
00059 $monograph =& $this->getAuthorizedContextObject(ASSOC_TYPE_MONOGRAPH);
00060 $publicationFormat =& $this->getAuthorizedContextObject(ASSOC_TYPE_PUBLICATION_FORMAT);
00061
00062 $submissionFileDao =& DAORegistry::getDAO('SubmissionFileDAO');
00063 $monographFiles =& $submissionFileDao->getLatestRevisionsByAssocId(
00064 ASSOC_TYPE_PUBLICATION_FORMAT, $publicationFormat->getId(),
00065 $monograph->getId(), $this->getFileStage()
00066 );
00067
00068 return parent::getOptions($monographFiles);
00069 }
00070
00074 function getRequestArgs() {
00075 $publicationFormat =& $this->getAuthorizedContextObject(ASSOC_TYPE_PUBLICATION_FORMAT);
00076 $args = parent::getRequestArgs();
00077 $args['publicationFormatId'] = $publicationFormat->getId();
00078 return $args;
00079 }
00080 }
00081
00082 ?>