public function LiveWeatherSettingsForm::buildForm in Live Weather 8.2
Same name and namespace in other branches
- 8 src/Form/LiveWeatherSettingsForm.php \Drupal\live_weather\Form\LiveWeatherSettingsForm::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/ LiveWeatherSettingsForm.php, line 36 - Contains \Drupal\live_weather\Form\LiveWeatherSettingsForm.
Class
- LiveWeatherSettingsForm
- Live Weather Settings Form.
Namespace
Drupal\live_weather\FormCode
public function buildForm(array $form, FormStateInterface $form_state) {
$settings = $this->configFactory
->get('live_weather.settings')
->get('settings');
$yes_no_options = [
FALSE => $this
->t('No'),
TRUE => $this
->t('Yes'),
];
$form['#tree'] = TRUE;
$form['settings']['app_id'] = [
'#type' => 'textfield',
'#title' => $this
->t('Yahoo App ID'),
'#required' => TRUE,
'#default_value' => empty($settings['app_id']) ? '' : $settings['app_id'],
'#description' => $this
->t('Please enter your Yahoo App ID.'),
];
$form['settings']['consumer_key'] = [
'#type' => 'textfield',
'#title' => $this
->t('Yahoo App Consumer Key'),
'#required' => TRUE,
'#default_value' => empty($settings['consumer_key']) ? '' : $settings['consumer_key'],
'#description' => $this
->t('Please enter your Yahoo App Consumer Key.'),
];
$form['settings']['consumer_secret'] = [
'#type' => 'textfield',
'#title' => $this
->t('Yahoo App Consumer Secret Key'),
'#required' => TRUE,
'#default_value' => empty($settings['consumer_secret']) ? '' : $settings['consumer_secret'],
'#description' => $this
->t('Please enter your Yahoo App Consumer Secret Key.'),
];
$form['settings']['unit'] = [
'#type' => 'select',
'#title' => $this
->t('Unit'),
'#options' => [
'F' => $this
->t('Fahrenheit'),
'C' => $this
->t('Celsius'),
],
'#default_value' => $settings['unit'],
'#description' => $this
->t('Select Fahrenheit or Celsius for temperature unit.'),
];
$form['settings']['image'] = [
'#type' => 'select',
'#title' => $this
->t('Image'),
'#options' => $yes_no_options,
'#default_value' => $settings['image'],
'#description' => $this
->t('Select Yes to show Forcast Image.'),
];
$form['settings']['wind'] = [
'#type' => 'select',
'#title' => $this
->t('Wind'),
'#options' => $yes_no_options,
'#default_value' => $settings['wind'],
'#description' => $this
->t('Select Yes to show wind speed.'),
];
$form['settings']['humidity'] = [
'#type' => 'select',
'#title' => $this
->t('Humidity'),
'#options' => $yes_no_options,
'#default_value' => $settings['humidity'],
'#description' => $this
->t('Select Yes to show humidity level.'),
];
$form['settings']['visibility'] = [
'#type' => 'select',
'#title' => $this
->t('Visibility'),
'#options' => $yes_no_options,
'#default_value' => $settings['visibility'],
'#description' => $this
->t('Select Yes to show visibility level.'),
];
$form['settings']['sunrise'] = [
'#type' => 'select',
'#title' => $this
->t('Sunrise'),
'#options' => $yes_no_options,
'#default_value' => $settings['sunrise'],
'#description' => $this
->t('Select Yes to show sunrise time.'),
];
$form['settings']['sunset'] = [
'#type' => 'select',
'#title' => $this
->t('Sunset'),
'#options' => $yes_no_options,
'#default_value' => $settings['sunset'],
'#description' => $this
->t('Select Yes to show sunset time.'),
];
$form['settings']['cache'] = [
'#type' => 'select',
'#title' => $this
->t('Cache'),
'#options' => [
0 => $this
->t('No Cache'),
1800 => $this
->t('30 min'),
3600 => $this
->t('1 hour'),
86400 => $this
->t('One day'),
],
'#default_value' => $settings['cache'],
'#description' => $this
->t('Time for cache the block.'),
];
return parent::buildForm($form, $form_state);
}