settings.html 4.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. {{ define "title"}}{{ t "page.settings.title" }}{{ end }}
  2. {{ define "content"}}
  3. <section class="page-header">
  4. <h1>{{ t "page.settings.title" }}</h1>
  5. {{ template "settings_menu" dict "user" .user }}
  6. </section>
  7. <form method="post" autocomplete="off" action="{{ route "updateSettings" }}">
  8. <input type="hidden" name="csrf" value="{{ .csrf }}">
  9. {{ if .errorMessage }}
  10. <div class="alert alert-error">{{ t .errorMessage }}</div>
  11. {{ end }}
  12. <label for="form-username">{{ t "form.user.label.username" }}</label>
  13. <input type="text" name="username" id="form-username" value="{{ .form.Username }}" required>
  14. <label for="form-password">{{ t "form.user.label.password" }}</label>
  15. <input type="password" name="password" id="form-password" value="{{ .form.Password }}" autocomplete="new-password">
  16. <label for="form-confirmation">{{ t "form.user.label.confirmation" }}</label>
  17. <input type="password" name="confirmation" id="form-confirmation" value="{{ .form.Confirmation }}" autocomplete="new-password">
  18. <label for="form-language">{{ t "form.prefs.label.language" }}</label>
  19. <select id="form-language" name="language">
  20. {{ range $key, $value := .languages }}
  21. <option value="{{ $key }}" {{ if eq $key $.form.Language }}selected="selected"{{ end }}>{{ $value }}</option>
  22. {{ end }}
  23. </select>
  24. <label for="form-timezone">{{ t "form.prefs.label.timezone" }}</label>
  25. <select id="form-timezone" name="timezone">
  26. {{ range $key, $value := .timezones }}
  27. <option value="{{ $key }}" {{ if eq $key $.form.Timezone }}selected="selected"{{ end }}>{{ $value }}</option>
  28. {{ end }}
  29. </select>
  30. <label for="form-theme">{{ t "form.prefs.label.theme" }}</label>
  31. <select id="form-theme" name="theme">
  32. {{ range $key, $value := .themes }}
  33. <option value="{{ $key }}" {{ if eq $key $.form.Theme }}selected="selected"{{ end }}>{{ $value }}</option>
  34. {{ end }}
  35. </select>
  36. <label for="form-entry-direction">{{ t "form.prefs.label.entry_sorting" }}</label>
  37. <select id="form-entry-direction" name="entry_direction">
  38. <option value="asc" {{ if eq "asc" $.form.EntryDirection }}selected="selected"{{ end }}>{{ t "form.prefs.select.older_first" }}</option>
  39. <option value="desc" {{ if eq "desc" $.form.EntryDirection }}selected="selected"{{ end }}>{{ t "form.prefs.select.recent_first" }}</option>
  40. </select>
  41. <label for="form-entries-per-page">{{ t "form.prefs.label.entries_per_page" }}</label>
  42. <input type="number" name="entries_per_page" id="form-entries-per-page" value="{{ .form.EntriesPerPage }}" min="1">
  43. <label><input type="checkbox" name="keyboard_shortcuts" value="1" {{ if .form.KeyboardShortcuts }}checked{{ end }}> {{ t "form.prefs.label.keyboard_shortcuts" }}</label>
  44. <label><input type="checkbox" name="show_reading_time" value="1" {{ if .form.ShowReadingTime }}checked{{ end }}> {{ t "form.prefs.label.show_reading_time" }}</label>
  45. <label><input type="checkbox" name="entry_swipe" value="1" {{ if .form.EntrySwipe }}checked{{ end }}> {{ t "form.prefs.label.entry_swipe" }}</label>
  46. <label>{{t "form.prefs.label.custom_css" }}</label><textarea name="custom_css" cols="40" rows="5">{{ .form.CustomCSS }}</textarea>
  47. <div class="buttons">
  48. <button type="submit" class="button button-primary" data-label-loading="{{ t "form.submit.saving" }}">{{ t "action.update" }}</button>
  49. </div>
  50. </form>
  51. {{ if hasOAuth2Provider "google" }}
  52. <div class="panel">
  53. {{ if hasKey .user.Extra "google_id" }}
  54. <a href="{{ route "oauth2Unlink" "provider" "google" }}">{{ t "page.settings.unlink_google_account" }}</a>
  55. {{ else }}
  56. <a href="{{ route "oauth2Redirect" "provider" "google" }}">{{ t "page.settings.link_google_account" }}</a>
  57. {{ end }}
  58. </div>
  59. {{ else if hasOAuth2Provider "oidc" }}
  60. <div class="panel">
  61. {{ if hasKey .user.Extra "oidc_id" }}
  62. <a href="{{ route "oauth2Unlink" "provider" "oidc" }}">{{ t "page.settings.unlink_oidc_account" }}</a>
  63. {{ else }}
  64. <a href="{{ route "oauth2Redirect" "provider" "oidc" }}">{{ t "page.settings.link_oidc_account" }}</a>
  65. {{ end }}
  66. </div>
  67. {{ end }}
  68. {{ end }}