You are here

public function Autopopup::optionsForm in Openlayers 7.3

@TODO What is this return? If it is the form, why is form by reference?

Overrides Base::optionsForm

File

src/Plugin/Component/Autopopup/Autopopup.php, line 25
Component: Autopopup.

Class

Autopopup
Class Autopopup.

Namespace

Drupal\openlayers\Plugin\Component\Autopopup

Code

public function optionsForm(array &$form, array &$form_state) {
  $form['options']['source'] = array(
    '#type' => 'select',
    '#title' => t('Source'),
    '#empty_option' => t('- Select a Source -'),
    '#default_value' => isset($form_state['item']->options['source']) ? $form_state['item']->options['source'] : '',
    '#description' => t('Select the source.'),
    '#options' => \Drupal\openlayers\Openlayers::loadAllAsOptions('Source'),
    '#required' => TRUE,
  );
  $form['options']['zoom'] = array(
    '#type' => 'textfield',
    '#title' => t('Zoom'),
    '#default_value' => isset($form_state['item']->options['zoom']) ? $form_state['item']->options['zoom'] : 10,
    '#description' => t('Integer or <em>auto</em> or <em>disabled</em>.'),
    '#required' => TRUE,
  );
  $form['options']['closer'] = array(
    '#type' => 'checkbox',
    '#title' => t('Display close button ?'),
    '#default_value' => isset($form_state['item']->options['closer']) ? $form_state['item']->options['closer'] : FALSE,
  );
  $form['options']['enableAnimations'] = array(
    '#type' => 'checkbox',
    '#title' => t('Enable animations'),
    '#default_value' => isset($form_state['item']->options['enableAnimations']) ? $form_state['item']->options['enableAnimations'] : FALSE,
    '#description' => t('Enable pan and zoom animation.'),
  );
  $form['options']['animations'] = array(
    '#type' => 'fieldset',
    '#title' => 'Animations options',
    '#states' => array(
      'visible' => array(
        'input[name="options[enableAnimations]"' => array(
          'checked' => TRUE,
        ),
      ),
    ),
  );
  $form['options']['animations']['pan'] = array(
    '#type' => 'textfield',
    '#title' => t('Pan animation duration'),
    '#default_value' => isset($form_state['item']->options['animations']['pan']) ? $form_state['item']->options['animations']['pan'] : '500',
    '#description' => t('Duration of the pan animation.'),
  );
  $form['options']['animations']['zoom'] = array(
    '#type' => 'textfield',
    '#title' => t('Zoom animation duration'),
    '#default_value' => isset($form_state['item']->options['animations']['zoom']) ? $form_state['item']->options['animations']['zoom'] : '500',
    '#description' => t('Duration of the zoom animation.'),
  );
  $form['options']['positioning'] = array(
    '#type' => 'select',
    '#title' => t('Positioning'),
    '#default_value' => isset($form_state['item']->options['positioning']) ? $form_state['item']->options['positioning'] : 'top-left',
    '#description' => t('Defines how the overlay is actually positioned. Default is top-left.'),
    '#options' => Openlayers::positioningOptions(),
    '#required' => TRUE,
  );
}