2021-01-02 01:13:34 +01:00
< app-page-header title = "Settings" i18n-title >
2020-10-27 01:10:18 +01:00
</ app-page-header >
2020-10-30 22:46:43 +01:00
<!-- <p>items per page, documents per view type</p> -->
2020-11-04 19:28:08 +01:00
< form [ formGroup ]=" settingsForm " ( ngSubmit )=" saveSettings ()" >
< ul ngbNav # nav = "ngbNav" class = "nav-tabs" >
< li [ ngbNavItem ]=" 1 " >
2022-04-17 00:36:47 -07:00
< a ngbNavLink i18n > General</ a >
2020-11-04 19:28:08 +01:00
< ng-template ngbNavContent >
2020-12-27 23:05:19 -08:00
< h4 i18n > Appearance</ h4 >
2022-02-19 23:34:32 -08:00
< div class = "row mb-3" >
2021-01-15 12:50:34 +01:00
< div class = "col-md-3 col-form-label" >
< span i18n > Display language</ span >
</ div >
< div class = "col" >
2022-03-01 12:25:22 -08:00
< select class = "form-select" formControlName = "displayLanguage" >
2021-01-25 23:16:18 -08:00
< option * ngFor = "let lang of displayLanguageOptions" [ ngValue ]=" lang . code " > {{lang.name}}< span * ngIf = "lang.code && currentLocale != 'en-US'" > - {{lang.englishName}}</ span ></ option >
2021-01-15 12:50:34 +01:00
</ select >
2022-05-25 16:06:59 -07:00
< small * ngIf = "displayLanguageIsDirty" class = "form-text text-primary" i18n > You need to reload the page after applying a new language.</ small >
2021-01-15 12:50:34 +01:00
</ div >
</ div >
2022-02-19 23:34:32 -08:00
< div class = "row mb-3" >
2021-01-17 00:15:45 +01:00
< div class = "col-md-3 col-form-label" >
< span i18n > Date display</ span >
</ div >
< div class = "col" >
2022-03-01 12:25:22 -08:00
< select class = "form-select" formControlName = "dateLocale" >
2021-02-17 12:15:22 +01:00
< option * ngFor = "let lang of dateLocaleOptions" [ ngValue ]=" lang . code " > {{lang.name}}< span * ngIf = "lang.code" > - {{today | customDate:'shortDate':null:lang.code}}</ span ></ option >
2021-01-17 00:15:45 +01:00
</ select >
</ div >
</ div >
2022-02-19 23:34:32 -08:00
< div class = "row mb-3" >
2021-01-17 00:15:45 +01:00
< div class = "col-md-3 col-form-label" >
< span i18n > Date format</ span >
</ div >
< div class = "col" >
2022-02-19 23:34:32 -08:00
< div class = "form-check" >
< input type = "radio" id = "dateFormatShort" name = "dateFormat" class = "form-check-input" formControlName = "dateFormat" value = "shortDate" >
< label class = "form-check-label" for = "dateFormatShort" i18n > Short: {{today | customDate:'shortDate':null:computedDateLocale}}</ label >
2021-01-17 00:15:45 +01:00
</ div >
2022-02-19 23:34:32 -08:00
< div class = "form-check" >
< input type = "radio" id = "dateFormatMedium" name = "dateFormat" class = "form-check-input" formControlName = "dateFormat" value = "mediumDate" >
< label class = "form-check-label" for = "dateFormatMedium" i18n > Medium: {{today | customDate:'mediumDate':null:computedDateLocale}}</ label >
2021-01-17 00:15:45 +01:00
</ div >
2022-02-19 23:34:32 -08:00
< div class = "form-check" >
< input type = "radio" id = "dateFormatLong" name = "dateFormat" class = "form-check-input" formControlName = "dateFormat" value = "longDate" >
< label class = "form-check-label" for = "dateFormatLong" i18n > Long: {{today | customDate:'longDate':null:computedDateLocale}}</ label >
2021-01-17 00:15:45 +01:00
</ div >
</ div >
</ div >
2022-02-19 23:34:32 -08:00
< div class = "row mb-3" >
2020-11-04 19:28:08 +01:00
< div class = "col-md-3 col-form-label" >
2020-12-23 15:09:39 +01:00
< span i18n > Items per page</ span >
2020-11-04 19:28:08 +01:00
</ div >
< div class = "col" >
2020-12-27 23:05:19 -08:00
2022-03-01 12:25:22 -08:00
< select class = "form-select" formControlName = "documentListItemPerPage" >
2020-11-04 19:28:08 +01:00
< option [ ngValue ]=" 10 " > 10</ option >
< option [ ngValue ]=" 25 " > 25</ option >
< option [ ngValue ]=" 50 " > 50</ option >
< option [ ngValue ]=" 100 " > 100</ option >
</ select >
2020-12-27 23:05:19 -08:00
</ div >
</ div >
2022-02-19 23:34:32 -08:00
< div class = "row mb-3" >
2021-01-14 13:35:21 +01:00
< div class = "col-md-3 col-form-label" >
< span i18n > Document editor</ span >
</ div >
< div class = "col" >
< app-input-check i18n-title title = "Use PDF viewer provided by the browser" i18n-hint hint = "This is usually faster for displaying large PDF documents, but it might not work on some browsers." formControlName = "useNativePdfViewer" ></ app-input-check >
</ div >
</ div >
2022-02-19 23:34:32 -08:00
< div class = "row mb-3" >
2020-12-27 23:05:19 -08:00
< div class = "col-md-3 col-form-label" >
< span i18n > Dark mode</ span >
</ div >
< div class = "col" >
2021-01-14 13:35:21 +01:00
< app-input-check i18n-title title = "Use system settings" formControlName = "darkModeUseSystem" ></ app-input-check >
< app-input-check [ hidden ]=" settingsForm . value . darkModeUseSystem " i18n-title title = "Enable dark mode" formControlName = "darkModeEnabled" ></ app-input-check >
2021-02-28 12:42:46 +01:00
< app-input-check i18n-title title = "Invert thumbnails in dark mode" formControlName = "darkModeInvertThumbs" ></ app-input-check >
2020-11-04 19:28:08 +01:00
</ div >
</ div >
2022-03-09 14:12:28 -08:00
< div class = "row mb-3" >
< div class = "col-md-3 col-form-label" >
< span i18n > Theme Color</ span >
</ div >
2022-04-17 00:36:47 -07:00
< div class = "col col-md-3" >
2022-03-09 15:34:26 -08:00
< app-input-color i18n-title formControlName = "themeColor" [ error ]=" error ?. color " ></ app-input-color >
2022-03-09 14:12:28 -08:00
</ div >
< div class = "col-2" >
< button class = "btn btn-link btn-sm pt-2 ps-0" [ disabled ]="! this . settingsForm . get (' themeColor '). value " ( click )=" clearThemeColor ()" >
< svg width = "1em" height = "1em" viewBox = "0 0 16 16" class = "bi bi-x me-1" fill = "currentColor" xmlns = "http://www.w3.org/2000/svg" >
< path fill-rule = "evenodd" d = "M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708z" />
</ svg >< ng-container i18n > Reset</ ng-container >
</ button >
</ div >
</ div >
2020-12-29 16:58:19 -08:00
< h4 class = "mt-4" i18n > Bulk editing</ h4 >
2020-12-29 17:09:07 +01:00
2022-02-19 23:34:32 -08:00
< div class = "row mb-3" >
2020-12-29 16:58:19 -08:00
< div class = "offset-md-3 col" >
< app-input-check i18n-title title = "Show confirmation dialogs" formControlName = "bulkEditConfirmationDialogs" i18n-hint hint = "Deleting documents will always ask for confirmation." ></ app-input-check >
< app-input-check i18n-title title = "Apply on close" formControlName = "bulkEditApplyOnClose" ></ app-input-check >
</ div >
2022-08-07 15:05:58 -07:00
</ div >
< h4 class = "mt-4" i18n > Comments</ h4 >
< div class = "row mb-3" >
< div class = "offset-md-3 col" >
< app-input-check i18n-title title = "Enable comments" formControlName = "commentsEnabled" ></ app-input-check >
</ div >
2020-12-29 16:58:19 -08:00
</ div >
2020-12-29 17:09:07 +01:00
2020-11-04 19:28:08 +01:00
</ ng-template >
</ li >
2021-03-06 14:50:38 -08:00
2020-11-04 19:28:08 +01:00
< li [ ngbNavItem ]=" 2 " >
2021-02-02 14:06:16 +01:00
< a ngbNavLink i18n > Notifications</ a >
< ng-template ngbNavContent >
2021-03-06 14:50:38 -08:00
2021-02-02 14:06:16 +01:00
< h4 i18n > Document processing</ h4 >
2020-12-29 17:09:07 +01:00
2022-02-19 23:34:32 -08:00
< div class = "row mb-3" >
2020-12-29 16:58:19 -08:00
< div class = "offset-md-3 col" >
2021-02-02 14:06:16 +01:00
< app-input-check i18n-title title = "Show notifications when new documents are detected" formControlName = "notificationsConsumerNewDocument" ></ app-input-check >
< app-input-check i18n-title title = "Show notifications when document processing completes successfully" formControlName = "notificationsConsumerSuccess" ></ app-input-check >
< app-input-check i18n-title title = "Show notifications when document processing fails" formControlName = "notificationsConsumerFailed" ></ app-input-check >
< app-input-check i18n-title title = "Suppress notifications on dashboard" formControlName = "notificationsConsumerSuppressOnDashboard" i18n-hint hint = "This will suppress all messages about document processing status on the dashboard." ></ app-input-check >
2020-12-29 16:58:19 -08:00
</ div >
</ div >
2020-12-29 17:09:07 +01:00
2020-11-04 19:28:08 +01:00
</ ng-template >
</ li >
2021-02-02 14:06:16 +01:00
< li [ ngbNavItem ]=" 3 " >
2020-12-23 15:09:39 +01:00
< a ngbNavLink i18n > Saved views</ a >
2020-11-04 19:28:08 +01:00
< ng-template ngbNavContent >
2020-12-15 02:35:04 +01:00
< div formGroupName = "savedViews" >
2020-12-27 23:05:19 -08:00
2022-02-19 23:34:32 -08:00
< div * ngFor = "let view of savedViews" [ formGroupName ]=" view . id " class = "row" >
2022-02-20 01:32:24 -08:00
< div class = "mb-3 col" >
2022-02-19 23:34:32 -08:00
< label class = "form-label" for = "name_{{view.id}}" i18n > Name</ label >
2020-12-15 02:35:04 +01:00
< input type = "text" class = "form-control" formControlName = "name" id = "name_{{view.id}}" >
</ div >
2022-02-20 01:32:24 -08:00
< div class = "mb-2 col" >
2022-02-19 23:34:32 -08:00
< label class = "form-label" for = "show_on_dashboard_{{view.id}}" i18n > Appears on</ label >
< div class = "form-check form-switch" >
< input type = "checkbox" class = "form-check-input" id = "show_on_dashboard_{{view.id}}" formControlName = "show_on_dashboard" >
< label class = "form-check-label" for = "show_on_dashboard_{{view.id}}" i18n > Show on dashboard</ label >
2020-12-15 02:35:04 +01:00
</ div >
2022-02-19 23:34:32 -08:00
< div class = "form-check form-switch" >
< input type = "checkbox" class = "form-check-input" id = "show_in_sidebar_{{view.id}}" formControlName = "show_in_sidebar" >
< label class = "form-check-label" for = "show_in_sidebar_{{view.id}}" i18n > Show in sidebar</ label >
2020-12-15 02:35:04 +01:00
</ div >
</ div >
2022-02-19 23:34:32 -08:00
< div class = "mb-2 col-auto" >
< label class = "form-label" for = "name_{{view.id}}" i18n > Actions</ label >
2020-12-23 15:09:39 +01:00
< button type = "button" class = "btn btn-sm btn-outline-danger form-control" ( click )=" deleteSavedView ( view )" i18n > Delete</ button >
2020-12-15 02:35:04 +01:00
</ div >
</ div >
2020-12-23 15:09:39 +01:00
< div * ngIf = "savedViews.length == 0" i18n > No saved views defined.</ div >
2020-12-27 23:05:19 -08:00
2020-12-15 02:35:04 +01:00
</ div >
2020-11-04 19:28:08 +01:00
</ ng-template >
</ li >
</ ul >
2022-02-20 01:21:30 +01:00
< div [ ngbNavOutlet ]=" nav " class = "border-start border-end border-bottom p-3 mb-3 shadow-sm" ></ div >
2020-11-04 19:28:08 +01:00
2021-01-25 19:23:03 -08:00
< button type = "submit" class = "btn btn-primary" [ disabled ]="!( isDirty $ | async )" i18n > Save</ button >
2020-12-27 23:05:19 -08:00
</ form >