public function SchedulerAdminForm::buildForm in Scheduler 8
Same name and namespace in other branches
- 2.x src/Form/SchedulerAdminForm.php \Drupal\scheduler\Form\SchedulerAdminForm::buildForm()
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/ SchedulerAdminForm.php, line 58
Class
- SchedulerAdminForm
- Main administration form for the Scheduler module.
Namespace
Drupal\scheduler\FormCode
public function buildForm(array $form, FormStateInterface $form_state) {
// Options for setting date-only with default time.
$form['date_only_fieldset'] = [
'#type' => 'fieldset',
'#title' => $this
->t('Date only'),
'#collapsible' => FALSE,
];
$form['date_only_fieldset']['allow_date_only'] = [
'#type' => 'checkbox',
'#title' => $this
->t('Allow users to enter only a date and provide a default time.'),
'#default_value' => $this
->setting('allow_date_only'),
'#description' => $this
->t('When only a date is entered the time will default to a specified value, but the user can change this if required.'),
];
$form['date_only_fieldset']['default_time'] = [
'#type' => 'textfield',
'#title' => $this
->t('Default time'),
'#default_value' => $this
->setting('default_time'),
'#size' => 20,
'#maxlength' => 8,
'#description' => $this
->t('Provide a default time in @format format that will be used if the user does not enter a value.', [
'@format' => $this
->setting('hide_seconds') ? 'HH:MM' : 'HH:MM:SS',
]),
'#states' => [
'visible' => [
':input[name="allow_date_only"]' => [
'checked' => TRUE,
],
],
],
];
// Options for configuring the time input field.
$form['time_fieldset'] = [
'#type' => 'fieldset',
'#title' => $this
->t('Time settings'),
'#collapsible' => FALSE,
];
$form['time_fieldset']['hide_seconds'] = [
'#type' => 'checkbox',
'#title' => $this
->t('Hide the seconds.'),
'#default_value' => $this
->setting('hide_seconds'),
'#description' => $this
->t('When entering a time, only show hours and minutes in the input field.'),
];
return parent::buildForm($form, $form_state);
}