196 lines
4.6 KiB
PHP
Executable file
196 lines
4.6 KiB
PHP
Executable file
<?php
|
|
|
|
namespace App\Http\Controllers\CMS;
|
|
|
|
|
|
use App\Http\Controllers\Controller;
|
|
use App\Models\IQContentTree;
|
|
use App\Models\IQContentTreeNode;
|
|
use App\Models\TravelGuide;
|
|
use App\Models\TravelPageGuide;
|
|
#use AppBundle\Util;
|
|
#use Gregwar\Image\Image;
|
|
use IqContent\LaravelFilemanager\Lfm;
|
|
use Request;
|
|
use Validator;
|
|
|
|
class CMSTravelGuideController extends Controller
|
|
{
|
|
|
|
/*
|
|
* Create a new controller instance.
|
|
*
|
|
* @return void
|
|
*/
|
|
public function __construct()
|
|
{
|
|
$this->middleware(['admin', '2fa']);
|
|
}
|
|
|
|
public function index()
|
|
{
|
|
/*
|
|
$alls = TravelGuide::all();
|
|
foreach ($alls as $all){
|
|
$all->full_text = $this->cleanHTML($all->full_text);
|
|
$all->save();
|
|
}
|
|
*/
|
|
$data = [
|
|
'travel_guides' => TravelGuide::all(),
|
|
];
|
|
return view('cms.travel_guide.index', $data);
|
|
|
|
}
|
|
|
|
public function page()
|
|
{
|
|
//make tree
|
|
$data = [
|
|
'travel_guide_pages' => TravelPageGuide::getPageGuides(),
|
|
];
|
|
|
|
return view('cms.travel_guide.page', $data);
|
|
}
|
|
|
|
|
|
public function test()
|
|
{
|
|
//make tree
|
|
$data = [
|
|
];
|
|
|
|
return view('cms.travel_guide.test', $data);
|
|
}
|
|
|
|
public function detail($id)
|
|
{
|
|
if($id === "new") {
|
|
$model = new TravelGuide();
|
|
$id = 'new';
|
|
$model->active = 1;
|
|
|
|
}else{
|
|
$model = TravelGuide::findOrFail($id);
|
|
$id = $model->id;
|
|
}
|
|
if(Request::get('clean') === "true"){
|
|
$model->full_text = \App\Services\Util::cleanHTML($model->full_text);
|
|
|
|
}
|
|
$data = [
|
|
'response_clean' => Request::get('clean'),
|
|
'travel_guide' => $model,
|
|
'id' => $id,
|
|
'lfm_helper' => app(Lfm::class),
|
|
];
|
|
return view('cms.travel_guide.detail', $data);
|
|
|
|
}
|
|
|
|
|
|
|
|
public function pageDetail($id)
|
|
{
|
|
if($id === "new") {
|
|
/* $model = new TravelGuide();
|
|
$id = 'new';
|
|
$model->active = 1;
|
|
*/
|
|
|
|
}else{
|
|
$model = TravelPageGuide::findOrFail($id);
|
|
$id = $model->id;
|
|
}
|
|
$data = [
|
|
'travel_guide_page' => $model,
|
|
'id' => $id,
|
|
];
|
|
return view('cms.travel_guide.page_detail', $data);
|
|
|
|
}
|
|
|
|
|
|
public function store($id)
|
|
{
|
|
$data = Request::all();
|
|
$data['active'] = isset($data['active']) ? true : false;
|
|
$data['scope'] = isset($data['scope']) ? true : false;
|
|
$rules = array(
|
|
'name' => 'required',
|
|
);
|
|
if($id !== "new") {
|
|
$model = TravelGuide::findOrFail($id);
|
|
|
|
$rules = array(
|
|
'name' => 'required',
|
|
'slug' => 'unique:mysql_stern.travel_guides,slug,'.$model->id,
|
|
);
|
|
|
|
}
|
|
|
|
|
|
$validator = Validator::make(Request::all(), $rules);
|
|
if ($validator->fails()) {
|
|
return back()->withErrors($validator);
|
|
}
|
|
|
|
if($id === "new") {
|
|
$model = TravelGuide::create($data);
|
|
}else{
|
|
$model = TravelGuide::findOrFail($id);
|
|
$model->fill($data);
|
|
$model->save();
|
|
}
|
|
|
|
\Session()->flash('alert-save', '1');
|
|
return redirect(route('cms_travel_guide_detail', [$model->id]));
|
|
|
|
}
|
|
|
|
public function pageStore($id)
|
|
{
|
|
$data = Request::all();
|
|
$data['status'] = isset($data['status']) ? 1 : 0;
|
|
$data['show_in_navi'] = isset($data['show_in_navi']) ? 1 : 0;
|
|
$rules = array(
|
|
'title' => 'required',
|
|
);
|
|
|
|
if($id !== "new") {
|
|
$model = TravelPageGuide::findOrFail($id);
|
|
|
|
$rules = array(
|
|
'title' => 'required',
|
|
// 'slug' => 'unique:mysql_stern.travel_guides,slug,'.$model->id,
|
|
);
|
|
|
|
}
|
|
|
|
$validator = Validator::make(Request::all(), $rules);
|
|
if ($validator->fails()) {
|
|
return back()->withErrors($validator);
|
|
}
|
|
|
|
if($id === "new") {
|
|
$model = TravelPageGuide::create($data);
|
|
}else{
|
|
$model = TravelPageGuide::findOrFail($id);
|
|
$model->fill($data);
|
|
$model->save();
|
|
}
|
|
|
|
\Session()->flash('alert-save', '1');
|
|
return redirect(route('cms_travel_guide_page_detail', [$model->id]));
|
|
|
|
}
|
|
|
|
public function delete($id){
|
|
$model = TravelGuide::findOrFail($id);
|
|
$model->delete();
|
|
\Session()->flash('alert-success', __('Eintrag Reisemagazin gelöscht'));
|
|
return redirect(route('cms_travel_guide_content'));
|
|
}
|
|
|
|
|
|
}
|