public ActionResult Delete(int id)
        {
            var bk = DbContext.History.Find(id);

            if (bk == null)
            {
                return(HttpNotFound(__("Not a valid backup id")));
            }

            if (!User.IsInRole("Admin") && !User.IsInRole("Operator"))
            {
                var bkName = bk.Username;
                var uName  = User.Identity.Name;
                if (bkName == null || uName == null || (bkName.ToLowerInvariant() != User.Identity.Name.ToLowerInvariant()))
                {
                    return(HttpNotAuthorized());
                }
            }

            if (BackupsManager.DeleteBackup(DbContext, bk, Logger))
            {
                try
                {
                    DbContext.SaveChanges();
                    if (Request.IsAjaxRequest())
                    {
                        return(Content(@"OK", "text/plain"));
                    }

                    AddFlashMessage(__("Backup successfully deleted"), FlashMessageType.Success);

                    return(RedirectToAction("Index"));
                }
                catch (Exception ex)
                {
                    Logger.ErrorException(__("While saving database changes"), ex);
                }
            }

            if (Request.IsAjaxRequest())
            {
                return(Content(@"ERR", "text/plain"));
            }

            AddFlashMessage(__("An error occurred while deleting backup."), FlashMessageType.Error);

            return(RedirectToAction("Index"));
        }