add a language switcher fixes #352

This commit is contained in:
jonaswinkler
2021-01-15 12:50:34 +01:00
parent 7562bdb218
commit 0926266663
4 changed files with 125 additions and 21 deletions

View File

@@ -12,6 +12,21 @@
<h4 i18n>Appearance</h4>
<div class="form-row form-group">
<div class="col-md-3 col-form-label">
<span i18n>Display language</span>
</div>
<div class="col">
<select class="form-control" formControlName="displayLanguage">
<option *ngFor="let lang of languages" [ngValue]="lang.code">{{lang.name}}</option>
</select>
<small class="form-text text-muted" i18n>You need to reload the page after applying a new language.</small>
</div>
</div>
<div class="form-row form-group">
<div class="col-md-3 col-form-label">
<span i18n>Items per page</span>

View File

@@ -22,7 +22,8 @@ export class SettingsComponent implements OnInit {
'darkModeUseSystem': new FormControl(this.settings.get(SETTINGS_KEYS.DARK_MODE_USE_SYSTEM)),
'darkModeEnabled': new FormControl(this.settings.get(SETTINGS_KEYS.DARK_MODE_ENABLED)),
'useNativePdfViewer': new FormControl(this.settings.get(SETTINGS_KEYS.USE_NATIVE_PDF_VIEWER)),
'savedViews': this.savedViewGroup
'savedViews': this.savedViewGroup,
'displayLanguage': new FormControl(this.settings.getLanguage())
})
savedViews: PaperlessSavedView[]
@@ -63,11 +64,16 @@ export class SettingsComponent implements OnInit {
this.settings.set(SETTINGS_KEYS.DARK_MODE_USE_SYSTEM, this.settingsForm.value.darkModeUseSystem)
this.settings.set(SETTINGS_KEYS.DARK_MODE_ENABLED, (this.settingsForm.value.darkModeEnabled == true).toString())
this.settings.set(SETTINGS_KEYS.USE_NATIVE_PDF_VIEWER, this.settingsForm.value.useNativePdfViewer)
this.settings.setLanguage(this.settingsForm.value.displayLanguage)
this.documentListViewService.updatePageSize()
this.settings.updateDarkModeSettings()
this.toastService.showInfo($localize`Settings saved successfully.`)
}
get languages() {
return this.settings.getLanguageOptions()
}
saveSettings() {
let x = []
for (let id in this.savedViewGroup.value) {