50 Commits

Author SHA1 Message Date
Leo Vasanko
b2a24fca57 Fixed renames and breadcrumbs for gallery. 2023-11-20 13:47:41 -08:00
Leo Vasanko
a49dd2f111 Further bugfixes. Increase full update interval to 5 minutes. 2023-11-20 19:22:49 +00:00
Leo Vasanko
dbb06e111c Rewritten inotify watching and faster full tree traversal (also for polling worker). Bugs in inotify watcher fixed. 2023-11-20 18:49:24 +00:00
Leo Vasanko
667e31aa08 Fix regression: inotify watching was broken. 2023-11-20 13:58:20 +00:00
Leo Vasanko
7311ffdff1 Implement settings dialog and password changes. 2023-11-20 04:29:42 -08:00
Leo Vasanko
434e55f303 Video preview posters 2023-11-18 17:50:27 -08:00
Leo Vasanko
be9772c90e Minor changes 2023-11-18 16:03:23 -08:00
Leo Vasanko
115f3e20d0 Added PDF previews. Preview quality configurable. Preview browser caching and cache busting. 2023-11-18 15:16:24 -08:00
Leo Vasanko
62388eb555 Fix preview images that need rotation 2023-11-18 12:04:35 -08:00
Leo Vasanko
696e3ab568 Implement media preview thumbnails for Gallery 2023-11-18 11:38:25 -08:00
Leo Vasanko
11887edde3 Skip any symlinks while scanning. Stats on how long a scan took. 2023-11-17 17:49:35 -08:00
Leo Vasanko
c5083f0f2b Correct error page rendering via Sanic. 2023-11-17 09:20:14 -08:00
Leo Vasanko
f8a9197474 Tidying up log, correct HTTP status for error pages. 2023-11-16 17:10:18 -08:00
Leo Vasanko
5285cb2fb5 Watching cleanup 2023-11-16 09:17:50 -08:00
Leo Vasanko
b6b387d09b Code cleanup and bugfixes:
- Resolve threading deadlock when multiple watch request arrived at the same moment.
- Implement more graceful server exit.
- Reduce excessive logging.
- Fix unix socket clearing; until Sanic starts accepting Path for unix socket name.
2023-11-16 07:09:57 -08:00
Leo Vasanko
c40c245ce6 CLI simplification, better diagnostic for missing wwwroot, docs. 2023-11-14 11:05:04 -08:00
Leo Vasanko
1fdd00b833 Updated installation and README 2023-11-14 08:00:21 -08:00
Leo Vasanko
61f9026e23 Attempt to fix config handling on Windows 2023-11-13 16:31:35 -08:00
Leo Vasanko
3e50149d4d Add more quit points for watching thread. 2023-11-13 16:28:53 -08:00
Leo Vasanko
7077b21159 Add frontend build to Python packaging. Remove dead code, cleanup. 2023-11-13 16:19:33 -08:00
Leo Vasanko
c8d5f335b1 Fix upload of zero-sized files. 2023-11-13 02:13:11 -08:00
Leo Vasanko
c321de13fd Don't reload backend on wwwroot changes. 2023-11-13 00:48:45 -08:00
Leo Vasanko
9854dd01cc More efficient flat file list format and various UX improvements (#3)
This is a major upgrade with assorted things included.

- Navigation flows improved, search appears in URL history, cleared when navigating to another folder
- More efficient file list format for faster loads
- Efficient updates, never re-send full root another time (except at connection)
- Large number of watching and filelist updates (inotify issues remain)
- File size coloring
- Fixed ZIP generation random glitches (thread race condition)
- Code refactoring, cleanup, typing fixes
- More tests

Reviewed-on: #3
2023-11-12 23:20:40 +00:00
Leo Vasanko
fb03fa5430 Favicon, title, automatic & manual server naming (#2)
Server name may be set in config file. If unset, backend uses the folder name being served. This is shown in page title for site root, and subfolder names are also now shown. New icon of Droppy icon, changing only the color.

Reviewed-on: #2
2023-11-08 23:00:07 +00:00
Leo Vasanko
e26cb8f70a Linting, removed extra line from pyproject.toml. 2023-11-08 13:08:46 -08:00
Leo Vasanko
9bbbc829a1 Correct processing of custom config dir 2023-11-08 12:56:43 -08:00
Leo Vasanko
876d76bc1f Frontend created and rewritten a few times, with some backend fixes (#1)
The software is fully operational.

Reviewed-on: #1
2023-11-08 20:38:40 +00:00
Leo Vasanko
4a53d0b8e2 Formatting and fix Internal Server Error on upload 2023-10-26 18:59:19 +03:00
Leo Vasanko
444f0226e6 Make sessions last a year 2023-10-24 02:03:11 +03:00
Leo Vasanko
9428cc2d9c Fix field name in session cookie; prevented logged in useds authenticating. 2023-10-24 01:47:57 +03:00
Leo Vasanko
4a13f642b2 Watcher cleanup. Restart server on config changes and if frontend is modified. 2023-10-24 00:57:50 +03:00
Leo Vasanko
5d3f419508 /api/watch also continuously reports disk usage 2023-10-23 05:24:54 +03:00
Leo Vasanko
4852212347 Cleanup, bugfixes. Added access control on files and API. 2023-10-23 04:51:39 +03:00
Leo Vasanko
bd61d7451e Add /old-index.html in case the prior front pages is needed for reference. 2023-10-21 22:48:24 +03:00
Leo Vasanko
93351ae86d Frontend included in repository. 2023-10-21 22:30:47 +03:00
Leo Vasanko
e68a05e663 Refactoring and cleanup 2023-10-21 19:17:09 +03:00
Leo Vasanko
e90174a09d Implemented control commands and tests. Rewritten error and session/flash handling. 2023-10-21 04:44:43 +03:00
Leo Vasanko
9939cb33fa Watcher rewritten with inotify module, bugs fixed. 2023-10-19 23:52:37 +03:00
Leo Vasanko
228b75a20d Watching cleanup, debugging a problem case. 2023-10-19 20:54:33 +03:00
Leo Vasanko
f969c2ccb4 Reset flash cookie also on index page. 2023-10-19 20:24:20 +03:00
Leo Vasanko
35038fca89 Login error handling and flash messages. Remove host prefix on cookies because of https://bugs.chromium.org/p/chromium/issues/detail?id=1245434 2023-10-19 19:55:59 +03:00
Leo Vasanko
c6caf96445 Added user management to CLI. Mainly for creating admin user or resetting forgotten passwords. 2023-10-19 04:06:21 +03:00
Leo Vasanko
7484795ce5 Fix app load failure. 2023-10-19 00:13:47 +00:00
Leo Vasanko
a00610a738 Support running 80/443 with TLS certificate files in confdir/domain/ 2023-10-19 02:52:51 +03:00
Leo Vasanko
05c6f03d20 Refactor with its own entry point and startup script cista, instead of running via sanic. Config file handling and Droppy updates. HTTP redirection/acme server added. 2023-10-19 02:06:14 +03:00
Leo Vasanko
429a7dfb16 Implemented login page and new jwt-based sessions. Watching cleanup. 2023-10-18 01:06:27 +03:00
Leo Vasanko
bd680e3668 Major upgrades, much code and docs rewritten. 2023-10-17 21:33:31 +03:00
Leo Vasanko
46cfc831ff Cleanup LRUCache, fix bug, add unit tests (pytest). 2023-10-15 08:56:50 +03:00
Leo Vasanko
4e3c0e2b98 Cleanup 2023-10-15 07:31:54 +03:00
Leo Vasanko
f697d96c89 Restructuring as a Python package. 2023-10-15 02:42:16 +03:00