function acsf_form_system_site_maintenance_mode_alter in Acquia Cloud Site Factory Connector 8.2
Same name and namespace in other branches
- 8 acsf.module \acsf_form_system_site_maintenance_mode_alter()
Implements hook_form_FORM_ID_alter().
File
- ./
acsf.module, line 86 - Acquia Cloud Site Factory Connector.
Code
function acsf_form_system_site_maintenance_mode_alter(&$form, FormStateInterface $form_state, $form_id) {
$messenger = \Drupal::messenger();
$acsf_maintenance_time = \Drupal::config('acsf.settings')
->get('maintenance_time');
$maintenance_mode = \Drupal::state()
->get('system.maintenance_mode');
if ($acsf_maintenance_time && $maintenance_mode) {
$messenger
->addMessage(t('ACSF site maintenance in progress.'), 'warning');
if (\Drupal::time()
->getRequestTime() > $acsf_maintenance_time) {
// The update is taking longer than expected.
$messenger
->addMessage(t('The maintenance was expected to be done already - please be patient. Reload this page to see if maintenance is complete.'), 'warning');
}
else {
// Never show an interval less than 1 minute.
$remaining = \Drupal::service('date.formatter')
->formatInterval(60 + $acsf_maintenance_time - \Drupal::time()
->getRequestTime(), 1);
$messenger
->addMessage(t('The maintenance should be completed within :interval. Reload this page to see if maintenance is complete.', [
':interval' => $remaining,
]), 'warning');
}
$form['maintenance_mode']['#attributes']['disabled'][] = 'disabled';
}
}