18 $backupIds = $this->
getRequest()->getParam(
'ids', []);
20 if (!is_array($backupIds) || !count($backupIds)) {
21 return $this->
_redirect(
'backup/*/index');
24 $resultData = new \Magento\Framework\DataObject();
25 $resultData->setIsSuccess(
false);
26 $resultData->setDeleteResult([]);
27 $this->_coreRegistry->register(
'backup_manager', $resultData);
29 $deleteFailMessage =
__(
'We can\'t delete one or more backups.');
32 $allBackupsDeleted =
true;
34 foreach ($backupIds as
$id) {
35 list($time,
$type) = explode(
'_',
$id);
36 $backupModel = $this->_backupModelFactory->create($time,
$type)->deleteFile();
38 if ($backupModel->exists()) {
39 $allBackupsDeleted =
false;
45 $resultData->setDeleteResult(
46 array_merge($resultData->getDeleteResult(), [$backupModel->getFileName() .
' ' .
$result])
50 $resultData->setIsSuccess(
true);
51 if ($allBackupsDeleted) {
52 $this->messageManager->addSuccessMessage(
__(
'You deleted the selected backup(s).'));
54 throw new \Exception($deleteFailMessage);
56 }
catch (\Exception $e) {
57 $resultData->setIsSuccess(
false);
58 $this->messageManager->addErrorMessage($deleteFailMessage);
61 return $this->
_redirect(
'backup/*/index');
_redirect($path, $arguments=[])