|
Lines 505-550
Link Here
|
| 505 |
</div> |
505 |
</div> |
| 506 |
|
506 |
|
| 507 |
[% UNLESS ( multi_hold ) %] |
507 |
[% UNLESS ( multi_hold ) %] |
| 508 |
<fieldset class="rows"> |
508 |
<fieldset class="rows"> |
| 509 |
<legend>Hold details</legend> |
509 |
<legend>Hold details</legend> |
| 510 |
<form action="placerequest.pl" method="post" name="form" id="hold-request-form"> |
510 |
<form action="placerequest.pl" method="post" name="form" id="hold-request-form"> |
| 511 |
|
511 |
|
| 512 |
<input type="hidden" name="borrowernumber" value="[% patron.borrowernumber | html %]" /> |
512 |
<input type="hidden" name="borrowernumber" value="[% patron.borrowernumber | html %]" /> |
| 513 |
[% FOREACH biblionumber IN biblionumbers %] |
513 |
[% FOREACH biblionumber IN biblionumbers %] |
| 514 |
<input type="hidden" name="biblionumber" value="[% biblionumber | html %]"/> |
514 |
<input type="hidden" name="biblionumber" value="[% biblionumber | html %]"/> |
| 515 |
[% END %] |
515 |
[% END %] |
| 516 |
<input type="hidden" name="holdable_bibs" id="holdable_bibs" value="[% biblio.biblionumber | html %]"/> |
516 |
<input type="hidden" name="holdable_bibs" id="holdable_bibs" value="[% biblio.biblionumber | html %]"/> |
| 517 |
<input type="hidden" name="title" value="[% biblio.title | html %]" /> |
517 |
<input type="hidden" name="title" value="[% biblio.title | html %]" /> |
| 518 |
<input type="hidden" name="rank-request" value="[% fixedRank | html %]" /> |
518 |
<input type="hidden" name="rank-request" value="[% fixedRank | html %]" /> |
| 519 |
|
519 |
|
| 520 |
<ol> |
520 |
<ol> |
| 521 |
<li> |
521 |
<li> |
| 522 |
<span class="label">Patron:</span> |
522 |
<span class="label">Patron:</span> |
| 523 |
[% IF ( patron.borrowernumber ) %] |
523 |
[% IF ( patron.borrowernumber ) %] |
| 524 |
[% INCLUDE 'patron-title.inc' patron => patron no_title => 1 no_cardnumber => 1 hide_patron_infos_if_needed => 1 %] |
524 |
[% INCLUDE 'patron-title.inc' patron => patron no_title => 1 no_cardnumber => 1 hide_patron_infos_if_needed => 1 %] |
| 525 |
[% ELSE %] |
525 |
[% ELSE %] |
| 526 |
Not defined yet |
526 |
Not defined yet |
| 527 |
[% END %] |
527 |
[% END %] |
| 528 |
</li> |
528 |
</li> |
| 529 |
|
529 |
|
| 530 |
<li> |
530 |
<li> |
| 531 |
<span class="label">Estimated priority:</span> |
531 |
<span class="label">Estimated priority:</span> |
| 532 |
<strong>[% fixedRank | html %]</strong> |
532 |
<strong>[% fixedRank | html %]</strong> |
| 533 |
</li> |
533 |
</li> |
| 534 |
|
534 |
|
| 535 |
<li> |
535 |
<li> |
| 536 |
<label for="holdnotes">Notes:</label> |
536 |
<label for="holdnotes">Notes:</label> |
| 537 |
<textarea id="holdnotes" name="notes" cols="30" rows="1"></textarea> |
537 |
<textarea id="holdnotes" name="notes" cols="30" rows="1"></textarea> |
| 538 |
</li> |
538 |
</li> |
| 539 |
<li> |
539 |
<li> |
| 540 |
<label for="pickup">Pickup at:</label> |
540 |
<label for="pickup">Pickup at:</label> |
| 541 |
<select name="pickup" id="pickup" |
541 |
<select name="pickup" id="pickup" |
| 542 |
data-biblio-id="[% biblio.biblionumber | html %]" |
542 |
data-biblio-id="[% biblio.biblionumber | html %]" |
| 543 |
data-patron-id="[% patron.borrowernumber | html %]" |
543 |
data-patron-id="[% patron.borrowernumber | html %]" |
| 544 |
data-pickup-location-source="biblio"> |
544 |
data-pickup-location-source="biblio"> |
| 545 |
[% PROCESS options_for_libraries libraries => Branches.pickup_locations({ search_params => { biblio => biblionumber, patron => patron }, selected => pickup }) %] |
545 |
[% PROCESS options_for_libraries libraries => Branches.pickup_locations({ search_params => { biblio => biblionumber, patron => patron }, selected => pickup }) %] |
| 546 |
</select> |
546 |
</select> |
| 547 |
</li> |
547 |
</li> |
| 548 |
|
548 |
|
| 549 |
[% IF Koha.Preference('AllowHoldItemTypeSelection') %] |
549 |
[% IF Koha.Preference('AllowHoldItemTypeSelection') %] |
| 550 |
<li> |
550 |
<li> |
|
Lines 558-603
Link Here
|
| 558 |
</li> |
558 |
</li> |
| 559 |
[% END %] |
559 |
[% END %] |
| 560 |
|
560 |
|
| 561 |
[% IF ( reserve_in_future ) %] |
561 |
[% IF ( reserve_in_future ) %] |
| 562 |
<li> |
562 |
<li> |
| 563 |
<label for="from">Hold starts on date:</label> |
563 |
<label for="from">Hold starts on date:</label> |
| 564 |
<input id="reserve_date" name="reserve_date" id="from" size="10" type="text" data-date_to="expiration_date" class="flatpickr" data-flatpickr-futuredate="true" /> |
564 |
<input id="reserve_date" name="reserve_date" id="from" size="10" type="text" data-date_to="expiration_date" class="flatpickr" data-flatpickr-futuredate="true" /> |
| 565 |
</li> |
565 |
</li> |
| 566 |
[% END %] |
566 |
[% END %] |
| 567 |
|
|
|
| 568 |
<li> |
| 569 |
<label for="to">Hold expires on date:</label> |
| 570 |
<input id="expiration_date" name="expiration_date" id="to" size="10" type="text" class="flatpickr" data-flatpickr-futuredate="true" /> |
| 571 |
</li> |
| 572 |
|
567 |
|
| 573 |
<li> |
568 |
<li> |
| 574 |
<label for="requestany">Hold next available item </label> |
569 |
<label for="to">Hold expires on date:</label> |
| 575 |
[% IF force_hold_level == 'item' %] |
570 |
<input id="expiration_date" name="expiration_date" id="to" size="10" type="text" class="flatpickr" data-flatpickr-futuredate="true" /> |
| 576 |
<input type="checkbox" id="requestany" name="request" disabled="true" /> |
|
|
| 577 |
[% ELSIF force_hold_level == 'record' %] |
| 578 |
<input type="checkbox" id="requestany" checked="checked" value="Any" disabled="true"/> |
| 579 |
<input type="hidden" name="request" value="Any"/> |
| 580 |
[% ELSE %] |
| 581 |
<input type="checkbox" id="requestany" name="request" checked="checked" value="Any" /> |
| 582 |
[% END %] |
| 583 |
<input type="hidden" name="alreadyreserved" value="[% alreadyreserved | html %]" /> |
| 584 |
</li> |
571 |
</li> |
| 585 |
|
572 |
|
| 586 |
[% IF remaining_holds_for_record > 1 %] |
|
|
| 587 |
<li> |
573 |
<li> |
| 588 |
<label for="holds_to_place_count">Holds to place (count)</label> |
574 |
<label for="requestany">Hold next available item </label> |
| 589 |
<input type="text" inputmode="numeric" pattern="[0-9]*" id="holds_to_place_count" name="holds_to_place_count" maxlength="[% remaining_holds_for_record | html %]" value="1" /> |
575 |
[% IF force_hold_level == 'item' %] |
|
|
576 |
<input type="checkbox" id="requestany" name="request" disabled="true" /> |
| 577 |
[% ELSIF force_hold_level == 'record' %] |
| 578 |
<input type="checkbox" id="requestany" checked="checked" value="Any" disabled="true"/> |
| 579 |
<input type="hidden" name="request" value="Any"/> |
| 580 |
[% ELSE %] |
| 581 |
<input type="checkbox" id="requestany" name="request" checked="checked" value="Any" /> |
| 582 |
[% END %] |
| 583 |
<input type="hidden" name="alreadyreserved" value="[% alreadyreserved | html %]" /> |
| 590 |
</li> |
584 |
</li> |
| 591 |
[% ELSE %] |
|
|
| 592 |
<input type="hidden" name="holds_to_place_count" value="1" /> |
| 593 |
[% END %] |
| 594 |
|
585 |
|
| 595 |
<li id="non_priority_list_item"> |
586 |
[% IF remaining_holds_for_record > 1 %] |
| 596 |
<label for="non_priority">Non priority hold:</label> |
587 |
<li> |
| 597 |
<input name="non_priority" id="non_priority" type="checkbox" /> |
588 |
<label for="holds_to_place_count">Holds to place (count)</label> |
| 598 |
<span class="hint">A non priority hold doesn't prevent a current checkout from renewing</span> |
589 |
<input type="text" inputmode="numeric" pattern="[0-9]*" id="holds_to_place_count" name="holds_to_place_count" maxlength="[% remaining_holds_for_record | html %]" value="1" /> |
| 599 |
</li> |
590 |
</li> |
| 600 |
</ol> |
591 |
[% ELSE %] |
|
|
592 |
<input type="hidden" name="holds_to_place_count" value="1" /> |
| 593 |
[% END %] |
| 594 |
|
| 595 |
<li id="non_priority_list_item"> |
| 596 |
<label for="non_priority">Non priority hold:</label> |
| 597 |
<input name="non_priority" id="non_priority" type="checkbox" /> |
| 598 |
<span class="hint">A non priority hold doesn't prevent a current checkout from renewing</span> |
| 599 |
</li> |
| 600 |
</ol> |
| 601 |
|
601 |
|
| 602 |
<fieldset class="action"> |
602 |
<fieldset class="action"> |
| 603 |
[% IF ( patron.borrowernumber ) %] |
603 |
[% IF ( patron.borrowernumber ) %] |
|
Lines 839-949
Link Here
|
| 839 |
[% END # /IF hiddencount %] |
839 |
[% END # /IF hiddencount %] |
| 840 |
|
840 |
|
| 841 |
[% ELSE # /UNLESS multi_hold %] |
841 |
[% ELSE # /UNLESS multi_hold %] |
| 842 |
<fieldset class="rows"> |
842 |
<fieldset class="rows"> |
| 843 |
<legend>Hold details</legend> |
843 |
<legend>Hold details</legend> |
| 844 |
<form action="placerequest.pl" method="post" name="form" id="hold-request-form"> |
844 |
<form action="placerequest.pl" method="post" name="form" id="hold-request-form"> |
| 845 |
<input type="hidden" name="multi_holds" id="multi_holds" value="1" /> |
845 |
<input type="hidden" name="multi_holds" id="multi_holds" value="1" /> |
| 846 |
<input type="hidden" name="request" value="any"/> |
846 |
<input type="hidden" name="request" value="any"/> |
| 847 |
<input type="hidden" name="borrowernumber" value="[% patron.borrowernumber | html %]" /> |
847 |
<input type="hidden" name="borrowernumber" value="[% patron.borrowernumber | html %]" /> |
| 848 |
[% FOREACH biblioloo IN biblioloop %] |
848 |
[% FOREACH biblioloo IN biblioloop %] |
| 849 |
<input type="hidden" name="biblionumber" id="biblionumber" value="[% biblioloo.biblionumber | html %]"/> |
849 |
<input type="hidden" name="biblionumber" id="biblionumber" value="[% biblioloo.biblionumber | html %]"/> |
| 850 |
[% UNLESS biblioloo.none_avail %] |
850 |
[% UNLESS biblioloo.none_avail %] |
| 851 |
<input type="hidden" name="holdable_bibs" id="holdable_bibs" value="[% biblioloo.biblionumber | html %]"/> |
851 |
<input type="hidden" name="holdable_bibs" id="holdable_bibs" value="[% biblioloo.biblionumber | html %]"/> |
| 852 |
<input type="hidden" name="title_[% biblioloo.biblionumber | html %]" value="[% biblioloo.title | html %]"/> |
852 |
<input type="hidden" name="title_[% biblioloo.biblionumber | html %]" value="[% biblioloo.title | html %]"/> |
| 853 |
<input type="hidden" name="rank_[% biblioloo.biblionumber | html %]" value="[% biblioloo.rank | html %]"/> |
853 |
<input type="hidden" name="rank_[% biblioloo.biblionumber | html %]" value="[% biblioloo.rank | html %]"/> |
| 854 |
[% END %] |
|
|
| 855 |
[% END %] |
| 856 |
|
| 857 |
<table id="requesttitles"> |
| 858 |
<tr> |
| 859 |
<th> </th> |
| 860 |
<th>Pickup location</th> |
| 861 |
<th>Title</th> |
| 862 |
[% UNLESS Koha.Preference('item-level_itypes') %] |
| 863 |
<th>Item type</th> |
| 864 |
[% END %] |
| 865 |
<th>Priority</th> |
| 866 |
<th>Information</th> |
| 867 |
</tr> |
| 868 |
[% FOREACH biblioloo IN biblioloop %] |
| 869 |
[% IF ( biblioloo.warn ) %] |
| 870 |
<tr class="onissue"> |
| 871 |
[% ELSE %] |
| 872 |
<tr> |
| 873 |
[% END %] |
| 874 |
<td> |
| 875 |
[% UNLESS ( biblioloo.warn ) %] |
| 876 |
<input class="multi_hold_item_checkbox" type="checkbox" checked="checked" title="[% biblioloo.biblionumber | html %]"/> |
| 877 |
[% END %] |
854 |
[% END %] |
| 878 |
</td> |
855 |
[% END %] |
| 879 |
<td> |
856 |
|
| 880 |
[% UNLESS ( biblioloo.none_avail || biblioloo.noitems ) %] |
857 |
<table id="requesttitles"> |
| 881 |
<select name="pickup_[% biblioloo.biblionumber | html %]" |
858 |
<tr> |
| 882 |
class="multi_pickup_select" |
859 |
<th> </th> |
| 883 |
data-biblio-id="[% biblioloo.biblionumber | html %]" |
860 |
<th>Pickup location</th> |
| 884 |
data-patron-id="[% patron.borrowernumber | html %]" |
861 |
<th>Title</th> |
| 885 |
data-pickup-locations='[% biblioloo.pickup_locations_codes.json | $raw %]'> |
862 |
[% UNLESS Koha.Preference('item-level_itypes') %] |
| 886 |
<option value=""></option> |
863 |
<th>Item type</th> |
| 887 |
[% FOREACH pickup_location IN biblioloo.pickup_locations %] |
864 |
[% END %] |
| 888 |
<option value="[% pickup_location.branchcode | html %]">[% pickup_location.branchname | html %]</option> |
865 |
<th>Priority</th> |
| 889 |
[% END %] |
866 |
<th>Information</th> |
| 890 |
</select> |
867 |
</tr> |
| 891 |
[% END %] |
868 |
[% FOREACH biblioloo IN biblioloop %] |
| 892 |
</td> |
869 |
[% IF ( biblioloo.warn ) %] |
| 893 |
<td> |
870 |
<tr class="onissue"> |
| 894 |
<ul> |
871 |
[% ELSE %] |
| 895 |
<li> |
872 |
<tr> |
| 896 |
<a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblioloo.biblionumber | uri %]">[% biblioloo.title | html %]</a> |
873 |
[% END %] |
| 897 |
[% IF biblioloo.author %] by [% biblioloo.author | html %][% END %] |
874 |
<td> |
| 898 |
</li> |
875 |
[% UNLESS ( biblioloo.warn ) %] |
| 899 |
[% IF ( biblioloo.publicationyear ) %] |
876 |
<input class="multi_hold_item_checkbox" type="checkbox" checked="checked" title="[% biblioloo.biblionumber | html %]"/> |
|
|
877 |
[% END %] |
| 878 |
</td> |
| 879 |
<td> |
| 880 |
[% UNLESS ( biblioloo.none_avail || biblioloo.noitems ) %] |
| 881 |
<select name="pickup_[% biblioloo.biblionumber | html %]" |
| 882 |
class="multi_pickup_select" |
| 883 |
data-biblio-id="[% biblioloo.biblionumber | html %]" |
| 884 |
data-patron-id="[% patron.borrowernumber | html %]" |
| 885 |
data-pickup-locations='[% biblioloo.pickup_locations_codes.json | $raw %]'> |
| 886 |
<option value=""></option> |
| 887 |
[% FOREACH pickup_location IN biblioloo.pickup_locations %] |
| 888 |
<option value="[% pickup_location.branchcode | html %]">[% pickup_location.branchname | html %]</option> |
| 889 |
[% END %] |
| 890 |
</select> |
| 891 |
[% END %] |
| 892 |
</td> |
| 893 |
<td> |
| 894 |
<ul> |
| 900 |
<li> |
895 |
<li> |
| 901 |
<span class="label">Publication year:</span> [% biblioloo.publicationyear | html %] |
896 |
<a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblioloo.biblionumber | uri %]">[% biblioloo.title | html %]</a> |
|
|
897 |
[% IF biblioloo.author %] by [% biblioloo.author | html %][% END %] |
| 902 |
</li> |
898 |
</li> |
|
|
899 |
[% IF ( biblioloo.publicationyear ) %] |
| 900 |
<li> |
| 901 |
<span class="label">Publication year:</span> [% biblioloo.publicationyear | html %] |
| 902 |
</li> |
| 903 |
[% END %] |
| 904 |
</ul> |
| 905 |
[% IF ( biblioloo.warn ) %] |
| 906 |
<span class="not_holdable" title="[% biblioloo.biblionumber | html %]"></span> |
| 903 |
[% END %] |
907 |
[% END %] |
| 904 |
</ul> |
|
|
| 905 |
[% IF ( biblioloo.warn ) %] |
| 906 |
<span class="not_holdable" title="[% biblioloo.biblionumber | html %]"></span> |
| 907 |
[% END %] |
| 908 |
</td> |
| 909 |
[% UNLESS Koha.Preference('item-level_itypes') %] |
| 910 |
<td> |
| 911 |
<img src="[% biblioloo.itemtype.image_location | html %]" alt="[% biblioloo.itemtype.translated_description | html %]" title="[% biblioloo.itemtype.translated_description | html %]" /> |
| 912 |
</td> |
908 |
</td> |
| 913 |
[% END %] |
909 |
[% UNLESS Koha.Preference('item-level_itypes') %] |
| 914 |
<td>[% biblioloo.rank | html %]</td> |
910 |
<td> |
| 915 |
<td> |
911 |
<img src="[% biblioloo.itemtype.image_location | html %]" alt="[% biblioloo.itemtype.translated_description | html %]" title="[% biblioloo.itemtype.translated_description | html %]" /> |
| 916 |
[% IF ( biblioloo.checked_previously ) %] |
912 |
</td> |
| 917 |
<span>Patron has previously checked out this title</span><br/> |
|
|
| 918 |
[% END %] |
913 |
[% END %] |
| 919 |
[% IF ( biblioloo.alreadyres ) %] |
914 |
<td>[% biblioloo.rank | html %]</td> |
| 920 |
<ul> |
915 |
<td> |
| 921 |
[% ELSE %] |
916 |
[% IF ( biblioloo.checked_previously ) %] |
| 922 |
[% IF ( biblioloo.none_avail || biblioloo.noitems ) %] |
917 |
<span>Patron has previously checked out this title</span><br/> |
|
|
918 |
[% END %] |
| 919 |
[% IF ( biblioloo.alreadyres ) %] |
| 923 |
<ul> |
920 |
<ul> |
|
|
921 |
[% ELSE %] |
| 922 |
[% IF ( biblioloo.none_avail || biblioloo.noitems ) %] |
| 923 |
<ul> |
| 924 |
[% END %] |
| 924 |
[% END %] |
925 |
[% END %] |
| 925 |
[% END %] |
|
|
| 926 |
|
| 927 |
[% IF ( biblioloo.alreadyres ) %] |
| 928 |
<li> |
| 929 |
[% INCLUDE 'patron-title.inc' patron => patron no_title => 1 no_cardnumber => 1 hide_patron_infos_if_needed => 1 %] <strong>already has a hold</strong> on this item |
| 930 |
</li> |
| 931 |
[% END %] |
| 932 |
[% IF ( biblioloo.none_avail || biblioloo.noitems ) %] |
| 933 |
<li> <strong>No items are available</strong> to be placed on hold</li> |
| 934 |
[% END %] |
| 935 |
|
926 |
|
| 936 |
[% IF ( biblioloo.alreadyres ) %] |
927 |
[% IF ( biblioloo.alreadyres ) %] |
| 937 |
</ul> |
928 |
<li> |
| 938 |
[% ELSE %] |
929 |
[% INCLUDE 'patron-title.inc' patron => patron no_title => 1 no_cardnumber => 1 hide_patron_infos_if_needed => 1 %] <strong>already has a hold</strong> on this item |
|
|
930 |
</li> |
| 931 |
[% END %] |
| 939 |
[% IF ( biblioloo.none_avail || biblioloo.noitems ) %] |
932 |
[% IF ( biblioloo.none_avail || biblioloo.noitems ) %] |
|
|
933 |
<li> <strong>No items are available</strong> to be placed on hold</li> |
| 934 |
[% END %] |
| 935 |
|
| 936 |
[% IF ( biblioloo.alreadyres ) %] |
| 940 |
</ul> |
937 |
</ul> |
|
|
938 |
[% ELSE %] |
| 939 |
[% IF ( biblioloo.none_avail || biblioloo.noitems ) %] |
| 940 |
</ul> |
| 941 |
[% END %] |
| 941 |
[% END %] |
942 |
[% END %] |
| 942 |
[% END %] |
943 |
</td> |
| 943 |
</td> |
944 |
</tr> |
| 944 |
</tr> |
945 |
[% END # /FOREACH biblioloo %] |
| 945 |
[% END # /FOREACH biblioloo %] |
946 |
</table> <!-- /#requesttitles --> |
| 946 |
</table> <!-- /#requesttitles --> |
947 |
</fieldset> |
| 947 |
|
948 |
|
| 948 |
[% END # /UNLESS multi_hold %] |
949 |
[% END # /UNLESS multi_hold %] |
| 949 |
|
950 |
|
| 950 |
- |
|
|