Commit Graph

108 Commits

Author SHA1 Message Date
CasVT
b68284530b Changed generation and hashing of API keys
Moved from generating API keys using os.urandom to secrets.token_hex. Moved from hashing the keys using stdlib.hash to hashlib.sha256.
2025-08-26 00:50:46 +02:00
CasVT
42891f5f32 Moved API inputs to context globals 2025-08-25 23:29:16 +02:00
CasVT
6244aff737 Improved type hinting in api.py 2025-08-25 22:49:35 +02:00
CasVT
b18f305cc5 Run timezone check on startup 2025-08-25 21:11:10 +02:00
CasVT
590c0b25ce Refactored tz_shifter.py 2025-08-25 20:56:04 +02:00
CasVT
3df51b2cbf Moved doc string 2025-08-25 20:32:31 +02:00
CasVT
a369e80ab3 Refactored reminder_handler.py 2025-08-21 17:53:31 +02:00
CasVT
61882e609a Refactored reminders.py 2025-08-21 16:57:23 +02:00
CasVT
85a2f32dad Refactored static_reminders.py 2025-08-21 15:52:09 +02:00
CasVT
71c3c9b36c Fixed docstrings in templates.py 2025-08-21 15:38:28 +02:00
CasVT
1f4ac2d433 Updated docstrings in users.py 2025-08-21 15:30:46 +02:00
CasVT
414eae0614 Refactored templates.py 2025-08-21 15:28:40 +02:00
CasVT
08bd642224 Refactored notification_services.py 2025-08-21 15:15:46 +02:00
CasVT
536d1a0b93 Renamed variables in Users class 2025-08-21 15:10:04 +02:00
CasVT
bafd8abe6a Refactored users.py 2025-08-18 17:05:35 +02:00
CasVT
6da1d3b2f6 Refactored apprise_parser.py 2025-08-18 16:27:10 +02:00
CasVT
d80dd8c2a0 Moved reminders.py, static_reminders.py and templates.py to implementations folder 2025-08-18 15:29:35 +02:00
CasVT
5bfe6e207d Supply URL prefix when starting server
Before it would be set via a method, but it's more logical for it to just be supplied when starting to run the server, alongside the host and port.
2025-08-18 15:22:29 +02:00
CasVT
c9719ec221 Create Flask app on init of Server class 2025-08-17 16:34:49 +02:00
CasVT
a8ad6712b2 Removed unnecessary call to close DB connection 2025-08-17 16:08:42 +02:00
CasVT
b427c2c1d4 Refactored Flask error handling setup 2025-08-15 16:42:25 +02:00
CasVT
3847e2fa07 Fixed JSON formatting of API responses 2025-08-12 17:56:52 +02:00
CasVT
344214a605 Refactored signaling of restart type on restart 2025-08-12 17:28:28 +02:00
CasVT
b5387a0635 Moved API prefixes from Server to Constants 2025-08-12 16:57:13 +02:00
CasVT
8739e1ab95 Refactored start type handling 2025-08-06 18:46:48 +02:00
CasVT
492674d280 Turned DatabaseBackupHandler methods into classmethods 2025-08-05 12:26:57 +02:00
CasVT
75823c0899 Put closing threads DB connection into own method 2025-08-05 12:18:56 +02:00
CasVT
cc43df13f9 Only allow editing public settings via API 2025-08-04 18:29:02 +02:00
CasVT
129859048d Split internal settings into separate dataclass 2025-08-03 16:44:27 +02:00
CasVT
258c3db83d Refactored settings.py 2025-08-03 13:24:06 +02:00
CasVT
1e09ce1510 Copy over last DB backup timestamp on DB import
When importing a backup from a long time ago (more than one DB backup interval ago), a backup would be created the moment the import was done, regardless of when the previous backup was made (so even when that was minutes ago). Now the schedule is kept, by copying over the timestamp of the last DB backup from the current DB to the imported DB.
2025-08-03 12:20:49 +02:00
CasVT
40473de47a Changes made since startup were carried over on DB import
The changes made since startup, stored in the wal file, were carried over when importing a database. This was because the database file was replaced with the imported database file, but the changes were stored in the wal file. So now we merge all changes into the main database file before replacing them.
2025-08-02 18:54:28 +02:00
CasVT
ba2d89d4ce Moved backup command to DB connection 2025-08-02 18:03:32 +02:00
CasVT
783a5664d5 Refactored db_backup_import.py 2025-08-02 17:07:45 +02:00
CasVT
09b152fabc Refactored db.py 2025-08-01 17:38:23 +02:00
CasVT
4dc682ed59 Refactored db_migration.py 2025-08-01 17:11:03 +02:00
CasVT
51e2891020 Slightly refactored base code and updated docstrings 2025-08-01 16:58:13 +02:00
CasVT
48105ef88b Improved library search 2025-07-01 13:34:08 +02:00
CasVT
5b1c285ab3 Fixed default value for DB backup folder 2025-06-25 18:36:23 +02:00
CasVT
8fced3c978 Fixed 404 handling 2025-05-17 20:17:08 +02:00
CasVT
312e3978e3 Improved sorting of user list 2025-05-17 20:06:03 +02:00
CasVT
39847f18cd Added backend for resetting setting values 2025-05-17 19:59:00 +02:00
CasVT
a5ec5c5427 Added support for cron schedules in backend (#83)
Fully functioning backend (and API) support for cron schedules. Frontend is coming later.
2025-05-04 18:02:49 +02:00
CasVT
9a91955ff4 Added timezone change handling (#89) 2025-05-04 16:20:11 +02:00
CasVT
59ac864c16 Added DB backup system 2025-04-30 13:52:31 +02:00
CasVT
cd400bb559 Added option to enable/disable reminders (#77) 2025-04-24 21:10:28 +02:00
CasVT
cefc1a9593 Allow changing username 2025-04-24 16:15:38 +02:00
CasVT
4f77435801 Converted manifest file into dynamic endpoint 2025-04-24 13:51:43 +02:00
CasVT
89ff90a9a4 Fixed closing DB conns in time on shutdown
We needed the close_all_db function to close any remaining database connections on shutdown. But why were there any unclosed db connections anyway? The connections were closed after the thread was already marked as shut down so when exiting the thread wasn't done with closing the database yet and thus sometimes you had an improper shutdown. Now the threads are only marked as stopped when the database connection is also closed so we have guaranteed that they'll be closed when the server returns. So no more need to explicitly close any remaining afterwards.
2025-04-23 23:10:01 +02:00
CasVT
3892b9754e Refactored input validation 2025-04-23 19:55:41 +02:00