6c05a13ae4
feat: home page logout stays + wider PC layout
...
- logout() on home/root page: Auth.reset() only (clear state, refresh
top bar), no redirect to login; other pages still go to login
- home page container: width:min(50vw+300px, 1440px, 96vw) replaces
fixed max-width:800px - PC wide screens use at least half viewport,
mobile near full width
2026-08-22 02:47:26 +08:00
cb5847d650
feat: game UID fully internal + remove multi-identity copy
...
- game_uid is now an internal param: auto-generated server-side
(U + 12 hex) on register/bind-identity/install/admin-create/external
register; player-supplied game_uid ignored
- Removed all player-facing UID inputs: register page, install page,
identity bind modal, ticket-create 'your UID' field
- Removed player-facing UID display: identity table column,
ticket detail/tracking reporter UID
- Removed '同一账号可绑定网易端 + 皮肤站身份' / '可绑定多个来源身份' copy
- Kept target_game_uid (reported player) and admin panel UID management
- settings-page skin-site placeholder updated
2026-08-21 21:52:40 +08:00
8c5ce78fd0
chore: add AGPLv3 copyright header to all source files
...
- 52 JS files (backend + public/js): header with
Copyright (C) 2026 Sea Network Technology Studio
Author: CangLan <admin@sea-studio.top >
+ AGPLv3 notice
- idempotent (skips if header present), all syntax-checked
2026-08-19 20:27:05 +08:00
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
96e55d8715
feat: anonymous ticket reply via tracking cookie
2026-07-17 14:16:21 +08:00
5e998b2201
fix: hide type tabs when embedded in home page
2026-07-17 13:41:29 +08:00
0892dd5f8e
fix: hide top bar on home page, tabs back in page content
2026-07-17 13:32:28 +08:00
9eb8aba371
fix: home page tabs in top bar, single nav layer
2026-07-17 13:21:30 +08:00
021351d898
fix: restore from regex corruption, JS-bind modal close, data-action delegation
2026-07-15 03:53:16 +08:00
f0e891b17c
fix: data-action delegation + convert onclick to event listeners, sidebar+logout+modals
2026-07-15 02:44:18 +08:00
4f4df7e479
fix: backend+frontend full audit - 15 bugs fixed across all files
2026-07-13 04:07:18 +08:00
989a3ae4cf
feat: home page hash-based tab routing for shareable links
2026-07-12 01:53:59 +08:00
247a4e851d
feat: MC Report System - MySQL + Express + Vanilla JS SPA
2026-07-12 01:23:19 +08:00