route('login'); }); // Authentifizierung (nur für Gäste) Route::middleware('guest')->group(function () { Route::get('/login', [LoginController::class, 'showLoginForm'])->name('login'); Route::post('/login', [LoginController::class, 'login']); }); // Logout (nur für eingeloggte Benutzer) Route::post('/logout', [LoginController::class, 'logout'])->name('logout')->middleware('auth'); // Geschützte Routen Route::middleware(['auth'])->group(function () { // Benutzer-Nagellack-Verwaltung Route::get('/my-collection', [UserNailPolishController::class, 'index'])->name('user-nail-polishes.index'); Route::get('/available', [UserNailPolishController::class, 'available'])->name('user-nail-polishes.available'); Route::get('/create-nail-polish', [UserNailPolishController::class, 'create'])->name('user-nail-polishes.create'); Route::post('/create-nail-polish', [UserNailPolishController::class, 'store'])->name('user-nail-polishes.store'); Route::post('/add-to-collection/{nailPolish}', [UserNailPolishController::class, 'add'])->name('user-nail-polishes.add'); Route::post('/remove-from-collection/{nailPolish}', [UserNailPolishController::class, 'remove'])->name('user-nail-polishes.remove'); // Admin-Routen Route::middleware(['admin'])->prefix('admin')->name('admin.')->group(function () { Route::get('/dashboard', [AdminController::class, 'dashboard'])->name('dashboard'); Route::get('/users', [AdminController::class, 'users'])->name('users.index'); Route::get('/users/create', [AdminController::class, 'createUser'])->name('users.create'); Route::post('/users', [AdminController::class, 'storeUser'])->name('users.store'); Route::get('/users/{user}/edit', [AdminController::class, 'editUser'])->name('users.edit'); Route::put('/users/{user}', [AdminController::class, 'updateUser'])->name('users.update'); Route::delete('/users/{user}', [AdminController::class, 'destroyUser'])->name('users.destroy'); Route::get('/statistics', [AdminController::class, 'statistics'])->name('statistics'); Route::get('/users/{user}/collection', [UserNailPolishController::class, 'showUserCollection'])->name('users.collection'); }); // Nagellack-Verwaltung (nur für Admin) Route::middleware(['admin'])->group(function () { Route::resource('nail-polishes', NailPolishController::class); Route::get('/nail-polishes/{nailPolish}/users', [NailPolishController::class, 'showUsers'])->name('nail-polishes.showUsers'); }); // Hersteller-Verwaltung (für alle eingeloggten User) Route::resource('manufacturers', ManufacturerController::class); Route::get('/manufacturers-search', [ManufacturerController::class, 'search'])->name('manufacturers.search'); }); // Fallback Route::fallback(function () { return redirect()->route('login'); }); // Einfache Logout-Route für Debugging Route::get('/logout', [App\Http\Controllers\Auth\LoginController::class, 'logout'])->name('logout');