f5f0416346
refactor(backend): misc cleanup
2025-03-13 15:18:35 +01:00
5d452824cd
refactor(backend): use single shared HTTP client with backoff
2025-03-11 16:15:11 +01:00
f99d10ecf0
fix(backend): don't hardcode redis URL, add redis to docker compose
2025-03-04 17:25:07 +01:00
7759225428
refactor(backend): replace coravel with hangfire for background jobs
...
for *some reason*, coravel locks a persistent job queue behind a
paywall. this means that if the server ever crashes, all pending jobs
are lost. this is... not good, so we're switching to hangfire for that
instead.
coravel is still used for emails, though.
BREAKING CHANGE: Foxnouns.NET now requires Redis to work. the EFCore
storage for hangfire doesn't work well enough, unfortunately.
2025-03-04 17:03:39 +01:00
cd24196cd1
chore(backend): format
2025-02-28 16:53:53 +01:00
218c756a70
feat(backend): make field limits configurable
2025-02-28 16:37:15 +01:00
373d97e70a
feat: make some limits configurable
2025-02-07 21:48:50 +01:00
cacd3a30b7
feat: report page, take action on reports
2025-02-03 17:03:32 +01:00
12eddb9949
feat(backend): user lookup
2024-12-27 17:48:37 -05:00
dc9c11ec52
feat: return reports in audit log entries
2024-12-27 13:21:02 -05:00
5077bd6a0b
fix(backend): return report context in mod api
2024-12-26 14:01:51 -05:00
fe1cf7ce8a
feat: GET /api/v1/users/@me
2024-12-25 16:04:32 -05:00
478ba2a406
feat: GET /api/v1/users/{userRef}/members/{memberRef}
2024-12-25 14:53:36 -05:00
78afb8b9c4
feat: GET /api/v1/users/{userRef}/members
2024-12-25 14:33:42 -05:00
e908e67ca6
chore: license headers
2024-12-25 14:24:18 -05:00
d182b07482
feat: GET /api/v1/members/{id}, api v1 flags
2024-12-25 14:23:16 -05:00
7791c91960
feat(backend): initial /api/v1/users endpoint
2024-12-25 11:19:50 -05:00
661c3eab0f
fix(backend): save data exports as data-export.zip
...
change the random base 64 to a directory rather than part of the
filename, so that users downloading their exports aren't greeted with a
completely incomprehensible file in their downloads folder
2024-12-19 16:19:27 +01:00
80385893c7
feat: split migration into batches
2024-12-17 21:23:02 +01:00
f766a2054b
feat: allow suspended *and* self-deleted users to access a handful of pages
2024-12-17 18:08:43 +01:00
36cb1d2043
feat: moderation API
2024-12-17 17:52:32 +01:00
11257ae069
chore: clean up backend code, fix most inspections
2024-12-14 16:51:58 +01:00
49b2902d6d
fix: use url-unsafe base 64 for auth tokens
...
.net throws an error when decoding url-safe base 64
luckily we never decode it *except* for tokens, so those can keep using
url-unsafe base 64. they're never used in URLs after all
2024-12-14 16:39:02 +01:00
9d33093339
feat: forgot password/reset password
2024-12-14 16:32:08 +01:00
77c3047b1e
feat: misskey auth
2024-12-12 16:44:01 +01:00
51e335f090
feat: use a FixedWindowRateLimiter keyed by IP to rate limit emails
...
we don't talk about the sent_emails table :)
2024-12-11 21:17:46 +01:00
ff8d53814d
feat: rate limit emails to two per address per hour
2024-12-11 20:42:48 +01:00
80b7f192f1
clean up RemoteAuthService
2024-12-10 14:09:32 +01:00
3338243cea
feat: log in with tumblr
2024-12-09 21:48:07 +01:00
d30ebacc72
chore: add license headers to all c# files
2024-12-09 21:11:46 +01:00
8a8b4caa18
feat: log in with google
2024-12-09 21:07:53 +01:00
d9d48c3cbf
feat: flag management
2024-12-09 14:52:31 +01:00
8bd4449804
refactor(backend): move all request/response types to a new Dto namespace
2024-12-09 13:58:18 +01:00
f8e6032449
chore(backend): add roslynator and fix diagnostics
2024-12-08 15:17:18 +01:00
649988db25
refactor(backend): use explicit types instead of var by default
2024-12-08 15:07:25 +01:00
bc7fd6d804
feat(frontend): register/log in with email
2024-12-04 17:43:02 +01:00
57e1ec09c0
feat: link fediverse account to existing user
2024-12-04 01:49:03 +01:00
03209e4028
chore(backend): clean imports
2024-12-03 20:05:24 +01:00
18bdbc0745
feat(backend): clean deleted users
2024-12-03 14:55:19 +01:00
903be2709c
feat(backend): initial data export support
...
obviously it's missing things that haven't been added yet
2024-12-02 18:06:19 +01:00
de733a0682
feat(frontend): discord registration/login/linking
...
also moves the registration form found on the mastodon callback page
into a component so we're not repeating the same code for every auth method
2024-11-28 21:37:30 +01:00
c0bb76580d
even more frontend stuff
2024-11-25 17:35:24 +01:00
261435c252
feat: so much more frontend stuff
2024-11-24 22:19:53 +01:00
7cb17409cd
fix: explicitly set sids to null so the find free sid functions actually trigger
2024-11-24 15:39:44 +01:00
4e9c4af4a5
feat(auth): misc fediverse auth improvements
...
- remove automatic app validation
- add force refresh option to GetFediverseUrlAsync
- pass state to mastodon authorization URI
2024-11-24 15:37:36 +01:00
6abf505c40
refactor: make Member.display_name non-nullable and fall back to Member.name
2024-11-23 20:41:11 +01:00
d0bf638a21
fix: check for obviously invalid instance URLs, use correct JSON key for mastodon scopes
2024-11-23 20:40:09 +01:00
9160281ea2
feat: remove auth method
2024-11-04 22:04:04 +01:00
201c56c3dd
feat: link discord account to existing account
2024-11-03 13:53:16 +01:00
c4cb08cdc1
feat: initial fediverse registration/login
2024-11-03 02:07:07 +01:00