IQ Reisebausteine bis Gruppe
This commit is contained in:
parent
6880c7e989
commit
9baa1a6233
43 changed files with 2206 additions and 24 deletions
126
app/Http/Controllers/IQ/TravelProgrammController.php
Normal file
126
app/Http/Controllers/IQ/TravelProgrammController.php
Normal file
|
|
@ -0,0 +1,126 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers\IQ;
|
||||
|
||||
use Request;
|
||||
use App\Models\IQTravelItemPlace;
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\IQTravelGroup;
|
||||
use App\Models\IQTravelGroupItem;
|
||||
use App\Repositories\IQ\TravelRepository;
|
||||
|
||||
class TravelProgrammController extends Controller
|
||||
{
|
||||
|
||||
protected $tavelRepo;
|
||||
|
||||
|
||||
public function __construct(TravelRepository $tavelRepo)
|
||||
{
|
||||
$this->middleware('admin');
|
||||
$this->tavelRepo = $tavelRepo;
|
||||
}
|
||||
|
||||
public function index()
|
||||
{
|
||||
$data = [
|
||||
|
||||
];
|
||||
return view('iq.travel.programm.index', $data);
|
||||
}
|
||||
|
||||
|
||||
public function detail($id, $step = false)
|
||||
{
|
||||
if($id === "new") {
|
||||
$model = new IQTravelGroup();
|
||||
$id = 'new';
|
||||
$model->active = 1;
|
||||
}else{
|
||||
$model = IQTravelGroup::findOrFail($id);
|
||||
$id = $model->id;
|
||||
}
|
||||
|
||||
$data = [
|
||||
'model' => $model,
|
||||
'id' => $id,
|
||||
|
||||
];
|
||||
return view('iq.travel.group.detail', $data);
|
||||
}
|
||||
|
||||
|
||||
public function store($id)
|
||||
{
|
||||
$data = Request::all();
|
||||
if(isset($data['action'])){
|
||||
if($data['action'] === 'saveAll'){
|
||||
$travel_group = $this->tavelRepo->updateTravelGroup($id, $data);
|
||||
\Session()->flash('alert-save', '1');
|
||||
return redirect(route('iq_travel_group_detail', [$travel_group->id]));
|
||||
|
||||
}
|
||||
if($data['action'] === 'save-iq_travel_item_group'){
|
||||
$travel_group_item = $this->tavelRepo->updateTravelGroupItem($id, $data);
|
||||
\Session()->flash('alert-save', '1');
|
||||
return redirect(route('iq_travel_group_detail', [$id]));
|
||||
|
||||
}
|
||||
}
|
||||
return redirect()->back();
|
||||
}
|
||||
|
||||
public function delete($id, $del=false){
|
||||
|
||||
if($del === 'i_q_travel_group_item'){
|
||||
$IQTravelGroupItem = IQTravelGroupItem::findOrFail($id);
|
||||
$r_id = $IQTravelGroupItem->i_q_travel_group_id;
|
||||
//TODO check need ???
|
||||
$IQTravelGroupItem->delete();
|
||||
\Session()->flash('alert-success', __('Eintrag gelöscht'));
|
||||
return redirect(route('iq_travel_group_detail', [$r_id]));
|
||||
}
|
||||
if($del === 'iq_travel_group'){
|
||||
$IQTravelGroup = IQTravelGroup::findOrFail($id);
|
||||
//TODO check need ???
|
||||
$IQTravelGroup->delete();
|
||||
\Session()->flash('alert-success', __('Eintrag gelöscht'));
|
||||
return redirect(route('iq_travel_groups'));
|
||||
}
|
||||
|
||||
return back();
|
||||
}
|
||||
|
||||
public function getTravelGroups()
|
||||
{
|
||||
$query = IQTravelGroup::with('i_q_travel_group_items')->with('i_q_travel_group_items.i_q_travel_item')->select('i_q_travel_groups.*');
|
||||
|
||||
return \DataTables::eloquent($query)
|
||||
->addColumn('action_edit', function (IQTravelGroup $iq_travel_group) {
|
||||
return '<a href="'.route('iq_travel_group_detail', [$iq_travel_group->id]).'" class="btn icon-btn btn-sm btn-primary"><span class="fa fa-edit"></span></a>';
|
||||
})
|
||||
->addColumn('trave_items', function (IQTravelGroup $iq_travel_group) {
|
||||
$ret = "";
|
||||
if($iq_travel_group->i_q_travel_group_items->count()){
|
||||
foreach($iq_travel_group->i_q_travel_group_items as $i_q_travel_group_item){
|
||||
$ret .= $i_q_travel_group_item->i_q_travel_item->name;
|
||||
$ret .= $i_q_travel_group_item->i_q_travel_item->draft_type_id ? ' | <span class="py-0 px-2" style="background-color:'.$i_q_travel_group_item->i_q_travel_item->draft_type->color.'">'.$i_q_travel_group_item->i_q_travel_item->draft_type->name.'</span>' : '';
|
||||
|
||||
|
||||
$ret .= "<br>";
|
||||
}
|
||||
$ret = rtrim($ret, '<br>');
|
||||
}
|
||||
return $ret;
|
||||
})
|
||||
->addColumn('active', function (IQTravelGroup $iq_travel_group) {
|
||||
return get_active_badge($iq_travel_group->active);
|
||||
})
|
||||
->addColumn('action_delete', function (IQTravelGroup $iq_travel_group) {
|
||||
return '<a href="' . route('iq_travel_group_delete', [$iq_travel_group->id, 'iq_travel_group']) . '" class="btn icon-btn btn-sm btn-danger" onclick="return confirm(\''.__('Really delete entry?').'\');"><span class="fa fa-trash"></span></a>';
|
||||
})
|
||||
->orderColumn('id', 'id $1')
|
||||
->rawColumns(['action_edit', 'id', 'active', 'trave_items', 'action_delete'])
|
||||
->make(true);
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue