16 import(
'lib.pkp.classes.file.PKPFile');
19 define(
'SUBMISSION_FILE_SUBMISSION', 2);
20 define(
'SUBMISSION_FILE_NOTE', 3);
21 define(
'SUBMISSION_FILE_REVIEW_FILE', 4);
22 define(
'SUBMISSION_FILE_REVIEW_ATTACHMENT', 5);
24 define(
'SUBMISSION_FILE_FINAL', 6);
25 define(
'SUBMISSION_FILE_FAIR_COPY', 7);
26 define(
'SUBMISSION_FILE_EDITOR', 8);
27 define(
'SUBMISSION_FILE_COPYEDIT', 9);
28 define(
'SUBMISSION_FILE_PROOF', 10);
29 define(
'SUBMISSION_FILE_PRODUCTION_READY', 11);
30 define(
'SUBMISSION_FILE_ATTACHMENT', 13);
31 define(
'SUBMISSION_FILE_REVIEW_REVISION', 15);
32 define(
'SUBMISSION_FILE_DEPENDENT', 17);
33 define(
'SUBMISSION_FILE_QUERY', 18);
47 foreach ($localePrecedence as $locale) {
48 if (empty($locale))
continue;
49 $value =& $this->
getData($key, $locale);
50 if (!empty($value))
return $value;
55 $data =& $this->
getData($key,
null);
56 foreach ((array) $data as $dataValue) {
57 if (!empty($dataValue))
return $dataValue;
76 return $this->
getData(
'fileId');
86 $this->
setData(
'fileId', $fileId);
96 return $this->
getData(
'fileId');
106 $this->
setData(
'fileId', $fileId);
117 return $this->
getData(
'submissionLocale');
128 $this->
setData(
'submissionLocale', $submissionLocale);
136 return $this->
getData(
'sourceFileId');
144 $this->
setData(
'sourceFileId', $sourceFileId);
152 return $this->
getData(
'sourceRevision');
160 $this->
setData(
'sourceRevision', $sourceRevision);
168 return $this->
getData(
'assocId');
176 $this->
setData(
'assocId', $assocId);
187 return $this->
getData(
'pub-id::'.$pubIdType);
198 $this->
setData(
'pub-id::'.$pubIdType, $pubId);
207 return $this->
getData(
'directSalesPrice');
216 $this->
setData(
'directSalesPrice', $directSalesPrice);
224 return $this->
getData(
'salesType');
232 $this->
setData(
'salesType', $salesType);
241 $this->
setData(
'name', $name, $locale);
250 return $this->
getData(
'name', $locale);
266 return !in_array($this->
getFileStage(), array(SUBMISSION_FILE_DEPENDENT, SUBMISSION_FILE_QUERY)) && in_array($this->
getFileType(), array(
278 import(
'lib.pkp.classes.file.FileManager');
288 import(
'lib.pkp.classes.file.FileManager');
290 return $fileManager->getDocumentType($this->
getFileType());
299 $this->
setData(
'genreId', $genreId);
308 return $this->
getData(
'genreId');
316 return $this->
getData(
'revision');
326 if (!empty($publicFileId))
return $publicFileId;
338 $idAndRevision = $id;
340 $idAndRevision .=
'-'.$revision;
342 return $idAndRevision;
350 $this->
setData(
'revision', $revision);
358 return $this->
getData(
'submissionId');
366 $this->
setData(
'submissionId', $submissionId);
374 return $this->
getData(
'fileStage');
382 $this->
setData(
'fileStage', $fileStage);
391 return $this->
getData(
'dateModified');
400 return $this->
setData(
'dateModified', $dateModified);
409 return $this->
getData(
'round');
417 return $this->
setData(
'round', $round);
425 return $this->
getData(
'viewable');
434 return $this->
setData(
'viewable', $viewable);
442 $this->
setData(
'uploaderUserId', $uploaderUserId);
450 return $this->
getData(
'uploaderUserId');
458 return $this->
getData(
'assocType');
466 $this->
setData(
'assocType', $assocType);
474 return $this->
getData(
'chapterId');
482 $this->
setData(
'chapterId', $chapterId);
492 if (!$submission)
return null;
493 $contextId = $submission->getContextId();
497 import(
'lib.pkp.classes.file.SubmissionFileManager');
509 $fileLabel = $this->
getName($locale);
530 assert(is_a($submissionFile,
'SubmissionFile'));
531 $this->
setName($submissionFile->getName(
null),
null);
544 $genre = $genreDao->getById($this->
getGenreId());
549 ($genre? ($genre->getLocalizedName() .
'-'):
'') .
619 $genre = $genreDao->getById($this->
getGenreId());
628 $genreName = $genre->getName($submissionLocale) ? $genre->getName($submissionLocale) : $genre->getLocalizedName();
631 $localeKey = $anonymous ?
'common.file.anonymousNamingPattern' :
'common.file.namingPattern';
632 return __($localeKey,
634 'genre' => $genreName,
636 'originalFilename' => $this->getOriginalFilename(),
637 'username' => $user->getUsername(),
649 static $fileStageToPath = array(
651 SUBMISSION_FILE_SUBMISSION =>
'submission',
652 SUBMISSION_FILE_NOTE =>
'note',
653 SUBMISSION_FILE_REVIEW_FILE =>
'submission/review',
654 SUBMISSION_FILE_REVIEW_ATTACHMENT =>
'submission/review/attachment',
655 SUBMISSION_FILE_REVIEW_REVISION =>
'submission/review/revision',
656 SUBMISSION_FILE_FINAL =>
'submission/final',
657 SUBMISSION_FILE_FAIR_COPY =>
'submission/fairCopy',
658 SUBMISSION_FILE_EDITOR =>
'submission/editor',
659 SUBMISSION_FILE_COPYEDIT =>
'submission/copyedit',
660 SUBMISSION_FILE_DEPENDENT =>
'submission/proof',
661 SUBMISSION_FILE_PROOF =>
'submission/proof',
662 SUBMISSION_FILE_PRODUCTION_READY =>
'submission/productionReady',
663 SUBMISSION_FILE_ATTACHMENT =>
'attachment',
664 SUBMISSION_FILE_QUERY =>
'submission/query',
667 assert(isset($fileStageToPath[$fileStage]));
668 return $fileStageToPath[$fileStage];
681 import(
'lib.pkp.controllers.wizard.fileUpload.form.SubmissionFilesMetadataForm');