public ActionResult DeleteConfirmed(int id) { LoginLogsModels loginLogsModels = db.loginLogs.Find(id); db.loginLogs.Remove(loginLogsModels); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Edit([Bind(Include = "Id,UserEmail,UserRole,LoginDate")] LoginLogsModels loginLogsModels) { if (ModelState.IsValid) { db.Entry(loginLogsModels).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(loginLogsModels)); }
public ActionResult Create([Bind(Include = "Id,UserEmail,UserRole,LoginDate")] LoginLogsModels loginLogsModels) { if (ModelState.IsValid) { db.loginLogs.Add(loginLogsModels); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(loginLogsModels)); }
// GET: LoginLogsModels/Delete/5 public ActionResult Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } LoginLogsModels loginLogsModels = db.loginLogs.Find(id); if (loginLogsModels == null) { return(HttpNotFound()); } return(View(loginLogsModels)); }
public async Task <ActionResult> Login(LoginViewModel model, string returnUrl) { if (!ModelState.IsValid) { return(View(model)); } CateringContext db = new CateringContext(); foreach (var client in db.Clients) { if (client.Email == model.Email) { if (client.isSuspended) { ModelState.AddModelError("", "User " + client.FirstName + " is suspended"); return(View(model)); } } } // 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); //We get the user who has attempted to logged in var user = await UserManager.FindAsync(model.Email, model.Password); switch (result) { //If the login was a success, we get the user's role, the datetime of the login and his email, and add it to the login logs data table case SignInStatus.Success: CateringContext contet = new CateringContext(); foreach (var food in contet.currentOrders) { contet.currentOrders.Remove(food); } contet.SaveChanges(); string role; if (UserManager.IsInRole(user.Id, "Admin")) { role = "Admin"; } else { role = "User"; } var LoginModel = new LoginLogsModels { LoginDate = DateTime.Now, UserRole = role, UserEmail = model.Email }; db.loginLogs.Add(LoginModel); HttpCookieCollection MyCookieColl = Request.Cookies; HttpCookie MyCookie; String[] arr1 = MyCookieColl.AllKeys; CateringContext context = new CateringContext(); for (int i = 0; i < arr1.Length; i++) { MyCookie = MyCookieColl[arr1[i]]; int price = 0; bool ok = false; if (MyCookie.Value == null) { continue; } foreach (var food in db.foods) { if (food.FoodName == MyCookie.Name) { price = food.Price; ok = true; MyCookie.Expires = DateTime.Now.AddDays(-1); } } if (ok == false) { continue; } if (Int32.TryParse(MyCookie.Value, out int temp) == false) { continue; } context.currentOrders.Add(new CurrentOrder { FoodName = MyCookie.Name, Price = price, NumberInOrder = Int32.Parse(MyCookie.Value) }); MyCookie.Expires = DateTime.Now.AddDays(-1); } context.SaveChanges(); db.SaveChanges(); 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)); } }