@@ -, +, @@ --- .../bootstrap/en/modules/opac-overdrive-search.tt | 10 +++++++--- koha-tmpl/opac-tmpl/bootstrap/js/overdrive.js | 2 +- opac/svc/overdrive_proxy | 3 ++- 3 files changed, 10 insertions(+), 5 deletions(-) --- a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-overdrive-search.tt +++ a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-overdrive-search.tt @@ -78,13 +78,17 @@ $availability_summary.html( '' + _("Availability:") + ' ' + _("Loading...") ); KOHA.OverDrive.Get( - prod.links.availability.href, - {}, + prod.links.availabilityV2.href, + { version: 2}, function ( data ) { if ( data.error ) return; if( data.availabilityType == 'AlwaysAvailable' ){ $availability_summary.html( '' + _("Availability:") + ' ' + '' + _("Always available") + '' ); + } else if ( data.availabilityType == 'LimitedAvailability' && data.available ) { + $availability_summary.html( '' + _("Availability:") + ' ' + '' + _("Currently available") + '' ); + } else if ( !data.available ) { + $availability_summary.html( '' + _("Availability:") + ' ' + '' + _("Currently unavailable") + '' ); } else { $availability_summary.html( '' + _("Availability:") + ' ' + '' + _("Items available:") + ' ' + data.copiesAvailable + " " + _("out of") + ' ' + data.copiesOwned + '' ); } @@ -94,7 +98,7 @@ } $tr.find( '.info' ).each(function() { - KOHA.OverDriveCirculation.add_actions(this, data.id, data.copiesAvailable); + KOHA.OverDriveCirculation.add_actions(this, data.reserveId, data.copiesAvailable); }); } ); --- a/koha-tmpl/opac-tmpl/bootstrap/js/overdrive.js +++ a/koha-tmpl/opac-tmpl/bootstrap/js/overdrive.js @@ -11,7 +11,7 @@ KOHA.OverDrive = ( function() { Get: function( url, params, callback ) { $.ajax( { type: 'GET', - url: url.replace( /https?:\/\/api.overdrive.com\/v1/, proxy_base_url ), + url: url.replace( /https?:\/\/api.overdrive.com\/v[1|2]/, proxy_base_url ), dataType: 'json', data: params, error: function( xhr, error ) { --- a/opac/svc/overdrive_proxy +++ a/opac/svc/overdrive_proxy @@ -59,10 +59,11 @@ if ( !(C4::Context->preference('OverDriveClientKey') && C4::Context->preference( exit; } +my $version = $query->param('version') // 1; my $fixed_query = $query->query_string; $fixed_query =~ tr/;/&/; -my $request = HTTP::Request::Common::GET( "https://api.overdrive.com/v1" . $query->path_info . '?' . $fixed_query ); +my $request = HTTP::Request::Common::GET( "https://api.overdrive.com/v$version" . $query->path_info . '?' . $fixed_query ); $request->header( Authorization => $token ); my $ua = LWP::UserAgent->new( "Koha " . Koha::version() ); --