From 06f1ce58844be61c8827480aa28e7b8bb470ef67 Mon Sep 17 00:00:00 2001 From: "DESKTOP-T0O5CDB\\DESK-555BD" Date: Wed, 17 Jan 2024 15:53:02 -0700 Subject: [PATCH] add api endpoint to create backup. --- Controllers/APIController.cs | 11 +++++++++++ Views/Home/Index.cshtml | 4 ++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/Controllers/APIController.cs b/Controllers/APIController.cs index f1e34fc..c41c67f 100644 --- a/Controllers/APIController.cs +++ b/Controllers/APIController.cs @@ -23,6 +23,7 @@ namespace CarCareTracker.Controllers private readonly IReminderHelper _reminderHelper; private readonly IGasHelper _gasHelper; private readonly IUserLogic _userLogic; + private readonly IFileHelper _fileHelper; public APIController(IVehicleDataAccess dataAccess, IGasHelper gasHelper, IReminderHelper reminderHelper, @@ -33,6 +34,7 @@ namespace CarCareTracker.Controllers ITaxRecordDataAccess taxRecordDataAccess, IReminderRecordDataAccess reminderRecordDataAccess, IUpgradeRecordDataAccess upgradeRecordDataAccess, + IFileHelper fileHelper, IUserLogic userLogic) { _dataAccess = dataAccess; @@ -46,6 +48,7 @@ namespace CarCareTracker.Controllers _gasHelper = gasHelper; _reminderHelper = reminderHelper; _userLogic = userLogic; + _fileHelper = fileHelper; } public IActionResult Index() { @@ -129,6 +132,14 @@ namespace CarCareTracker.Controllers var results = _reminderHelper.GetReminderRecordViewModels(reminders, currentMileage, DateTime.Now).Select(x=> new ReminderExportModel { Description = x.Description, Urgency = x.Urgency.ToString(), Metric = x.Metric.ToString(), Notes = x.Notes}); return Json(results); } + [Authorize(Roles = nameof(UserData.IsRootUser))] + [HttpGet] + [Route("/api/makebackup")] + public IActionResult MakeBackup() + { + var result = _fileHelper.MakeBackup(); + return Json(result); + } private int GetMaxMileage(int vehicleId) { var numbersArray = new List(); diff --git a/Views/Home/Index.cshtml b/Views/Home/Index.cshtml index 1e875db..545996c 100644 --- a/Views/Home/Index.cshtml +++ b/Views/Home/Index.cshtml @@ -13,10 +13,10 @@