/
admini
/
dom
Обзор
Документация
Войти
/
admini
/
dom
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
app/Http/Controllers/CardController.php
55 строк
2 KB
pisska
add users
28 окт 2025, 20:58
28 окт 2025, 20:58
6e7de8b
Код
Авторство
О чём код?
<?php namespace App\Http\Controllers; use App\Models\Card; use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; class CardController extends Controller { public function index() { $user = Auth::user(); $activeCards = $user->cards()->whereIn('status', ['pending', 'approved'])->get(); $archivedCards = $user->cards()->where('status', 'archived')->get(); return view('cards.index', compact('activeCards', 'archivedCards')); } public function create() { return view('cards.create'); } public function store(Request $request) { $validated = $request->validate([ 'author' => 'required|string', 'title' => 'required|string', 'type' => 'required|in:share,want', 'publisher' => 'nullable|string', 'year' => 'nullable|integer|min:1900|max:' . date('Y'), 'binding' => 'nullable|string', 'condition' => 'nullable|string' ]); Card::create(array_merge($validated, [ 'user_id' => Auth::id(), 'status' => 'pending' ])); return redirect()->route('cards.index')->with('success', 'Карточка отправлена на модерацию!'); } public function destroy(Card $card) { if ($card->user_id !== Auth::id()) { abort(403); } $card->update(['status' => 'archived']); return redirect()->route('cards.index')->with('success', 'Карточка архивирована'); } }