Commit Graph

15 Commits

Author SHA1 Message Date
6e9101a506 fix: deploy crash + multiple bug fixes + cleanup
- server.js: fix getSiteName() returning string when not installed causing
  'getSiteName(...).then is not a function' crash on homepage (deploy blocker)
- server.js: auto-load business routes after install completes (no restart needed),
  HTML cache keyed by api_key
- install: validate db name/email/password, trigger route loading after complete
- app.js: fix forgot/reset/verify pages rendering HomePage (missing page mapping)
- verify.js: support URL token auto-verification for external registration links
- auth: new email_code template for 6-digit code, reset_password template
  (forgot-password was using verify_email template)
- upload.js: fix MP4 magic-bytes check using undefined buf variable
- tickets.js: status enum validation, anonymous submission rate limit
- security.js: XSS whitelist preserves email template HTML, strips scripts,
  blocks javascript:/data: hrefs; CORS reject returns 403
- bans.js: allow clearing reason/duration, status enum validation
- users.js: fix req.user.role ReferenceError in create user modal
- home.js: tracking results now have detail view button
- .gitignore: ignore data/ (db credentials), logs, session files, temp scripts
2026-08-16 21:21:25 +08:00
5ed109ec0e feat: ban list with dashboard widget, owner add/edit bans 2026-07-18 00:52:33 +08:00
4d2dade44e fix: site name hot-reloads from DB on every page load, no restart needed 2026-07-16 05:49:22 +08:00
f423e1f791 fix: dynamic site name from DB, displayed in header/title/sidebar 2026-07-16 04:02:19 +08:00
880e3905dc fix: CSP scriptSrcAttr explicitly allow unsafe-inline 2026-07-15 04:39:23 +08:00
c892b18d33 fix: CSP script-src-attr:none blocked all onclick handlers since day 1 2026-07-15 03:58:16 +08:00
4913984391 feat: poll groups/servers, timed polls, features sort+filter by group 2026-07-14 03:17:13 +08:00
d61ad2109f refactor: remove polls+features, move to standalone mc-vote repo 2026-07-14 03:11:26 +08:00
ee2f33c61f feat: feature voting (PCL-style), poll owner edit/delete, blind polls for all 2026-07-14 01:17:56 +08:00
116fe89ac8 feat: poll/voting system with live results and bar charts 2026-07-13 21:37:16 +08:00
eed4591059 security: timing-safe API key, SSRF webhook guard, API no-cache, Referrer-Policy 2026-07-13 19:49:44 +08:00
532efb962f fix: HIGH+MEDIUM bugs from full audit - listen error, JWT, upload, mailer, webhook 2026-07-13 03:49:02 +08:00
ea3cd67e02 feat: external API for Java server integration with dedicated key 2026-07-13 01:24:03 +08:00
aa9ee24118 fix: disable all static file caching to prevent stale assets 2026-07-12 02:08:18 +08:00
247a4e851d feat: MC Report System - MySQL + Express + Vanilla JS SPA 2026-07-12 01:23:19 +08:00