function link_field_formatter_settings_form

Implements hook_field_formatter_settings_form().

File

drupal/core/modules/field/modules/link/link.module, line 241
Defines simple link field types.

Code

function link_field_formatter_settings_form($field, $instance, $view_mode, $form, &$form_state) {
  $display = $instance['display'][$view_mode];
  $settings = $display['settings'];
  $element['trim_length'] = array(
    '#type' => 'number',
    '#title' => t('Trim link text length'),
    '#field_suffix' => t('characters'),
    '#default_value' => $settings['trim_length'],
    '#min' => 1,
    '#description' => t('Leave blank to allow unlimited link text lengths.'),
  );
  $element['url_only'] = array(
    '#type' => 'checkbox',
    '#title' => t('URL only'),
    '#default_value' => $settings['url_only'],
    '#access' => $display['type'] == 'link',
  );
  $element['url_plain'] = array(
    '#type' => 'checkbox',
    '#title' => t('Show URL as plain text'),
    '#default_value' => $settings['url_plain'],
    '#access' => $display['type'] == 'link',
    '#states' => array(
      'visible' => array(
        ':input[name*="url_only"]' => array(
          'checked' => TRUE,
        ),
      ),
    ),
  );
  $element['rel'] = array(
    '#type' => 'checkbox',
    '#title' => t('Add rel="nofollow" to links'),
    '#return_value' => 'nofollow',
    '#default_value' => $settings['nofollow'],
  );
  $element['target'] = array(
    '#type' => 'checkbox',
    '#title' => t('Open link in new window'),
    '#return_value' => '_blank',
    '#default_value' => $settings['target'],
  );
  return $element;
}