Hi Gordona,
(dev list copied in case we need to submit a patch) - I have just seen
Dan's latest post so will contribute it properly:-)
So in case you want it before it goes through the process here it is.
Using documentation from Business::ISBN:
Changes are to:
/openils/lib/perl5/OpenILS/WWW/AddedContent$ diff Amazon.pm Amazon_safe.pm
9d8
< use Business::ISBN;
70,81d68
< # open( my $diag, '>>/tmp/diagISBN.log' );
< # print $diag "before: $key\n";
< # print $diag "length: " . length($key) . "\n";
< if (length($key) == 13) {
< my $isbn = Business::ISBN->new( $key );
< $isbn = $isbn->as_isbn10 if $isbn->type eq 'ISBN13';
< if (defined $isbn) {
< $key = $isbn->as_string([]);
< }
< }
< # print $diag "after : $key\n";
< # close ($diag);
So the subroutine (without diagnostic comments) is:
# returns the HTTP response object from the URL fetch
sub fetch_response {
my( $self, $page, $key ) = @_;
my $uname = $self->userid;
if (length($key) == 13) {
my $isbn = Business::ISBN->new( $key );
$isbn = $isbn->as_isbn10 if $isbn->type eq 'ISBN13';
if (defined $isbn) {
$key = $isbn->as_string([]);
}
}
my $url = $self->base_url . "$key.01.$page";
return $AC->get_url($url);
}
This of course assumes you are using Amazon content. I think we had to
restart caching to make it work.
Good luck.
Ian
On 07/10/2011 15:18, Gordana Vitez wrote:
Hi Ian,
I would be interested to know how you got this to work.
Thanks!
Gordana
Gordana Vitez
Library Services & Systems Coordinator
NC Libraries and Learning Commons
Niagara College
300 Woodlawn Rd
Welland Ontario
L3C 7L3
Phone: (905) 735 2211 ext 7404
Fax: (905) 736 6021
[email protected]
>>> Ian Bays <[email protected]> 10/7/2011 5:52 AM >>>
Hi Ben, Brian et al,
We came across this when trying to show images from Amazon. We know
from experience that Amazon mostly only responds to 10-digit ISBNs as
the Amazon ID matched the 10-digit ISBN. Amazon's line has always
been that they provide images keyed on their Amazon ID.
When loading data there are 10-digit and 13-digit ISBNs often in no
particular order. So we found the script in Evergreen that forms the
URL for the image from Amazon and test if the ISBN is 13-digits, and
if so convert it using Business::ISBN perl module to be a 10-digit
ISBN. So no messing with the data in bib at all. Seems to work well.
On our system the script to change is:
/openils/lib/perl5/OpenILS/WWW/AddedContent/Amazon.pm
We're happy to share - it's just a few lines. Maybe this should be on
the DEV list?
Also we noticed that if your ISBNs have hyphens in them then the ISBN
only comes through as the digits up to the first hyphen (in our case
usually "0"). We do get lots of cataloguers who believe ISBNs should
have hyphens. So we are weighing up removing hyphens in data
conversion versus finding the code that writes the ISBN field and
getting it to skip/ignore hyphens. Should make it look real pretty!
All the best.
Ian
On 06/10/2011 18:56, Ben Shum wrote:
Hi Brian,
As far as I know, the first ISBN entry of a record will always be
used to retrieve added content images. I'm not familiar with any
workarounds other than editing the records to order the information
in them accordingly, but maybe someone is working on this?
Otherwise, I think that'd be a useful feature to have in the future.
-- Ben
On 10/6/2011 1:17 PM, Brian Greene wrote:
In many cases covers won't display in our OPAC if the 13-digit ISBN
is above the 10-digit ISBN in the bib record. If I switch the order
of the ISBNs so that the 10-digit one is first then the cover
displays. This is the case most of the time, although I have come
across instances where the 13-digit ISBN displays the cover
properly. Does anyone know of a fix for this? Is there a setting we
can change to use a second ISBN if the first one doesn't retrieve a
cover? We're running 2.1.
Thanks,
Brian Greene, Library Director
Columbia Gorge Community College
The Dalles, Oregon 97058
(541) 506-6080 | www.cgcc.cc.or.us <http://www.cgcc.cc.or.us/>
--
Benjamin Shum
Open Source Software Coordinator
Bibliomation, Inc.
32 Crest Road
Middlebury, CT 06762
203-577-4070, ext. 113
--
Ian Bays
Director of Projects
PTFS Europe
mobile: +44 (0) 7774995297
phone: +44 (0) 800 756 6803
skype: ian.bays
email:[email protected]
--
Ian Bays
Director of Projects
PTFS Europe
mobile: +44 (0) 7774995297
phone: +44 (0) 800 756 6803
skype: ian.bays
email: [email protected]