public ActionResult EditBooking(int id) { int bookingId = id; string email = User.Identity.Name; //Declare MyBookings VM EditBookingsVM model; using (Db db = new Db()) { //Get user BookingDTO dto = db.Bookings.FirstOrDefault(x => x.Id.Equals(bookingId)); if (dto == null) { TempData["Failure"] = "The booking does not exist"; return(View("MyBookings")); } model = new EditBookingsVM(); if (dto.CreatedBy == email) { model.Id = dto.Id; model.DeviceSerialNo = dto.DeviceSerialNo; model.BookingPurpose = dto.BookingPurpose; model.ServerInstalled = dto.ServerInstalled; model.IPAddress = dto.IPAddress; model.Username = dto.Username; model.Password = ""; model.ConfirmPassword = ""; } else { TempData["Failure"] = "Invalid Panel Booking Edit Request"; return(RedirectToAction("my-bookings")); } return(View("EditBooking", model)); } }
public ActionResult EditBooking(EditBookingsVM model) { if (!ModelState.IsValid) { return(View("EditBooking", model)); } //Check if password is not empty if (!string.IsNullOrEmpty(model.Password)) { //Check if password and confirm password matches if (!model.Password.Equals(model.ConfirmPassword)) { TempData["Failure"] = "Passwords do not match"; return(View("EditBooking", model)); } } string email = User.Identity.Name; using (Db db = new Db()) { if (db.Bookings.Any(x => x.Id.Equals(model.Id))) { BookingDTO dto = db.Bookings.Find(model.Id); dto.DeviceSerialNo = model.DeviceSerialNo; dto.BookingPurpose = model.BookingPurpose; dto.ServerInstalled = model.ServerInstalled; dto.ModifiedBy = email; if (!string.IsNullOrEmpty(model.IPAddress)) { dto.IPAddress = model.IPAddress; } if (!string.IsNullOrEmpty(model.Username)) { dto.Username = model.Username; } if (!string.IsNullOrEmpty(model.Password)) { if (model.Password.Equals(model.ConfirmPassword)) { dto.Password = model.Password; } } //if (!string.IsNullOrEmpty(model.Password)) //{ // CustomPasswordHasher hash = new CustomPasswordHasher(); // string hashedPassword = hash.HashPassword(model.Password); // if (model.Password.Equals(model.ConfirmPassword)) // { // dto.Password = hashedPassword; // } //} db.SaveChanges(); } else { TempData["Failure"] = "Invalid Edit Panel Booking Request"; return(View("EditBooking", model)); } } TempData["Success"] = "You have successfully edited your booking"; return(View("EditBooking")); }