Файловый менеджер - Редактировать - /home/clickysoft/public_html/charliapp-v2.clickysoft.net/app/Http/Controllers/Admin/ChapterController.php
Назад
<?php namespace App\Http\Controllers\Admin; use App\Http\Controllers\Controller; use App\Http\Requests\MassDestroyChapterRequest; use App\Http\Requests\AdminChapterRequest; use App\Models\Book; use App\Models\Chapter; use App\Models\Color; use App\Models\Outline; 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 ChapterController extends Controller { public function index(Request $request) { abort_if(Gate::denies('chapter_access'), Response::HTTP_FORBIDDEN, '403 Forbidden'); if ($request->ajax()) { $query = Chapter::with(['user', 'series', 'book', 'outline', 'color'])->select(sprintf('%s.*', (new Chapter())->table)); $table = Datatables::of($query); $table->addColumn('placeholder', ' '); $table->addColumn('actions', ' '); $table->editColumn('actions', function ($row) { $viewGate = 'chapter_show'; $editGate = 'chapter_edit'; $deleteGate = 'chapter_delete'; $crudRoutePart = 'chapters'; $tableName = 'chapters'; 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->addColumn('series_series_name', function ($row) { return $row->series ? $row->series->series_name : ''; }); $table->addColumn('book_book_name', function ($row) { return $row->book ? $row->book->book_name : ''; }); $table->addColumn('outline_outline_name', function ($row) { return $row->outline ? $row->outline->outline_name : ''; }); $table->editColumn('chapter_name', function ($row) { return $row->chapter_name ? $row->chapter_name : ''; }); $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> ' . Chapter::STATUS_RADIO[$row->status] . '</span>'; }); $table->rawColumns(['actions', 'placeholder', 'user', 'series', 'book', 'outline', 'color']); return $table->make(true); } $users = User::get(); $seriess = []; //Series::get(); $books = []; //Book::get(); $outlines = []; //Outline::get(); $colors = Color::get(); return view('admin.chapters.index', compact('users', 'seriess', 'books', 'outlines', 'colors')); } public function create() { abort_if(Gate::denies('chapter_create'), Response::HTTP_FORBIDDEN, '403 Forbidden'); $users = User::pluck('name', 'id')->prepend(trans('global.pleaseSelect'), ''); $series = []; //Series::pluck('series_name', 'id')->prepend(trans('global.pleaseSelect'), ''); $books = []; //Book::pluck('book_name', 'id')->prepend(trans('global.pleaseSelect'), ''); $outlines = []; //Outline::pluck('outline_name', 'id')->prepend(trans('global.pleaseSelect'), ''); $colors = Color::select("id", "color", "color_code", "foreground_color")->get(); return view('admin.chapters.create', compact('books', 'colors', 'outlines', 'series', 'users')); } public function store(AdminChapterRequest $request) { $chapter = Chapter::create($request->all()); return redirect()->route('admin.chapters.index'); } public function edit(Chapter $chapter) { abort_if(Gate::denies('chapter_edit'), Response::HTTP_FORBIDDEN, '403 Forbidden'); $users = User::pluck('name', 'id')->prepend(trans('global.pleaseSelect'), ''); $series = Series::whereUserId($chapter->user_id)->pluck('series_name', 'id')->prepend(trans('global.pleaseSelect'), ''); $books = Book::whereSeriesId($chapter->series_id)->pluck('book_name', 'id')->prepend(trans('global.pleaseSelect'), ''); $outlines = Outline::whereBookId($chapter->book_id)->pluck('outline_name', 'id')->prepend(trans('global.pleaseSelect'), ''); $colors = Color::select("id", "color", "color_code", "foreground_color")->get(); return view('admin.chapters.edit', compact('books', 'chapter', 'colors', 'outlines', 'series', 'users')); } public function update(AdminChapterRequest $request, Chapter $chapter) { $chapter->update($request->all()); return redirect()->route('admin.chapters.index'); } public function show(Chapter $chapter) { abort_if(Gate::denies('chapter_show'), Response::HTTP_FORBIDDEN, '403 Forbidden'); $chapter->load('user', 'series', 'book', 'outline', 'color'); return view('admin.chapters.show', compact('chapter')); } public function destroy(Chapter $chapter) { abort_if(Gate::denies('chapter_delete'), Response::HTTP_FORBIDDEN, '403 Forbidden'); try { $chapter->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(MassDestroyChapterRequest $request) { try { Chapter::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 getChaptersByOutline($outline_id) { $chapters = Chapter::selectRaw("id, chapter_name as title")->whereBookId($outline_id)->get(); return response()->json(["list" => $chapters]); } }
| ver. 1.4 |
Github
|
.
| PHP 8.1.29 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка