public async Task <IActionResult> Host(HostReviewViewModel model) { var booking = await _unitOfWork.Bookings.GetById(model.BookingId); if (!ModelState.IsValid) { model.BookingId = booking.Id; model.BookingTo = booking.To; return(View(model)); } var userId = _userManager.GetUserId(User); if (!IsTenantOfBooking(booking, userId)) { return(Forbid()); } var review = _mapper.Map <HostReview>(model); review.UserId = userId; review.ListingId = booking.ListingId; _unitOfWork.Reviews.AddHostReview(review); _unitOfWork.Complete(); return(RedirectToAction("Created")); }
public async Task <IActionResult> Host(Guid id) { var booking = await _unitOfWork.Bookings.GetById(id); var userId = _userManager.GetUserId(User); var isUser = IsTenantOfBooking(booking, userId); if (!isUser) { return(Forbid()); } var model = new HostReviewViewModel { BookingId = booking.Id, BookingTo = booking.To }; return(View(model)); }