diff --git a/app/Http/Controllers/UserPreferencesController.php b/app/Http/Controllers/UserPreferencesController.php index feff231a9f..e742115c58 100644 --- a/app/Http/Controllers/UserPreferencesController.php +++ b/app/Http/Controllers/UserPreferencesController.php @@ -64,12 +64,14 @@ class UserPreferencesController extends Controller 'default_dashboard' => UserPref::getPref($user, 'dashboard'), 'note_to_device' => UserPref::getPref($user, 'add_schedule_note_to_device'), 'locale' => UserPref::getPref($user, 'locale') ?: 'en', - 'locales' => [ - 'en' => 'English', - 'ru' => 'русский', - ], ]; + foreach (glob(resource_path('lang') . '/*', GLOB_ONLYDIR) as $locale) { + $locale = basename($locale); + $lang = __('preferences.lang', [], $locale); + $data['locales'][$locale] = ($lang == 'preferences.lang' ? $locale : $lang); + } + if (Config::get('twofactor')) { $twofactor = UserPref::getPref($user, 'twofactor'); if ($twofactor) { diff --git a/resources/lang/en/preferences.php b/resources/lang/en/preferences.php new file mode 100644 index 0000000000..b44801b897 --- /dev/null +++ b/resources/lang/en/preferences.php @@ -0,0 +1,17 @@ + 'English', + +]; diff --git a/resources/lang/ru/preferences.php b/resources/lang/ru/preferences.php new file mode 100644 index 0000000000..3561ac5ff1 --- /dev/null +++ b/resources/lang/ru/preferences.php @@ -0,0 +1,17 @@ + 'русский', + +]; diff --git a/resources/views/user/preferences.blade.php b/resources/views/user/preferences.blade.php index 9586cf34db..dae9ab2adc 100644 --- a/resources/views/user/preferences.blade.php +++ b/resources/views/user/preferences.blade.php @@ -200,16 +200,20 @@ $('.ajax-select').change(function () { var $this = $(this); var value = $this.val(); - console.log($this.data('pref')); + var pref = $this.data('pref'); $.ajax({ url: '{{ route('preferences.store') }}', dataType: 'json', type: 'POST', data: { - pref: $this.data('pref'), + pref: pref, value: value }, success: function () { + if (pref === 'locale') { + location.reload(); + } + $this.data('previous', value); $this.closest('.form-group').addClass('has-success'); setTimeout(function () {