From 436c0a1651342ecc30b9064e32f82a57538e8b6d Mon Sep 17 00:00:00 2001 From: Henrik Hautakoski Date: Sun, 9 Jan 2022 11:28:22 +0100 Subject: [PATCH] app/Http/Controllers/Admin/*: Add static method getForm() that will return the livewire component class. This makes routing abit simpler as one only needs to import the controller. --- app/Http/Controllers/Admin/CardController.php | 10 ++++++++-- .../Controllers/Admin/CharacterController.php | 6 ++++++ app/Http/Controllers/Admin/RaidController.php | 6 ++++++ routes/web.php | 15 ++++++--------- 4 files changed, 26 insertions(+), 11 deletions(-) diff --git a/app/Http/Controllers/Admin/CardController.php b/app/Http/Controllers/Admin/CardController.php index 0996aa1..e180e94 100644 --- a/app/Http/Controllers/Admin/CardController.php +++ b/app/Http/Controllers/Admin/CardController.php @@ -3,14 +3,20 @@ namespace App\Http\Controllers\Admin; use App\Models\Card; +use App\Http\Livewire\Form\CardForm; use App\Http\Controllers\Controller; class CardController extends Controller { - public function index() + static public function getForm() : string { - return view("admin.card.index"); + return CardForm::class; + } + + public function index() + { + return view('admin.card.index'); } public function destroy(Card $card) diff --git a/app/Http/Controllers/Admin/CharacterController.php b/app/Http/Controllers/Admin/CharacterController.php index 868394a..503c6e7 100644 --- a/app/Http/Controllers/Admin/CharacterController.php +++ b/app/Http/Controllers/Admin/CharacterController.php @@ -3,11 +3,17 @@ namespace App\Http\Controllers\Admin; use App\Models\Character; +use App\Http\Livewire\Form\CharacterForm; use App\Http\Controllers\Controller; class CharacterController extends Controller { + static public function getForm() : string + { + return CharacterForm::class; + } + public function index() { return view("admin.character.index"); diff --git a/app/Http/Controllers/Admin/RaidController.php b/app/Http/Controllers/Admin/RaidController.php index 439062f..3390830 100644 --- a/app/Http/Controllers/Admin/RaidController.php +++ b/app/Http/Controllers/Admin/RaidController.php @@ -3,11 +3,17 @@ namespace App\Http\Controllers\Admin; use App\Models\Raid; +use App\Http\Livewire\Form\RaidForm; use App\Http\Controllers\Controller; class RaidController extends Controller { + static public function getForm() : string + { + return RaidForm::class; + } + public function index() { return view("admin.raid.index"); diff --git a/routes/web.php b/routes/web.php index d0f6487..a15ca45 100644 --- a/routes/web.php +++ b/routes/web.php @@ -11,9 +11,6 @@ use App\Http\Controllers\Admin\AdminController; use App\Http\Controllers\Admin\CardController; use App\Http\Controllers\Admin\CharacterController; use App\Http\Controllers\Admin\RaidController; -use App\Http\Livewire\Form\CardForm; -use App\Http\Livewire\Form\CharacterForm; -use App\Http\Livewire\Form\RaidForm; use Illuminate\Support\Facades\Session; @@ -50,18 +47,18 @@ Route::prefix('admin')->group(function() { Route::get('/', [AdminController::class, 'index']); Route::get('/cards', [CardController::class, 'index'])->name('admin.card.index'); - Route::get('/cards/new', CardForm::class)->name('admin.card.create'); - Route::get('/cards/{card}', CardForm::class)->name('admin.card.edit'); + Route::get('/cards/new', CardController::getForm())->name('admin.card.create'); + Route::get('/cards/{card}', CardController::getForm())->name('admin.card.edit'); Route::delete('/cards/{card}', [CardController::class, 'destroy'])->name('admin.card.delete'); Route::get('/characters', [CharacterController::class, 'index'])->name('admin.character.index'); - Route::get('/characters/new', CharacterForm::class)->name('admin.character.create'); - Route::get('/characters/{character}', CharacterForm::class)->name('admin.character.edit'); + Route::get('/characters/new', CharacterController::getForm())->name('admin.character.create'); + Route::get('/characters/{character}', CharacterController::getForm())->name('admin.character.edit'); Route::delete('/characters/{character}', [CharacterController::class, 'destroy'])->name('admin.character.delete'); Route::get('/raids', [RaidController::class, 'index'])->name('admin.raid.index'); - Route::get('/raids/new', RaidForm::class)->name('admin.raid.create'); - Route::get('/raids/{raid}', RaidForm::class)->name('admin.raid.edit'); + Route::get('/raids/new', RaidController::getForm())->name('admin.raid.create'); + Route::get('/raids/{raid}', RaidController::getForm())->name('admin.raid.edit'); Route::delete('/raids/{raid}', [RaidController::class, 'destroy'])->name('admin.raid.delete'); Route::post('/logout', [AuthController::class, 'destroy'])->name('logout');