Commit Graph

32 Commits

Author SHA1 Message Date
mini
24b42010b9 config: set admin credentials via env vars
All checks were successful
continuous-integration/drone/push Build is passing
2026-02-19 01:20:23 +08:00
mini
a4064a5373 ci: fix compose project name and missing .env
All checks were successful
continuous-integration/drone/push Build is passing
2026-02-19 01:18:26 +08:00
mini
f2429d0512 ci: trigger Drone pipeline
Some checks failed
continuous-integration/drone/push Build is failing
2026-02-19 01:17:13 +08:00
mini
d1ba5a30f0 ci: add Drone CI pipeline for docker-compose deploy
Some checks failed
continuous-integration/drone/push Build is failing
2026-02-19 01:16:11 +08:00
mini
ec9455f989 revert: remove New Download button from admin 2026-02-19 01:10:54 +08:00
mini
8a6a82a0ea feat: add 'New Download' button in admin video library
-  New Download toggle in search bar
- Inline URL input form with Enter key support
- Calls POST /api/download with format_id=best
- Shows success/error feedback, auto-closes on success
- Refreshes video list and stats after submission
2026-02-19 01:08:50 +08:00
mini
1542c1fc0e ui: add download progress bar + percentage in admin video card 2026-02-19 01:06:55 +08:00
mini
b58d62f745 ui: delete confirm truncate title to 20 chars 2026-02-19 01:03:59 +08:00
mini
b1f705f007 ui: delete confirm shows #id + truncated title (30 chars) 2026-02-19 01:02:42 +08:00
mini
b5c50b0779 fix: cascade delete download_logs when video is deleted
DownloadLog has ondelete=CASCADE on FK but ORM relationship lacked
cascade='all, delete-orphan', causing IntegrityError (NOT NULL) on
video deletion.
2026-02-19 01:00:51 +08:00
mini
d419158c80 fix: DASH multi-phase progress + HLS fragment progress + indeterminate animation 2026-02-19 00:51:15 +08:00
mini
deae827252 fix: run download in thread pool to unblock event loop 2026-02-19 00:43:07 +08:00
mini
b62213f8b5 style: circular progress ring + X cancel button on downloading video thumb 2026-02-19 00:40:29 +08:00
mini
5741945531 feat: real-time download progress, cancel support, admin auto-poll 2026-02-19 00:27:25 +08:00
mini
62a51305c3 fix: detect platform on video create, remove hardcoded twitter default 2026-02-19 00:14:50 +08:00
mini
8e31c4b954 fix: admin panel shows placeholder, error msg and URL for non-done videos 2026-02-19 00:11:09 +08:00
mini
0299aea39b fix: pornhub download format spec and add UA headers 2026-02-19 00:06:08 +08:00
mini
0856b001a9 feat: add Pornhub video download support 2026-02-18 23:54:36 +08:00
mini
58ace106b8 feat: YouTube download, dedup, download logs with geo, admin cleanup settings 2026-02-18 23:52:06 +08:00
mini
f106763723 feat: auto cleanup with retention period, storage limit, settings UI 2026-02-18 23:47:33 +08:00
mini
5bc7f8d1df style: wider container, larger table rows and video cards in admin 2026-02-18 23:41:22 +08:00
mini
64cfccdcc5 fix: move Location column to last in download logs table 2026-02-18 23:36:55 +08:00
mini
97c58ce3f8 feat: add geolocation to download logs (country, city via ip-api.com) 2026-02-18 23:28:39 +08:00
mini
4ac8cf2f66 feat: add Download Logs tab in admin panel 2026-02-18 23:24:34 +08:00
mini
27c9c87f5c feat: track download logs (ip, browser, device, time) 2026-02-18 23:20:50 +08:00
mini
0bab021e21 feat: dedup downloads by (url, format_id) index, reuse existing files 2026-02-18 23:00:49 +08:00
mini
25c4973f57 fix: disable Download button after completion, reset on format change 2026-02-18 22:44:54 +08:00
mini
d3eed07e44 feat: add YouTube video download support 2026-02-18 21:00:17 +08:00
mini
958bdcd100 fix: use Twitter syndication API to bypass broken guest token API
Twitter's guest token GraphQL API returns 'Dependency: Unspecified' error.
Use cdn.syndication.twimg.com API instead, which works without auth.
Falls back to yt-dlp if syndication fails.
2026-02-18 17:31:49 +08:00
mini
694e7e7fb4 chore: remove obsolete version field 2026-02-18 17:20:46 +08:00
mini
96e421730e fix: use docker volume for sqlite db 2026-02-18 17:20:07 +08:00
mini
7fdd181728 Initial commit: XDL Twitter/X video downloader 2026-02-18 17:15:12 +08:00