public ActionResult Login(Accounts acc, string returnUrl) { StringProcess strPro = new StringProcess(); try { if (!string.IsNullOrEmpty(acc.UserName) && !string.IsNullOrEmpty(acc.Password)) { using (var db = new QuanLyDoAnDbContext()) { var passToMD5 = strPro.GetMD5(acc.Password); var account = db.Accounts.Where(m => m.UserName.Equals(acc.UserName) && m.Password.Equals(passToMD5)); if (account.Count() == 1) { FormsAuthentication.SetAuthCookie(acc.UserName, false); Session["idUser"] = acc.UserName; Session["roleUser"] = acc.RoleId; Session["StudentCode"] = account.FirstOrDefault().StudentCode; Session["TeacherCode"] = account.FirstOrDefault().TeacherCode; Response.Cookies.Add(new HttpCookie("userCookie", acc.UserName)); Response.Cookies.Add(new HttpCookie("roleCookie", acc.RoleId)); return(RedirectToLocal(returnUrl)); } ModelState.AddModelError("", "Thông tin đăng nhập chưa chính xác"); } } ModelState.AddModelError("", "Username and password is required."); } catch { ModelState.AddModelError("", "Hệ thống đang được bảo trì, vui lòng liên hệ với quản trị viên"); } return(View(acc)); }
private int CheckSession() { using (var db = new QuanLyDoAnDbContext()) { var user = HttpContext.Session["idUser"]; if (user != null) { //var role = db.Accounts.Find(user.ToString()).RoleId; var role = db.Accounts.Where(m => m.UserName == user.ToString()).FirstOrDefault().RoleId; if (role != null) { if (role.ToString() == "RoleTeacher") { return(1); } else if (role.ToString() == "RoleAdmin") { return(2); } else if (role.ToString() == "RoleStudent") { return(3); } } } } return(0); }