Файловый менеджер - Редактировать - /home/clickysoft/public_html/charliapp-v2.clickysoft.net/app/Http/Controllers/Admin/CardTaskController.php
Назад
<?php namespace App\Http\Controllers\Admin; use App\Http\Controllers\Controller; use App\Http\Requests\MassDestroyCardTaskRequest; use App\Http\Requests\AdminCardTaskRequest; use App\Models\Book; use App\Models\Brainstorm; use App\Models\CardTask; use App\Models\Chapter; use App\Models\ChaptersCard; use App\Models\Color; use App\Models\Outline; use App\Models\PlotPlanner; use App\Models\Series; use App\Models\Timeline; use App\Models\User; use Gate; use Illuminate\Http\Request; use Symfony\Component\HttpFoundation\Response; use Yajra\DataTables\Facades\DataTables; class CardTaskController extends Controller { public $taskTypes; public function __construct() { $this->taskTypes = [ "1" => "todo_item", "2" => "brainstorm_item_id", "3" => "outline_item_id", "4" => "timeline_item_id", "5" => "plot_planner_item_id", ]; } public function index(Request $request) { abort_if(Gate::denies('card_task_access'), Response::HTTP_FORBIDDEN, '403 Forbidden'); if ($request->ajax()) { $query = CardTask::with(['user', 'series', 'book', 'outline', 'chapter', 'card', 'brainstorm_item', 'outline_item', 'timeline_item', 'plotplanner_item'])->select(sprintf('%s.*', (new CardTask())->table)); $table = Datatables::of($query); $table->addColumn('placeholder', ' '); $table->addColumn('actions', ' '); $table->editColumn('actions', function ($row) { $viewGate = 'card_task_show'; $editGate = 'card_task_edit'; $deleteGate = 'card_task_delete'; $crudRoutePart = 'card-tasks'; return view('partials.datatablesActions', compact( 'viewGate', 'editGate', 'deleteGate', 'crudRoutePart', 'row' )); }); $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->series_name; }); $table->addColumn('book_book_name', function ($row) { return $row->book->book_name; }); $table->addColumn('outline_outline_name', function ($row) { return $row->outline->outline_name; }); $table->addColumn('chapter_chapter_name', function ($row) { return $row->chapter->chapter_name; }); $table->addColumn('card_card_title', function ($row) { return $row->card->card_title; }); $table->editColumn('task_type', function ($row) { return CardTask::TASK_TYPE_SELECT[$row->task_type]; }); $table->editColumn('todo_item', function ($row) { return $row->todo_item ? $row->todo_item : ''; }); $table->addColumn('brainstorm_item_brainstorm_name', function ($row) { return $row->brainstorm_item ? $row->brainstorm_item->brainstorm_name : ''; }); $table->addColumn('outline_item_outline_name', function ($row) { return $row->outline_item ? $row->outline_item->outline_name : ''; }); $table->addColumn('timeline_item_name', function ($row) { return $row->timeline_item ? $row->timeline_item->name : ''; }); $table->addColumn('plotplanner_item_plot_planner_title', function ($row) { return $row->plotplanner_item ? $row->plotplanner_item->plot_planner_title : ''; }); $table->rawColumns(['actions', 'placeholder', 'user', 'series', 'book', 'outline', 'chapter', 'card', 'brainstorm_item', 'outline_item', 'timeline_item', 'plotplanner_item']); return $table->make(true); } $users = User::get(); $seriess = []; //Series::get(); $books = []; //Book::get(); $outlines = []; //Outline::get(); $chapters = []; //Chapter::get(); $chapters_cards = []; //ChaptersCard::get(); $brainstorms = []; //Brainstorm::get(); return view('admin.cardTasks.index', compact('users', 'seriess', 'books', 'outlines', 'chapters', 'chapters_cards', 'brainstorms')); } public function create() { abort_if(Gate::denies('card_task_create'), Response::HTTP_FORBIDDEN, '403 Forbidden'); $users = User::pluck('name', 'id')->prepend(trans('global.pleaseSelect'), ''); $series = []; $brainstorm_items = []; $outline_items = []; $timeline_items = []; $plotplanner_items = []; if ((int)old("user_id") > 0) { $series = Series::whereUserId(old("user_id"))->pluck('series_name', 'id')->prepend(trans('global.pleaseSelect'), ''); $brainstorm_items = Brainstorm::whereUserId(old("user_id"))->pluck('brainstorm_name', 'id')->prepend(trans('global.pleaseSelect'), ''); $outline_items = Outline::whereUserId(old("user_id"))->pluck('outline_name', 'id')->prepend(trans('global.pleaseSelect'), ''); $timeline_items = Timeline::whereUserId(old("user_id"))->pluck('name', 'id')->prepend(trans('global.pleaseSelect'), ''); $plotplanner_items = PlotPlanner::whereUserId(old("user_id"))->pluck('plot_planner_title', 'id')->prepend(trans('global.pleaseSelect'), ''); } $books = (int)old("series_id") > 0 ? Book::whereSeriesId(old("series_id"))->pluck('book_name', 'id')->prepend(trans('global.pleaseSelect'), '') : []; $outlines = (int)old("book_id") > 0 ? Outline::whereBookId(old("book_id"))->pluck('outline_name', 'id')->prepend(trans('global.pleaseSelect'), '') : []; $chapters = (int)old("outline_id") > 0 ? Chapter::whereOutlineId(old("outline_id"))->pluck('chapter_name', 'id')->prepend(trans('global.pleaseSelect'), '') : []; $cards = (int)old("chapter_id") > 0 ? ChaptersCard::whereChapterId(old("chapter_id"))->pluck('card_title', 'id')->prepend(trans('global.pleaseSelect'), '') : []; $colors = Color::select("id", "color", "color_code", "foreground_color")->get(); return view('admin.cardTasks.create', compact('books', 'brainstorm_items', 'cards', 'chapters', 'outline_items', 'timeline_items', 'plotplanner_items', 'outlines', 'series', 'users')); } public function store(AdminCardTaskRequest $request) { $task_type = (int)$request->input("task_type"); $task_data = [ "task_type" => $task_type, "user_id" => $request->input("user_id"), "series_id" => $request->input("series_id"), "series_id" => $request->input("series_id"), "book_id" => $request->input("book_id"), "outline_id" => $request->input("outline_id"), "outline_id" => $request->input("outline_id"), "chapter_id" => $request->input("chapter_id"), "card_id" => $request->input("card_id"), $this->taskTypes[$task_type] => $request->input($this->taskTypes[$task_type]) ]; $cardTask = CardTask::create($task_data); return redirect()->route('admin.card-tasks.index'); } public function edit(CardTask $cardTask) { abort_if(Gate::denies('card_task_edit'), Response::HTTP_FORBIDDEN, '403 Forbidden'); $users = User::pluck('name', 'id')->prepend(trans('global.pleaseSelect'), ''); $series = Series::whereUserId($cardTask->user_id)->pluck('series_name', 'id')->prepend(trans('global.pleaseSelect'), ''); $books = Book::whereSeriesId($cardTask->series_id)->pluck('book_name', 'id')->prepend(trans('global.pleaseSelect'), ''); $outlines = Outline::whereBookId($cardTask->book_id)->pluck('outline_name', 'id')->prepend(trans('global.pleaseSelect'), ''); $chapters = Chapter::whereOutlineId($cardTask->outline_id)->pluck('chapter_name', 'id')->prepend(trans('global.pleaseSelect'), ''); $cards = ChaptersCard::whereChapterId($cardTask->chapter_id)->pluck('card_title', 'id')->prepend(trans('global.pleaseSelect'), ''); $colors = Color::pluck('color', 'id')->prepend(trans('global.pleaseSelect'), ''); $brainstorm_items = Brainstorm::whereUserId($cardTask->user_id)->pluck('brainstorm_name', 'id')->prepend(trans('global.pleaseSelect'), ''); $outline_items = Outline::whereUserId($cardTask->user_id)->pluck('outline_name', 'id')->prepend(trans('global.pleaseSelect'), ''); $timeline_items = Timeline::whereUserId($cardTask->user_id)->pluck('name', 'id')->prepend(trans('global.pleaseSelect'), ''); $plotplanner_items = PlotPlanner::whereUserId($cardTask->user_id)->pluck('plot_planner_title', 'id')->prepend(trans('global.pleaseSelect'), ''); return view('admin.cardTasks.edit', compact('books', 'brainstorm_items', 'cardTask', 'cards', 'chapters', 'outline_items', 'outlines', 'timeline_items', 'plotplanner_items', 'series', 'users')); } public function update(AdminCardTaskRequest $request, CardTask $cardTask) { $cardTask->update($request->all()); return redirect()->route('admin.card-tasks.index'); } public function show(CardTask $cardTask) { abort_if(Gate::denies('card_task_show'), Response::HTTP_FORBIDDEN, '403 Forbidden'); $cardTask->load('user', 'series', 'book', 'outline', 'chapter', 'card', 'brainstorm_item', 'outline_item', 'timeline_item', 'plotplanner_item'); return view('admin.cardTasks.show', compact('cardTask')); } public function destroy(CardTask $cardTask) { abort_if(Gate::denies('card_task_delete'), Response::HTTP_FORBIDDEN, '403 Forbidden'); try { $cardTask->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(MassDestroyCardTaskRequest $request) { try { CardTask::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); } }
| ver. 1.4 |
Github
|
.
| PHP 8.1.29 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка