Commit Graph

557 Commits

Author SHA1 Message Date
Bobby
96689278f1
refactor: defer reject uploads after consume
always store incoming uploads to disk first before deciding whether to
reject and delete them depending on configured rejects/limits

doing this is more stable/reliable than attempting to immediately
reject the incoming connections, at least if we want to respond with
actual error messages
2022-10-16 11:08:53 +07:00
Bobby
effdf8c607
fix: restore clamav version to stats menu
i had to move over scanner logic to its own module last time,
so i commented out the stats entry as i was cleaning it up, but forgot
to re-add it after finishing it
2022-10-08 18:46:18 +07:00
Bobby
9d464c6894
fix: useless logic
for context, we prefer to list files in zips dir, because admins may
choose to manually delete their ZIPs anytime, and lolisafe will not be
aware of it

the download API will automatically re-generate them if required, so
admins manually deleting ZIPs is okay
2022-10-08 18:18:12 +07:00
Bobby
c5bee11a42
feat: prep stats api to allow pre-category refresh
via /api/stats/:category
2022-10-08 16:39:28 +07:00
Bobby
c4caee42ca
fix: temporary uploads stats counter 2022-10-06 05:12:46 +07:00
Bobby
3fcb0732a4
feat: filter temporary uploads from stats menu 2022-10-06 05:05:50 +07:00
Bobby
686875099f
feat: sort mime types by count in statistics menu 2022-10-06 04:41:28 +07:00
Bobby
066998991c
fix: url uploads content-type parsing 2022-10-06 04:24:28 +07:00
Bobby
3d51fd2e31
fix: purgeCloudflareCache
regression when ConfigManager was introduced
2022-10-06 04:20:02 +07:00
Bobby
7f1e736305
feat: filter uploads by type-is from stats menu 2022-10-06 04:16:31 +07:00
Bobby
c35fd3057c
feat: filter uploads by mime types from stats menu 2022-10-06 03:57:47 +07:00
Bobby
10c2618ef6
feat: filter uploads by mime types 2022-10-06 03:36:34 +07:00
Bobby
30db27e524
fix: uploadController.js missing Constants module 2022-10-06 03:36:22 +07:00
Bobby
ff58054158
fix: type-is uploads filtering
also improved its parsing logic
2022-10-06 03:26:19 +07:00
Bobby
0c0b2aa3d1
feat: StatsManager 2022-10-06 02:46:49 +07:00
Bobby
e7c91b8ad0
refactor: upload's stripTags if-logic 2022-10-06 02:44:54 +07:00
Bobby
ec0e51a7b8
feat: Constants 2022-10-06 02:44:31 +07:00
Bobby
cd2baba0d6
feat: ScannerManager 2022-10-06 02:42:36 +07:00
Bobby
95e5956313
feat: ConfigManager 2022-10-06 02:39:51 +07:00
Bobby
93621afe94
feat: allow stream download of album ZIPs
extend ServeStatic handler to allow programatically calling the handle()
function from within in-progress Requests

also use file's timestamp as file's modified time in the ZIP archive
2022-10-04 07:06:37 +07:00
Bobby
97ffa67975
fix: download of >2GiB album ZIPs 2022-10-04 06:15:37 +07:00
Bobby
a49842a932
fix: size attribute of uploads with stripped tags
it'd previously always keep size attribute before the tags stripping
2022-10-04 05:42:00 +07:00
Bobby
0eb4c243c3
feat: use fs-jetpack in pathsController.js 2022-10-04 05:34:01 +07:00
Bobby
f3bf3f6500
feat: use fs-jetpack in utilsController.js 2022-10-04 05:33:25 +07:00
Bobby
9467132f1f
feat: use fs-jetpack in uploadController.js 2022-10-04 05:30:48 +07:00
Bobby
a7b5fc75c6
feat: use fs-jetpack in authController.js 2022-10-04 05:29:07 +07:00
Bobby
34c060ec5e
feat: delete zip of empty albums on download req 2022-10-04 05:16:51 +07:00
Bobby
d5b1ad69d9
fix: await album zip jetpack.rename() 2022-10-04 05:16:15 +07:00
Bobby
afd81c965d
chore: comment out onHold debug messages
seem stable enough
but just comment out if needed in the future
2022-10-04 05:12:21 +07:00
Bobby
e4a3447a5e
feat: use fs-jetpack in albumsController.js 2022-10-04 04:34:44 +07:00
Bobby
65d9a76071
feat: slowly transition to fs-jetpack
controllers/handlers/ServeStatic.js
controllers/middlewares/ServeStaticQuick.js
2022-10-04 04:20:38 +07:00
Bobby
fcdbf2d475
feat: better url uploads error status 2022-09-28 11:37:57 +07:00
Bobby
d364034738
fix: improve url uploads input check 2022-09-28 11:37:29 +07:00
Bobby
7e28c26d41
fix: improve multiple uploads Promise handling 2022-09-28 11:03:29 +07:00
Bobby
e64cfa89cf
feat: send more data in upload API response 2022-09-28 10:33:47 +07:00
Bobby
0b46f43bfa
chore: console log multipart early resolve 2022-09-28 10:32:45 +07:00
Bobby
b3a2c93642
feat: improve flow of storing files to db
API respond now have new prop "repeated" to signify that the files were
already previously uploaded
2022-09-28 10:16:00 +07:00
Bobby
81c94a40d5
feat: defaults mime-type to octet-stream 2022-09-28 10:14:57 +07:00
Bobby
c1bb2f5015
refactor: logic improvements 2022-09-28 10:14:08 +07:00
Bobby
aebeb8e045
feat: filter uploads using relative time duration
added a new production dependency parse-duration@~1.0.2

read filters help popup in dashboard for usage example
2022-09-24 09:54:49 +07:00
Bobby
216ba12b3e
feat: filter uploads with unix timestamp dates 2022-09-24 08:38:43 +07:00
Bobby
a44af208aa
feat: click on table headers to sort uploads
fairly robust logic, with auto toggling of asc or desc sort direction
2022-09-24 08:09:27 +07:00
Bobby
a646d6731a
fix: possible upload stream starting early 2022-09-24 06:41:31 +07:00
Bobby
518b29c8df
feat: better albums.onHold debugging messages 2022-09-24 06:35:41 +07:00
Bobby
c47d3f5437
feat: better upload.onHold debugging messages
expose util.inspect via utils when on dev mode
2022-09-24 06:33:58 +07:00
Bobby
32efacd411
feat: configure timemark for video thumbnails 2022-09-24 06:24:56 +07:00
Bobby
47727f3ca8
feat: allow specifying api token in nojs uploader 2022-09-21 08:03:28 +07:00
Bobby
7147afc309
feat: better props override for auth helepr functs 2022-09-21 08:02:13 +07:00
Bobby
ffe6d6ed88
feat: console log incoming requests on dev mode 2022-09-21 07:44:40 +07:00
Bobby
bf077f4aa3
fix: typos in ServeStatic.js 2022-09-21 06:09:27 +07:00