function views_complex_grouping_style_plugin::render_grouping_sets in Views Complex Grouping 7
Overrides parent::render_grouping_set().
Overrides views_plugin_style::render_grouping_sets
File
- ./
views_complex_grouping_style_plugin.inc, line 167 - views_grouping_complex_style_plugin.inc Our handler.
Class
- views_complex_grouping_style_plugin
- @file views_grouping_complex_style_plugin.inc Our handler.
Code
function render_grouping_sets($sets, $level = 0) {
$output = '';
$branch = 0;
foreach ($sets as $set) {
$branch++;
$row = reset($set['rows']);
// Render as a grouping set.
if (is_array($row) && isset($row['group'])) {
$output .= theme(views_theme_functions('views_complex_grouping_level', $this->view, $this->display), array(
'view' => $this->view,
'grouping' => $this->options['grouping'][$level],
'grouping_level' => $level + 1,
'grouping_branch' => $branch,
'rows' => $set['rows'],
'fields' => $set['fields'],
'title' => $set['group'],
));
}
else {
if ($this
->uses_row_plugin()) {
foreach ($set['rows'] as $index => $row) {
$this->view->row_index = $index;
$set['rows'][$index] = $this->row_plugin
->render($row);
}
}
$output .= theme($this
->theme_functions(), array(
'view' => $this->view,
'options' => $this->options,
'grouping_level' => $level + 1,
'grouping_branch' => $branch,
'rows' => $set['rows'],
'fields' => $set['fields'],
'title' => $set['group'],
));
}
}
unset($this->view->row_index);
return $output;
}