public ActionResult Update() { var user = (AppUser)Session["User"]; if (user == null) { return(RedirectToAction("SignIn", "Login")); } if (user.Role != UserRole.Driver) { return(new HttpUnauthorizedResult()); } var dbUser = db.AppUsers.Include(u => u.Location).SingleOrDefault(u => u.Id == user.Id); if (dbUser == null) { return(HttpNotFound()); } var updateForm = new LocationUpdateForm(dbUser.Location); return(View(updateForm)); }
public Location(LocationUpdateForm form) { Longitude = form.Longitude; Latitude = form.Latitude; Street = form.Street; StreetNumber = form.StreetNumber; City = form.City; PostalCode = form.PostalCode; }
public ActionResult Update(LocationUpdateForm form) { var user = (AppUser)Session["User"]; if (user == null) { return(RedirectToAction("SignIn", "Login")); } if (user.Role != UserRole.Driver) { return(new HttpUnauthorizedResult()); } if (!ModelState.IsValid) { return(View("Update", form)); } var dbUser = db.AppUsers.SingleOrDefault(u => u.Id == user.Id); if (dbUser == null) { return(HttpNotFound()); } var location = new Location(form); dbUser.Update(location); var updatedUser = new AppUser(); updatedUser.GetLoginData(dbUser); Session["User"] = updatedUser; db.SaveChanges(); return(RedirectToAction("Home", "Home")); }