public ActionResult Reserve(ReservationModel reserveModel) { if (reserveModel == null) { return(HttpNotFound()); } tAtrakcjeUslugi attraction = reserveModel.Attraction; int? clientId = AuthorizeUtil.GetUserId(service, User); if (clientId == null) { return(RedirectToAction("Login", "Account")); } ConfigureViewBag(attraction, clientId); try { if (service.IsOfferReserved(attraction.IDOferty, clientId)) { if (!service.IsAttractionReserved(attraction.IDAtrakcjiUslugi, reserveModel.PersonId, clientId.Value)) { service.ReserveAttraction(attraction.IDAtrakcjiUslugi, reserveModel.PersonId, clientId.Value); } ViewBag.ReserveMessage = "Attraction is reserved"; } else { ModelState.AddModelError("", "Offer is not reserved. To reserve attraction reserve offer first."); } } catch (Exception ex) { ModelState.AddModelError("", "Failed to reserve offer: " + ex.Message); } return(View(reserveModel)); }
public ActionResult Reserve(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } tAtrakcjeUslugi attraction = service.FindAttraction(id.Value); if (attraction == null) { return(HttpNotFound()); } int?userId = AuthorizeUtil.GetUserId(service, User); if (userId == null) { return(RedirectToAction("Login", "Account")); } tKlient client = service.GetClientWithPersons(userId.Value); int personId = client.tOsoby.First().IDOsoby; ConfigureViewBag(attraction, userId); return(View(new ReservationModel { Attraction = attraction, ClientWithPersons = client, PersonId = personId })); }
// GET: Attractions public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } tAtrakcjeUslugi attraction = service.FindAttraction(id.Value); if (attraction == null) { return(HttpNotFound()); } ConfigureViewBag(attraction, AuthorizeUtil.GetUserId(service, User)); return(View(attraction)); }
private void ConfigureViewBag(tAtrakcjeUslugi attraction, int?userId) { ViewBag.CanReserve = service.IsOfferReserved(attraction.IDOferty, userId); ViewBag.IsReserved = IsAttractionReserved(attraction.IDAtrakcjiUslugi); }