diff --git a/datamodels/2.x/itop-backup/dictionaries/en.dict.itop-backup.php b/datamodels/2.x/itop-backup/dictionaries/en.dict.itop-backup.php
index 2b05aa0fb3..c981bdd239 100644
--- a/datamodels/2.x/itop-backup/dictionaries/en.dict.itop-backup.php
+++ b/datamodels/2.x/itop-backup/dictionaries/en.dict.itop-backup.php
@@ -49,7 +49,8 @@ Dict::Add('EN US', 'English', 'English', array(
'bkp-status-backups-auto' => 'Scheduled backups',
'bkp-status-backups-manual' => 'Manual backups',
'bkp-status-backups-none' => 'No backup yet',
- 'bkp-next-backup' => 'The next backup will occur on %1$s (%2$s) at %3$s',
+ 'bkp-next-backup' => 'The next backup will occur on %1$s (%2$s) at %3$s.',
+ 'bkp-next-backup-unknown' => 'The next backup is not scheduled yet.',
'bkp-button-backup-now' => 'Backup now!',
'bkp-button-restore-now' => 'Restore!',
'bkp-confirm-backup' => 'Please confirm that you do request the backup to occur right now.',
diff --git a/datamodels/2.x/itop-backup/status.php b/datamodels/2.x/itop-backup/status.php
index 0b07cf3f7b..aa74178238 100644
--- a/datamodels/2.x/itop-backup/status.php
+++ b/datamodels/2.x/itop-backup/status.php
@@ -337,18 +337,29 @@ try {
);
}
- // Do backup now
+ // Next occurrence
//
- $oBackupExec = new BackupExec();
- $oNext = $oBackupExec->GetNextOccurrence();
- $sNextOccurrence = Dict::Format('bkp-next-backup', $aWeekDayToString[$oNext->Format('N')], $oNext->Format('Y-m-d'),
- $oNext->Format('H:i'));
+ /** @var \BackgroundTask $oTask */
+ $oTask = MetaModel::GetObjectByName(BackgroundTask::class, BackupExec::class, false);
+ if ($oTask)
+ {
+ $oTimezone = new DateTimeZone(MetaModel::GetConfig()->Get('timezone'));
+ $oNext = new DateTime($oTask->Get('next_run_date'), $oTimezone);
+ $sNextOccurrence = Dict::Format('bkp-next-backup', $aWeekDayToString[$oNext->Format('N')], $oNext->Format('Y-m-d'),
+ $oNext->Format('H:i'));
+ }
+ else
+ {
+ $sNextOccurrence = Dict::S('bkp-next-backup-unknown');
+ }
$oFieldsetBackupNow->AddSubBlock(
AlertUIBlockFactory::MakeForInformation('', $sNextOccurrence)
->SetIsClosable(false)
->SetIsCollapsible(false)
);
+ // Do backup now
+ //
$oLaunchBackupButton = ButtonUIBlockFactory::MakeForPrimaryAction(Dict::S('bkp-button-backup-now'));
$oLaunchBackupButton->SetOnClickJsCode('LaunchBackupNow();');
$oFieldsetBackupNow->AddSubBlock($oLaunchBackupButton);