summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-10-27Database.update includes message in exceptionsFrederick Yin
2021-10-27Split umbrellas.html into desktop and mobile viewFrederick Yin
Because the difference is friggin massive
2021-10-27Separate Lockfile into new classFrederick Yin
2021-10-26Wrap static methods in Database in decoratorFrederick Yin
2021-10-25HTML fragment: admin is taken to the row to editFrederick Yin
2021-10-25Mobile view for database editFrederick Yin
2021-10-24Separate admin routes to a blueprintFrederick Yin
Because modularity
2021-10-24CSS fix for input fieldsFrederick Yin
2021-10-24Admin can now modify database from web consoleFrederick Yin
2021-10-24Routine: strip away tzinfo from datetimeFrederick Yin
2021-10-24One major, multiple minor changes to DatabaseFrederick Yin
Major: - New update(umb) method as an interface to _update(umb), with convenience and safeguards. Minor: - New exception: UmbrellaValueError - All datetime objects are cast naive - Database._write(umbrellas) raises exception after performing recovery - human_datetime includes seconds in output
2021-10-24Database.group_by_status lists all statusesFrederick Yin
If there are no umbrellas that are overdue in the database, the behavior was to omit them from the returned dict. Now their values are []. Also, small comment fix.
2021-10-24Implement basic I/O of AdminLogFrederick Yin
2021-10-23Routine logging and test thereofFrederick Yin
2021-10-23Database high-level operations no longer require dateFrederick Yin
2021-10-22Reformat utils.pyFrederick Yin
2021-10-22Test process_overdueFrederick Yin
2021-10-22Mark overdue umbrellas in DatabaseFrederick Yin
2021-10-22UTC+8 timezone objectFrederick Yin
2021-10-22Tests: jForm mock data generator and routine testsFrederick Yin
2021-10-22Routines, to be run at an intervalFrederick Yin
2021-10-22JForm: fixes, comments, datatype, return valueFrederick Yin
2021-10-22Reformat exceptions.py with blackFrederick Yin
2021-10-22Exposed database operations take argument "date"Frederick Yin
Namely, Database.take_away and Database.give_back "date" is an instance of datetime.datatime
2021-10-22Define application-specific exceptionsFrederick Yin
2021-10-22Terminology: rename "checkpoint" to "bookmark"Frederick Yin
2021-10-22Mobile view for overdue tableFrederick Yin
This prevents banner and tile containers from overflowing to the left.
2021-10-21Basic interfacing with jForm APIFrederick Yin
Retrieve unread answer sheets from jForm.
2021-10-21Include licenses of dependenciesFrederick Yin
3-BSD for Flask MIT for user-agents
2021-10-21Mobile view for /admin/umbrellasFrederick Yin
2021-10-21Fix bug within human_timedeltaFrederick Yin
2021-10-20Frontend updatesFrederick Yin
I forgot what I exactly did
2021-10-20Separate "overdue" from "lent" as a distinct statusFrederick Yin
2021-10-20Add page /admin/umbrellasFrederick Yin
Lists all umbrellas in a table.
2021-10-20Update frontend, is more informational and prettyFrederick Yin
2021-10-20Adjust Flask server to new database methodsFrederick Yin
2021-10-20Move database utilities to database.pyFrederick Yin
It may not be a good idea to scatter database utilities around utils.py. With this in mind, I moved them to database.py as static methods under the class Database.
2021-10-20Move container style to top in cssFrederick Yin
2021-10-20More work on web consoleFrederick Yin
2021-10-19Add README and LICENSEFrederick Yin
2021-10-19echo "*.lock" >> .gitignoreFrederick Yin
2021-10-19Include sample DB fileFrederick Yin
2021-10-19Flask web server prototypeFrederick Yin
2021-10-19Database lockFrederick Yin
Is a lockfile named "$DATABASE_NAME.lock". `Database._write()` prevents race conditions by enforcing the lock, and waiting until a previous lock is released.
2021-10-19No more __main__ until further noticeFrederick Yin
2021-10-19Add .gitignoreFrederick Yin
2021-10-19Basic database operationsFrederick Yin
Define database format. Implement basic I/O operations and take_away / give_back methods.