public DateFormatFormBase::form(array $form, FormStateInterface $form_state)
Gets the actual form array to be built.
Overrides EntityForm::form
See also
\Drupal\Core\Entity\EntityForm::processForm()
\Drupal\Core\Entity\EntityForm::afterBuild()
File
- core/modules/system/src/Form/DateFormatFormBase.php, line 78
Class
- DateFormatFormBase
- Provides a base form for date formats.
Namespace
Drupal\system\Form
Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | public function form( array $form , FormStateInterface $form_state ) { $form [ 'label' ] = array ( '#type' => 'textfield' , '#title' => 'Name' , '#maxlength' => 100, '#description' => t( 'Name of the date format' ), '#default_value' => $this ->entity->label(), ); $form [ 'id' ] = array ( '#type' => 'machine_name' , '#description' => t( 'A unique machine-readable name. Can only contain lowercase letters, numbers, and underscores.' ), '#disabled' => ! $this ->entity->isNew(), '#default_value' => $this ->entity->id(), '#machine_name' => array ( 'exists' => array ( $this , 'exists' ), 'replace_pattern' => '([^a-z0-9_]+)|(^custom$)' , 'error' => $this ->t( 'The machine-readable name must be unique, and can only contain lowercase letters, numbers, and underscores. Additionally, it can not be the reserved word "custom".' ), ), ); $form [ 'date_format_pattern' ] = array ( '#type' => 'textfield' , '#title' => t( 'Format string' ), '#maxlength' => 100, '#description' => $this ->t( 'A user-defined date format. See the <a href="http://php.net/manual/function.date.php">PHP manual</a> for available options.' ), '#required' => TRUE, '#attributes' => [ 'data-drupal-date-formatter' => 'source' , ], '#field_suffix' => ' <small class="js-hide" data-drupal-date-formatter="preview">' . $this ->t( 'Displayed as %date_format' , [ '%date_format' => '' ]) . '</small>' , ); $form [ 'langcode' ] = array ( '#type' => 'language_select' , '#title' => t( 'Language' ), '#languages' => LanguageInterface::STATE_ALL, '#default_value' => $this ->entity->language()->getId(), ); $form [ '#attached' ][ 'drupalSettings' ][ 'dateFormats' ] = $this ->dateFormatter->getSampleDateFormats(); $form [ '#attached' ][ 'library' ][] = 'system/drupal.system.date' ; return parent::form( $form , $form_state ); } |
Please login to continue.