Commit Graph

3 Commits

Author SHA1 Message Date
glenneth 5d2449a7d5 feat: Make YP directory publishing configurable via ICECAST_ENABLE_YP env var
- Add Dockerfile.icecast with custom entrypoint
- Add icecast-entrypoint.sh to conditionally insert YP config
- Add icecast.xml.base (without YP blocks)
- Add icecast-yp.xml.snippet (YP directory blocks)
- Update docker-compose.yml to build custom icecast image
- Update environment.sh.template with documentation

Dev environments default to YP disabled.
Production sets ICECAST_ENABLE_YP=true to publish to internet-radio.com
2026-01-02 07:02:49 +03:00
glenneth 62dde5e3cf feat: Track requests, listening history, and profile enhancements
Track Requests:
- Database table for user track requests (migration 007)
- API endpoints for submit, approve, reject, play
- Front page UI for submitting requests
- Shows recently played requests section

Listening History:
- Auto-records tracks when playing (with 60s deduplication)
- Recently Played section on profile (has date formatting issues)
- Activity chart showing listening patterns by day
- Load More Tracks pagination

Profile Improvements:
- Fixed 401 errors returning proper JSON
- Fixed PostgreSQL boolean type for completed column
- Added offset parameter to recent-tracks API

Note: Recently Played section has date formatting issues showing
'20397 days ago' - may be removed in future commit if not needed.
The listening history backend works correctly.

For production: run migrations/007-track-requests.sql
2025-12-22 21:42:06 -05:00
glenneth adce831a95 feat: Add avatar upload and fix authentication errors
Avatars:
- Add avatar_path column to USERS table (migration 006)
- Upload API endpoint /api/asteroid/user/avatar/upload
- Profile page shows avatar with hover-to-change overlay
- Default SVG avatar for users without uploaded image
- Avatars stored in static/avatars/ directory

Fixes:
- 401 errors now return proper JSON instead of 500
- SQL escaping for history recording (single quotes)
- Added debug logging for history/record API
- Avatar container has background color for visibility

For production: run migrations/006-user-avatars.sql
2025-12-22 21:42:06 -05:00