Inheritance: extends Paper
Ejemplo n.º 1
0
 /**
  * Internal function to return a ReviewerSubmission object from a row.
  * @param $row array
  * @return ReviewerSubmission
  */
 function &_returnReviewerSubmissionFromRow(&$row)
 {
     $reviewerSubmission = new ReviewerSubmission();
     // Editor Assignment
     $editAssignments =& $this->editAssignmentDao->getEditAssignmentsByArticleId($row['article_id']);
     $reviewerSubmission->setEditAssignments($editAssignments->toArray());
     // Files
     $reviewerSubmission->setSubmissionFile($this->articleFileDao->getArticleFile($row['submission_file_id']));
     $reviewerSubmission->setRevisedFile($this->articleFileDao->getArticleFile($row['revised_file_id']));
     $reviewerSubmission->setSuppFiles($this->suppFileDao->getSuppFilesByArticle($row['article_id']));
     $reviewerSubmission->setReviewFile($this->articleFileDao->getArticleFile($row['review_file_id']));
     $reviewerSubmission->setReviewerFile($this->articleFileDao->getArticleFile($row['reviewer_file_id']));
     $reviewerSubmission->setReviewerFileRevisions($this->articleFileDao->getArticleFileRevisions($row['reviewer_file_id']));
     // Comments
     $reviewerSubmission->setMostRecentPeerReviewComment($this->articleCommentDao->getMostRecentArticleComment($row['article_id'], COMMENT_TYPE_PEER_REVIEW, $row['review_id']));
     // Editor Decisions
     for ($i = 1; $i <= $row['current_round']; $i++) {
         $reviewerSubmission->setDecisions($this->getEditorDecisions($row['article_id'], $i), $i);
     }
     // Review Assignment
     $reviewerSubmission->setReviewId($row['review_id']);
     $reviewerSubmission->setReviewerId($row['reviewer_id']);
     $reviewerSubmission->setReviewerFullName($row['first_name'] . ' ' . $row['last_name']);
     $reviewerSubmission->setCompetingInterests($row['competing_interests']);
     $reviewerSubmission->setRecommendation($row['recommendation']);
     $reviewerSubmission->setDateAssigned($this->datetimeFromDB($row['date_assigned']));
     $reviewerSubmission->setDateNotified($this->datetimeFromDB($row['date_notified']));
     $reviewerSubmission->setDateConfirmed($this->datetimeFromDB($row['date_confirmed']));
     $reviewerSubmission->setDateCompleted($this->datetimeFromDB($row['date_completed']));
     $reviewerSubmission->setDateAcknowledged($this->datetimeFromDB($row['date_acknowledged']));
     $reviewerSubmission->setDateDue($this->datetimeFromDB($row['date_due']));
     $reviewerSubmission->setDeclined($row['declined']);
     $reviewerSubmission->setReplaced($row['replaced']);
     $reviewerSubmission->setCancelled($row['cancelled'] == 1 ? 1 : 0);
     $reviewerSubmission->setReviewerFileId($row['reviewer_file_id']);
     $reviewerSubmission->setQuality($row['quality']);
     $reviewerSubmission->setRound($row['round']);
     $reviewerSubmission->setReviewFileId($row['review_file_id']);
     $reviewerSubmission->setReviewRevision($row['review_revision']);
     // Article attributes
     $this->articleDao->_articleFromRow($reviewerSubmission, $row);
     HookRegistry::call('ReviewerSubmissionDAO::_returnReviewerSubmissionFromRow', array(&$reviewerSubmission, &$row));
     return $reviewerSubmission;
 }
Ejemplo n.º 2
0
 /**
  * Internal function to return a ReviewerSubmission object from a row.
  * @param $row array
  * @param $assignedReviewer bool
  * @param $single bool
  * @return ReviewerSubmission
  */
 function &_returnReviewerSubmissionFromRow(&$row, $assignedReviewer = true, $single = false)
 {
     $reviewerSubmission = new ReviewerSubmission();
     // Reviewer
     if ($assignedReviewer) {
         $reviewerSubmission->setReviewerId($row['reviewer_id']);
         if (isset($row['first_name']) && isset($row['last_name'])) {
             $reviewerSubmission->setReviewerFullName($row['first_name'] . ' ' . $row['last_name']);
         }
     }
     // Files
     import('classes.file.ArticleFileManager');
     $reviewerSubmission->setSubmissionFile($this->articleFileDao->getArticleFile($row['submission_file_id']));
     $reviewerSubmission->setRevisedFile($this->articleFileDao->getArticleFile($row['revised_file_id']));
     $reviewerSubmission->setReportFiles($this->articleFileDao->getArticleFilesByType($row['article_id'], ARTICLE_FILE_REPORT));
     $reviewerSubmission->setSAEFiles($this->articleFileDao->getArticleFilesByType($row['article_id'], ARTICLE_FILE_SAE));
     $reviewerSubmission->setSuppFiles($this->suppFileDao->getSuppFilesByArticle($row['article_id']));
     $reviewerSubmission->setReviewFile($this->articleFileDao->getArticleFile($row['review_file_id']));
     if (isset($row['reviewer_file_id'])) {
         $reviewerSubmission->setReviewerFile($this->articleFileDao->getArticleFile($row['reviewer_file_id']));
     }
     // Comments
     if (isset($row['review_id'])) {
         $reviewerSubmission->setMostRecentPeerReviewComment($this->articleCommentDao->getMostRecentArticleComment($row['article_id'], COMMENT_TYPE_PEER_REVIEW, $row['review_id']));
     }
     // Committee Decisions
     $reviewerSubmission->setDecisionsAndAssignments($this->sectionDecisionDao->getSectionDecisionsByArticleId($row['article_id']));
     // Article attributes
     $this->articleDao->_articleFromRow($reviewerSubmission, $row, $single);
     HookRegistry::call('ReviewerSubmissionDAO::_returnReviewerSubmissionFromRow', array(&$reviewerSubmission, &$row, $single));
     return $reviewerSubmission;
 }