Файловый менеджер - Редактировать - /home/clickysoft/public_html/charliapp-v2.clickysoft.net/app/Http/Controllers/Admin/SeriesController.php
Назад
<?php namespace App\Http\Controllers\Admin; use App\Http\Controllers\Controller; use App\Http\Requests\MassDestroySeriesRequest; use App\Http\Requests\AdminSeriesRequest; use App\Models\Book; use App\Models\Color; use App\Models\Series; use App\Models\User; use Gate; use Illuminate\Http\Request; use Symfony\Component\HttpFoundation\Response; use Yajra\DataTables\Facades\DataTables; class SeriesController extends Controller { public function index(Request $request) { abort_if(Gate::denies('series_access'), Response::HTTP_FORBIDDEN, '403 Forbidden'); if ($request->ajax()) { // \DB::enableQueryLog(); // dd(request()->all()); $query = Series::with(['user', 'books', 'color'])->select(sprintf('%s.*', (new Series())->table)); $table = Datatables::of($query); $table->addColumn('placeholder', ' '); $table->addColumn('actions', ' '); $table->editColumn('actions', function ($row) { $viewGate = 'series_show'; $editGate = 'series_edit'; $deleteGate = 'series_delete'; $crudRoutePart = 'seriess'; $tableName = "seriess"; return view('partials.datatablesActions', compact( 'viewGate', 'editGate', 'deleteGate', 'crudRoutePart', 'row', 'tableName' )); }); $table->editColumn('id', function ($row) { return $row->id; }); $table->addColumn('user_name', function ($row) { return $row->user->name; }); $table->editColumn('series_name', function ($row) { return $row->series_name; }); // $table->editColumn('series_description', function ($row) { // return $row->series_description ? $row->series_description : ''; // }); $table->editColumn('book', function ($row) { $labels = []; foreach ($row->books as $book) { $labels[] = sprintf('<span class="label label-info label-many">%s</span>', $book->book_name); } return implode(', ', $labels); }); $table->editColumn('is_finished', function ($row) { return '<input type="checkbox" disabled ' . ($row->is_finished ? 'checked' : null) . '>'; }); $table->addColumn('color_color', function ($row) { return $row->color ? '<span class="color-block"><span style="background-color: ' . $row->color->color_code . '"></span>' . $row->color->color . '</span>' : ''; })->escapeColumns('color_color'); $table->editColumn('status', function ($row) { return '<span id="recordSts' . $row->id . '"><i class="sts fa fa-' . ($row->status == 1 ? "check" : "times") . '"></i> ' . Series::STATUS_RADIO[$row->status] . '</span>'; }); $table->rawColumns(['placeholder', 'id', 'user_name', 'series_name', 'book', 'is_finished', 'color', 'seriess.status', 'actions']); return $table->make(true); // dd(\DB::getQueryLog()); } $users = User::get(); $books = Book::get(); $colors = Color::get(); return view('admin.seriess.index', compact('users', 'books', 'colors')); } public function create() { abort_if(Gate::denies('series_create'), Response::HTTP_FORBIDDEN, '403 Forbidden'); $users = User::pluck('name', 'id')->prepend(trans('global.pleaseSelect'), ''); $books = []; //Book::pluck('book_name', 'id'); $colors = Color::select("id", "color", "color_code", "foreground_color")->get(); return view('admin.seriess.create', compact('books', 'colors', 'users')); } public function store(AdminSeriesRequest $request) { abort_if(Gate::denies('series_create'), Response::HTTP_FORBIDDEN, '403 Forbidden'); $series = Series::create($request->all()); $series->books()->sync($request->input('books', [])); return redirect()->route('admin.seriess.index'); } public function edit(Series $seriess) { abort_if(Gate::denies('series_edit'), Response::HTTP_FORBIDDEN, '403 Forbidden'); $users = User::pluck('name', 'id')->prepend(trans('global.pleaseSelect'), ''); $books = Book::whereUserId($seriess->user_id)->pluck('book_name', 'id'); $colors = Color::select("id", "color", "color_code", "foreground_color")->get(); return view('admin.seriess.edit', compact('books', 'colors', 'seriess', 'users')); } public function update(AdminSeriesRequest $request, Series $seriess) { abort_if(Gate::denies('series_edit'), Response::HTTP_FORBIDDEN, '403 Forbidden'); $seriess->update($request->all()); $seriess->books()->sync($request->input('books', [])); return redirect()->route('admin.seriess.index'); } public function show(Series $seriess) { abort_if(Gate::denies('series_show'), Response::HTTP_FORBIDDEN, '403 Forbidden'); $series = $seriess->load('user', 'books', 'color', 'seriesBooks'); return view('admin.seriess.show', compact('series')); } public function destroy(Series $series) { abort_if(Gate::denies('series_delete'), Response::HTTP_FORBIDDEN, '403 Forbidden'); try { $series->delete(); } catch (\Illuminate\Database\QueryException $ex) { return redirect()->back()->withErrors("Record could not be deleted because selected resource is being used."); } return back(); } public function massDestroy(MassDestroySeriesRequest $request) { try { Series::whereIn('id', request('ids'))->delete(); } catch (\Illuminate\Database\QueryException $ex) { return redirect()->back()->withErrors("Record could not be deleted because selected resource is being used."); } return response(null, Response::HTTP_NO_CONTENT); } public function getSeriesByUsers($user_id) { $series = Series::selectRaw("id, series_name as title")->whereUserId($user_id)->get(); return response()->json(["list" => $series]); } }
| ver. 1.4 |
Github
|
.
| PHP 8.1.29 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка