feat: Self-service password resets #1484

Merged
ginger merged 30 commits from ginger/password-reset into main 2026-03-18 18:42:51 +00:00

30 commits

Author SHA1 Message Date
05a49ceb60
chore: Whitelist cognitive_complexity lint
All checks were successful
Documentation / Build and Deploy Documentation (pull_request) Successful in 1m24s
Checks / Prek / Pre-commit & Formatting (pull_request) Successful in 3m0s
Update flake hashes / update-flake-hashes (pull_request) Successful in 58s
Checks / Prek / Clippy and Cargo Tests (pull_request) Successful in 41m26s
Documentation / Build and Deploy Documentation (push) Successful in 1m16s
Checks / Prek / Pre-commit & Formatting (push) Successful in 3m10s
Release Docker Image / Build linux-amd64 (release) (push) Successful in 14m17s
Release Docker Image / Build linux-arm64 (release) (push) Successful in 13m9s
Checks / Prek / Clippy and Cargo Tests (push) Successful in 44m46s
Release Docker Image / Create Multi-arch Release Manifest (push) Successful in 21s
Release Docker Image / Build linux-amd64 (max-perf) (push) Successful in 32m59s
Release Docker Image / Build linux-arm64 (max-perf) (push) Successful in 29m58s
Release Docker Image / Create Max-Perf Manifest (push) Successful in 21s
2026-03-18 13:59:48 -04:00
728c5828ba
feat: Add a panic handler and clean up error page
Some checks failed
Documentation / Build and Deploy Documentation (pull_request) Successful in 1m16s
Checks / Prek / Pre-commit & Formatting (pull_request) Successful in 2m59s
Update flake hashes / update-flake-hashes (pull_request) Successful in 54s
Checks / Prek / Clippy and Cargo Tests (pull_request) Has been cancelled
2026-03-18 13:43:34 -04:00
50c94d85a1
fix: Code cleanup 2026-03-18 13:18:53 -04:00
0cc188f62c
fix: Remove redirect on index
Some checks failed
Documentation / Build and Deploy Documentation (pull_request) Successful in 1m17s
Checks / Prek / Pre-commit & Formatting (pull_request) Successful in 2m53s
Update flake hashes / update-flake-hashes (pull_request) Successful in 51s
Checks / Prek / Clippy and Cargo Tests (pull_request) Failing after 22m0s
2026-03-18 12:42:55 -04:00
6451671f66
fix: Update doc comment 2026-03-18 12:42:55 -04:00
ca21a885d5
chore: Rename option index_page_allow_indexing to allow_web_indexing 2026-03-18 12:42:55 -04:00
4af4110f6d
chore: Update news fragment 2026-03-18 12:42:55 -04:00
51b450c05c
feat: Use a context struct to store global template context 2026-03-18 12:42:55 -04:00
f9d1f71343
fix: Fix logic error 2026-03-18 12:42:55 -04:00
7901e4b996
chore: Add news fragment for !1527 2026-03-18 12:42:55 -04:00
7b6bf4b78e
feat: Add option for a noindex meta tag on the HTML index page
Adds a new config option `index_page_allow_indexing` which defaults to false.

Fixes: !1527
2026-03-18 12:42:55 -04:00
67d5619ccb
fix: Fix password reset page appearance in light mode 2026-03-18 12:42:55 -04:00
bf001f96d6
feat: Restrict reset token command 2026-03-18 12:42:55 -04:00
ae2b87f03f
fix: Fix M_NOT_FOUND for users with no origin set 2026-03-18 12:42:55 -04:00
957cd3502f
fix: Evil CSS hackery 2026-03-18 12:42:55 -04:00
a109542eb8
fix: Disable text selection on k10y 2026-03-18 12:42:55 -04:00
8c4844b00b
fix: Use error page for extractor rejections 2026-03-18 12:42:55 -04:00
eec7103910
feat: Implement dedicated 404 page for routes under /_continuwuity/ 2026-03-18 12:42:55 -04:00
43aa172829
feat: Move index to /_continuwuity/ 2026-03-18 12:42:55 -04:00
9b4c483b6d
chore: Remove unnecessary database map left over from refactor 2026-03-18 12:42:55 -04:00
b885e206ce
fix: Use server name in index again 2026-03-18 12:42:55 -04:00
07a935f625
fix: Add CSRF protection 2026-03-18 12:42:55 -04:00
d13801e976
fix: Disallow issuing password reset tokens for deactivated users 2026-03-18 12:42:55 -04:00
5716c36b47
chore: Change password reset page path 2026-03-18 12:42:55 -04:00
f11943b956
chore: News fragment 2026-03-18 12:42:55 -04:00
8b726a9c94
chore: Cleanup 2026-03-18 12:42:55 -04:00
ffa3c53847
feat: Implement a webpage for self-service password resets 2026-03-18 12:42:55 -04:00
da8833fca4
feat: Implement a command for issuing password reset links 2026-03-18 12:42:55 -04:00
267feb3c09
feat: Add a new service for handling password resets 2026-03-18 12:42:55 -04:00
3d50af0943
refactor: Split web code into multiple files, improve static resource loading 2026-03-18 12:42:55 -04:00