function ds_ds_field_settings_form in Display Suite 7
Same name and namespace in other branches
- 7.2 includes/ds.field_ui.inc \ds_ds_field_settings_form()
Implements hook_ds_field_settings_form().
File
- ./
ds.field_ui.inc, line 850 - Field UI functions for Display Suite.
Code
function ds_ds_field_settings_form($field) {
$form = array();
$settings = isset($field['formatter_settings']) ? $field['formatter_settings'] : $field['properties']['default'];
foreach ($field['properties']['settings'] as $key => $value) {
switch ($value['type']) {
case 'textfield':
$form[$key] = array(
'#type' => 'textfield',
'#title' => str_replace('_', ' ', check_plain(drupal_ucfirst($key))),
'#default_value' => isset($settings[$key]) ? $settings[$key] : '',
'#size' => 40,
'#description' => isset($value['description']) ? check_plain($value['description']) : '',
);
break;
case 'select':
$form[$key] = array(
'#type' => 'select',
'#title' => check_plain(drupal_ucfirst($key)),
'#default_value' => isset($settings[$key]) ? $settings[$key] : '',
'#options' => $value['options'],
'#description' => isset($value['description']) ? check_plain($value['description']) : '',
);
break;
case 'checkbox':
$form[$key] = array(
'#type' => 'checkbox',
'#title' => str_replace('_', ' ', check_plain(drupal_ucfirst($key))),
'#default_value' => isset($settings[$key]) ? $settings[$key] : '',
'#description' => isset($value['description']) ? check_plain($value['description']) : '',
);
break;
case 'ctools':
ctools_include('modal');
ctools_include('object-cache');
ctools_modal_add_js();
$form[$key] = array(
'#type' => 'hidden',
'#default_value' => isset($settings[$key]) ? $settings[$key] : '',
'#weight' => 2,
);
$action = 'add';
$args = '';
$conf = array();
$query = array(
'query' => array(
'selection' => 1,
),
);
$title = t('Select content');
if (isset($settings[$key])) {
$query = array();
$ctools = unserialize($settings['ctools']);
$type = $ctools['type'];
$subtype = $ctools['subtype'];
$args = '/' . $type . '/' . $subtype;
$action = 'edit';
$conf = $ctools['conf'];
$title = t('Edit content');
}
$form['select'] = array(
'#markup' => '<div class="select-content-link">' . l($title, 'admin/structure/ds/fields/manage_ctools/content/' . $action . '/' . $field['entity_type'] . '/' . $field['name'] . $args, array(
'attributes' => array(
'class' => array(
'ctools-use-modal',
),
),
) + $query) . '</div>',
'#weight' => -10,
);
$form['load_terms'] = array(
'#type' => 'checkbox',
'#title' => t('Load terms'),
'#description' => t('Toggle if you are embedding a view with term fields.'),
'#default_value' => isset($settings['load_terms']) ? $settings['load_terms'] : '',
'#weight' => -1,
);
$form['show_title']['#weight'] = 0;
$form['title_wrapper']['#weight'] = 1;
ctools_object_cache_set($field['name'], $field['name'], $conf);
break;
}
}
return $form;
}