You are here

function openlayers_geofield_field_formatter_settings_summary in Openlayers 7.3

Implements hook_field_formatter_settings_summary().

Heavily borrowed from geofield_field_formatter_settings_summary().

See also

geofield_field_formatter_settings_summary()

File

modules/openlayers_geofield/openlayers_geofield.module, line 99
Openlayers Geofield integration.

Code

function openlayers_geofield_field_formatter_settings_summary($field, $instance, $view_mode) {
  $display = $instance['display'][$view_mode];
  $settings = $display['settings'];
  $summary = array();
  $data_options = _geofield_formatter_settings_data_options($display['type']);
  if ($display['type'] == 'openlayers_geofield' && !empty($settings['map_layer_preset'])) {
    list($map_name, $layer_name) = explode(':', $settings['map_layer_preset']);
    if (($map = \Drupal\openlayers\Openlayers::load('Map', $map_name)) == TRUE) {
      $summary[] = t('Openlayers map: @data', array(
        '@data' => $map
          ->getName(),
      ));
      $summary[] = t('Openlayers layer: @data', array(
        '@data' => $layer_name,
      ));
    }
  }

  // Styles could be lost because of enabled/disabled modules that defines
  // their styles in code.
  if (!empty($data_options[$settings['data']])) {
    $summary[] = t('Data options: @data', array(
      '@data' => $data_options[$settings['data']],
    ));
  }
  else {
    $summary[] = t('No data options set');
  }
  if (!empty($settings['address']) && $settings['address']) {
    $summary[] = t('Including reverse-geocoded address');
  }
  return implode('<br />', $summary);
}