forge/routes/web.php

41 lines
1.5 KiB
PHP
Raw Permalink Normal View History

2024-05-13 18:55:34 -04:00
<?php
2025-01-30 00:23:55 -05:00
declare(strict_types=1);
use App\Http\Controllers\ModController;
2024-09-20 10:37:16 -04:00
use App\Http\Controllers\ModVersionController;
use App\Http\Controllers\SocialiteController;
use App\Http\Controllers\UserController;
2024-05-13 18:55:34 -04:00
use Illuminate\Support\Facades\Route;
2025-01-30 00:23:55 -05:00
Route::middleware(['auth.banned'])->group(function (): void {
2024-05-17 23:54:03 -04:00
2025-01-30 00:23:55 -05:00
Route::controller(SocialiteController::class)->group(function (): void {
Route::get('/login/{provider}/redirect', 'redirect')->name('login.socialite');
Route::get('/login/{provider}/callback', 'callback');
});
2025-01-30 00:23:55 -05:00
Route::get('/', fn () => view('home'))->name('home');
2024-06-16 21:40:00 -04:00
2025-01-30 00:23:55 -05:00
Route::controller(ModController::class)->group(function (): void {
2024-06-16 21:40:00 -04:00
Route::get('/mods', 'index')->name('mods');
Route::get('/mod/{mod}/{slug}', 'show')->where(['mod' => '[0-9]+'])->name('mod.show');
});
// Download Link
2025-01-30 00:23:55 -05:00
Route::controller(ModVersionController::class)->group(function (): void {
Route::get('/mod/download/{mod}/{slug}/{version}', 'show')
->where(['mod' => '[0-9]+', 'slug' => '[a-z0-9-]+'])
->name('mod.version.download');
2024-09-20 10:37:16 -04:00
});
2025-01-30 00:23:55 -05:00
Route::controller(UserController::class)->group(function (): void {
Route::get('/user/{user}/{username}', 'show')->where(['user' => '[0-9]+'])->name('user.show');
2024-06-16 21:40:00 -04:00
});
2025-01-30 00:23:55 -05:00
Route::middleware(['auth:sanctum', config('jetstream.auth_session'), 'verified'])->group(function (): void {
Route::get('/dashboard', fn () => view('dashboard'))->name('dashboard');
2024-06-16 21:40:00 -04:00
});
2024-05-13 18:55:34 -04:00
});