some code improvemetns
This commit is contained in:
20
app/Http/Controllers/LocaleController.php
Normal file
20
app/Http/Controllers/LocaleController.php
Normal file
@@ -0,0 +1,20 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class LocaleController extends Controller
|
||||
{
|
||||
/**
|
||||
* @return RedirectResponse
|
||||
*/
|
||||
public function __invoke($locale)
|
||||
{
|
||||
if (array_key_exists($locale, config('app.locales'))) {
|
||||
session()->put('locale', $locale);
|
||||
}
|
||||
|
||||
return request()->json() ? response()->noContent() : back();
|
||||
}
|
||||
}
|
||||
@@ -64,6 +64,7 @@ class Kernel extends HttpKernel
|
||||
'signed' => \App\Http\Middleware\ValidateSignature::class,
|
||||
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
|
||||
'verified' => \Illuminate\Auth\Middleware\EnsureEmailIsVerified::class,
|
||||
'un_verified' => \App\Http\Middleware\RedirectIfPhoneIsVerified::class,
|
||||
'unVerified' => \App\Http\Middleware\RedirectIfPhoneIsVerified::class,
|
||||
'setLocale' => \App\Http\Middleware\SetLocale::class,
|
||||
];
|
||||
}
|
||||
|
||||
24
app/Http/Middleware/SetLocale.php
Normal file
24
app/Http/Middleware/SetLocale.php
Normal file
@@ -0,0 +1,24 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
use Illuminate\Http\Request;
|
||||
use Symfony\Component\HttpFoundation\Response;
|
||||
|
||||
class SetLocale
|
||||
{
|
||||
/**
|
||||
* Handle an incoming request.
|
||||
*
|
||||
* @param \Closure(\Illuminate\Http\Request): (\Symfony\Component\HttpFoundation\Response) $next
|
||||
*/
|
||||
public function handle(Request $request, Closure $next): Response
|
||||
{
|
||||
if (session()->has('locale')) {
|
||||
app()->setLocale(session('locale'));
|
||||
}
|
||||
|
||||
return $next($request);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user