You are here

public function WordListCaptchaSettingsForm::buildForm in CAPTCHA Pack 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

text_captcha/modules/word_list_captcha/src/Form/WordListCaptchaSettingsForm.php, line 40

Class

WordListCaptchaSettingsForm
Administration form.

Namespace

Drupal\word_list_captcha\Form

Code

public function buildForm(array $form, FormStateInterface $form_state) {
  $config = $this
    ->config('word_list_captcha.settings');
  drupal_set_message($this
    ->t('WARNING: this module is not completely ported to Drupal 8 and does not work yet.'), 'warning');
  $code_length_options = [
    4,
    5,
    6,
    7,
    8,
    9,
    10,
  ];

  // Form element for the number of words in the word list.
  $form['word_list_captcha_list_size'] = [
    '#type' => 'select',
    '#title' => $this
      ->t('Number of words in word list'),
    '#default_value' => $config
      ->get('word_list_captcha_list_size'),
    '#options' => array_combine($code_length_options, $code_length_options),
  ];

  // Form elements for the word pools.
  _text_captcha_word_pool_form_items($form, 'word_list_captcha_word_pool_1', 'Word pool 1', 'Enter a bunch of related words (space separated, no punctuation). Make sure they are not related in the same way to the words of the other word pool.', WORD_LIST_CAPTCHA_WORD_POOL1, 2);
  _text_captcha_word_pool_form_items($form, 'word_list_captcha_word_pool_2', 'Word pool 2', 'Enter a bunch of related words (space separated, no punctuation). Make sure they are not related in the same way to the words of the other word pool.', WORD_LIST_CAPTCHA_WORD_POOL2, 2);
  return parent::buildForm($form, $form_state);
}