TestForm.php in Zircon Profile 8
Same filename in this branch
Same filename and directory in other branches
Contains \Drupal\block_test\Form\TestForm.
Namespace
Drupal\block_test\FormFile
core/modules/block/tests/modules/block_test/src/Form/TestForm.phpView source
<?php
/**
* @file
* Contains \Drupal\block_test\Form\TestForm.
*/
namespace Drupal\block_test\Form;
use Drupal\Core\Form\FormBase;
use Drupal\Core\Form\FormStateInterface;
class TestForm extends FormBase {
/**
* {@inheritdoc}
*/
public function getFormId() {
return 'block_test_form_test';
}
/**
* {@inheritdoc}
*/
public function buildForm(array $form, FormStateInterface $form_state) {
$form['email'] = [
'#type' => 'email',
'#title' => $this
->t('Your .com email address.'),
];
$form['show'] = [
'#type' => 'submit',
'#value' => $this
->t('Submit'),
];
return $form;
}
/**
* {@inheritdoc}
*/
public function validateForm(array &$form, FormStateInterface $form_state) {
if (strpos($form_state
->getValue('email'), '.com') === FALSE) {
$form_state
->setErrorByName('email', $this
->t('This is not a .com email address.'));
}
}
/**
* {@inheritdoc}
*/
public function submitForm(array &$form, FormStateInterface $form_state) {
drupal_set_message($this
->t('Your email address is @email', [
'@email' => $form['email']['#value'],
]));
}
}