function template_preprocess_field_group_multiple_table in Field group multiple 7.x
Same name and namespace in other branches
- 7 theme.inc \template_preprocess_field_group_multiple_table()
File
- ./
theme.inc, line 282
Code
function template_preprocess_field_group_multiple_table(&$variables) {
drupal_add_css(drupal_get_path("module", "field_group_multiple") . "/field_group_multiple.css");
$group = $variables['group'];
$fields = $variables['fields'];
$items = $variables['items'];
$header = array();
$rows = array();
$titles = isset($group->format_settings['instance_settings']['row_titles']) ? $group->format_settings['instance_settings']['row_titles'] : null;
if ($titles) {
$row_titles = array_map('check_plain', explode(',', $titles));
if ($row_titles[0] == '-none-') {
$row_titles[0] = '';
}
}
if ($titles) {
$header[] = $row_titles[0];
}
$id = $group->group_name;
foreach (element_children($fields, TRUE) as $field_name) {
$header[] = t($fields[$field_name]['#title']);
}
foreach (element_children($items, TRUE) as $delta) {
$row_values = $items[$delta];
$row = array();
if ($titles) {
$row_title = '';
if ($delta + 1 < count($row_titles)) {
$row_title = $row_titles[$delta + 1];
}
$row[] = array(
"data" => $row_title,
"class" => "",
);
}
foreach (element_children($row_values, TRUE) as $field_name) {
$data = $row_values[$field_name];
$row[] = array(
"data" => drupal_render($data),
"class" => "",
);
}
$rows[] = array(
"data" => $row,
"class" => array(
"row-delta-" . $delta,
),
);
}
$table_id = drupal_html_id($id . '_values');
$variables['table'] = theme('table', array(
'header' => $header,
'rows' => $rows,
'attributes' => array(
'id' => $table_id,
'class' => array(
'field-group-multiple-table',
),
),
));
$suggestions_prefix = "field_group_multiple_table";
$variables['theme_hook_suggestions'] = _template_field_group_multiple_suggestions($suggestions_prefix, $group);
}