public IActionResult Login(LogAndReg data) { if (ModelState.IsValid) { bool CheckEmail = database.Accounts.Any(x => x.Email == data.Login.Email.ToLower()); if (CheckEmail) { Account Cur = database.Accounts.FirstOrDefault(x => x.Email == data.Login.Email.ToLower()); var CheckPassword = LoginHasher.VerifyHashedPassword(data.Login, Cur.Password, data.Login.Password); if (CheckPassword != 0) { HttpContext.Session.SetInt32("AccountId", Cur.AccountId); return(RedirectToAction("Index")); } } } ModelState.AddModelError("Login.Password", "Email/Password is not recognized"); return(View("Index")); }
public IActionResult Register(LogAndReg data) { if (ModelState.IsValid) { bool CheckEmail = database.Accounts.Any(x => x.Email == data.Register.Email); if (CheckEmail) { ModelState.AddModelError("Register.Emai", "This email is associated with another account"); return(View("Index")); } Account NewAccount = new Account { Name = data.Register.Name, Alias = data.Register.Alias, Email = data.Register.Email.ToLower(), Password = RegisterHasher.HashPassword(data.Register, data.Register.Password) }; database.Add(NewAccount); database.SaveChanges(); TempData["Success"] = "Successfully Registered. You can now log-in"; return(RedirectToAction("Index")); } return(View("Index")); }