1 commit
Author | SHA1 | Message | Date | |
---|---|---|---|---|
Jared Camins-Esakov
|
44d0ad451f |
Bug 10240: Offline circulation using HTML5 and IndexedDB
This patch adds an HTML5-based offline mode to Koha's existing circulation module, allowing librarians to check out items using a basically familiar interface. The feature will be implemented using the Application Cache and IndexedDB features of the HTML5 specification, both of which are fully supported on Firefox 10+ and Chrome 23+, with limited support going back to Firefox 4 and Chrome 11. The basic workflow enabled by this patch is as follows: Part 1: While connected to the Internet 1. Enable offline functionality by turning on the "AllowOfflineCirculation" system preference. 2. Sync the offline circulation database on the computer that will be used for offline circulation by following the "Offline circulation interface" link on the Circulation home page, choosing "Synchronize (must be online)", and clicking the "Download records" button. This process may take a while. 3. Bookmark /cgi-bin/koha/circ/offline.pl (the page you are currently on) for easy access when offline. Part 2: While disconnected from the Internet 4. Navigate to /cgi-bin/koha/circ/offline.pl using the bookmark you created while online. 5. Start checking books in by scanning the barcode of an item that has been returned into the box in the "Check in" tab. 6. Scan the barcodes of any additional items that have been returned. 7. Start checking out books to a patron by scanning the patron's barcode in the box in the "Check out" tab. 8. Set a due date (the "Remember for session" box will be checked by default, since circulation rules are not computed during offline transactions and therefore a due date must be specified by the librarian). 9. Scan an item barcode (if you did not set a due date, it will prompt you) to check the item out to the patron. 10. If a patron has a fine you can see the total amount (current to when the offline module was synced), and record a payment. Unlike when in online mode, there will be no breakdown of what item(s) fines are for, and you will only be able to record the payment amount and not associate it with a particular item. Part 3: While connected to the Internet 11. Click the "Synchronize" link and choose "Upload transactions" to upload the transactions recorded during the offline circulation session. 12. Navigate to /cgi-bin/koha/offline_circ/list.pl (there will be a link from the Offline circulation page) and review the transactions, as described in the documentation for the Firefox Offline circulation plugin: http://wiki.koha-community.org/wiki/Offline_circulation_firefox_plugin RM note: the IndexedDB jQuery plugin bundled with this patch is copyright 2012 by Parashuram Narasimhan and other contributors and is licensed under the MIT license. The home page for the plugin is http://nparashuram.com/jquery-indexeddb/. Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz> Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com> Comment: Works very well, no koha-qa errors Test with Firefox 24.0 1) did some checkouts pre sync 2) synchronize database (Download) 3) go offline 4) Proceed to checkin some items from patron 5) Proceed to checkout items to patrons, setting date 6) Proceed to checkout to expired patron, warning appears 7) go online 8) Upload records 9) go to review transacctions and proceed 10) verified on patrons that checkin/out are done Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz> Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com> |