added marketing page and moved events&general landing page
This commit is contained in:
@@ -3,8 +3,8 @@
|
||||
use Illuminate\Support\Facades\Route;
|
||||
use Inertia\Inertia;
|
||||
|
||||
// Public landing: serve Guest PWA shell at root
|
||||
Route::view('/', 'guest')->name('home');
|
||||
// Marketing-Seite unter Root
|
||||
Route::view('/', 'marketing')->name('marketing');
|
||||
|
||||
Route::middleware(['auth', 'verified'])->group(function () {
|
||||
Route::get('dashboard', function () {
|
||||
@@ -15,19 +15,32 @@ Route::middleware(['auth', 'verified'])->group(function () {
|
||||
require __DIR__.'/settings.php';
|
||||
require __DIR__.'/auth.php';
|
||||
|
||||
// Guest PWA shell (served for event and /pwa paths; React handles routing)
|
||||
// Guest PWA shell for /event and sub-routes
|
||||
Route::view('/event/{any?}', 'guest')->where('any', '.*');
|
||||
Route::view('/e/{any?}', 'guest')->where('any', '.*');
|
||||
Route::view('/pwa/{any?}', 'guest')->where('any', '.*');
|
||||
Route::view('/legal/{any?}', 'guest')->where('any', '.*');
|
||||
|
||||
// Minimal public API for Guest PWA (stateless; no CSRF)
|
||||
Route::prefix('api/v1')->withoutMiddleware([\App\Http\Middleware\VerifyCsrfToken::class])->group(function () {
|
||||
// Public legal pages
|
||||
Route::get('/legal/{slug}', [\App\Http\Controllers\Api\LegalController::class, 'show']);
|
||||
// Public legal pages (for marketing)
|
||||
Route::get('/impressum', function () {
|
||||
return view('legal.impressum');
|
||||
})->name('impressum');
|
||||
Route::get('/datenschutz', function () {
|
||||
return view('legal.datenschutz');
|
||||
})->name('datenschutz');
|
||||
Route::get('/kontakt', function () {
|
||||
return view('legal.kontakt');
|
||||
})->name('kontakt');
|
||||
Route::post('/kontakt', [\App\Http\Controllers\MarketingController::class, 'contact'])->name('kontakt.submit');
|
||||
});
|
||||
|
||||
// Stripe webhooks (no CSRF, no auth)
|
||||
Route::post('/webhooks/stripe', [\App\Http\Controllers\StripeWebhookController::class, 'handle']);
|
||||
// Stripe webhooks (no CSRF, no auth)
|
||||
Route::post('/webhooks/stripe', [\App\Http\Controllers\StripeWebhookController::class, 'handle']);
|
||||
// PayPal IPN webhook
|
||||
Route::post('/webhooks/paypal', [\App\Http\Controllers\PayPalWebhookController::class, 'handle']);
|
||||
// PayPal IPN webhook
|
||||
Route::post('/webhooks/paypal', [\App\Http\Controllers\PayPalWebhookController::class, 'handle']);
|
||||
|
||||
// CSV templates for Super Admin imports
|
||||
Route::get('/super-admin/templates/emotions.csv', function () {
|
||||
@@ -60,3 +73,14 @@ Route::get('/super-admin/templates/tasks.csv', function () {
|
||||
};
|
||||
return response()->stream($callback, 200, $headers);
|
||||
});
|
||||
|
||||
// E-Commerce Routen für Marketing
|
||||
Route::get('/buy-credits/{package}', [\App\Http\Controllers\MarketingController::class, 'checkout'])->name('buy.credits');
|
||||
Route::get('/checkout/{sessionId}', [\App\Http\Controllers\MarketingController::class, 'stripeCheckout']);
|
||||
Route::get('/paypal-checkout/{package}', [\App\Http\Controllers\MarketingController::class, 'paypalCheckout']);
|
||||
Route::get('/marketing/success/{package}', [\App\Http\Controllers\MarketingController::class, 'success'])->name('marketing.success');
|
||||
|
||||
// E-Commerce Routen für Marketing
|
||||
Route::get('/buy-credits/{package}', [\App\Http\Controllers\MarketingController::class, 'checkout'])->name('buy.credits');
|
||||
Route::get('/checkout/{sessionId}', [\App\Http\Controllers\MarketingController::class, 'stripeCheckout']);
|
||||
Route::get('/paypal-checkout/{package}', [\App\Http\Controllers\MarketingController::class, 'paypalCheckout']);
|
||||
|
||||
Reference in New Issue
Block a user