Support for Drupal 7 is ending on 5 January 2025—it’s time to migrate to Drupal 10! Learn about the many benefits of Drupal 10 and find migration tools in our resource center.
The opac module enables libraries to integrate their catalog into Drupal allowing importing records, make advanced searches with faceted results, circulation task etc ... This module is intended to work with any ILS by using connectors. Everyone can make its own by creating a php file.
Features
- Importing bibliographics records as nodes into Drupal
- creating one or more ILS server from which importing data
- defining your own mapping and rules for getting records
- defining which fields to display about items or patron accounts
- creating taxonomy terms on record fields
- getting covers based on ISBN checking
- showing items availability for a given record
- borrowers can renew a loan, hold an item, cancel holds
- viewing marc data (for compliant ILS)
Modules included:
- OPAC: The main module. Allows to create ILS backends, define mapping, rules and harvest records
- Cover: Get the cover of a documents based on ISBN
- Items: Get items informations
- Opac users: Allows library borrwers to make operation on items and views account informations
- Marc: Provides a Marc view of bibliographics record for compliant systems
Links
Project: http://drupal.org/sandbox/AlexArnaud/1570572
Git: git.drupal.org:sandbox/AlexArnaud/1570572.git
This module is for Drupal 7.
Comments
Comment #1
paul_poulain CreditAttribution: paul_poulain commentedNote that this project is sponsored by BibLibre, a french company dedicated to Free Software for libraries. We are well known to be the largest contributor to Koha, a GPL Integrated Library System.
The Drupal-Opac module is tested with Koha as back-end ILS. It should be live soon in a few libraries that are our customers.
Also Note that this module will be presented at the KohaCon12, in Edinburgh, UK, in june : http://wiki.koha-community.org/wiki/KohaCon12_Schedule#Timings (day 3)
Comment #2
patrickd CreditAttribution: patrickd commentedwelcome,
I see you already fixed some issues of the automated review, to avoid name clashes with other modules, I'd recommend to prefix submodules with opac_. (eg. there already is a module named "marc")
http://ventral.org/pareview/httpgitdrupalorgsandboxalexarnaud1570572git
php = 5.2
not necessary as d7 requires 5.2 anywayversion = "7.x-1.x-dev"
also from the submodulesUnfortunately this module is really bad documented, only few of the functions are commented properly and there are nearly no inline comments. To make it easier for other developers to understand and contribute to your code it would be good to enhance this.
We do really need more hands in the application queue and highly recommend to get a review bonus so we can come back to your application sooner.
regards
Comment #3
Alex Arnaud CreditAttribution: Alex Arnaud commentedHi patrickd,
Thank you for the reply. I did lot of works to fix this issues. Now it needs review again.
Comment #4
Alex Arnaud CreditAttribution: Alex Arnaud commentedComment #5
Alex Arnaud CreditAttribution: Alex Arnaud commentedI think this module is quite a bit complicated to setup and then to test/review because it needs an Integrated Library system as backend of a drupal site. So here is a Quick start guide that will help you to set up the module step by step using a demo ILS backend:
http://drupac.biblibre.com/drupal-opac/demo
Comment #6
Alex Arnaud CreditAttribution: Alex Arnaud commentedComment #7
laurenthdl CreditAttribution: laurenthdl commentedgone through the http://ventral.org/pachecklist
Basic application Checks: OK
Basic Repository Checks: OK
Licensing Checks :OK
Documentation Checks : OK
http://ventral.org/pareview/httpgitdrupalorgsandboxalexarnaud1570572git
API Review : OK
Documentation : OK
It is not a duplication of any module.
It could be compared to extensible_catalog : but it does not use the same philosophy and design is there to make it both flexible and configurable.
Configuration is quite easy.
It also could be compared to some specific module for OPAC such as Millenium Integration. But since it aims at some independance from any ILS, that module is interesting.
Comment #8
klausiWe are currently quite busy with all the project applications and I can only review/approve projects with a review bonus. Please help me reviewing and I'll take a look at your project right away :-)
Comment #9
mitchell CreditAttribution: mitchell commentedAlex Arnaud, thanks for your contribution! This can be a difficult process sometimes, so I appreciate your patience as well. But I encourage you to push on and keep up the good work.
The only recommendation I have is on accessibility and maintainability, which is to host your documentation on drupal.org so that the community tools for continuing to edit and extend it are also available. I think the Libraries Interest Group would be a good place to find potential users and organizations that may benefit from this project. If you post a writeup there about how you use this and what they can expect by installing it, then that would be a good way to get some good feedback and reviews.
laurenthdl, that's a very helpful review, I appreciate it. Since this is your first review, I would rather wait and get more feedback from other reviewers as well before having this marked as ready to go.
Thanks again to everyone involved here!
Comment #10
krylov CreditAttribution: krylov commentedPlease consider the following suggestions for the opac .module code:
General:
Comment on what each of your function does.
Per line:
1. Unused constant?
2 define("OPAC_CONTENT_TYPE", "biblio_record");
3. Unused constant?
3 define("OPAC_SERVER_ID_FIELD", OPAC_CONTENT_TYPE . "_serverid");
4. Unused constant?
4 define("OPAC_BIBID_FIELD", OPAC_CONTENT_TYPE ."_biblionumber");
5.
5 function opac_node_isbn($isbn) {
156 }
delete this function.
Comment #11
krylov CreditAttribution: krylov commentedComment #12
Alex Arnaud CreditAttribution: Alex Arnaud commentedHi krylov,
Thank you for spending some of your time on the opac module and thanks for your suggestions. I have removed the unused constants.
But, opac_node_isbn function no longer exists in the 7.x-1.x branch.
Comment #13
ArtusamakI think that this module is solid to jump into official contrib, they created documentation there http://drupal.org/node/1677586 and the design of the code looks really ok.
I would vote for a go!
Comment #14
chx CreditAttribution: chx commentedI updated your account to let you promote this to a full project and also create new projects as either a sandbox or a "full" project.
Here are some recommended readings to help with excellent maintainership:
You can find lots more contributors chatting on IRC in #drupal-contribute. So, come hang out and get involved!
Thanks, also, for your patience with the review process. Anyone is welcome to participate in the review process. Please consider reviewing other projects that are pending review. I encourage you to learn more about that process and join the group of reviewers.
Thanks to the dedicated reviewer(s) as well.