107 lines
5.2 KiB
PHP
107 lines
5.2 KiB
PHP
<?php
|
|
|
|
use Illuminate\Support\Facades\Route;
|
|
use Livewire\Volt\Volt;
|
|
|
|
// Admin-Routes für portal.b2in.local
|
|
|
|
// Admin-Dashboard
|
|
Route::get('/', function () {
|
|
return redirect()->route('dashboard');
|
|
})->name('admin.home');
|
|
|
|
// Partner Setup Wizard wird in routes/web.php definiert
|
|
|
|
Route::view('dashboard', 'admin.dashboard')->middleware(['auth', 'verified', 'partner.setup'])->name('dashboard');
|
|
Volt::route('/partner/my-data', 'partner.my-data')
|
|
->name('partner.my-data');
|
|
|
|
// Admin-Einstellungen
|
|
Route::middleware(['auth', 'partner.setup'])->group(function () {
|
|
Route::redirect('settings', 'settings/profile');
|
|
|
|
Volt::route('settings/profile', 'settings.profile')->name('settings.profile');
|
|
Volt::route('settings/password', 'settings.password')->name('settings.password');
|
|
Volt::route('settings/appearance', 'settings.appearance')->name('settings.appearance');
|
|
|
|
// Impersonation
|
|
Route::post('admin/impersonate/leave', function () {
|
|
$adminUserId = session('impersonate_from');
|
|
|
|
if ($adminUserId) {
|
|
$adminUser = \App\Models\User::find($adminUserId);
|
|
|
|
if ($adminUser) {
|
|
session()->forget('impersonate_from');
|
|
\Illuminate\Support\Facades\Auth::login($adminUser);
|
|
|
|
return redirect()->route('admin.users')->with('message', __('Erfolgreich zurück zum Admin-Account.'));
|
|
}
|
|
}
|
|
|
|
return redirect()->route('dashboard');
|
|
})->name('admin.impersonate.leave');
|
|
|
|
// 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', 'admin.partners.index')->name('admin.partners.index');
|
|
Volt::route('admin/partners/invite', 'admin.partners.invite')->name('admin.partners.invite');
|
|
Volt::route('admin/partners/registration-codes', 'admin.partners.registration-codes')->name('admin.partners.registration-codes');
|
|
Volt::route('admin/partners/{partnerId}/edit', 'admin.partners.edit')->name('admin.partners.edit');
|
|
Volt::route('partner/{partnerId}/profile', 'partner.profile')->name('partner.profile');
|
|
|
|
// Testing
|
|
Volt::route('testing/registration', 'admin.testing.registration-tester')->name('testing.landing');
|
|
|
|
// CMS Routes
|
|
Route::get('admin/cms/cabinet', \App\Livewire\Admin\Cms\CabinetDisplay::class)->name('admin.cms.cabinet');
|
|
Route::get('admin/cms/cabinet-tablet', \App\Livewire\Admin\Cms\CabinetInfoTablet::class)->name('admin.cms.cabinet-tablet');
|
|
|
|
// Display CMS
|
|
Volt::route('admin/cms/display-dashboard', 'admin.cms.display-dashboard')->name('admin.cms.display-dashboard');
|
|
Volt::route('admin/cms/display-media', 'admin.cms.display-media-library')->name('admin.cms.display-media');
|
|
Route::get('admin/cms/display-modules', \App\Livewire\Admin\Cms\DisplayVersionList::class)->name('admin.cms.display-modules');
|
|
Route::get('admin/cms/display-modules/{displayVersion}/edit', \App\Livewire\Admin\Cms\DisplayVersionEditor::class)->name('admin.cms.display-module-edit');
|
|
Route::get('admin/cms/displays', \App\Livewire\Admin\Cms\DisplayList::class)->name('admin.cms.displays');
|
|
|
|
// Product Routes
|
|
Volt::route('products/index', 'products.index')->name('products.index');
|
|
Volt::route('products/create/standard', 'products.form-standard')->name('products.create.standard');
|
|
Volt::route('products/create/teaser', 'products.form-teaser')->name('products.create.teaser');
|
|
Volt::route('products/{product}/edit-standard', 'products.form-standard')->name('products.edit.standard');
|
|
Volt::route('products/{product}/edit-teaser', 'products.form-teaser')->name('products.edit.teaser');
|
|
|
|
// Admin Product Routes (Kuration)
|
|
Volt::route('admin/products', 'admin.products.index')->name('admin.products.index');
|
|
|
|
// Hub Management
|
|
Volt::route('admin/hubs', 'admin.hubs.index')->name('admin.hubs.index');
|
|
Volt::route('admin/hubs/create', 'admin.hubs.manage')->name('admin.hubs.create');
|
|
Volt::route('admin/hubs/{hubId}/edit', 'admin.hubs.manage')->name('admin.hubs.edit');
|
|
|
|
// Flux CMS
|
|
Volt::route('admin/flux-cms', 'admin.cms.dashboard')->name('cms.dashboard');
|
|
Volt::route('admin/flux-cms/content', 'admin.cms.content-index')->name('cms.content.index');
|
|
Volt::route('admin/flux-cms/projects', 'admin.cms.projects-index')->name('cms.projects.index');
|
|
Volt::route('admin/flux-cms/media', 'admin.cms.media-index')->name('cms.media.index');
|
|
Volt::route('admin/flux-cms/articles', 'admin.cms.articles-index')->name('cms.articles.index');
|
|
|
|
// Documentation
|
|
Volt::route('admin/documentation', 'admin.documentation')->name('admin.documentation');
|
|
Route::get('admin/documentation/download', function () {
|
|
$mdPath = base_path('dev/entwicklung.md');
|
|
if (! file_exists($mdPath)) {
|
|
abort(404);
|
|
}
|
|
|
|
return response()->download($mdPath, 'b2in-entwicklung.md');
|
|
})->name('admin.documentation.download');
|
|
});
|
|
|
|
// Admin-Authentication wird bereits in domains.php geladen
|