You are here

function template_preprocess_field_group_multiple_table in Field group multiple 7.x

Same name and namespace in other branches
  1. 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);
}