You are here

function composed_field_field_formatter_settings_summary in Composed Field 7

Implements hook_field_formatter_settings_summary().

File

./composed_field.module, line 1044
Defines composed field type.

Code

function composed_field_field_formatter_settings_summary($field, $instance, $view_mode) {
  $settings = $instance['display'][$view_mode]['settings'];
  $type = $instance['display'][$view_mode]['type'];
  $widget_settings = $instance['widget']['settings'];
  $number_of_subfields = $widget_settings['number_of_subfields'];
  $summary = '';
  switch ($type) {
    case 'composed_field_fieldset':
      $summary .= '<div>' . t('Collapsible: <em>@value</em>', array(
        '@value' => $settings['collapsible'] ? 'Yes' : 'No',
      )) . '</div>';
      $summary .= '<div>' . t('Collapsed: <em>@value</em>', array(
        '@value' => $settings['collapsed'] ? 'Yes' : 'No',
      )) . '</div>';
      break;
    case 'composed_field_unformatted_list':
    case 'composed_field_html_list':
      $summary .= '<div>' . t('Display style: <em>@value</em>', array(
        '@value' => t(ucfirst($settings['style'])),
      )) . '</div>';
      if ($type == 'composed_field_html_list') {
        $summary .= '<div>' . t('List type: <em>@value</em>', array(
          '@value' => $settings['list_type'] == 'ul' ? t('Unordered') : t('Ordered'),
        )) . '</div>';
      }
      break;
    case 'composed_field_table':
      if (unserialize($settings['table']['column_label']) !== FALSE) {
        $settings['table']['column_label'] = unserialize($settings['table']['column_label']);
      }
      else {
        $settings['table']['column_label'] = array();
        for ($subfield = 1; $subfield <= $number_of_subfields; $subfield++) {
          $settings['table']['column_label'][$subfield] = '';
        }
      }
      $summary .= '<div>' . t('Row number column: <em>@value</em>', array(
        '@value' => $settings['table']['number_column'] ? 'Yes' : 'No',
      )) . '</div>';
      foreach ($settings['table']['column_label'] as $subfield => $subfield_value) {
        $summary .= '<div>' . t("Subfield {$subfield} column label: <em>@value</em>", array(
          '@value' => $settings['table']['column_label'][$subfield],
        )) . '</div>';
      }
      break;
  }
  $filter_formats = filter_formats();

  // Set the default value for hidden, format, prefix and suffix.
  $display_options = _composed_field_formatter_info_unserialize_display_options($settings['display_options'], $number_of_subfields);
  for ($subfield = 1; $subfield <= $number_of_subfields; $subfield++) {
    $summary .= '<div><h5>' . t('Subfield !subfield', array(
      '!subfield' => $subfield,
    )) . '</h5>';
    $summary .= '<div>' . t('Hidden: <em>@value</em>', array(
      '@value' => $display_options['hidden'][$subfield] ? t('Yes') : t('No'),
    )) . '</div>';
    $format = isset($filter_formats[$display_options['format'][$subfield]]) ? $filter_formats[$display_options['format'][$subfield]]->name : '';
    $summary .= '<div style="color: ' . ($display_options['format'][$subfield] == 'full_html' ? 'red' : 'auto') . '">' . t('Format: <em>@value</em>', array(
      '@value' => $format,
    )) . '</div>';
    $summary .= '<div>' . t('Prefix: <em>@value</em>', array(
      '@value' => $display_options['prefix'][$subfield],
    )) . '</div>';
    $summary .= '<div>' . t('Suffix: <em>@value</em>', array(
      '@value' => $display_options['suffix'][$subfield],
    )) . '</div>';
    $summary .= '</div>';
  }
  return $summary;
}