public UserStatus validUser(UserDetails userDetails) { try { Account acc = db.Accounts.Where(a => a.Username == userDetails.Username).FirstOrDefault(); if (acc != null) { if (acc.Userstatus == UserStatus.Admin) { return UserStatus.Admin; } if (acc.Userstatus == UserStatus.Quanly) { return UserStatus.Quanly; } if (acc.Userstatus == UserStatus.Thungan) { return UserStatus.Thungan; } if (acc.Userstatus == UserStatus.Boiban) { return UserStatus.Boiban; } return UserStatus.Khach; } return UserStatus.Khach; } catch (Exception) { return UserStatus.Khach; } }
public ActionResult DoLogin(UserDetails userDetail) { if (ModelState.IsValid) { AccountBusinessLayer accountBusinessLayer = new AccountBusinessLayer(); UserStatus userstatus = accountBusinessLayer.validUser(userDetail); if (userstatus == UserStatus.Khach) { ModelState.AddModelError("LoginError", "Usename hoặc Password không đúng."); return View("Login"); } else { FormsAuthentication.SetAuthCookie(userDetail.Username, false); if (userstatus == UserStatus.Admin) { HttpContext.Session["IsAdmin"] = true; }else if (userstatus == UserStatus.Quanly) { HttpContext.Session["IsQuanly"] = true; } else if (userstatus == UserStatus.Thungan) { HttpContext.Session["IsThungan"] = true; } else if (userstatus == UserStatus.Boiban) { HttpContext.Session["IsBoiban"] = true; } return RedirectToAction("Index", "News"); } } ModelState.AddModelError("LoginError", "Usename hoặc Password không hợp lệ."); return RedirectToAction("Index", "News"); }