diff --git a/setup/wizardsteps/WizStepSummary.php b/setup/wizardsteps/WizStepSummary.php index 4f9e8cb4f..3b99f9fc7 100644 --- a/setup/wizardsteps/WizStepSummary.php +++ b/setup/wizardsteps/WizStepSummary.php @@ -190,46 +190,48 @@ class WizStepSummary extends AbstractWizStepInstall $oPage->error($this->sDependencyIssue); } - $bDBBackup = $this->oWizard->GetParameter('db_backup', false); - $sDBBackupPath = $this->oWizard->GetParameter('db_backup_path', ''); - $sMySQLBinDir = $this->oWizard->GetParameter('mysql_bindir', null); - if ($sMode != 'install') { - $sDBBackupPath = utils::GetDataPath().'backups/manual/setup-'.date('Y-m-d_H_i'); + if ($sMode !== 'install') { + $bDBBackup = $this->oWizard->GetParameter('db_backup', false); + $sDefaultBackupPath = utils::GetDataPath().'backups/manual/setup-'.date('Y-m-d_H_i'); + $sDBBackupPath = $this->oWizard->GetParameter('db_backup_path', $sDefaultBackupPath); + $sMySQLBinDir = $this->oWizard->GetParameter('mysql_bindir', null); $aPreviousInstance = SetupUtils::GetPreviousInstance(APPROOT); if ($aPreviousInstance['found']) { $sMySQLBinDir = $aPreviousInstance['mysql_bindir']; $this->oWizard->SaveParameter('mysql_bindir', $aPreviousInstance['mysql_bindir']); } + $aBackupChecks = SetupUtils::CheckBackupPrerequisites($sDBBackupPath, $sMySQLBinDir); + $bCanBackup = true; + $sMySQLDumpMessage = ''; + foreach ($aBackupChecks as $oCheck) { + switch ($oCheck->iSeverity) { + case CheckResult::ERROR: + $bCanBackup = false; + $sMySQLDumpMessage .= '
'; + break; + case CheckResult::TRACE: + SetupLog::Ok($oCheck->sLabel); + break; + default: + $sMySQLDumpMessage .= ''; + break; + } + } + $sChecked = ($bCanBackup && $bDBBackup) ? ' checked ' : ''; + $sDisabled = $bCanBackup ? '' : ' disabled '; + $oPage->add('