@@ -, +, @@ [OPACBASEURL]/cgi-bin/koha/ilsdi.pl?service=GetAvailability&id=[BIBLIONUMBER]&id_type=biblio and [OPACBASEURL]/cgi-bin/koha/ilsdi.pl?service=GetAvailability&id=[ITEMNUMBER]&id_type=item (Where the [OPACBASEURL] is the OPAC URL of your test instance, [BIBLIONUMBER] and [ITEMNUMBER] are a record number and item number of your choice.) [OPACBASEURL]/cgi-bin/koha/ilsdi.pl?service=GetAvailability&id=[BIBLIONUMBER]&id_type=biblio&language=[LANGUAGE] and [OPACBASEURL]/cgi-bin/koha/ilsdi.pl?service=GetAvailability&id=[ITEMNUMBER]&id_type=item&language=[LANGUAGE] (Where the [OPACBASEURL] is the OPAC URL of your test instance, [BIBLIONUMBER] and [ITEMNUMBER] are a record number and item number of your choice, [LANGUAGE] is a language code ex: 'en' or 'fr-FR') --- C4/ILSDI/Services.pm | 16 +++++++++------- .../opac-tmpl/bootstrap/en/modules/ilsdi.tt | 2 ++ opac/ilsdi.pl | 2 +- 3 files changed, 12 insertions(+), 8 deletions(-) --- a/C4/ILSDI/Services.pm +++ a/C4/ILSDI/Services.pm @@ -956,8 +956,10 @@ sub _availability { my ($itemnumber) = @_; my $item = Koha::Items->find($itemnumber); + use Koha::I18N; + unless ( $item ) { - return ( undef, 'unknown', 'Error: could not retrieve availability for this ID', undef ); + return ( undef, __('unknown'), __('Error: could not retrieve availability for this ID'), undef ); } my $biblionumber = $item->biblioitemnumber; @@ -966,17 +968,17 @@ sub _availability { my $itemcallnumber = $item->itemcallnumber; if ( $item->notforloan ) { - return ( $biblionumber, 'not available', 'Not for loan', $location, $itemcallnumber ); + return ( $biblionumber, __('not available'), __('Not for loan'), $location, $itemcallnumber ); } elsif ( $item->onloan ) { - return ( $biblionumber, 'not available', 'Checked out', $location, $itemcallnumber ); + return ( $biblionumber, __('not available'), __('Checked out'), $location, $itemcallnumber ); } elsif ( $item->itemlost ) { - return ( $biblionumber, 'not available', 'Item lost', $location, $itemcallnumber ); + return ( $biblionumber, __('not available'), __('Item lost'), $location, $itemcallnumber ); } elsif ( $item->withdrawn ) { - return ( $biblionumber, 'not available', 'Item withdrawn', $location, $itemcallnumber ); + return ( $biblionumber, __('not available'), __('Item withdrawn'), $location, $itemcallnumber ); } elsif ( $item->damaged ) { - return ( $biblionumber, 'not available', 'Item damaged', $location, $itemcallnumber ); + return ( $biblionumber, __('not available'), __('Item damaged'), $location, $itemcallnumber ); } else { - return ( $biblionumber, 'available', undef, $location, $itemcallnumber ); + return ( $biblionumber, __('available'), undef, $location, $itemcallnumber ); } } --- a/koha-tmpl/opac-tmpl/bootstrap/en/modules/ilsdi.tt +++ a/koha-tmpl/opac-tmpl/bootstrap/en/modules/ilsdi.tt @@ -124,6 +124,8 @@
return_fmt (Optional)
requests a particular format or set of formats in reporting availability
+
language (Optional)
+
requests a particular language for the output, default is the opac cookie language if set, the first language in opac language list or english

Example call

--- a/opac/ilsdi.pl +++ a/opac/ilsdi.pl @@ -100,7 +100,7 @@ my %required = ( # List of optional arguments my %optional = ( 'Describe' => [], - 'GetAvailability' => [ 'return_type', 'return_fmt' ], + 'GetAvailability' => [ 'return_type', 'return_fmt', 'language' ], 'GetRecords' => ['schema'], 'GetAuthorityRecords' => ['schema'], 'LookupPatron' => ['id_type'], --