Updated to Drupal 8.5. Core Media not yet in use.
[yaffs-website] / web / core / modules / system / tests / modules / form_test / src / Form / FormTestRangeForm.php
1 <?php
2
3 namespace Drupal\form_test\Form;
4
5 use Drupal\Core\Form\FormBase;
6 use Drupal\Core\Form\FormStateInterface;
7 use Symfony\Component\HttpFoundation\JsonResponse;
8
9 /**
10  * Form constructor for testing #type 'range' elements.
11  *
12  * @internal
13  */
14 class FormTestRangeForm extends FormBase {
15
16   /**
17    * {@inheritdoc}
18    */
19   public function getFormId() {
20     return 'form_test_range';
21   }
22
23   /**
24    * {@inheritdoc}
25    */
26   public function buildForm(array $form, FormStateInterface $form_state) {
27     $form['with_default_value'] = [
28       '#type' => 'range',
29       '#title' => 'Range with default value',
30       '#min' => 10,
31       '#max' => 20,
32       '#step' => 2,
33       '#default_value' => 18,
34       '#description' => 'The default value is 18.',
35     ];
36     $form['float'] = [
37       '#type' => 'range',
38       '#title' => 'Float',
39       '#min' => 10,
40       '#max' => 11,
41       '#step' => 'any',
42       '#description' => 'Floating point number between 10 and 11.',
43     ];
44     $form['integer'] = [
45       '#type' => 'range',
46       '#title' => 'Integer',
47       '#min' => 2,
48       '#max' => 8,
49       '#step' => 2,
50       '#description' => 'Even integer between 2 and 8.',
51     ];
52     $form['offset'] = [
53       '#type' => 'range',
54       '#title' => 'Offset',
55       '#min' => 2.9,
56       '#max' => 10.9,
57       '#description' => 'Value between 2.9 and 10.9.',
58     ];
59     $form['submit'] = [
60       '#type' => 'submit',
61       '#value' => 'Submit',
62     ];
63     return $form;
64   }
65
66   /**
67    * {@inheritdoc}
68    */
69   public function submitForm(array &$form, FormStateInterface $form_state) {
70     $form_state->setResponse(new JsonResponse($form_state->getValues()));
71   }
72
73 }