You are here

function image_url_formatter_field_formatter_settings_form in Image URL Formatter 7

Implements hook_field_formatter_settings_form().

File

./image_url_formatter.module, line 55
Add an URL formatter for image field

Code

function image_url_formatter_field_formatter_settings_form($field, $instance, $view_mode, $form, &$form_state) {
  $display = $instance['display'][$view_mode];
  $settings = $display['settings'];
  $element['url_type'] = array(
    '#title' => t('URL type'),
    '#type' => 'radios',
    '#options' => array(
      IMAGE_URL_FORMATTER_FILENAME => t('Filename'),
      IMAGE_URL_FORMATTER_URI_PATH => t('URI path'),
      IMAGE_URL_FORMATTER_RELATIVE_PATH => t('Relative file path'),
      IMAGE_URL_FORMATTER_ABSOLUTE_PATH => t('Absolute file path (recommended)'),
      IMAGE_URL_FORMATTER_FULL_URL => t('Full URL'),
    ),
    '#default_value' => $settings['url_type'],
  );
  $element['url_type'][IMAGE_URL_FORMATTER_FILENAME]['#description'] = t("Filename only, like: 'image.png'");
  $element['url_type'][IMAGE_URL_FORMATTER_URI_PATH]['#description'] = t("Uses the URI path, like: 'public://image.png'");
  $element['url_type'][IMAGE_URL_FORMATTER_RELATIVE_PATH]['#description'] = t("No base URL or leading slash, like: 'sites/default/files/image.png'");
  $element['url_type'][IMAGE_URL_FORMATTER_ABSOLUTE_PATH]['#description'] = t("With leading slash, no base URL, like: '/sites/default/files/image.png'");
  $element['url_type'][IMAGE_URL_FORMATTER_FULL_URL]['#description'] = t("Like: 'http://example.com/sites/default/files/image.png'");
  $image_styles = image_style_options(FALSE);
  $element['image_style'] = array(
    '#title' => t('Image style'),
    '#type' => 'select',
    '#default_value' => $settings['image_style'],
    '#empty_option' => t('None (original image)'),
    '#options' => $image_styles,
  );
  $link_types = array(
    'content' => t('Content'),
    'file' => t('File'),
  );
  $element['image_link'] = array(
    '#title' => t('Link image url to'),
    '#type' => 'select',
    '#default_value' => $settings['image_link'],
    '#empty_option' => t('Nothing'),
    '#options' => $link_types,
  );
  return $element;
}