request->user(); if (array_key_exists($user?->locale, config('app.locales'))) { app()->setLocale($user->locale); } } /** * Locale Switcher Save */ public static function localeSwitcherSave(): Closure { return function (Request $request) { $locale = $request->post('locale'); if (array_key_exists($locale, config('app.locales'))) { $request->user()->update(['locale' => $locale]); } }; } /** * Depends on region */ public static function dependsOnRegion(string $attribute = 'region', string $model = Province::class): Closure { return function ($field, $request, $formData) use ($attribute, $model) { $field->options( $formData->{$attribute} ? $model::where('region', $formData->{$attribute})->pluck('name', 'id') : [] ); }; } }