Beispiel #1
0
        public async Task <IActionResult> Tenant(TenantReviewViewModel 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 (!IsHostOfBooking(booking, userId))
            {
                return(Forbid());
            }

            var review = _mapper.Map <TenantReview>(model);

            review.UserId    = userId;
            review.ListingId = booking.ListingId;

            _unitOfWork.Reviews.AddTenantReview(review);
            _unitOfWork.Complete();

            return(RedirectToAction("Created"));
        }
Beispiel #2
0
        public async Task <IActionResult> Tenant(Guid id)
        {
            var booking = await _unitOfWork.Bookings.GetById(id);

            var userId = _userManager.GetUserId(User);

            if (!IsHostOfBooking(booking, userId))
            {
                return(Forbid());
            }

            var model = new TenantReviewViewModel
            {
                BookingId = booking.Id
            };

            return(View(model));
        }