Exemple #1
0
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)
Exemple #2
0
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)
Exemple #3
0
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)
Exemple #4
0
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)
Exemple #5
0
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)
Exemple #6
0
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)
Exemple #7
0
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)
Exemple #8
0
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)
Exemple #9
0
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)
Exemple #10
0
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)
Exemple #11
0
 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)
Exemple #12
0
def on_page_edit(page):
    if page.key.startswith("/libraries/"):
        msgbroker.send_message("page.edit.libraries", page)