Commit Graph

118 Commits

Author SHA1 Message Date
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
Bobby Wibowo
9c7241d145
Allow filtering audio files with is:audio
For now only support FLAC, MP3, WAV and WMA
More extensions will come at a later date
2020-11-03 22:51:29 +07:00
Bobby Wibowo
12cffb022d
Added waveform in embedded player if playing audio
Added LICENSE files

Moved videojs plugins into their own sub-directories in libs directory
2020-11-03 22:37:24 +07:00
Bobby Wibowo
519d4154e7
Updated 2020-11-03 21:25:07 +07:00
Bobby Wibowo
bffc9c88e5
Audio files now work with the embedded player 2020-11-03 21:17:57 +07:00
Bobby Wibowo
f5e70b2d96
Added experimental embedded video.js player thingy 2020-11-03 20:56:32 +07:00
Bobby Wibowo
47dd512910
Removed custom ESLint curly rule
Sigh, why did you do this, past me..?

Also fixed "Delete uploads by names".
2020-10-31 01:12:09 +07:00
Bobby Wibowo
c40478dd0a
Upgraded to ESLint 7 2020-10-30 22:54:02 +07:00
Bobby Wibowo
f211a39aef
Cleaned up dashboard.js 2020-10-02 23:52:15 +07:00
Bobby Wibowo
3c1f0996a3
Updated dashboard.js
It's a bit eh, but it works.
This should finally fix active sidebar menus getting deactivated in
certain conditions and all that kinda jazz.
2020-10-02 04:34:44 +07:00
Bobby Wibowo
c113184385
Improved disk usage entry in statistics
Now will calculate usage as (total - avail).
In Linux, ext filesystems by default reserves 5% of the space to be
usable by root, making them essentially already "used" space.
Originally we didn't take that into account.

Disk usage percentage will now round down: Math.round() -> Math.floor().
The general behavior in other tools such as "df".
2020-09-08 19:04:12 +07:00
Bobby Wibowo
a2f544db99
Updated dashboard.js
FIX: Directly jumping to N page from pagination caused the menu item in
sidebar (e.g. Manage users) to be inactive.
2020-08-24 08:24:13 +07:00
Bobby Wibowo
65847232c4
Added "time taken" info for Statistics menu 2020-08-24 08:08:21 +07:00
Bobby Wibowo
f3d6a90a0b
Updated dashboard.js and home.js again 2020-08-23 02:22:03 +07:00
Bobby Wibowo
d1663b7c50
Updated home.js 2020-08-23 02:20:26 +07:00
Bobby Wibowo
0b27babb31
Refactored "hhmmss" -> "uptime" 2020-08-22 01:39:04 +07:00
Bobby Wibowo
41fb14e865
Added system & node uptime to Statistics menu
src/js/misc/utils.js: Added page.getPrettyUptime().

Updated dependency:
helmet: 3.23.3 -> 4.1.0

lolisafe.js: Disabled CSP by default.
Since helmet 4, CSP would instead be enabled by default.
2020-08-22 01:35:30 +07:00
Bobby Wibowo
34d3601c30
Transitioned styling to Sass
Added new dev dependencies:
bulma, gulp-sass, node-sass

Updated some dependencies

Various other things related to styling

Bumped v1 version string and rebuilt client assets
2020-07-28 21:47:48 +07:00
Bobby Wibowo
3c2abcfadd
Improvements to newsfeed.js
Cleaned up some CSS

Bumped v1 version string and rebuilt client assets
2020-07-28 16:44:04 +07:00
Bobby Wibowo
6daa1e529e
Added src/js/misc/newsfeed.js
A small script to pull feed from blog.fiery.me as news thingy.
2020-07-28 03:46:15 +07:00
Bobby Wibowo
24ed7c48bb
Updated dashboard.js
Bumped v1 version string
2020-07-19 18:26:44 +07:00
camjac251
7a23707555
change window.location.host to window.location.hostname
location.hostname() is unsupported by Opera and gives an error using the latest ESLint gulp plugin.
2020-07-01 13:59:22 -05:00
Bobby Wibowo
1981159805
Updated auth.njk again (and auth.js)
Better solution for #215

Bumped v1 version string and rebuilt client asset
2020-06-27 17:42:36 +07:00
Bobby Wibowo
0caa669980
Fix homepage's Config tab not saving some options
Resolved #211

Bumped v1 version string and rebuilt client asset
2020-06-22 19:45:42 +07:00
Bobby Wibowo
40dd662976
Removed delete URL from upload response
I wasn't aware ShareX wouldn't do a basic GET request to the delete URL,
but would instead open your browser to it.
Unfortunately, due to the structure of lolisafe auth setting token
through HTTP header, which had always been done by JS as it has to get
the value from local storage, just visiting the API from browser will
merely respond with "No token provided".
We'd need cookie-based auth, which I do not want to add.
The old me that added deletion API long ago might have been aware of
this fact, but the me of a few hours ago already forgot..
I'll give this further thoughts at a later date, as ShareX isn't really
a priority to me.

Bumped v1 version string and rebuilt client assets.
2020-06-20 04:01:16 +07:00