function template_preprocess_views_summarize_views_tablesummarized in Views Summarize 7
Same name and namespace in other branches
- 6 views_summarize.module \template_preprocess_views_summarize_views_tablesummarized()
- 7.2 views_summarize.module \template_preprocess_views_summarize_views_tablesummarized()
Display a view as a table summary.
File
- ./
views_summarize.module, line 69
Code
function template_preprocess_views_summarize_views_tablesummarized(&$vars) {
template_preprocess_views_view_table($vars);
if (!count($vars['rows'])) {
return;
}
$opts =& $vars['view']->style_plugin->options['info'];
if (isset($vars['view']->style_plugin->options['summary_only'])) {
$vars['summary_only'] = $vars['view']->style_plugin->options['summary_only'];
}
$data = array();
foreach ($vars['rows'] as $row) {
foreach ($row as $field => $value) {
$data[$field][] = $value;
}
}
$current_display = $vars['view']->current_display;
if (empty($vars['view']->display[$current_display]->display_options['fields'])) {
$display = $vars['view']->display['default'];
}
else {
$display = $vars['view']->display[$current_display];
}
$vars['summarized'] = array();
foreach ($opts as $field => $settings) {
if (isset($data[$field])) {
// Get the display style settings.
$field_settings = array();
if (!empty($vars['view']->field[$field]->options['settings'])) {
$field_settings = $vars['view']->field[$field]->options['settings'];
}
// Get the field instance data.
if (!empty($display->display_options['fields'][$field]['field'])) {
$real_field_name = $display->display_options['fields'][$field]['field'];
}
$field_data = $vars['view']->result[0]->_field_data['nid'];
$entity_type = $field_data['entity_type'];
$bundle = $field_data['entity']->type;
if (!empty($real_field_name)) {
$field_instance = field_info_instance($entity_type, $real_field_name, $bundle);
}
$theme = 'views_summarize_type_' . $settings['summarize'];
$options = array(
'field' => $field,
'views_field_settings' => $field_settings,
'field_instance_settings' => empty($field_instance['settings']) ? array() : $field_instance['settings'],
);
$variables = array(
'data' => $data[$field],
'options' => $options,
);
$vars['summarized'][$field] = theme($theme, $variables);
}
}
}