00001 <?php
00002
00015 import('lib.pkp.classes.controllers.grid.DataObjectGridCellProvider');
00016
00017 class ReviewerSelectGridCellProvider extends DataObjectGridCellProvider {
00021 function ReviewerSelectGridCellProvider() {
00022 parent::DataObjectGridCellProvider();
00023 }
00024
00025
00026
00027
00035 function getTemplateVarsFromRowColumn(&$row, $column) {
00036 $element =& $row->getData();
00037 $columnId = $column->getId();
00038 $reviewerStats = $row->getReviewerStats($row->getId());
00039
00040 assert(is_a($element, 'User') && !empty($columnId));
00041 switch ($columnId) {
00042 case 'select':
00043 return array('rowId' => $row->getId());
00044 case 'name':
00045 return array('label' => $element->getFullName());
00046 case 'done':
00047 return array('label' => isset($reviewerStats['completed_review_count']) ? $reviewerStats['completed_review_count'] : '--');
00048 case 'avg':
00049 return array('label' => isset($reviewerStats['average_span']) ? round($reviewerStats['average_span']) : '--');
00050 case 'last':
00051 if (isset($reviewerStats['last_notified'])) {
00052 $formattedDate = strftime('%b %e', strtotime($reviewerStats['last_notified']));
00053 return array('label' => $formattedDate);
00054 } else return array('label' => '--');
00055 case 'active':
00056 return array('label' => isset($reviewerStats['incomplete']) ? $reviewerStats['incomplete'] : '--');
00057 case 'interests':
00058 return array('label' => $element->getInterestString());
00059 }
00060 }
00061 }
00062
00063 ?>