function ds_field_formatter_settings_form in Display Suite 7.2
Implements hook_field_formatter_settings_form().
File
- includes/
ds.field_ui.inc, line 975 - Field UI functions for Display Suite.
Code
function ds_field_formatter_settings_form($field, $instance, $view_mode, $form, &$form_state) {
$display = $instance['display'][$view_mode];
$settings = $display['settings'];
// Taxonomy view modes.
if ($display['type'] === 'ds_taxonomy_view_mode') {
$options = array();
$view_modes = ds_entity_view_modes('taxonomy_term');
foreach ($view_modes as $key => $info) {
$options[$key] = $info['label'];
}
$element['taxonomy_term_reference_view_mode'] = array(
'#title' => t('View mode'),
'#type' => 'select',
'#options' => $options,
'#default_value' => $settings['taxonomy_term_reference_view_mode'],
);
$element['use_content_language'] = array(
'#type' => 'checkbox',
'#title' => t('Use current content language'),
'#default_value' => $settings['use_content_language'],
);
return $element;
}
// Taxonomy separated.
if ($display['type'] === 'ds_taxonomy_separator' || $display['type'] == 'ds_taxonomy_separator_localized') {
$element['taxonomy_term_link'] = array(
'#title' => t('Link to term'),
'#type' => 'checkbox',
'#size' => 10,
'#default_value' => $settings['taxonomy_term_link'],
);
$separators = array(
' ' => t('space'),
', ' => t('comma'),
' - ' => t('dash'),
' / ' => t('slash'),
);
drupal_alter('ds_taxonomy_term_separators', $separators);
$element['taxonomy_term_separator'] = array(
'#title' => t('Separator'),
'#type' => 'select',
'#options' => $separators,
'#default_value' => $settings['taxonomy_term_separator'],
'#states' => array(
'visible' => array(
'select[name="fields[field_tags][settings_edit_form][settings][taxonomy_term_list]"]' => array(
'value' => 'separated_list',
),
),
),
);
return $element;
}
}