Client settings per collective and user

Client settings can be stored at the user and and the collective. The
settings used in the application are merged from these two settings,
where any user setting takes precedence. The form can now manage both
variants.

Refs: #838
This commit is contained in:
eikek
2022-01-29 10:11:25 +01:00
parent ee927096a4
commit c29ce73dd0
19 changed files with 812 additions and 438 deletions

View File

@ -15,16 +15,22 @@ import Http
import Messages.Basics
import Messages.Comp.HttpError
import Messages.Comp.UiSettingsForm
import Messages.Data.AccountScope
type alias Texts =
{ basics : Messages.Basics.Texts
, uiSettingsForm : Messages.Comp.UiSettingsForm.Texts
, accountScope : Messages.Data.AccountScope.Texts
, saveSettings : String
, settingsUnchanged : String
, settingsSaved : String
, unknownSaveError : String
, httpError : Http.Error -> String
, userHeader : String
, userInfo : String
, collectiveHeader : String
, expandCollapse : String
}
@ -32,11 +38,16 @@ gb : Texts
gb =
{ basics = Messages.Basics.gb
, uiSettingsForm = Messages.Comp.UiSettingsForm.gb
, accountScope = Messages.Data.AccountScope.gb
, saveSettings = "Save settings"
, settingsUnchanged = "Settings unchanged or invalid."
, settingsSaved = "Settings saved."
, unknownSaveError = "Unknown error while trying to save settings."
, httpError = Messages.Comp.HttpError.gb
, userHeader = "Personal settings"
, userInfo = "Your personal settings override those of the collective. On reset, settings are set back to those of the collective."
, collectiveHeader = "Collective settings"
, expandCollapse = "Expand/collapse all"
}
@ -44,9 +55,14 @@ de : Texts
de =
{ basics = Messages.Basics.de
, uiSettingsForm = Messages.Comp.UiSettingsForm.de
, accountScope = Messages.Data.AccountScope.de
, saveSettings = "Einstellungen speichern"
, settingsUnchanged = "Einstellungen nicht verändert oder ungültig."
, settingsSaved = "Einstellungen gespeichert"
, unknownSaveError = "Unbekannter Fehler beim Speichern der Einstellungen."
, httpError = Messages.Comp.HttpError.de
, userHeader = "Persönliche Einstellungen"
, userInfo = "Die persönlichen Einstellungen überschreiben die des Kollektivs. Wenn Einstellungen zurückgesetzt werden, werden sie auf die Werte des Kollektivs gesetzt."
, collectiveHeader = "Kollektiv Einstellungen"
, expandCollapse = "Alle ein-/ausklappen"
}