You are here

function colorbox_handler_field_colorbox::options_form in Colorbox 6

Same name and namespace in other branches
  1. 7.2 views/colorbox_handler_field_colorbox.inc \colorbox_handler_field_colorbox::options_form()
  2. 7 views/colorbox_handler_field_colorbox.inc \colorbox_handler_field_colorbox::options_form()

File

views/colorbox_handler_field_colorbox.inc, line 32
Views handlers for Colorbox module.

Class

colorbox_handler_field_colorbox
A handler to provide a field that is completely custom by the administrator.

Code

function options_form(&$form, &$form_state) {
  parent::options_form($form, $form_state);
  $fields = array(
    'trigger_field' => t('<None>'),
  );
  foreach ($this->view->display_handler
    ->get_handlers('field') as $field => $handler) {

    // We only use fields up to this one.  Obviously we can't use this handler
    // as the trigger handler.
    if ($field == $this->options['id']) {
      break;
    }
    $fields[$field] = $handler->definition['title'];
  }
  $form['trigger_field'] = array(
    '#type' => 'select',
    '#title' => t('Trigger field'),
    '#description' => t('Select the field that should be turned into the trigger for the Colorbox.  Only fields that appear before this one in the field list may be used.'),
    '#options' => $fields,
    '#default_value' => $this->options['trigger_field'],
    '#weight' => -12,
  );
  $form['popup'] = array(
    '#type' => 'textarea',
    '#title' => t('Popup'),
    '#description' => t('Combine tokens from the "Replacement patterns" below and html to create what the Colorbox popup will become.'),
    '#default_value' => $this->options['popup'],
    '#weight' => -11,
  );
  $form['caption'] = array(
    '#type' => 'textfield',
    '#title' => t('Caption'),
    '#description' => t('Combine tokens from the "Replacement patterns" below and html to create the caption for the Colorbox. Leave empty for no caption.'),
    '#default_value' => $this->options['caption'],
    '#weight' => -10,
  );
  $form['gid'] = array(
    '#type' => 'checkbox',
    '#title' => t('Automatic generated Colorbox gallery'),
    '#description' => t('Enable Colorbox gallery using a generated gallery id for this view.'),
    '#default_value' => $this->options['gid'],
    '#weight' => -9,
  );
  $form['custom_gid'] = array(
    '#type' => 'textfield',
    '#title' => t('Custom Colorbox gallery'),
    '#description' => t('Enable Colorbox gallery with a given string as gallery. Overrides the automatically generated gallery id above.'),
    '#default_value' => $this->options['custom_gid'],
    '#weight' => -8,
  );
  $form['height'] = array(
    '#type' => 'textfield',
    '#title' => t('Height'),
    '#description' => t('Specify the height of the Colorbox popup window. Because the content is dynamic, we cannot detect this value automatically. Example: "100%", 500, "500px".'),
    '#default_value' => $this->options['height'],
    '#weight' => -7,
  );
  $form['width'] = array(
    '#type' => 'textfield',
    '#title' => t('Width'),
    '#description' => t('Specify the width of the Colorbox popup window. Because the content is dynamic, we cannot detect this value automatically. Example: "100%", 500, "500px".'),
    '#default_value' => $this->options['width'],
    '#weight' => -6,
  );

  // Remove the checkboxs and other irrelevant controls.
  unset($form['alter']['alter_text']);
  unset($form['alter']['make_link']);
  unset($form['alter']['text']);
  unset($form['alter']['path']);
  unset($form['alter']['alt']);
  unset($form['alter']['prefix']);
  unset($form['alter']['suffix']);
  unset($form['alter']['text']['#dependency']);
  unset($form['alter']['text']['#process']);
}