Bugzilla – Attachment 106686 Details for
Bug 24860
Add ability to place item group level holds
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 24860: Add ability to select a volume when placing a hold - OPAC
Bug-24860-Add-ability-to-select-a-volume-when-plac.patch (text/plain), 7.27 KB, created by
Hugo Agud
on 2020-07-09 08:33:49 UTC
(
hide
)
Description:
Bug 24860: Add ability to select a volume when placing a hold - OPAC
Filename:
MIME Type:
Creator:
Hugo Agud
Created:
2020-07-09 08:33:49 UTC
Size:
7.27 KB
patch
obsolete
>From 450aae91a1eef6a8b024733e6da2bb6c4885ebc9 Mon Sep 17 00:00:00 2001 >From: Kyle M Hall <kyle@bywatersolutions.com> >Date: Tue, 10 Mar 2020 07:27:25 -0400 >Subject: [PATCH] Bug 24860: Add ability to select a volume when placing a hold > - OPAC > >Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> >Signed-off-by: Your Full Name <your_email> >--- > .../bootstrap/en/includes/holds-table.inc | 3 +++ > .../opac-tmpl/bootstrap/en/modules/opac-reserve.tt | 23 +++++++++++++++++++++- > opac/opac-reserve.pl | 7 +++++++ > 3 files changed, 32 insertions(+), 1 deletion(-) > >diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/includes/holds-table.inc b/koha-tmpl/opac-tmpl/bootstrap/en/includes/holds-table.inc >index 610c968649..dc14f40b67 100644 >--- a/koha-tmpl/opac-tmpl/bootstrap/en/includes/holds-table.inc >+++ b/koha-tmpl/opac-tmpl/bootstrap/en/includes/holds-table.inc >@@ -63,6 +63,9 @@ > </strong> > [% END %] > [% HOLD.biblio.author | html %] >+ [% IF HOLD.volume_id %] >+ <br/><strong>Next available item from volume <i>[% HOLD.volume.description | html %]</i></strong> >+ [% END %] > </td> > <td class="reservedate"> > <span title="[% HOLD.reservedate | html %]"> >diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-reserve.tt b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-reserve.tt >index 8a05f6c454..8ae047b93a 100644 >--- a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-reserve.tt >+++ b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-reserve.tt >@@ -300,6 +300,20 @@ > </li> > [% END %] > >+ [% UNLESS forced_hold_level && ( forced_hold_level == 'item' || forced_hold_level == 'record' ) %] >+ [% IF bibitemloo.object.volumes %] >+ <li> >+ <label for="itemtype">Request specific volume:</label> >+ <select name="volume_id_[% bibitemloo.biblionumber | html %]" id="volume_id_[% bibitemloo.biblionumber | html %]" size="1"> >+ <option value="">Any volume</option> >+ [% FOREACH v IN bibitemloo.object.volumes %] >+ <option value="[% v.id | html %]">[% v.description | html %]</option> >+ [% END %] >+ </select> >+ </li> >+ [% END %] >+ [% END %] >+ > [% IF ( OpacHoldNotes ) %] > <li> > <div class="notesrow" id="notesrow_[% bibitemloo.biblionumber | html %]"> >@@ -315,7 +329,7 @@ > [% IF bibitemloo.itemholdable %] > <!-- ITEM HOLDS --> > <li class="lradio place_on_type" style="display:none;"> >- [% IF NOT bibitemloo.force_hold %] >+ [% UNLESS bibitemloo.forced_hold_level == 'item' || bibitemloo.forced_hold_level == 'volume' %] > <label class="radio inline" for="reqany_[% bibitemloo.biblionumber | html %]">Next available item</label> > <input type="radio" name="reqtype_[% bibitemloo.biblionumber | html %]" > id="reqany_[% bibitemloo.biblionumber | html %]" >@@ -324,6 +338,7 @@ > checked="checked" > /> > [% END %] >+ > <label class="radio inline" for="reqspecific_[% bibitemloo.biblionumber | html %]">A specific item</label> > <input type="radio" name="reqtype_[% bibitemloo.biblionumber | html %]" > id="reqspecific_[% bibitemloo.biblionumber | html %]" >@@ -564,8 +579,14 @@ > var select_specific = $("#reqspecific_"+biblioNum).is(":checked"); > // If the checkbox is checked AND we want a specific item, we display the items block > if ( $(checkbox).is(":checked") && select_specific ) { >+ if ( $(`#volume_id_${biblioNum}`).length ) { >+ $(`#volume_id_${biblioNum}`).val("").attr('disabled', 'disabled'); >+ } > $(newCopiesRowId).show(); > } else { >+ if ( $(`#volume_id_${biblioNum}`).length ) { >+ $(`#volume_id_${biblioNum}`).removeAttr('disabled'); >+ } > $(newCopiesRowId).hide(); > } > }; >diff --git a/opac/opac-reserve.pl b/opac/opac-reserve.pl >index 2a11ad48e5..25be9ce605 100755 >--- a/opac/opac-reserve.pl >+++ b/opac/opac-reserve.pl >@@ -287,6 +287,7 @@ if ( $query->param('place_reserve') ) { > $itemNum = undef; > } > my $notes = $query->param('notes_'.$biblioNum)||''; >+ my $volume_id = $query->param("volume_id_$biblioNum") || undef; > > if ( $maxreserves > && $reserve_cnt >= $maxreserves ) >@@ -321,6 +322,7 @@ if ( $query->param('place_reserve') ) { > itemnumber => $itemNum, > found => $found, > itemtype => $itemtype, >+ volume_id => $volume_id, > } > ); > $failed_holds++ unless $reserve_id; >@@ -431,6 +433,7 @@ foreach my $biblioNum (@biblionumbers) { > } > > my $frameworkcode = GetFrameworkCode( $biblioData->{biblionumber} ); >+ $biblioLoopIter{object} = $biblio; > $biblioLoopIter{biblionumber} = $biblioData->{biblionumber}; > $biblioLoopIter{title} = $biblioData->{title}; > $biblioLoopIter{subtitle} = $biblioData->{'subtitle'}; >@@ -637,7 +640,11 @@ foreach my $biblioNum (@biblionumbers) { > )->forced_hold_level(); > if ($forced_hold_level) { > $biblioLoopIter{force_hold} = 1 if $forced_hold_level eq 'item'; >+ $biblioLoopIter{force_hold} = 0 if $forced_hold_level eq 'volume'; >+ > $biblioLoopIter{itemholdable} = 0 if $forced_hold_level eq 'record'; >+ $biblioLoopIter{itemholdable} = 0 if $forced_hold_level eq 'volume'; >+ > $biblioLoopIter{forced_hold_level} = $forced_hold_level; > } > >-- >2.11.0
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 24860
:
100644
|
100645
|
100646
|
100647
|
100648
|
100649
|
100650
|
100651
|
101744
|
101745
|
101746
|
101747
|
101748
|
101749
|
101750
|
101751
|
101827
|
101828
|
101829
|
101830
|
101831
|
101832
|
101833
|
101834
|
101835
|
102230
|
102231
|
102232
|
102233
|
102234
|
102235
|
102236
|
102237
|
102238
|
102239
|
102240
|
102241
|
102242
|
102243
|
102244
|
102245
|
102246
|
102247
|
106589
|
106590
|
106591
|
106592
|
106593
|
106594
|
106595
|
106596
|
106597
|
106682
|
106683
|
106684
|
106685
|
106686
|
106687
|
106688
|
106689
|
106690
|
106742
|
106743
|
106744
|
106745
|
106746
|
106747
|
106748
|
106749
|
106750
|
108458
|
108459
|
108460
|
108461
|
108462
|
108463
|
108464
|
108465
|
108466
|
109097
|
109098
|
109099
|
109100
|
109101
|
109102
|
109103
|
109104
|
109105
|
109171
|
109172
|
109173
|
109174
|
109175
|
109176
|
109177
|
109178
|
109179
|
113616
|
113617
|
113618
|
113619
|
113620
|
113621
|
113622
|
113623
|
113624
|
135922
|
135923
|
135924
|
135925
|
135926
|
135927
|
135928
|
135929
|
135930
|
138221
|
138222
|
138224
|
138225
|
138226
|
138227
|
138228
|
138229
|
138230
|
141214
|
141215
|
141735
|
141736
|
141737
|
141738
|
141739
|
141740
|
141741
|
141742
|
141743
|
141744
|
141745
|
141746
|
141747
|
141748
|
141749
|
141750
|
142413
|
142414
|
142415
|
142416
|
142417
|
142418
|
142419
|
142420
|
142421
|
142422
|
142423
|
142424
|
142425
|
142426
|
142427
|
142428
|
142429
|
142430
|
142827
|
142955
|
142956
|
142957
|
142958
|
142959
|
142960
|
142961
|
142962
|
142963
|
142964
|
142965
|
142966
|
142967
|
142968
|
142969
|
142970
|
142971
|
142972
|
142973
|
142974
|
142975
|
142992
|
142993
|
142994
|
142995
|
142996
|
142997
|
142998
|
142999
|
143000
|
143001
|
143002
|
143003
|
143004
|
143005
|
143006
|
143007
|
143008
|
143009
|
143010
|
143011