Add language settings UI

This commit is contained in:
Johannes Zellner
2020-11-18 00:10:29 +01:00
parent 360e6e36cd
commit fd8077d9f5
4 changed files with 89 additions and 0 deletions

View File

@@ -197,6 +197,31 @@ angular.module('Application').controller('SettingsController', ['$scope', '$loca
}
};
$scope.language = {
busy: false,
success: false,
error: '',
language: '',
currentLanguage: '',
availableLanguages: window.languages,
submit: function () {
if ($scope.language.language === $scope.timeZone.currentLanguage) return;
$scope.language.error = '';
$scope.language.busy = true;
$scope.language.success = false;
Client.setLanguage($scope.language.language.key, function (error) {
if (error) $scope.language.error = error.message;
else $scope.language.currentLanguage = $scope.language.language;
$scope.language.busy = false;
$scope.language.success = true;
});
}
};
$scope.updateSchedule = {
busy: false,
currentPattern: '',
@@ -268,6 +293,15 @@ angular.module('Application').controller('SettingsController', ['$scope', '$loca
});
}
function getLanguage() {
Client.getLanguage(function (error, languageKey) {
if (error) return console.error(error);
$scope.language.currentLanguage = window.languages.find(function (t) { return t.key === languageKey; });
$scope.language.language = $scope.language.currentLanguage;
});
}
function getAutoupdatePattern() {
Client.getAutoupdatePattern(function (error, result) {
if (error) return console.error(error);
@@ -360,6 +394,7 @@ angular.module('Application').controller('SettingsController', ['$scope', '$loca
getAutoupdatePattern();
getRegistryConfig();
getTimeZone();
getLanguage();
$scope.update.checkStatus();