/** * Show the form for creating a new resource. * * @return Response */ public function create($tourId, TourRepository $tourRepository, ActivityRepository $activityRepository, CountryRepository $countryRepository) { $tour = $tourRepository->findTour($tourId); $activities = $activityRepository->getAllActivities(); $countries = $countryRepository->getDestinationCountries(); return view('tours.tourRelations', compact('tour', 'activities', 'countries')); }
/** * Booking form * * @param int $tourId * @return Response */ public function create($tourId, Request $request, UserRepository $userRepository, TourRepository $tourRepository, CountryRepository $countryRepository) { $this->validate($request, ['email' => 'required|email|max:200']); $email = $request->input('email'); $user = $userRepository->findUserByEmail($email); $user = $user ? $user : new User(); $tour = $tourRepository->findTour($tourId); $countries = $countryRepository->getAllCountries(); $pageTitle = 'Book a Tour'; return view('bookings.create', compact('pageTitle', 'email', 'user', 'tour', 'countries')); }
/** * Display a tour * * @param int $id * @return Response */ public function show($id, TourRepository $tourRepository) { $tour = $tourRepository->findTour($id); if ($tourRepository->isDraft($tour)) { return redirect()->route('tours.edit', $id); } $pageTitle = 'Tour Vacation Package'; return view('tours.show', compact('pageTitle', 'tour')); }
/** * Execute the job. * * @return void */ public function handle(TourRepository $tourRepository) { $tour = $tourRepository->findTour($this->data['tourId']); $tourRepository->syncCountries($tour, $this->data['countryIds']); $tourRepository->syncActivities($tour, $this->data['activityIds']); }
/** * Show the form for creating a new resource. * * @return Response */ public function create($tourId, TourRepository $tourRepository) { $tour = $tourRepository->findTour($tourId); return view('photos.create', compact('tour')); }