feat(contact): add ContactSubmissionController and contact form view

- Added ContactSubmissionController with index and store methods for handling contact submissions.
- Created a new Blade view for the contact form with fields for name, email, discord, category, subject, and message.
- Updated routes to include endpoints for displaying the contact form and submitting it.
This commit is contained in:
Rico van Zelst
2024-02-24 20:30:23 +01:00
parent e82976026c
commit 1ed7856985
3 changed files with 75 additions and 0 deletions

View File

@@ -4,16 +4,20 @@ use App\Http\Controllers\AboutController;
use App\Http\Controllers\AssetsController;
use App\Http\Controllers\ChampionController;
use App\Http\Controllers\ChampionSkinController;
use App\Http\Controllers\ContactSubmissionController;
use App\Http\Controllers\FAQController;
use App\Http\Controllers\HomeController;
use App\Http\Controllers\PostsController;
use App\Http\Controllers\SaleController;
use App\Http\Controllers\SummonerEmoteController;
use App\Http\Controllers\SummonerIconController;
use App\Http\Requests\ContactSubmissionRequest;
use App\Models\Champion;
use App\Models\SummonerIcon;
use Illuminate\Support\Facades\Route;
use Spatie\Sheets\Sheet;
use Spatie\Honeypot\ProtectAgainstSpam;
/*
|--------------------------------------------------------------------------
@@ -64,5 +68,11 @@ Route::get('/posts', static fn () => (new PostsController())->index())->name('po
Route::get('/post/{post}', static fn (Sheet $post) => (new PostsController())->show($post))->name('posts.show');
// Contact
Route::get('/contact', static fn () => (new ContactSubmissionController())->index())->name('contact.index');
Route::post('/contact', function (ContactSubmissionRequest $request) {
return (new ContactSubmissionController())->store($request);
})->name('contact.store')->middleware(ProtectAgainstSpam::class);
// Pulse
Route::get(config('app.login_route'), static fn () => redirect('/pulse'))->name('login')->middleware('auth.basic');