Файловый менеджер - Редактировать - /home/clickysoft/public_html/charliapp-v2.clickysoft.net/app/Http/Controllers/Admin/UsersController.php
Назад
<?php namespace App\Http\Controllers\Admin; use App\Http\Controllers\Controller; use App\Http\Controllers\Traits\MediaUploadingTrait; use App\Http\Requests\MassDestroyUserRequest; use App\Http\Requests\StoreUserRequest; use App\Http\Requests\UpdateUserRequest; use App\Models\Package; use App\Models\Role; use App\Models\User; use Gate; use Illuminate\Http\Request; use Spatie\MediaLibrary\MediaCollections\Models\Media; use Symfony\Component\HttpFoundation\Response; use Yajra\DataTables\Facades\DataTables; class UsersController extends Controller { use MediaUploadingTrait; public function index(Request $request) { abort_if(Gate::denies('user_access'), Response::HTTP_FORBIDDEN, '403 Forbidden'); if ($request->ajax()) { $query = User::with(['roles'])->select(sprintf('%s.*', (new User())->table)); $table = Datatables::of($query); $table->addColumn('placeholder', ' '); $table->addColumn('actions', ' '); $table->editColumn('actions', function ($row) { $viewGate = 'user_show'; $editGate = 'user_edit'; $deleteGate = 'user_delete'; $crudRoutePart = 'users'; $tableName = 'users'; return view('partials.datatablesActions', compact( 'viewGate', 'editGate', 'deleteGate', 'crudRoutePart', 'row', 'tableName' )); }); $table->editColumn('id', function ($row) { return $row->id; }); $table->editColumn('name', function ($row) { return $row->name; }); $table->editColumn('email', function ($row) { return $row->email; }); $table->editColumn('roles', function ($row) { $labels = []; foreach ($row->roles as $role) { $labels[] = sprintf('<span class="label label-info label-many">%s</span>', $role->title); } return implode(' ', $labels); }); $table->editColumn('status', function ($row) { return '<span id="recordSts' . $row->id . '"><i class="sts fa fa-' . ($row->status == 1 ? "check" : "times") . '"></i> ' . User::STATUS_RADIO[$row->status] . '</span>'; }); $table->editColumn('profile_image', function ($row) { return $row->profile_image ? '<a href="' . $row->profile_image->getUrl() . '" target="_blank">' . trans('global.downloadFile') . '</a>' : ''; }); $table->editColumn('test_col', function ($row) { return $row->test_col ? User::TEST_COL_SELECT[$row->test_col] : ''; }); $table->rawColumns(['actions', 'placeholder', 'roles', 'status', 'profile_image']); return $table->make(true); } $roles = Role::get(); return view('admin.users.index', compact('roles')); } public function create() { abort_if(Gate::denies('user_create'), Response::HTTP_FORBIDDEN, '403 Forbidden'); $roles = Role::pluck('title', 'id'); return view('admin.users.create', compact('roles')); } public function store(StoreUserRequest $request) { $user = User::create($request->all()); $user->roles()->sync($request->input('roles', [])); if ($request->input('profile_image', false)) { $user->addMedia(storage_path('tmp/uploads/' . basename($request->input('profile_image'))))->toMediaCollection('profile_image'); } if ($media = $request->input('ck-media', false)) { Media::whereIn('id', $media)->update(['model_id' => $user->id]); } return redirect()->route('admin.users.index'); } public function edit(User $user) { abort_if(Gate::denies('user_edit'), Response::HTTP_FORBIDDEN, '403 Forbidden'); $roles = Role::pluck('title', 'id'); $user->load('roles'); return view('admin.users.edit', compact('roles', 'user')); } public function update(UpdateUserRequest $request, User $user) { $user->update($request->all()); $user->roles()->sync($request->input('roles', [])); if ($request->input('profile_image', false)) { if (!$user->profile_image || $request->input('profile_image') !== $user->profile_image->file_name) { if ($user->profile_image) { $user->profile_image->delete(); } $user->addMedia(storage_path('tmp/uploads/' . basename($request->input('profile_image'))))->toMediaCollection('profile_image'); } } elseif ($user->profile_image) { $user->profile_image->delete(); } return redirect()->route('admin.users.index'); } public function show(User $user) { abort_if(Gate::denies('user_show'), Response::HTTP_FORBIDDEN, '403 Forbidden'); $user->load('roles'); return view('admin.users.show', compact('user')); } public function destroy(User $user) { abort_if(Gate::denies('user_delete'), Response::HTTP_FORBIDDEN, '403 Forbidden'); try { $user->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(MassDestroyUserRequest $request) { try { User::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 storeCKEditorImages(Request $request) { abort_if(Gate::denies('user_create') && Gate::denies('user_edit'), Response::HTTP_FORBIDDEN, '403 Forbidden'); $model = new User(); $model->id = $request->input('crud_id', 0); $model->exists = true; $media = $model->addMediaFromRequest('upload')->toMediaCollection('ck-media'); return response()->json(['id' => $media->id, 'url' => $media->getUrl()], Response::HTTP_CREATED); } }
| ver. 1.4 |
Github
|
.
| PHP 8.1.29 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка