Files
jabali-panel/app/Http/Controllers/LanguageController.php
2026-02-02 03:11:45 +02:00

32 lines
779 B
PHP

<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Session;
class LanguageController extends Controller
{
/**
* Switch the application language.
*/
public function switch(Request $request, string $locale)
{
$supportedLanguages = array_keys(config('languages.supported', ['en' => []]));
if (!in_array($locale, $supportedLanguages)) {
abort(400, 'Unsupported language');
}
// Store in session
Session::put(config('languages.session_key', 'locale'), $locale);
// Update user preference if authenticated
if (auth()->check()) {
auth()->user()->update(['locale' => $locale]);
}
return redirect()->back();
}
}