function monitoring_mail_form_monitoring_settings_alter in Monitoring 8
Implements hook_form_FORM_ID_alter().
File
- modules/
monitoring_mail/ monitoring_mail.module, line 154 - Monitoring Mail bootstrap file.
Code
function monitoring_mail_form_monitoring_settings_alter(&$form, FormStateInterface $form_state) {
$config = \Drupal::config('monitoring_mail.settings');
// Notification mail recipient.
$form['mail'] = [
'#type' => 'fieldset',
'#title' => t('Mail notifications'),
'#description' => t('Notify on sensor status change.'),
];
$form['mail']['mail'] = [
'#type' => 'email',
'#title' => t('Mail recipient'),
'#maxlength' => 255,
'#default_value' => $config
->get('mail'),
];
// Show warning if there is no logging.
if (\Drupal::config('monitoring.settings')
->get('sensor_call_logging') == 'none') {
// If logging is disabled, we can't track changes. A mail is not triggered.
$form['mail']['message'] = [
'#type' => 'container',
'#markup' => t('With logging disabled, mails are not triggered.'),
'#attributes' => [
'class' => [
'messages messages--warning',
],
],
];
}
// Severity checkboxes.
$options = SensorResult::getStatusLabels();
$form['mail']['severities'] = [
'#type' => 'checkboxes',
'#default_value' => (array) $config
->get('severities'),
'#options' => $options,
'#title' => t('Mail on status change from / to'),
'#description' => t('A backtrace is logged for all severities that are checked.'),
];
$form['#submit'][] = 'monitoring_mail_form_monitoring_settings_submit';
}