89 lines
2.3 KiB
PHP
89 lines
2.3 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\Shop\Admin;
|
|
|
|
use Illuminate\Http\Request;
|
|
use App\Http\Controllers\Controller;
|
|
|
|
use App\Repositories\Shop\Articles;
|
|
use App\DataTables\Shop\ArticlesDataTable;
|
|
|
|
class ArticleController extends Controller
|
|
{
|
|
public function index(ArticlesDataTable $dataTable)
|
|
{
|
|
return $dataTable->render('Shop.Admin.Articles.list');
|
|
}
|
|
|
|
public function getDatatable(Request $request)
|
|
{
|
|
return Articles::getTables($request->all());
|
|
}
|
|
|
|
public function create()
|
|
{
|
|
$data = $this->getMeta();
|
|
return view('Shop.Admin.Articles.create', $data);
|
|
}
|
|
|
|
public function store(Request $request)
|
|
{
|
|
$data = $request->all();
|
|
$images = isset($data['images']) ? $data['images'] : false;
|
|
$categories = isset($data['categories']) ? $data['categories'] : false;
|
|
$tags = isset($data['tags']) ? $data['tags'] : false;
|
|
$prices = isset($data['prices']) ? $data['prices'] : false;
|
|
unset($data['images']);
|
|
unset($data['categories']);
|
|
unset($data['tags']);
|
|
unset($data['prices']);
|
|
$article = Articles::store($data);
|
|
Articles::storeImages($article, $images);
|
|
Articles::storeCategories($article, $categories);
|
|
Articles::storeTags($article, $categories);
|
|
Articles::storePrices($article, $prices);
|
|
return redirect()->route('Shop.Admin.Articles.index');
|
|
}
|
|
|
|
public function show($id)
|
|
{
|
|
$data = Articles::get($id);
|
|
return view('Shop.Admin.Articles.view', $data);
|
|
}
|
|
|
|
public function edit($id)
|
|
{
|
|
$data = Articles::getFull($id);
|
|
return view('Shop.Admin.Articles.edit', $data);
|
|
}
|
|
|
|
public function update(Request $request)
|
|
{
|
|
//
|
|
}
|
|
|
|
public function destroy($id)
|
|
{
|
|
return Articles::destroy($id);
|
|
}
|
|
|
|
public function getMeta($data = [])
|
|
{
|
|
return Articles::getMeta($data);
|
|
}
|
|
|
|
public function getImages(Request $request, $id = false)
|
|
{
|
|
$id = $id ? $id : $request->input('id');
|
|
$data['images'] = Articles::getImages($id);
|
|
return view('components.uploader.mini-gallery-items', $data);
|
|
}
|
|
|
|
public function deleteImage(Request $request)
|
|
{
|
|
$id = $request->input('id');
|
|
$index = $request->input('index');
|
|
return Articles::deleteImage($id, $index);
|
|
}
|
|
}
|