[VUFIND-319] The Innovative driver returns invalid(?) results when there is no bibitems table in the Millennium WebOPAC Created: 07/Sep/10 Updated: 27/Sep/10 |
|
Status: | Open |
Project: | VuFind® |
Components: | ILS Driver |
Affects versions: | 1.0 |
Fix versions: | Wishlist |
Type: | Bug | Priority: | Major |
Reporter: | bauderj | Assignee: | Unassigned |
Resolution: | Unresolved | Votes: | 0 |
Labels: | None | ||
Remaining Estimate: | Not Specified | ||
Time Spent: | Not Specified | ||
Original estimate: | Not Specified | ||
Environment: | Innovative Millennium Release 2009B; Ubuntu 10.04 |
Description |
When using the Innovative driver, on the /Search/Results page, if any record on that page does not have a bibItems table in the Millennium WebOPAC, the status for that item and for every item below it on the page will display as "Loading..." forever. There is often not a bibItems table when there are no physical holdings associated with a record, such as for online-only resources. The AJAX response for records without bibitems tables looks like this: <AJAXResponse> <item id=".b14595552"> <availability>false</availability> <location/> <reserve/> <callnumber/> </item> </AJAXResponse> Locally, I've implemented a quick-and-dirty fix by adding some code to the end of the foreach loop in getStatus($id) in Innovative.php to assign records with no bibItems table and a URL in an 856 the location and call number "Online Resource": if ($ret[$count-2]['status'] == NULL && $count > 1 && stripos($result, 'URLforCRL') > -1) { $ret[$count-2]['id'] = $id; $ret[$count-2]['number'] = 1; $ret[$count-2]['location'] = "Online Resource"; $ret[$count-2]['reserve'] = 'N'; $ret[$count-2]['availability'] = 1; $ret[$count-2]['callnumber'] = "Online Resource"; } We had previously modified our Millennium WebOPAC display to assign the id "URLforCRL" to the div that wraps URLs in 856 fields (this allowed us to grab that URL for a script running in the classic Millennium WebOPAC). I'm not sure if there's a way to do this that doesn't depend on modifying the Millennium WebOPAC templates to assign an id there. This only fixes the problems for records with no bibitems table (so, no physical holdings) and with a URL in an 856. If there were to be records with no bibitems table and no 856, the problem would still occur. |