You are here

function pdfpreview_field_formatter_settings_form in PDFPreview 7.2

Implements hook_field_formatter_settings_form().

File

./pdfpreview.module, line 60
This file contains hooks for the pdfpreview module

Code

function pdfpreview_field_formatter_settings_form($field, $instance, $view_mode, $form, &$form_state) {
  $form = array();

  // Re-use image or picture formatter setting form.
  switch ($instance['display'][$view_mode]['type']) {
    case 'pdfpreview':
      $form += image_field_formatter_settings_form($field, $instance, $view_mode, $form, $form_state);
      break;
    case 'pdfpreview_picture':
      $instance['display'][$view_mode]['type'] = 'picture';
      $form += picture_field_formatter_settings_form($field, $instance, $view_mode, $form, $form_state);
      break;
  }

  // Add additional, PDF Preview only settings.
  $settings = $instance['display'][$view_mode]['settings'];
  $form['show_description'] = array(
    '#type' => 'checkbox',
    '#title' => t('Description'),
    '#description' => t('Show file description beside image'),
    '#options' => array(
      0 => t('No'),
      1 => t('Yes'),
    ),
    '#default_value' => $settings['show_description'],
  );
  $form['tag'] = array(
    '#type' => 'radios',
    '#title' => t('HTML tag'),
    '#description' => t('Select which kind of HTML element will be used to theme elements'),
    '#options' => array(
      'span' => 'span',
      'div' => 'div',
    ),
    '#default_value' => $settings['tag'],
  );
  $form['fallback_formatter'] = array(
    '#type' => 'checkbox',
    '#title' => t('Fallback to default file formatter'),
    '#description' => t('When enabled, non-PDF files will be formatted using a default file formatter.'),
    '#default_value' => isset($settings['fallback_formatter']) ? (bool) $settings['fallback_formatter'] : TRUE,
    '#return_value' => PDFPREVIEW_DEFAULT_FALLBACK_FORMATTER,
  );
  return $form;
}