I got a few nice things working this week. First, the multi-step minnows submission process is running. I scheduled a meeting for Thursday, but Jon forgot about it, so we'll try again next week.
Next, I integrated Barbara Bishop's gifs of the library maps into our devcat vufind install. I used ImageMagic to down-rez Barbara's images, and convert them to PNG, and wired up vufind to popup a YUI-2 panel to display the map. Barbara and Marliese gave some good feedback, but we haven't released the code to catalog yet - bla.
When working on the maps thing I stumbled across the fact that our "retrieve X from stacks" request system consists of a patron writing down what he/she wants and handing it to circulation. I'd like to try to setup an online system - submit a request, and get an e-mail or text when the item is at circulation kind of thing.
Finally I implemented a MultiVoyager.php vufind driver for some people on the vufind e-mail list. I sent out the following e-mail, but haven't heard back from anyone. Bla.
--- Reuben Pasquini 10/31/2010 4:57 PM --- Hi David, I was able to get a simple 2-ILS system working at Auburn on our dev server. Here's what I did. *. Setup a solrmarc import that prepends an ILS-specific prefix to each record. You can get something working quickly by modifying the 'id' rule in the solrmarc marc.properties to: id = script(customId.bsh),getCustomId("PREFIX") where customId.bsh has: import org.marc4j.marc.Record; import org.marc4j.marc.ControlField; /** * Generate a custom id as prefix + 001 */ public String getCustomId( Record record, String prefix ) { return prefix + ((ControlField) record.getVariableField( "001" )).getData(); } ......................................... *. I wrote a MultiVoyager.php driver that reads MultiVoyager.ini and maintains a list of Voyager.php driver instances. I attached a copy of MultiVoyager.ini, or you can clone a copy out of our Mercurial repository: http://catalog.lib.auburn.edu/cgi-bin/hgwebdir.cgi/vufind/ The MultiVoyager.ini file maps a prefix to and ILS config - an example follows. The "EMPTY" keyword indicates no prefix. This example works for records that look like 12345 (no prefix) and AUM12345 (AUM prefix). MultiVoyager.ini: [Catalog] configList = EMPTY,AUM defaultDriver = EMPTY [EMPTY] host = bla port = 1521 service = VGER user = bla password = bla database = bla pwebrecon = http://pooh.lib.auburn.edu:7008/vwebv/holdingsInfo [AUM] host = bla port = 1521 service = VGER user = bla password = bla database = bla pwebrecon = http://pooh.lib.auburn.edu:7008/vwebv/holdingsInfo ........................................ *. I had to patch a few other php lines here and there too to get the ajax load of holding status working right, modify Voyager.php to accept a config in the constructor rather than load Voyager.ini, ... - stuff like that. The complete patch is here, but our vufind code is pretty far out of date compard to vufind.org: http://catalog.lib.auburn.edu/cgi-bin/hgwebdir.cgi/vufind/rev/9e94166d5e0b ........................ Hope this code works for you - let me know how it goes. Cheers, Reuben -----Original Message----- From: Reuben Pasquini [mailto:rdp0004@auburn.edu] Sent: Monday, October 18, 2010 1:20 PM To: Harmon, Kelly; vufind-general@lists.sourceforge.net; Osullivan L. Subject: Re: [VuFind-General] Anyone merging more than one VoyagerDatabaseintoVuFind? At Auburn we currently only index one Voyager database, but we also OAI harvest other collections. An easy trick is to just prepend a unique prefix before the normal bib-id. For example - we have 'SLEDGE143' and '143' records: http://catalog.lib.auburn.edu/vufind/Record/SLEDGE143 http://catalog.lib.auburn.edu/vufind/Record/143 I think you'll have to hack at least 2 things to get this scheme to work: *. Modify Drivers/Voyager.php to manage connections to multiple Oracle servers, and choose a connection based on the id-prefix. *. Modify the solrmarc vufind.properties file, and replace id = 001, first with something like id = my001WithPrefixFunction ... something like that. I'd like to do something like this myself, but it keeps falling off the end of my TODO list. Let me know if you need help implementing this, and I'll set aside a day or two to give it a try. Cheers, Reuben
No comments:
Post a Comment