Browse Source

Bug 20799: Add link from biblio to ILL detail view

Some ILL systems (e.g. Libris in Sweden) require a link between
a biblio and an ILL request. When such a link exists it is nice
to display an actual link from the biblio detail view to the
ILL request detail view. This patch adds such a link. For users
without ILL privileges, the requests should still show, but not
be clickable links.

To test:
- Make sure you have a couple of ILL requests created with the
  FreeForm backend. (FreeForm does not let you tie a request to
  a biblio through the UI, but we will add connections directly
  in the database.) Lets assume these have illrequest_id's a and b.
- Make sure you have a record, let's call the biblionumber x.
- Apply the patch and make sure there are no changes in the biblio
  detail view of biblionumber x.
- Log into the database and connect the biblio to the first request:
  UPDATE illrequests SET biblio_id = x where illrequest_id = a;
- Check that the biblio detail view now says this:
  "ILL requests: Request a"
- Verify that the "Request a" part is a working link to the detail
  view of ILL request a.
- Do this in the database:
  UPDATE illrequests SET biblio_id = x where illrequest_id = b;
- Check that the biblio detail view now says this:
  "ILL requests: Request a, Request b"
- Verify the links work as expected.
- Log in as a staff user and check that the requests are still
  listed, but not displayed as clickable links.
- Sign off

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
20.11.x
Magnus Enger 4 years ago
committed by Jonathan Druart
parent
commit
9a6b28a914
  1. 5
      catalogue/detail.pl
  2. 15
      koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tt

5
catalogue/detail.pl

@ -43,6 +43,7 @@ use C4::CourseReserves qw(GetItemCourseReservesInfo);
use C4::Acquisition qw(GetOrdersByBiblionumber);
use Koha::AuthorisedValues;
use Koha::Biblios;
use Koha::Illrequests;
use Koha::Items;
use Koha::ItemTypes;
use Koha::Patrons;
@ -538,6 +539,10 @@ if (C4::Context->preference('TagsEnabled') and $tag_quantity = C4::Context->pref
my $holds = $biblio->holds;
$template->param( holdcount => $holds->count );
# Check if there are any ILL requests connected to the biblio
my $illrequests = Koha::Illrequests->search({ biblio_id => $biblionumber });
$template->param( illrequests => $illrequests );
my $StaffDetailItemSelection = C4::Context->preference('StaffDetailItemSelection');
if ($StaffDetailItemSelection) {
# Only enable item selection if user can execute at least one action

15
koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tt

@ -128,6 +128,21 @@
</span>
[% END %]
[% IF ( illrequests ) %]
<span class="results_summary">
<span class="label">ILL requests:</span>
[% IF CAN_user_ill %]
[% FOREACH ill IN illrequests %]
<a href="/cgi-bin/koha/ill/ill-requests.pl?method=illview&illrequest_id=[% ill.illrequest_id | uri %]">Request [% ill.illrequest_id | html %]</a>[% IF ! loop.last %], [% END %]
[% END %]
[% ELSE %]
[% FOREACH ill IN illrequests %]
<span>Request [% ill.illrequest_id | html %]</span>[% IF ! loop.last %], [% END %]
[% END %]
[% END %]
</span>
[% END %]
[% IF ( article_requests_count = Biblio.ArticleRequestsActiveCount( biblionumber ) ) %]
<span class="results_summary">
<span class="label">Article requests:</span>

Loading…
Cancel
Save