Commit Graph

142 Commits

Author SHA1 Message Date
Bobby Wibowo
6ba30a23c6
feat: improved chunked uploads lifecycle
added checks when there's an attempt to uploads chunks to same file in
parallel

improved final file size checks
2022-07-25 07:09:28 +07:00
Robert Pendell
4324fbccee
fix: correct typo in generated ShareX config (#533)
Should be MultipartFormData instead of MultipartFromData.
2022-07-10 16:27:00 +07:00
Bobby Wibowo
6ef911538e
fix: home not showing pretty bytes when private 2022-06-30 19:41:47 +07:00
Bobby
7c4206a4e2
fix: src/js/file.js 2022-06-28 13:36:17 +07:00
Bobby
8cbdca4efc
fix: always try to load file as image in info page 2022-06-28 13:02:38 +07:00
Bobby
2465864c53
feat: copy to clipboard button in file info page 2022-06-28 12:52:50 +07:00
Bobby
9eb46b7986
feat: add link to file info page in dashboard 2022-06-28 12:31:35 +07:00
Bobby
e6ae519af1
chore: src/js/player.js 2022-06-28 12:03:56 +07:00
Bobby
b17b24b159
feat: new page /file/:identifier
this will display all information recorded from the specified file, but
only to the users that own them (it requires token)

this page also has a delete file button, allowing us to provide link to
this page for sharex deletion url option

once again, this is only for authenticated users, and will only show
file that the users own, unless said user is a moderator or higher
2022-06-28 12:03:49 +07:00
Bobby
5eefc0b1d0
chore: add version to sharex config
i assume sharex may have config migration feature one day by comparing
version strings
2022-06-28 11:58:41 +07:00
Bobby
2b195652a5
fix: long file names in dashboard preview dialogs 2022-06-28 08:57:49 +07:00
Bobby Wibowo
06857dff02
fix: render.js 2022-06-22 17:09:32 +07:00
Bobby Wibowo
8a9f0b412f
feat: removed default home renders 2022-06-22 16:52:14 +07:00
Bobby Wibowo
954df13aa2
fix: better null domain fallback logic 2022-06-22 11:22:35 +07:00
Bobby Wibowo
e8b7a85b8d
chore: src/js/.eslintrc.js 2022-06-08 21:53:43 +07:00
Bobby
b2a11ae42c
feat: added loop button to video.js player 2022-05-27 13:44:46 +07:00
Bobby
7d2e2d97e0
feat: use fontello for video.js seek buttons 2022-05-27 13:44:22 +07:00
Bobby
a3aeb63790
fix: let wavesurfer use its default backend
forcefully setting it to WebAudio seemingly disable progress bar on my
Firefox Desktop for some reason
perhaps it actually disabled the fallback mechanism
2022-05-27 11:50:03 +07:00
Bobby
f54ce96c23
feat: wavesurfer use WebAudio backend by default
supposedly it will automatically fallback to MediaElement on unsupported
browsers
2022-05-27 11:33:32 +07:00
Bobby
3ec7e6c76c
fix: responsive video.js audio waveform 2022-05-27 11:32:35 +07:00
Bobby
110aab097b
chore: versioned git urls in comments
future-proofing
2022-05-24 07:02:06 +07:00
Bobby
2d147e748b
feat: usergroup-based file retention periods
this supersedes the old temporaryUploadAges, while maintaining full
backwards-compatibility.

please consult config.sample.js if you want to start using this
2022-05-07 02:17:31 +07:00
Bobby
b35f4ae6eb
fix: remove token from local storage if invalid
this required expanding our custom error classes with support for
arbitrary internal api error codes

however it'll only be used for invalid token errors for now (10001)

no plan to assign codes to other existing api errors
at that point it's probably better to redo the whole api infrastructure
2022-05-06 21:58:23 +07:00
Bobby
ba9c9eddd7
feat: datasets of bytes and timestamps
on the associated front-end elements

perhaps useful for those that want to hack the display with userscript,
without having to dig cached values in global page object
2022-05-06 20:48:24 +07:00
Bobby
4fa3a54729
feat: show am/pm on date
we are cheating by using Date.toLocaleString(), that is fixed to "en"
locale, for the time portion of the date
2022-05-06 20:45:40 +07:00
Bobby
450bf72e7a
feat: allow mods to actually delete albums 2022-05-05 13:58:54 +07:00
Bobby
39b7d96b8f
feat: static preview of album description markdown
in dashboard's edit album prompt
2022-05-05 13:17:32 +07:00
Bobby
cf9c4ce7cb
fix: player.js 2022-04-20 19:29:35 +07:00
Bobby
43837cac20
chore: stray console.log in dashboard.js 2022-04-20 19:29:08 +07:00
Bobby
8d79154e6c
style: phrasing in delete user prompt 2021-06-06 18:31:17 +07:00
Bobby Wibowo
cf4a1af209
feat: list albums' total size and zip size 2021-02-12 15:48:40 +07:00
Bobby Wibowo
274d922b2f
refactor: simplified a regex in home.js 2021-02-01 06:08:26 +07:00
Bobby Wibowo
5a74776978
fix: thumbnails not generated with mixed case
e.g. .jpG, .JPG, .PnG, etc.

Also simplified some codes.
2021-02-01 05:23:53 +07:00
Bobby Wibowo
37076049e1
style: sort extension names in home.js 2021-02-01 05:20:47 +07:00
Bobby Wibowo
ce1e7bb21d
feat: added max age support to newsfeed
Hardcoded to 91 days (~3 months).
2021-01-28 00:18:30 +07:00
Bobby Wibowo
0b428171bb
refactor: use typeof for undefined in client-side
I didn't notice anything breaking prior to this, but just to be safe.
2021-01-28 00:06:05 +07:00
Bobby Wibowo
968494bb37
fix: systeminformation v5 breaking changes
Made the codes for stats generation a bit more readable.

Usage percentage for file systems will now properly reflect "non-root"
usage percentage in ext2/3/4 file systems.
2021-01-27 23:50:45 +07:00
Bobby Wibowo
f52493291a
feat: same/higher group warning when editing user
Also Object.freeze() permissions object in permissionController.
I don't think it's much to be worried about, as no "set" will be done to
it during the service's operation, but oh well, might as well.
2021-01-09 02:51:23 +07:00
Bobby Wibowo
da112ce485
feat: 2 digits fractions for percentage in stats 2021-01-08 11:29:36 +07:00
Bobby Wibowo
a37057e099
fix: error icon not showing for url upload errors 2021-01-08 09:43:20 +07:00
Bobby Wibowo
e9d22ea3ea
fix: home uploader not parsing size error properly
Also fixed error icon not showing with errors from finishing chunks.
2021-01-08 09:37:35 +07:00
Bobby Wibowo
18db55ba24
Added scripts/rebuild-hashes.js
Closes #345
2020-12-27 18:16:01 +07:00
Bobby Wibowo
441faad4a7
page auto-scroll now only happens when moving page
specifically the auto-scroll in uploads/users/albums list.
previously it'd auto scroll to the top for every same-page operation.
now it'd only auto scroll when actually moving page.
so same-page operations such as deleting uploads, editing users, etc.
will no longer scroll away.
2020-12-26 23:50:52 +07:00
Bobby Wibowo
e85e8e886d
added lolisafe upstream compat to /api/album/:id
it will re-map body of /api/album/get/:id into upstream-compatible body.
prep for lolisafe albums support for magane plugin.

/api/album/:id/:page will stil respond with the old format as that's
what the dashboard use and expect.

list views of uploads, users and albums in dashboard will now show
total items count on the table's top right corner.
2020-12-26 19:54:41 +07:00
Bobby Wibowo
c5647cb8bf
albums sidebar in dashboard is now collapsible
they'll also be collapsed on initial page load

this uses a new client-side dependency, bulma-collapsible
https://github.com/creativebulma/bulma-collapsible

/api/albums to fetch albums list now support simple reply, where only
their ids and names will be returned.
this simple reply will also return all of the user's albums, instead of
being limited to only 9 or 25 entires like before.

fixed add to album in dashboard, and album selector in homepage uploader
being limited to only 25 albums.
2020-12-26 18:49:51 +07:00
Bobby Wibowo
346d9864f3
improved codes for statistics
much more expandable, and should be easier to understand overall.

make more statistics operations run concurrently to speed them up.

make linuxDiskStats config key obsolete by using systeminformation
package to also query for any mounted file systems.
2020-12-25 21:06:21 +07:00
Bobby Wibowo
a0777fb1d7
fixed upload urls button not working
would happen when in config uploads.urlMaxSize equals uploads.maxSize
2020-11-05 23:10:22 +07:00
Bobby Wibowo
a0ab3d436e
Slight improvement to error handlers in frontend 2020-11-04 11:26:22 +07:00
Bobby Wibowo
5426c6f98d
Updated player.js 2020-11-04 00:21:55 +07:00
Bobby Wibowo
fbf582f09e
Disabled version string in embedded player 2020-11-03 23:10:15 +07:00