From 27bf158a7a637e3f48dfdbae39791fbe9ab3f147 Mon Sep 17 00:00:00 2001 From: Luke Else Date: Mon, 28 Feb 2022 22:00:35 +0000 Subject: [PATCH] Fixed user being able to go to login screen despite being logged in --- Controllers/HomeController.cs | 6 ++++++ Controllers/UserController.cs | 9 +++++---- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/Controllers/HomeController.cs b/Controllers/HomeController.cs index a851546..fbe83a0 100644 --- a/Controllers/HomeController.cs +++ b/Controllers/HomeController.cs @@ -2,6 +2,8 @@ using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Logging; using System.Diagnostics; +using Microsoft.AspNetCore.Http; +using EFB.Sessions; namespace EFB.Controllers { @@ -16,6 +18,10 @@ namespace EFB.Controllers public IActionResult Index() { + //Ensure that the user is not already logged in + UserModel user = HttpContext.Session.GetObject("User"); + if (user != null) return RedirectToAction("Index", "App"); + return View(); } diff --git a/Controllers/UserController.cs b/Controllers/UserController.cs index f0b17ab..0d03528 100644 --- a/Controllers/UserController.cs +++ b/Controllers/UserController.cs @@ -22,13 +22,15 @@ namespace EFB.Controllers } public IActionResult Index() - { + { return View(); } - public async Task Login(string email, string password) { + //Ensure that the user is not already logged in + UserModel user = HttpContext.Session.GetObject("User"); + if (user != null) return RedirectToAction("Index", "App"); if (!Form.FormAuthenticator.ValidateEMail(email)) { @@ -70,7 +72,7 @@ namespace EFB.Controllers return RedirectToAction("Index", "Home"); } - UserModel user = new UserModel + user = new UserModel { EMail = email, UserToken = new TokenModel @@ -83,7 +85,6 @@ namespace EFB.Controllers //Using Session Extensions (Store the user session) HttpContext.Session.SetObject("User", user); return RedirectToAction("Index", "App"); - } public IActionResult Logout()