middleware('admin'); $this->userBookingFewoRepo = $userBookingFewoRepo; } public function index($step = false) { $data = [ 'step' => $step ]; return view('travel.user.booking.index', $data); } public function detail($id) { $max_adults = 10; $max_children = 10; if($id == "new") { $travel_user_booking_fewo = new TravelUserBookingFewo(); $id = 'new'; }else{ $travel_user_booking_fewo = TravelUserBookingFewo::findOrFail($id); $max_adults = isset($travel_user_booking_fewo->fewo_lodging->maximum_adults) ? $travel_user_booking_fewo->fewo_lodging->maximum_adults : 10; $max_children = isset($travel_user_booking_fewo->fewo_lodging->maximum_childs) ? $travel_user_booking_fewo->fewo_lodging->maximum_childs : 10;; $id = $travel_user_booking_fewo->id; } $data = [ 'travel_user_booking_fewo' => $travel_user_booking_fewo, 'max_adults' => $max_adults, 'max_children' => $max_children, 'id' => $id, ]; return view('travel.user.booking.detail', $data); } public function store($id) { $data = Input::all(); if($data['action'] == 'saveAll'){ return $this->userBookingFewoRepo->update($id, $data); } if($data['action'] == 'createInvoice'){ if(!TravelUserBookingFewo::find($id)){ \Session()->flash('alert-error', __('Buchung nicht gefunden.')); return back()->withInput(Input::all()); } return $this->userBookingFewoRepo->createInvoicePDF($id, $data); $ret = $this->userBookingFewoRepo->check($id, $data); if($ret['success'] == false){ return back()->withInput(Input::all())->withErrors($ret['error']); } if($ret['success'] == true){ return redirect(route('travel_user_booking_fewo_detail', [$ret['id']])); } } } public function delete($id){ $model = TravelUserBookingFewo::findOrFail($id); $FewoReservations = FewoReservation::where('lodging_id', $model->fewo_lodging_id)->where('from_date', $model->getFromDateRaw())->where('to_date', $model->getToDateRaw())->get(); foreach ($FewoReservations as $FewoReservation){ $FewoReservation->delete(); } $model->delete(); \Session()->flash('alert-success', __('Buchung gelöscht sowie die Reservierung im Sterntrous Kalender')); return redirect(route('travel_user_booking_fewos')); } public function getTravelUserBookingFewos() { //confirmation_code_remider is delete 2 $query = TravelUserBookingFewo::where('deleted_at', '=', null); return \DataTables::eloquent($query) ->addColumn('action_edit', function (TravelUserBookingFewo $travel_user_booking_fewo) { return ''; }) ->addColumn('fewo_lodging', function (TravelUserBookingFewo $travel_user_booking_fewo) { //return ''.$travel_user_booking_fewo->fewo_lodging->name.''; return $travel_user_booking_fewo->fewo_lodging->name; }) ->addColumn('travel_user', function (TravelUserBookingFewo $travel_user_booking_fewo) { return ''.$travel_user_booking_fewo->travel_user->first_name.' '.$travel_user_booking_fewo->travel_user->last_name.''; }) ->addColumn('is_calendar', function (TravelUserBookingFewo $travel_user_booking_fewo) { $back = ""; $back .= $travel_user_booking_fewo->is_calendar_fewo_direct ? ' ' : ' '; $back .= $travel_user_booking_fewo->is_calendar_hrs ? ' ' : ' '; $back .= $travel_user_booking_fewo->is_calendar_stern_tours ? ' ' : ' '; return $back; }) ->addColumn('status_name', function (TravelUserBookingFewo $travel_user_booking_fewo) { return $travel_user_booking_fewo->getStatuesName(); }) ->addColumn('action_delete', function (TravelUserBookingFewo $travel_user_booking_fewo) { return ''; }) ->rawColumns(['action_edit', 'fewo_lodging', 'travel_user', 'is_calendar', 'action_delete']) ->make(true); } }