Bug 32445: (follow-up) Fix availability display on opac-course-details
[srvgit] / opac / svc / overdrive_proxy
index 9751f63..9422079 100755 (executable)
@@ -39,15 +39,15 @@ use JSON;
 
 use C4::Context;
 use C4::External::OverDrive;
-use C4::Output;
+use C4::Output qw( output_with_http_headers );
 
 use Koha;
 
-my $query = new CGI;
+my $query = CGI->new;
 
 my $token;
 
-if ( !IsOverDriveEnabled() || !( $token = GetOverDriveToken() ) ) {
+if ( !(C4::Context->preference('OverDriveClientKey') && C4::Context->preference('OverDriveClientSecret')) || !( $token = GetOverDriveToken() ) ) {
     print $query->header(
         -status => '400 Bad Request',
     );
@@ -59,10 +59,11 @@ if ( !IsOverDriveEnabled() || !( $token = GetOverDriveToken() ) ) {
 
     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() );