protected function calculateSummary()
{
$data = $this->_rows;
$type = $this->pageSummaryFunc;
if ($type instanceof Closure) {
return call_user_func($type, $data);
}
if (empty($this->_rows)) {
return '';
}
switch ($type) {
case null:
return array_sum($data);
case GridView::F_SUM:
return array_sum($data);
case GridView::F_COUNT:
return count($data);
case GridView::F_AVG:
return count($data) > 0 ? array_sum($data) / count($data) : null;
case GridView::F_MAX:
return max($data);
case GridView::F_MIN:
return min($data);
}
return '';
}