public BaseController() { db = new ConestagoEntities(); //if (Session == null) //{ // var userid = User.Identity.GetUserId(); // var uisettings = db.UserUISettings.Where(x => x.UserId == userid).ToList(); // var user = db.AspNetUsers.Where(x => x.Id == userid).FirstOrDefault(); // if (uisettings.Count > 0) // { // var bg = uisettings.Where(x => x.Area == "BackgroundColor").FirstOrDefault(); // var hbg = uisettings.Where(x => x.Area == "HeaderBackgroundColor").FirstOrDefault(); // Session["bgcolor"] = bg.Color; // Session["hbgcolor"] = hbg.Color; // Session["UserFullName"] = user.FirstName + " " + user.LastName; // } //} }
public async Task <ActionResult> Login(LoginViewModel model, string returnUrl) { if (!ModelState.IsValid) { return(View(model)); } // Require the user to have a confirmed email before they can log on. var user = await UserManager.FindByNameAsync(model.Email); if (user != null) { if (!await UserManager.IsEmailConfirmedAsync(user.Id)) { ViewBag.errorMessage = "You must have a confirmed email to log on."; return(View("Error")); } } // This doesn't count login failures towards account lockout // To enable password failures to trigger account lockout, change to shouldLockout: true var result = await SignInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, shouldLockout : false); bool role = User.IsInRole("Admin"); Console.WriteLine(role); /*if(User.IsInRole("Admin")) * //{ * switch (result) * { * case SignInStatus.Success: * return RedirectToAction("Home/Dashboard"); * case SignInStatus.LockedOut: * return View("Lockout"); * case SignInStatus.RequiresVerification: * return RedirectToAction("SendCode", new { ReturnUrl = returnUrl, RememberMe = model.RememberMe }); * * * case SignInStatus.Failure: * default: * ModelState.AddModelError("", "Invalid login attempt."); * return View(model); * } * } * * else * {*/ using (var db = new ConestagoEntities()) { var uisettings = db.UserUISettings.Where(x => x.UserId == user.Id).ToList(); if (uisettings.Count > 0) { var bg = uisettings.Where(x => x.Area == "BackgroundColor").FirstOrDefault(); var hbg = uisettings.Where(x => x.Area == "HeaderBackgroundColor").FirstOrDefault(); var tbbg = uisettings.Where(x => x.Area == "TitleBarBackgroundColor").FirstOrDefault(); if (tbbg != null) { Session["tbbgcolor"] = tbbg.Color; } if (bg != null) { Session["bgcolor"] = bg.Color; } if (hbg != null) { Session["hbgcolor"] = hbg.Color; } } Session["UserFullName"] = user.FirstName + " " + user.LastName; } switch (result) { case SignInStatus.Success: return(RedirectToLocal(returnUrl)); case SignInStatus.LockedOut: return(View("Lockout")); case SignInStatus.RequiresVerification: return(RedirectToAction("SendCode", new { ReturnUrl = returnUrl, RememberMe = model.RememberMe })); case SignInStatus.Failure: default: ModelState.AddModelError("", "Invalid login attempt."); return(View(model)); } //} }
public BaseController() { db = new ConestagoEntities(); }