Files
ots/routes/web.php
T
Twyco e9fc8cabb5
CI/CD / test_and_check_app (push) Failing after 58s
CI/CD / Publish immutable image (push) Skipped
Fix team authorization, invite revocation, and slug handling
2026-09-19 05:54:18 +02:00

33 lines
1.5 KiB
PHP

<?php
use App\Http\Controllers\TeamController;
use App\Http\Controllers\TeamInviteAcceptController;
use App\Models\Team;
use Illuminate\Support\Facades\Route;
Route::inertia('/', 'Welcome')->name('home');
Route::middleware(['auth'])->group(function () {
Route::inertia('dashboard', 'Dashboard')->name('dashboard');
Route::controller(TeamController::class)->prefix('teams')->name('teams.')->group(function () {
Route::prefix('invite')->name('invite.')->group(function () {
Route::get('/accept', [TeamInviteAcceptController::class, 'create'])->name('create');
Route::post('/accept', [TeamInviteAcceptController::class, 'store'])->name('store');
});
Route::get('/', 'index')->name('index');
Route::get('/create', 'create')->name('create')->can('create', Team::class);
Route::post('/', 'store')->name('store')->can('create', Team::class);
Route::get('/edit/{team:slug}', 'edit')->name('edit')->can('manage', 'team');
Route::patch('/{team:slug}', 'update')->name('update')->can('manage', 'team');
Route::post('/name-to-slug', 'nameToSlug')->name('nameToSlug');
Route::get('/{team:slug}', 'show')->name('show')->can('view', 'team');
Route::post('{team:slug}/invite', [TeamController::class, 'invite'])->name('invite');
Route::post('{team:slug}/invite/revoke', [TeamController::class, 'revokeInvite'])->name('invite.revoke')->can('manage', 'team');
});
});
require __DIR__.'/settings.php';