You are here

public function CloseBlockSettingsForm::buildForm in Close Block 8

Form constructor.

Parameters

array $form: An associative array containing the structure of the form.

\Drupal\Core\Form\FormStateInterface $form_state: The current state of the form.

Return value

array The form structure.

Overrides ConfigFormBase::buildForm

File

src/Form/CloseBlockSettingsForm.php, line 49

Class

CloseBlockSettingsForm
Provides a module settings form.

Namespace

Drupal\closeblock\Form

Code

public function buildForm(array $form, FormStateInterface $form_state) {
  $config = $this
    ->config('closeblock.settings');
  $form['closeblock'] = [
    '#type' => 'fieldset',
    '#title' => $this
      ->t('Closeblock selectors'),
    '#weight' => 0,
    '#attributes' => [
      'id' => 'close_block_form',
    ],
  ];
  $form['closeblock']['close_block_button_text'] = [
    '#type' => 'textfield',
    '#title' => $this
      ->t('Button text'),
    '#default_value' => $config
      ->get('close_block_button_text'),
    '#description' => $this
      ->t('Button text for block'),
  ];
  $form['closeblock']['close_block_type'] = [
    '#type' => 'radios',
    '#title' => $this
      ->t('Block close behavior'),
    '#options' => [
      'fadeOut' => $this
        ->t('Fade Out'),
      'slideUp' => $this
        ->t('Slide Up'),
      'none' => $this
        ->t('None'),
    ],
    '#description' => $this
      ->t('The animation type for hiding block.'),
    '#default_value' => $config
      ->get('close_block_type'),
  ];
  $form['closeblock']['close_block_speed'] = [
    '#type' => 'number',
    '#title' => $this
      ->t('Animation speed'),
    '#description' => $this
      ->t('The animation speed in milliseconds.'),
    '#default_value' => $config
      ->get('close_block_speed'),
  ];
  $form['closeblock']['reset_cookie_time'] = [
    '#type' => 'number',
    '#title' => $this
      ->t('Reset Cookie Value'),
    '#description' => $this
      ->t('How long cooke is valid (in days).'),
    '#default_value' => $config
      ->get('reset_cookie_time'),
  ];
  $form['closeblock']['resetCookie'] = [
    '#type' => 'submit',
    '#value' => $this
      ->t('Reset Cookie'),
    '#description' => $this
      ->t('Reset cookie to visible block'),
    '#id' => 'closeblock-clear-cookie-button',
  ];
  $form['#attached']['library'][] = 'closeblock/closeblock';
  return parent::buildForm($form, $form_state);
}