From 15328a14b4e10607486a3266e602e55c4dc7dd1e Mon Sep 17 00:00:00 2001 From: "DESKTOP-T0O5CDB\\DESK-555BD" Date: Fri, 5 Jul 2024 11:18:46 -0600 Subject: [PATCH] Make it easier to update root user credentials and patch bug. --- Controllers/HomeController.cs | 7 +++++ Controllers/LoginController.cs | 4 +-- Views/Home/Index.cshtml | 14 ++++++++-- Views/Home/_AccountModal.cshtml | 2 +- Views/Home/_RootAccountModal.cshtml | 26 ++++++++++++++++++ wwwroot/js/garage.js | 41 +++++++++++++++++++++++++++++ 6 files changed, 89 insertions(+), 5 deletions(-) create mode 100644 Views/Home/_RootAccountModal.cshtml diff --git a/Controllers/HomeController.cs b/Controllers/HomeController.cs index 60e4e13..76459ec 100644 --- a/Controllers/HomeController.cs +++ b/Controllers/HomeController.cs @@ -219,6 +219,13 @@ namespace CarCareTracker.Controllers var userName = User.Identity.Name; return PartialView("_AccountModal", new UserData() { EmailAddress = emailAddress, UserName = userName }); } + [Authorize(Roles = nameof(UserData.IsRootUser))] + [HttpGet] + public IActionResult GetRootAccountInformationModal() + { + var userName = User.Identity.Name; + return PartialView("_RootAccountModal", new UserData() { UserName = userName }); + } [ResponseCache(Duration = 0, Location = ResponseCacheLocation.None, NoStore = true)] public IActionResult Error() { diff --git a/Controllers/LoginController.cs b/Controllers/LoginController.cs index f2332c7..b4d23e7 100644 --- a/Controllers/LoginController.cs +++ b/Controllers/LoginController.cs @@ -220,7 +220,7 @@ namespace CarCareTracker.Controllers var result = _loginLogic.ResetPasswordByUser(credentials); return Json(result); } - [Authorize] //User must already be logged in to do this. + [Authorize(Roles = nameof(UserData.IsRootUser))] //User must already be logged in as root user to do this. [HttpPost] public IActionResult CreateLoginCreds(LoginModel credentials) { @@ -235,7 +235,7 @@ namespace CarCareTracker.Controllers } return Json(false); } - [Authorize] + [Authorize(Roles = nameof(UserData.IsRootUser))] [HttpPost] public IActionResult DestroyLoginCreds() { diff --git a/Views/Home/Index.cshtml b/Views/Home/Index.cshtml index 61bf67c..ef095fe 100644 --- a/Views/Home/Index.cshtml +++ b/Views/Home/Index.cshtml @@ -41,7 +41,12 @@ @translator.Translate(userLanguage,"Admin Panel") } - @if (!User.IsInRole(nameof(UserData.IsRootUser))) + @if (User.IsInRole(nameof(UserData.IsRootUser))) + { +
  • + +
  • + } else {
  • @@ -90,7 +95,12 @@ @translator.Translate(userLanguage,"Admin Panel")
  • } - @if (!User.IsInRole(nameof(UserData.IsRootUser))) + @if (User.IsInRole(nameof(UserData.IsRootUser))) + { +
  • + +
  • + } else {
  • diff --git a/Views/Home/_AccountModal.cshtml b/Views/Home/_AccountModal.cshtml index 4812a90..2f2abd4 100644 --- a/Views/Home/_AccountModal.cshtml +++ b/Views/Home/_AccountModal.cshtml @@ -7,7 +7,7 @@ var userLanguage = userConfig.UserLanguage; }