public function getUpdatePromotionForm(Request $request, Promotion $promotion) { $cabins = Cabin::all(); $cruises = Cruise::all(); $amenities = Amenity::all(); return view('admin.editpromotion', ['cabins' => $cabins, 'cruises' => $cruises, 'amenities' => $amenities, 'promotion' => $promotion]); }
public function getCabinList() { $cabins = Cabin::all(); return view('admin.cabins', ['cabins' => $cabins]); }
public function success(Request $request, Reservation $reservation) { //change reservation status to complete $payment_id = Session::get('paypal_payment_id'); $reservation->status = 1; $reservation->payment_id = $payment_id; $cruise = Cruise::find($reservation->cruise_id); $cabin = Cabin::find($reservation->cabin_id); //deduct cabin number in the cruise DB::table('cruises_cabins')->where('cruise_id', $reservation->cruise_id)->where('cabin_id', $reservation->cabin_id)->increment('cabin_booked'); $reservation->save(); Session::forget('paypal_payment_id'); $full = 0; foreach ($cruise->cabins as $cabin) { if ($cabin->pivot->cabin_number == $cabin->pivot->cabin_booked) { $full++; } } if ($full == Cabin::all()->count()) { $cruise->status = 1; $cruise->save(); } return view('user.reservation', ['cruise' => $cruise, 'cabin' => $cabin, 'amenities' => $reservation->amenities()->get(), 'reservation' => $reservation])->with('status', 'Payment succcess!'); }
public function updateCruise(Request $request, Cruise $cruise) { $this->validate($request, ['name' => 'required|max:50', 'price' => 'required|numeric', 'depart_location' => 'required', 'arrive_location' => 'required', 'route_date' => 'required|max:23']); $dates = explode(" - ", $request->route_date); $depart = DateTime::createFromFormat('m/d/Y', $dates[0])->format('Y-m-d'); $arrive = DateTime::createFromFormat('m/d/Y', $dates[1])->format('Y-m-d'); $cruise->name = $request->name; $cruise->price = $request->price; $cruise->depart_location = $request->depart_location; $cruise->arrive_location = $request->arrive_location; $cruise->description = $request->description; $cruise->type = $request->type; $cruise->depart_date = $depart; $cruise->arrive_date = $arrive; if (Input::hasFile('image')) { if (File::exists('uploads/' . $cruise->image)) { File::delete('uploads/' . $cruise->image); } $file = Input::file('image'); $imagename = 'cruise_' . $cruise->id . '.' . Input::file('image')->getClientOriginalExtension(); $file->move('uploads', $imagename); $cruise->image = $imagename; } $cabins = Cabin::all(); $data = []; foreach ($cabins as $cabin) { $cabinnum = Input::get('cabins.' . $cabin->id); if (!empty($cabinnum) || $cabinnum != 0) { $data[$cabin->id]['cabin_number'] = $cabinnum; } } $cruise->cabins()->sync($data); $cruise->save(); return redirect('/admin/cruise/' . $cruise->id)->with('status', 'Cruise updated!'); }