21-11-2025

This commit is contained in:
Kevin Adametz 2025-11-21 18:21:23 +01:00
parent fa2ebd457d
commit 07959c0ba2
113 changed files with 4730 additions and 898 deletions

View file

@ -10,10 +10,16 @@ Route::get('/', function () {
return redirect()->route('dashboard');
})->name('home');
Route::view('dashboard', 'admin.dashboard')->middleware(['auth', 'verified'])->name('dashboard');
// Partner Setup Wizard (muss vor anderen auth-Routes sein, um keine Middleware zu bekommen)
Route::middleware(['auth'])->group(function () {
Volt::route('partner/setup', 'partner.setup-wizard')
->name('partner.setup.wizard');
});
Route::view('dashboard', 'admin.dashboard')->middleware(['auth', 'verified', 'partner.setup'])->name('dashboard');
// Admin-Einstellungen
Route::middleware(['auth'])->group(function () {
Route::middleware(['auth', 'partner.setup'])->group(function () {
Route::redirect('settings', 'settings/profile');
Volt::route('settings/profile', 'settings.profile')->name('settings.profile');
@ -22,8 +28,13 @@ Route::middleware(['auth'])->group(function () {
// Weitere Admin-Routen hier...
// User Management
Volt::route('admin/users', 'admin.users')->name('admin.users');
Volt::route('admin/users/table', 'admin.users.table')->name('admin.users.table');
Volt::route('admin/users/permissions', 'admin.users.permissions')->name('admin.users.permissions');
// Partner Management
Volt::route('admin/partners/invite', 'admin.partners.invite')->name('admin.partners.invite');
});
// Admin-Authentication wird bereits in domains.php geladen

View file

@ -7,32 +7,32 @@ use Livewire\Volt\Volt;
Route::group(['middleware' => config('fortify.middleware', ['web'])], function () {
// Login mit Livewire
Volt::route('/login', 'auth.login')
->middleware(['guest:'.config('fortify.guard')])
->middleware(['guest:' . config('fortify.guard')])
->name('login');
// Registrierung mit Livewire
Volt::route('/register', 'auth.register')
->middleware(['guest:'.config('fortify.guard')])
->middleware(['guest:' . config('fortify.guard')])
->name('register');
// Passwort vergessen mit Livewire
Volt::route('/forgot-password', 'auth.forgot-password')
->middleware(['guest:'.config('fortify.guard')])
->middleware(['guest:' . config('fortify.guard')])
->name('password.request');
// Passwort zurücksetzen mit Livewire
Volt::route('/reset-password/{token}', 'auth.reset-password')
->middleware(['guest:'.config('fortify.guard')])
->middleware(['guest:' . config('fortify.guard')])
->name('password.reset');
// E-Mail-Verifizierung mit Livewire
Volt::route('/verify-email', 'auth.verify-email')
->middleware(['auth:'.config('fortify.guard')])
->middleware(['auth:' . config('fortify.guard')])
->name('verification.notice');
// Passwort bestätigen mit Livewire
Volt::route('/confirm-password', 'auth.confirm-password')
->middleware(['auth:'.config('fortify.guard')])
->middleware(['auth:' . config('fortify.guard')])
->name('password.confirm');
// Logout-Route

View file

@ -1,7 +1,7 @@
<?php
use Illuminate\Support\Facades\Route;
use Livewire\Volt\Volt;
// Gemeinsame Web-Routes für alle Pages)
// Jede Landing-Page hat das gleiche Gerüst, aber unterschiedliches Styling
@ -66,3 +66,23 @@ Route::get('/theme-demo', function () {
// Pfad-basierte Theme-Routen für lokale Entwicklung wurden entfernt
// Die Themensauswahl wird nun über den ThemeServiceProvider gesteuert (Domain oder ?theme=... GET-Parameter)
Volt::route('/partner/invitation/{token}', 'partner.invitation-accept')
->name('partner.invitation.accept');
Route::get('/partner/invitation/expired/{token}', function (string $token) {
$invitation = \App\Models\PartnerInvitation::with('role')->where('token', $token)->firstOrFail();
return view('partner.invitation-expired', compact('invitation'));
})->name('partner.invitation.expired');
Route::get('/partner/invitation/used/{token}', function (string $token) {
$invitation = \App\Models\PartnerInvitation::with('role')->where('token', $token)->firstOrFail();
return view('partner.invitation-used', compact('invitation'));
})->name('partner.invitation.used');
// Partner Setup Wizard
Route::middleware('auth')->group(function () {
Volt::route('/partner/setup', 'partner.setup-wizard')
->name('partner.setup.wizard');
});