diff --git a/frappe/core/doctype/deleted_document/deleted_document.py b/frappe/core/doctype/deleted_document/deleted_document.py
index 598bd00cf6..e637f4f000 100644
--- a/frappe/core/doctype/deleted_document/deleted_document.py
+++ b/frappe/core/doctype/deleted_document/deleted_document.py
@@ -45,6 +45,8 @@ def bulk_restore(docnames):
docnames = frappe.parse_json(docnames)
message = _('Restoring Deleted Document')
restored = []
+ invalid = []
+ failed = []
for i, d in enumerate(docnames):
try:
@@ -54,9 +56,36 @@ def bulk_restore(docnames):
restored.append(d)
except frappe.DocumentAlreadyRestored:
- pass
+ frappe.message_log.pop()
+ invalid.append(d)
except Exception:
+ failed.append(d)
frappe.db.rollback()
+ frappe.message_log.pop()
+
+ if failed or invalid:
+ tail = ""
+
+ restored_data = ""
+ restored_head = _("Documents restored successfully") + "