Commit graph

61 commits

Author SHA1 Message Date
Troll (Hermes Agent)
a25bf3a9c9 Add admin Pricing page with fixed and custom items 2026-08-04 17:17:57 +00:00
Troll (Hermes Agent)
a3fd5938a5 Detect missing tables in DB health check and always show schema fix button 2026-08-04 16:59:54 +00:00
Troll (Hermes Agent)
cda4d57859 Add revision history log and music files ZIP backup 2026-08-04 16:54:51 +00:00
Troll (Hermes Agent)
8246f641a2 Move request status badge to top of admin request page 2026-08-04 16:45:24 +00:00
Troll (Hermes Agent)
0c90b5a298 Make all customer info fields editable from admin request page 2026-08-04 16:32:17 +00:00
Troll (Hermes Agent)
da917692f0 Add admin Sales report page 2026-08-04 01:20:56 +00:00
Troll (Hermes Agent)
d02d0b3d25 Add stems_link support for Pingvin-Share-X delivery 2026-08-04 01:10:15 +00:00
Troll (Hermes Agent)
a72da4c5da ui: remove Hermes API key regenerate button from admin settings
Key is now managed via HERMES_API_KEY env var only.
2026-08-03 22:55:55 +00:00
Troll (Hermes Agent)
d5d4882d07 feat: require customer approval before mark paid/deliver
- Disable checkboxes, payment ref input, and submit button in admin UI when customer has not approved.
- Add server-side guard in mark_paid_deliver action.
2026-08-03 19:07:22 +00:00
Troll (Hermes Agent)
3057eb8eda feat: stream MP3s through backend proxy endpoint
- Replace /audio/<token>/<v>.mp3 with /api/stream/<token>/<v>.mp3.
- Stream bytes from private storage with Accept-Ranges and Content-Range support.
- Keep old /audio route returning 404.
- Update player page JS to use new stream endpoint.
2026-08-03 18:59:00 +00:00
Troll (Hermes Agent)
5863c32e35 ui: assign audio src via JS so direct MP3 URLs are not in page source 2026-08-03 18:52:01 +00:00
Troll (Hermes Agent)
56493f5ea7 feat: disable direct MP3 download from customer player page
- Add controlsList=nodownload to audio elements.
- Serve audio with Content-Disposition: inline to discourage browser save dialogs.
2026-08-03 18:49:26 +00:00
Troll (Hermes Agent)
1694b50160 ui: display v0.2 version tag on admin settings page 2026-08-03 18:44:25 +00:00
Troll (Hermes Agent)
06db9f3e55 ui: preserve blank lines between verses in customer lyrics view 2026-08-03 18:42:31 +00:00
Troll (Hermes Agent)
d44882c237 ui: hide Suno metatag brackets from customer lyrics view 2026-08-03 18:41:06 +00:00
Troll (Hermes Agent)
e5b8186b4f fix: remove pre-wrap from lyrics container to eliminate phantom spacing 2026-08-03 18:36:24 +00:00
Troll (Hermes Agent)
d7e30ba317 ui: compress lyrics line spacing further on player page 2026-08-03 18:28:31 +00:00
Troll (Hermes Agent)
5757a768d5 ui: tighten lyrics spacing on player page 2026-08-03 18:16:00 +00:00
Troll (Hermes Agent)
7a9c8b8240 ui: show formatted lyrics on customer player page above audio players 2026-08-03 18:13:44 +00:00
Troll (Hermes Agent)
6a60aa686c feat: Hermes prompt callback endpoint + API key management
- Add /api/prompt/<rid> callback endpoint with dual auth:
  per-request signed URL token + Bearer API key.
- Add HERMES_API_KEY config and runtime key helpers in app.py.
- Update admin request page to copy request details + callback URL.
- Add API key management to admin settings: regenerate, mask, show-once.
- Update .env.example, docker-compose.yml, README, REVIEW docs.
2026-08-03 17:16:56 +00:00
Troll (Hermes Agent)
e46893e0b4 docs: update comments, docstrings, README, REVIEW, and env docs to match current features 2026-08-03 00:11:41 +00:00
Troll (Hermes Agent)
0aa3eab084 fix: record payment ref immediately; show it on admin request page 2026-08-02 23:23:45 +00:00
Troll (Hermes Agent)
109ac6c0b2 fix: make settings metadata fields always default to empty string 2026-08-02 22:41:21 +00:00
Troll (Hermes Agent)
4ab1c1e589 fix: correct DB health fix button action from fix_schema to fix_db 2026-08-02 22:35:22 +00:00
Troll (Hermes Agent)
3cb63a6480 ui: convert admin request page to two-column layout 2026-08-02 22:24:54 +00:00
Troll (Hermes Agent)
3e25c3638b feat: add operator-only notes field per request 2026-08-02 22:10:42 +00:00
Troll (Hermes Agent)
2ac99fde8b feat: add /status order lookup page linked from request form 2026-08-02 22:00:27 +00:00
Troll (Hermes Agent)
5e26650b90 feat: add booth open/closed toggle on settings page 2026-08-02 18:17:59 +00:00
Troll (Hermes Agent)
35c8a722fe docs: update FAQ page from edited draft 2026-08-02 18:01:30 +00:00
Troll (Hermes Agent)
023b4fade7 feat: add /faq page and link from request form 2026-08-02 17:31:08 +00:00
Troll (Hermes Agent)
382b05d7f8 fix: keep form values and show email error on request page 2026-08-02 17:05:27 +00:00
Troll (Hermes Agent)
bf9f9e09fd feat: editable customer email in admin + email validation on public form 2026-08-02 16:51:32 +00:00
Troll (Hermes Agent)
4af9322c9d docs: update comments and README to reflect current feature set
- Refresh app.py module and route docstrings for runtime settings,
  MP3 tagging, rate limiting, revision workflow, and admin actions.
- Clarify config.py and models.py comments.
- Update template comments/CSS for dashboard filters, request detail,
  player page, and settings page.
- Rewrite README.md with current features, status flow, file layout,
  deployment variables, and troubleshooting.
- Refresh REVIEW.md quick-reference.
- Add MAX_REVISIONS to docker-compose.yml environment list.
- Expand requirements.txt comment coverage.

No version history or changelog included.
2026-08-02 00:07:24 +00:00
Troll (Hermes Agent)
14ed80fe4b Fix dashboard filters: Delivered instead of Done, correct Needs Upload status mapping 2026-08-02 00:02:05 +00:00
Troll (Hermes Agent)
72fa09a6e1 Hardcode email logo to DM-Logo_compress.png and remove configurable logo path 2026-08-01 23:41:31 +00:00
Troll (Hermes Agent)
60909c7122 Use DM-Logo_compress.png directly for email logo, remove Pillow resize logic 2026-08-01 23:35:09 +00:00
Troll (Hermes Agent)
918eaa682c Fix email logo: resize/compress to small JPEG, make path configurable in settings, add Pillow 2026-08-01 23:32:14 +00:00
Troll (Hermes Agent)
48db5c5461 Add SMTP test email button and recipient field on settings page 2026-08-01 23:24:33 +00:00
Troll (Hermes Agent)
8e5c2f5867 Move email SMTP config to settings page with encrypted password storage; add cryptography dependency 2026-08-01 23:20:23 +00:00
Troll (Hermes Agent)
5ebce2baff Add dashboard auto-refresh, status filters, rate limiting, database backup/restore 2026-08-01 22:52:32 +00:00
Troll (Hermes Agent)
77e23ba52c Fix MP3 comment tagging and remove Genre from settings metadata 2026-08-01 22:35:51 +00:00
Troll (Hermes Agent)
e4de42efa5 Format admin settings page with two-column layout and metadata table 2026-08-01 22:07:20 +00:00
Troll (Hermes Agent)
d74a715216 Add MP3 metadata settings and auto-tag uploaded files with title, artist, album, year, genre, comment 2026-08-01 22:00:08 +00:00
Troll (Hermes Agent)
506d07179a Add configurable max revisions limit with customer counter and operator override 2026-08-01 21:36:23 +00:00
Troll (Hermes Agent)
5b6012aa3d Add vocal gender preference to customer request form and admin view 2026-08-01 21:20:11 +00:00
Troll (Hermes Agent)
0f6b68cf5d Lock customer page after choice, archive files on revision, add file checkboxes for delivery 2026-08-01 21:10:57 +00:00
Troll (Hermes Agent)
51d1b4a4d9 Add admin Settings page with DB health check, stats, and system reset 2026-08-01 20:55:20 +00:00
Troll (Hermes Agent)
2b960bd3d5 Add revisions_requested status and visible revision note on admin detail page 2026-08-01 20:41:59 +00:00
Troll (Hermes Agent)
daf232308e Show operator preview link on admin request page when both songs uploaded 2026-08-01 20:33:36 +00:00
Troll (Hermes Agent)
12a29208be Remove Hermes response parser; use manual Title/Style/Lyrics paste fields 2026-08-01 20:22:19 +00:00