library/TODO

46 lines
1.7 KiB
Plaintext

_List of Desired Features_
Regex Search
Choose shown columns in browser
Support for multiple copies
- (better support, that is)
Search function in db_layer
- eventually something which takes things like "title:foo author:bar some other keywords"
Don't let patrons with overdue books checkout more books
_Code Quality Improvements_
Make the various windows centre themselves
Document all functions
Conform to python naming conventions and code style
Make db_layer use a helper function to handle most of the database queries
Unify the db_layer interface w.r.t. whether book_ids should be passed as strings or ints or dicts.
Deal with unicode in a proper manner.
_Bugs_
Error when entering bad ISBN e.g. 02010798X (instead of 020107981X)
- seems to be an intermittant error, likely related to polling openLibrary
Error on search
- related to strings in Python3
When the top element shown is highlighted in the browser window, and pgUp is pressed (causing a scrollup), the bottom border of the window turns into 'qqqqqqqq'.
- does not happen when up_arrow is pressed.
Error checking out an already checked out book
- SQLite integrity check failure
Multiple failed emails print to the terminal in a way that can't be readable.
Database has various quirks and issues, the way queries are done is absolutely wild.
_Implemented Features_
Categories work based on selection, not just highlight
Sort by column in browser
*Support UTF-8 for everything*
Search ignores Case (for lowercase search strings)
Text entry supports longer string
Home and End navigate to top and bottom of catalogue respectively.
Support for multiple copies
- books will have their book_id written in pencil on inside cover