Commit graph

31 commits

Author SHA1 Message Date
Tim Zöller
fe1b5f8be0 Remove registration page and redirect home to timeline
Remove the registration UI page completely and use the public timeline as the default start page.

Changes:
- Delete auth/register.html template
- Remove /register route from AuthViewController
- Update HomeController to redirect / to /timeline
- Remove /register from public paths list in auth.js

Users will no longer see a registration option in the UI. Registration can only be done via direct API calls if enabled.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-03 17:41:41 +01:00
Tim Zöller
bc6741a749 Add global registration disable feature
Implement configurable registration control to allow administrators to disable new user signups.

Backend changes:
- Add fitpub.registration.enabled configuration property (defaults to true)
- Update AuthController to check registration status and return 403 Forbidden when disabled
- Create GET /api/auth/registration-status endpoint to expose registration status to frontend
- Add RegistrationStatusResponse DTO

Configuration changes:
- Add REGISTRATION_ENABLED environment variable to application.yml
- Add REGISTRATION_ENABLED to Dockerfile with default value of true
- Update .env.example with REGISTRATION_ENABLED documentation

Frontend changes:
- Update registration page to check status and hide form when disabled
- Add checkRegistrationStatus() to auth.js to dynamically hide registration links
- Display user-friendly message when registration is disabled

To disable registration, set environment variable: REGISTRATION_ENABLED=false

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-03 11:27:19 +01:00
Tim Zöller
0732774986 Moar federation 2025-12-03 08:05:17 +01:00
Tim Zöller
ef276128c6 Moar federation 2025-12-03 07:50:57 +01:00
Tim Zöller
a3ff96653a Moar federation 2025-12-03 07:23:53 +01:00
Tim Zöller
45e9030c1d Moar federation 2025-12-03 07:18:43 +01:00
Tim Zöller
4c9bcc718f Moar federation 2025-12-02 22:23:29 +01:00
Tim Zöller
d47daa6dfc Show public activities to everrybody 2025-12-02 22:01:27 +01:00
Tim Zöller
9c745cf07d Fix RFC 1123 date format - use zero-padded day
The issue was that Java's DateTimeFormatter.RFC_1123_DATE_TIME produces
dates like 'Tue, 2 Dec 2025' (without zero-padded day) but Mastodon
requires strict RFC 1123 format with zero-padded day: 'Tue, 02 Dec 2025'.

This was causing HTTP Signature validation failures (401 Unauthorized)
because the Date header in the signed string didn't match the actual header.

Changes:
- Fixed date format in HttpSignatureValidator to use custom pattern
- Pattern: 'EEE, dd MMM yyyy HH:mm:ss GMT' with Locale.US
- Added date format test to verify correct output
- Added debug endpoint for key validation
- Explicitly set Host header in FederationService

This should fix the 401 errors when federating with Mastodon.
2025-12-02 21:51:52 +01:00
Tim Zöller
cc8e309821 Fix HTTP Signature by explicitly setting Host header
- Added key pair validation debug endpoint
- Verified that public/private key pairs match correctly
- Fixed HTTP Signature issue by explicitly setting Host header
- Previously relied on RestTemplate to auto-set Host, which could differ from signed value
- Now explicitly set Host header to match the value used in signature calculation

This should fix the 401 Unauthorized errors when sending activities to Mastodon
2025-12-02 21:46:08 +01:00
Tim Zöller
42a585220f Fix federation some more 2025-12-01 11:14:58 +01:00
Tim Zöller
8fc741e3d6 Fix federation some more 2025-12-01 11:10:53 +01:00
Tim Zöller
6aa3cbb5f6 Fix federation 2025-12-01 11:04:51 +01:00
Tim Zöller
4a55242ccb Fix federation 2025-12-01 11:00:06 +01:00
Tim Zöller
4cb6b6a5a3 Fix commetns 2025-12-01 10:53:51 +01:00
Tim Zöller
71aa6ffffe Moar federation 2025-12-01 09:52:50 +01:00
Tim Zöller
7ba5697e4f More federation 2025-11-30 10:51:09 +01:00
Tim Zöller
c61cc2950c More federation 2025-11-30 10:44:34 +01:00
Tim Zöller
d42f9b5339 More fixes 2025-11-30 10:33:28 +01:00
Tim Zöller
96cf1fe5ad More fixes 2025-11-29 22:00:35 +01:00
Tim Zöller
3fa67c43d6 Fix follower handling 2025-11-29 21:49:21 +01:00
Tim Zöller
97dcd92657 Add likes and comments 2025-11-29 21:44:42 +01:00
Tim Zöller
3808df9dbf Show follower count on the profile page 2025-11-29 21:38:48 +01:00
Tim Zöller
864b1f138b Update Prod config 2025-11-29 21:05:48 +01:00
Tim Zöller
a62980dcd5 Fix following 2025-11-29 13:16:01 +01:00
Tim Zöller
8f797a51f1 Docker Fixes 2025-11-29 12:28:58 +01:00
Tim Zöller
ac53f04e0a MVP done 2025-11-29 09:56:55 +01:00
Tim Zöller
c1729a629d More vibin 2025-11-28 21:04:38 +01:00
Tim Zöller
1901daf5ce More ActivityPub 2025-11-28 09:00:07 +01:00
Tim Zöller
fe5bc54e92 Spring Boot Setup, Start of ActivitiPub 2025-11-27 23:31:03 +01:00
Tim Zöller
0bc4fb3118 Fit File Processing and Persistence 2025-11-27 22:59:45 +01:00