Made it possible to view uncategorized books
Also "specialized" lists of books (categorized, on shelf, checked out, uncategorized) don't revert to the main book list when refreshing.
This commit is contained in:
parent
91f1ff9c55
commit
89c66c8188
15
librarian
15
librarian
|
@ -119,13 +119,23 @@ def trashMenu():
|
|||
b.eventLoop()
|
||||
b.clear()
|
||||
|
||||
def uncategorizedMenu():
|
||||
w=curses.newwin(3,5)
|
||||
b = browser.bookBrowser(w,hb)
|
||||
(r,c) = w.getmaxyx()
|
||||
(my,mx)=stdscr.getmaxyx()
|
||||
w.mvwin((my-r)//2 -2, (mx-c)//2)
|
||||
b.refreshBooksUncategorized()
|
||||
b.eventLoop()
|
||||
b.clear()
|
||||
|
||||
def checkedout_menu():
|
||||
w=curses.newwin(3,5)
|
||||
b = browser.bookBrowser(w,hb)
|
||||
(r,c) = w.getmaxyx()
|
||||
(my,mx)=stdscr.getmaxyx()
|
||||
w.mvwin((my-r)//2 -2, (mx-c)//2)
|
||||
b.load_data(db.get_checkedout_books())
|
||||
b.refreshBooksCheckedout()
|
||||
b.columnDefs = [("id",0,3),
|
||||
("uwid",0,8),
|
||||
("date",0,10),
|
||||
|
@ -140,7 +150,7 @@ def onshelf_menu():
|
|||
(r,c) = w.getmaxyx()
|
||||
(my,mx)=stdscr.getmaxyx()
|
||||
w.mvwin((my-r)//2 -2, (mx-c)//2)
|
||||
b.load_data(db.get_onshelf_books())
|
||||
b.refreshBooksOnshelf()
|
||||
b.eventLoop()
|
||||
b.clear()
|
||||
|
||||
|
@ -172,6 +182,7 @@ if __name__ == "__main__":
|
|||
("Add Book", addForm),
|
||||
("Categories", catMenu),
|
||||
("View Trash", trashMenu),
|
||||
("View Uncategorized Books", uncategorizedMenu),
|
||||
("",exit),
|
||||
("Check Out a Book", co_menu),
|
||||
("Return a Book", return_menu),
|
||||
|
|
|
@ -148,6 +148,18 @@ def getRemovedBooks():
|
|||
c.close()
|
||||
return books
|
||||
|
||||
def getUncategorizedBooks():
|
||||
conn = sqlite3.connect(_catalogue_db_file)
|
||||
c = conn.cursor()
|
||||
query = ("SELECT "+",".join(map(_colify,columns))+" FROM "+_book_table+
|
||||
" WHERE id NOT IN (SELECT id FROM "+_book_category_table+")"+
|
||||
" AND deleted=0;")
|
||||
c.execute(query)
|
||||
books = [_query_to_book(b) for b in c]
|
||||
c.close()
|
||||
return books
|
||||
|
||||
|
||||
def get_book(bookid):
|
||||
conn = sqlite3.connect(_catalogue_db_file)
|
||||
c = conn.cursor()
|
||||
|
|
|
@ -375,7 +375,20 @@ class bookBrowser(browserWindow):
|
|||
self.load_data(db.get_books())
|
||||
|
||||
def refreshBooksInCategory(self,cat):
|
||||
self.load_data(db.getBooksByCategory(cat))
|
||||
self.refreshBooks = lambda : self.load_data(db.getBooksByCategory(cat))
|
||||
self.refreshBooks()
|
||||
|
||||
def refreshBooksUncategorized(self):
|
||||
self.refreshBooks = lambda : self.load_data(db.getUncategorizedBooks())
|
||||
self.refreshBooks()
|
||||
|
||||
def refreshBooksCheckedout(self):
|
||||
self.refreshBooks = lambda : self.load_data(db.get_checkedout_books())
|
||||
self.refreshBooks()
|
||||
|
||||
def refreshBooksOnshelf(self):
|
||||
self.refreshBooks = lambda : self.load_data(db.get_onshelf_books())
|
||||
self.refreshBooks()
|
||||
|
||||
def handleInput(self,ch):
|
||||
browserWindow.handleInput(self,ch)
|
||||
|
|
Loading…
Reference in New Issue