def on_loan_update(loan): store = web.ctx.site.store key = "ebooks" + loan['book'] doc = store.get(key) or {} doc.update({"type": "ebook", "book_key": loan['book'], "borrowed": "true"}) store[key] = doc # TODO: differentiate between loan-updated and loan-created msgbroker.send_message("loan-created", loan)
def on_loan_update(loan): store = web.ctx.site.store key = "ebooks" + loan["book"] doc = store.get(key) or {} doc.update({"type": "ebook", "book_key": loan["book"], "borrowed": "true"}) store[key] = doc # TODO: differentiate between loan-updated and loan-created msgbroker.send_message("loan-created", loan)
def on_loan_delete(loan): loan['returned_at'] = time.time() store = web.ctx.site.store key = "ebooks" + loan['book'] doc = store.get(key) or {} doc.update({ "type": "ebook", "book_key": loan['book'], "borrowed": "false" }) store[key] = doc msgbroker.send_message("loan-completed", loan)
def on_loan_update(loan): store = web.ctx.site.store # key = "ebooks" + loan['book'] # doc = store.get(key) or {} # doc.update({ # "type": "ebook", # "book_key": loan['book'], # "borrowed": "true" # }) # store[key] = doc # update the waiting list and ebook document. waitinglist.update_waitinglist(loan['book']) # TODO: differentiate between loan-updated and loan-created msgbroker.send_message("loan-created", loan)
def on_loan_delete(loan): loan["returned_at"] = time.time() store = web.ctx.site.store key = "ebooks" + loan["book"] doc = store.get(key) or {} # Check if the book still has an active loan borrowed = "false" loan_keys = web.ctx.site.store.query("/type/loan", "resource_id", loan["resource_id"]) if loan_keys: borrowed = "true" doc.update({"type": "ebook", "book_key": loan["book"], "borrowed": borrowed}) store[key] = doc msgbroker.send_message("loan-completed", loan)
def on_loan_delete(loan): loan['returned_at'] = time.time() store = web.ctx.site.store key = "ebooks" + loan['book'] doc = store.get(key) or {} # Check if the book still has an active loan borrowed = "false" loan_keys = web.ctx.site.store.query('/type/loan', 'resource_id', loan['resource_id']) if loan_keys: borrowed = "true" doc.update({ "type": "ebook", "book_key": loan['book'], "borrowed": borrowed }) store[key] = doc msgbroker.send_message("loan-completed", loan)
def on_loan_delete(loan): store = web.ctx.site.store loan['returned_at'] = time.time() # Check if the book still has an active loan # borrowed = "false" # loan_keys = store.query('/type/loan', 'resource_id', loan['resource_id']) # if loan_keys: # borrowed = "true" # key = "ebooks" + loan['book'] # doc = store.get(key) or {} # doc.update({ # "type": "ebook", # "book_key": loan['book'], # "borrowed": borrowed # }) # store[key] = doc # update the waiting list and ebook document. waitinglist.update_waitinglist(loan['book']) msgbroker.send_message("loan-completed", loan)
def on_new_version(self, page): """Fires page.edit event using msg broker.""" # The argument passes by Infobase is not a thing object. # Create a thing object to pass to event listeners. page = web.ctx.site.get(page['key']) msgbroker.send_message("page.edit", page)
def on_page_edit(page): if page.key.startswith("/libraries/"): msgbroker.send_message("page.edit.libraries", page)