mirror of
https://github.com/HolgerHatGarKeineNode/einundzwanzig-app.git
synced 2025-12-14 12:06:46 +00:00
🌐 Introduce dynamic domain-based locale and country handling
- Added `DomainMiddleware` to dynamically set locale, language-country session, and app name based on domain.
- Updated views and components to leverage `lang_country` session for language and region-specific content.
- Enhanced country parameter retrieval with `config('app.domain_country')` as fallback.
- Refined language filtering by scanning available language files dynamically.
- Added language-specific assets and translations (`nl.json`, `es.json`) with improved language-region associations.
- Updated `app-logo-icon` to display region-specific images or default SVGs.
- Improved views with cleaner, dynamic rendering and session-aware functionalities.
This commit is contained in:
39
app/Http/Middleware/DomainMiddleware.php
Normal file
39
app/Http/Middleware/DomainMiddleware.php
Normal file
@@ -0,0 +1,39 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\App;
|
||||
use Symfony\Component\HttpFoundation\Response;
|
||||
|
||||
class DomainMiddleware
|
||||
{
|
||||
public function handle(Request $request, Closure $next): Response
|
||||
{
|
||||
$domain = $request->getHost(); // Erkennt die aktuelle Domain (via CNAME)
|
||||
|
||||
// domains
|
||||
$domainArray = [
|
||||
'portal.eenentwintig.net' => [
|
||||
'locale' => 'nl',
|
||||
'lang_country' => 'nl-NL',
|
||||
'app_name' => 'EENENTWINTIG Portaal',
|
||||
],
|
||||
];
|
||||
|
||||
// App-Locale dynamisch setzen
|
||||
if (isset($domainArray[$domain]['locale'])) {
|
||||
session([
|
||||
'lang_country' => $domainArray[$domain]['lang_country'],
|
||||
]);
|
||||
config([
|
||||
'app.name' => $domainArray[$domain]['app_name'],
|
||||
'app.domain_country' => $domainArray[$domain]['locale'],
|
||||
]);
|
||||
App::setLocale($domainArray[$domain]['locale']);
|
||||
}
|
||||
|
||||
return $next($request);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user