Exlibris::Aleph

Exlibris::Primo offers a set of libraries for interacting with the ExLibris Aleph ILS.

Exlibris::Aleph::Patron

Exlibris::Aleph::Patron provides access to the Aleph Patron REST API.

Example of Exlibris::Aleph::Patron in action

patron = 
  Exlibris::Aleph::Patron.
    new("S0M31D", "http://aleph.institution.edu")
patron.address # Returns HTTParty::Response of patron's address
patron.loans # Returns HTTParty::Response patron's loan
patron.renew_loans # Renews all loans
patron.renew_loans("ADM5000000001") # Renews loan of item 00000001 in ADM50
patron.place_hold("ADM50", "SBLIB", "00000001", "00000001", {:pickup_location => "SBLIB"}) # Places hold on the specified item for pickup at SBLIB

Exlibris::Aleph::Record

Provides access to the Aleph Record REST API.

Example of Exlibris::Aleph::Record in action

record = 
  Exlibris::Aleph::Record.
    new("ADM50", "00000001", "http://aleph.institution.edu")
record.bib # Returns HTTParty::Response of record's bibliographic metadata
record.holdings # Returns HTTParty::Response of record's holdings
record.items # Returns HTTParty::Response of record's items

Exlibris::Aleph::TabHelper

Exlibris::Aleph::TabHelper provides a way to access the various tab settings for patrons, patron_permissions, items, item_permission (both by item status and by item processing status), collections and pickup locations. It also provides convenience methods for common tasks like getting the pickup location for a given combination of item status, item process status and borrower status or getting an item’s web text. Support a

Example of Exlibris::Aleph::TabHelper in action

# Placed this in an initializer.
Exlibris::Aleph::TabHelper.init("/mnt/aleph_tab", ["ADM50", "ADM50"])

# Rake task to refresh the config yml files
rake exlibris:aleph:refresh

# Get an instance of TabHelper
helper = Exlibris::Aleph::TabHelper.instance
helper.sub_library_text("SBLIB") # Returns display text for the give code
helper.sub_library_adm("SBLIB") # Returns ADM for the give code
helper.item_pickup_locations({:adm_library_code => "ADM50", :sub_library_code => "SBLIB", :bor_status => "51"}) # Returns the pickup locations for the given parameters
helper.collection_text({:adm_library_code => "ADM50", :sub_library_code => "SBLIB", :collection_code => "MAIN"}) # Returns the collection display text for the give parameters
helper.item_web_text({:adm_library_code => "ADM50", :item_process_status => "Item Process Status"}) # Returns the web text for the given parameters
helper.item_web_text({:adm_library_code => "ADM50", :sub_library_code => "SBLIB", :item_process_status_code => "DP"}) # Returns the web text for the given parameters

Exlibris::Aleph::BorAuth

Exlibris::Aleph::BorAuth provides access to the BorAuth Aleph XService.

Example of Exlibris::Aleph::BorAuth in action

bor_auth = 
  Exlibris::Aleph::BorAuth.
    new("http://aleph.institution.edu", "ADM50", "SBLIB", "N", "S0M31D", "V3R1F1C@T10N")
permissions = bor_auth.permissions # Return a Hash of permissions based on the Exlibris::Aleph::BorAuth instance