[% USE raw %] [% USE To %] [% USE Asset %] [% USE JSON.Escape %] [% USE Koha %] [% USE Biblio %] [% USE KohaDates %] [% USE Branches %] [% USE Categories %] [% USE ItemTypes %] [% USE AuthorisedValues %] [% USE Price %] [% USE TablesSettings %] [% PROCESS 'i18n.inc' %] [% SET footerjs = 1 %] [% INCLUDE 'doc-head-open.inc' %] [% SET libraries = Branches.all %] [% SET categories = Categories.all.unblessed %] [% SET columns = ['name', 'cardnumber', 'dateofbirth', 'category', 'branch', 'address', 'phone'] %] [% PROCESS "patron-search.inc" %] [% UNLESS ( multi_hold ) %] Place a hold on [% INCLUDE 'biblio-title-head.inc' %] › Holds › Circulation › Koha [% ELSE %] Confirm holds › Holds › Circulation › Koha [% END %] [% INCLUDE 'doc-head-close.inc' %] [% FILTER collapse %] [% END %] [% WRAPPER 'header.inc' %] [% INCLUDE 'circ-search.inc' %] [% END %] [% WRAPPER 'sub-header.inc' %] [% UNLESS ( multi_hold ) %] [% ELSE %] [% END # UNLESS multi_hold %] [% END %]
[% IF ( multi_hold || nobiblio ) # No sidebar menu when placing multiple holds or biblio not found %]
[% ELSE %]
[% END %]

Holds

[% IF ( nobiblio ) %]
[%IF (multi_hold) %] Cannot place hold: one or more records don't exist. [% ELSE %] Cannot place hold: this record doesn't exist. [% END %]
[% END %] [% IF ( noitems ) %]
[%IF (multi_hold) %] Cannot place hold: one or more records without items attached. [% ELSE %] Cannot place hold: this record has no items attached. [% END %]
[% END %] [% IF ( messagetransfert ) %]

Hold found for ([% nextreservtitle | html %]), please transfer

Hold placed by : [% nextreservsurname | html %] [% nextreservfirstname | html %] at : [% branchname | html %] , Please transfer this item.

[% END %] [% UNLESS ( multi_hold ) %]

Place a hold on [% INCLUDE 'biblio-title.inc' link = 1 %] [% IF biblio.author %] by [% biblio.author | html %][% END %]

[% ELSE %]

[% IF ( patron ) %] Place holds [% ELSE %] [% IF clubcount %] Search patrons or clubs [% ELSE %] Search patrons [% END %] [% END %]

[% END %] [% UNLESS club OR patron OR patron.borrowernumber OR noitems OR nobiblio %] [% IF ( messageborrower ) %]

Patron not found

No patron with this name, please, try another

[% END %] [% IF ( messageclub ) %]

Club not found

No club with this name, please, try another

[% END %]
[% UNLESS multi_hold %] [% IF clubcount %]

Search patrons or clubs

[% ELSE %]

Search patrons

[% END %] [% END %]
[% PROCESS patron_search_filters_simple %] [% PROCESS patron_search_table table_id => 'table_borrowers', open_on_row_click => 1 %]
[% IF clubcount %]
Enter club ID or partial name:
[% FOREACH biblionumber IN biblionumbers %] [% END %]
[% IF clubs %] [% INCLUDE 'clubs-table.inc' destination = "holds" %] [% END %]
[% END %]
[% ELSIF club %]
Hold details
[% IF ( multi_hold ) %] [% FOREACH biblioloo IN biblioloop %] [% UNLESS biblioloo.none_avail %] [% END %] [% END %] [% ELSE %] [% END # /IF multi_hold %]
  1. Club: [% club.name | html %]
  2. Description: [% club.description | html %]

Members

    [% FOREACH member IN members %] [% SET patron = member.patron %]
  1. [% INCLUDE 'patron-title.inc' patron => patron no_title => 1 no_cardnumber => 1 hide_patron_infos_if_needed => 1 %]
    [% IF member.exceeded_maxreserves %]
    Too many holds: Patron can only place a maximum of [% maxreserves | html %] total holds.
    [% END %] [% IF ( patron.is_expired ) %]
    Account has expired
    [% END %] [% IF patron.is_debarred %]
    Patron has restrictions
    [% END %] [% IF member.amount_outstanding && Koha.Preference('maxoutstanding') && member.amount_outstanding > Koha.Preference('maxoutstanding') %]
    Patron has outstanding fines: [% member.amount_outstanding | $Price %]
    [% END %] [% IF ( member.diffbranch ) %]
    Pickup library is different. Patron's home library: ([% Branches.GetName(patron.branchcode) | html %] / [% patron.branchcode | html %] )
    [% END %]
  2. [% END %] [% UNLESS ( multi_hold ) %]
    [% ELSE %] [% UNLESS Koha.Preference('item-level_itypes') %] [% END %] [% FOREACH biblioloo IN biblioloop %] [% IF ( biblioloo.warn ) %] [% ELSE %] [% END %] [% END %] [% UNLESS Koha.Preference('item-level_itypes') %] [% END %] [% END # /FOREACH biblioloo %]
      TitleItem typePriority Information
    [% UNLESS ( biblioloo.warn ) %]
    • [% biblioloo.title | html %] [% IF biblioloo.author %] by [% biblioloo.author | html %][% END %]
    • [% IF ( biblioloo.publicationyear ) %]
    • Publication year: [% biblioloo.publicationyear | html %]
    • [% END %]
    [% IF ( biblioloo.warn ) %] [% END %]
    [% biblioloo.itemtype.translated_description | html %] [% biblioloo.rank | html %] [% IF ( biblioloo.checked_previously ) %] Patron has previously checked out this title
    [% END %] [% IF ( biblioloo.alreadyres ) %]
      [% ELSE %] [% IF ( biblioloo.none_avail || biblioloo.noitems ) %]
        [% END %] [% END %] [% IF ( biblioloo.alreadyres ) %]
      • [% INCLUDE 'patron-title.inc' patron => patron no_title => 1 no_cardnumber => 1 hide_patron_infos_if_needed => 1 %] already has a hold on this item
      • [% END %] [% IF ( biblioloo.none_avail || biblioloo.noitems ) %]
      • No items are available to be placed on hold
      • [% END %] [% IF ( biblioloo.alreadyres ) %]
      [% ELSE %] [% IF ( biblioloo.none_avail || biblioloo.noitems ) %]
    [% END %] [% END %]
    [% END %]
[% ELSIF NOT ( noitems || nobiblio ) # /UNLESS patron %] [% IF ( checked_previously && !multi_hold ) %]
  • Patron has previously checked out this title
[% END %] [% IF ( no_reserves_allowed || exceeded_maxreserves || exceeded_holds_per_record || alreadyreserved || none_available || alreadypossession || ageRestricted || recall ) %]
[% UNLESS ( multi_hold ) %]

Cannot place hold

    [% IF ( no_reserves_allowed ) %]
  • No holds allowed: [% INCLUDE 'patron-title.inc' patron => patron no_title => 1 no_cardnumber => 1 hide_patron_infos_if_needed => 1 %] cannot place a hold on any of these items.
  • [% ELSIF ( exceeded_maxreserves ) %]
  • Too many holds: [% INCLUDE 'patron-title.inc' patron => patron no_title => 1 no_cardnumber => 1 hide_patron_infos_if_needed => 1 %] can only place a maximum of [% maxreserves | html %] total holds.
  • [% ELSIF ( exceeded_holds_per_record ) %]
  • Too many holds for this record: [% INCLUDE 'patron-title.inc' patron => patron no_title => 1 no_cardnumber => 1 hide_patron_infos_if_needed => 1 %] can only place a maximum of [% max_holds_for_record | html %] hold(s) on this record.
  • [% ELSIF ( alreadypossession ) %]
  • [% INCLUDE 'patron-title.inc' patron => patron no_title => 1 no_cardnumber => 1 hide_patron_infos_if_needed => 1 hide_patron_infos_if_needed => 1 %] is already in possession of one item.
  • [% ELSIF ( alreadyreserved ) %]
  • [% INCLUDE 'patron-title.inc' patron => patron no_title => 1 no_cardnumber => 1 hide_patron_infos_if_needed => 1 %] already has a hold on this item.
  • [% ELSIF ( ageRestricted ) %]
  • Age restricted
  • [% ELSIF ( none_available ) %]
  • No items are available to be placed on hold.
  • [% ELSIF ( maxreserves ) %]
  • Too many holds: [% INCLUDE 'patron-title.inc' patron => patron no_title => 1 no_cardnumber => 1 hide_patron_infos_if_needed => 1 no_title => 1 no_cardnumber => 1 hide_patron_infos_if_needed => 1 %] has too many holds.
  • [% ELSIF ( recall ) %]
  • [% INCLUDE 'patron-title.inc' patron => patron no_title => 1 no_cardnumber => 1 hide_patron_infos_if_needed => 1 %] has already placed a recall on this item.
  • [% END # /IF exceeded_maxreserves %]
[% ELSE # UNLESS multi_hold %]

Cannot place hold on some items

[% IF (no_reserves_allowed ) %]
  • No holds allowed: [% INCLUDE 'patron-title.inc' patron => patron no_title => 1 no_cardnumber => 1 hide_patron_infos_if_needed => 1 %] cannot place holds on some of these title's items.
  • [% ELSIF ( exceeded_maxreserves ) %]
  • Too many holds: [% INCLUDE 'patron-title.inc' patron => patron no_title => 1 no_cardnumber => 1 hide_patron_infos_if_needed => 1 %] can place [% new_reserves_allowed | html %] of the requested [% new_reserves_count | html %] holds for a maximum of [% maxreserves | html %] total holds.
  • [% ELSIF ( exceeded_holds_per_record ) %] [% FOREACH biblioloo IN biblioloop %] [% IF (biblioloo.tooManyHoldsForThisRecord) %]
  • Too many holds for [% biblioloo.title | html %]: [% INCLUDE 'patron-title.inc' patron => patron no_title => 1 no_cardnumber => 1 hide_patron_infos_if_needed => 1 %] can only place a maximum of [% max_holds_for_record | html %] hold(s) on this record.
  • [% END %] [% END %] [% ELSIF ( none_available ) %]
  • No items available: One or more records have no items that can be held
  • [% END # /IF exceeded_maxreserves %] [% END # /UNLESS multi_hold %]
    [% END # /IF ( exceeded_maxreserves || ... %] [% IF ( patron.is_expired || diffbranch || patron.is_debarred || ( amount_outstanding && Koha.Preference('maxoutstanding') && amount_outstanding > Koha.Preference('maxoutstanding') ) ) %]
      [% IF ( patron.is_expired ) %]
    • [% INCLUDE 'patron-title.inc' patron => patron no_title => 1 no_cardnumber => 1 hide_patron_infos_if_needed => 1 %]: Account has expired
    • [% END %] [% IF patron.is_debarred %]
    • [% INCLUDE 'patron-title.inc' patron => patron no_title => 1 no_cardnumber => 1 hide_patron_infos_if_needed => 1 %]: Patron has restrictions
    • [% END %] [% IF amount_outstanding && Koha.Preference('maxoutstanding') && amount_outstanding > Koha.Preference('maxoutstanding') %]
    • [% INCLUDE 'patron-title.inc' patron => patron no_title => 1 no_cardnumber => 1 hide_patron_infos_if_needed => 1 link_to => 'members_pay' %]: Patron has outstanding fines: [% amount_outstanding | $Price %]
    • [% END %] [% IF ( diffbranch ) %]
    • Pickup library is different. Patron: [% INCLUDE 'patron-title.inc' patron => patron no_title => 1 no_cardnumber => 1 hide_patron_infos_if_needed => 1 %] Patron's home library: ([% Branches.GetName(patron.branchcode) | html %] / [% patron.branchcode | html %] )
    • [% END %]
    [% END # /IF patron.is_expired || diffbranch ... %] [% IF ( messageborrower ) %]

    Patron not found:

    Name or barcode not found. Please try an other

    [% END %]
    Hold details
    [% FOREACH biblionumber IN biblionumbers %] [% END %] [% IF ( multi_hold ) %] [% FOREACH biblioloo IN biblioloop %] [% UNLESS biblioloo.none_avail %] [% END %] [% END %] [% ELSE %] [% END # /IF multi_hold %]
    1. Patron: [% IF ( patron.borrowernumber ) %] [% INCLUDE 'patron-title.inc' patron => patron no_title => 1 no_cardnumber => 1 hide_patron_infos_if_needed => 1 %] [% ELSE %] Not defined yet [% END %]
    2. [% UNLESS ( multi_hold ) %]
    3. Estimated priority: [% fixedRank | html %]
    4. [% END %]
    5. [% UNLESS ( multi_hold ) %] [% FOREACH pickup_location IN multi_pickup_locations %] [% END %] [% END %]
    6. [% UNLESS ( multi_hold ) %] [% IF Koha.Preference('AllowHoldItemTypeSelection') %]
    7. [% END %] [% END # /UNLESS multi_hold %] [% IF ( Koha.Preference('AllowHoldDateInFuture') ) %]
    8. [% END %]
    9. [% UNLESS ( multi_hold ) %]
    10. [% IF force_hold_level == 'item' %] [% ELSIF force_hold_level == 'record' %] [% ELSE %] [% END %]
    11. [% IF remaining_holds_for_record > 1 %]
    12. [% ELSE %] [% END %] [% END # /UNLESS multi_hold %]
    13. A non priority hold doesn't prevent a current checkout from renewing
    [% UNLESS ( multi_hold ) %]
    [% IF ( patron.borrowernumber ) %] [% IF ( override_required ) %] [% ELSIF ( none_available ) %] [% ELSE %] [% END %] [% END %]
    [% biblio = biblioloop.0 %]
      [% UNLESS Koha.Preference('item-level_itypes') %]
    1. Item type: [% biblio.itemtype.translated_description | html %]
    2. [% END %] [% IF ( biblio.biblioitem.publicationyear ) %]
    3. Publication year: [% biblio.biblioitem.publicationyear | html %]
    4. [% END %]

    Place a hold on a specific item [% IF force_hold_level == 'item' %] (Required) [% END %]

    [% IF Koha.Preference('item-level_itypes') %] [% END %] [% IF itemdata_ccode %] [% END %] [% IF itemdata_enumchron %] [% END %] [% SET selected = 0 %] [% FOREACH itemloo IN biblio.itemloop %] [% UNLESS ( itemloo.hide ) %] [% IF Koha.Preference('item-level_itypes') %] [% END %] [% IF itemdata_ccode %] [% END %] [% IF itemdata_enumchron %] [% END %] [% IF ( itemloo.onloan ) %] [% END # / UNLESS itemloo.hide %] [% END # /FOREACH itemloo %]
    Hold Allowed pickup locationsItem typeBarcode Home library Last locationCollectionCall number Copy numberVol no.Information
    [% IF force_hold_level == 'record' # Patron has placed a record level hold previously for this record %] Hold must be record level [% ELSIF ( itemloo.available ) %] [% ELSIF ( itemloo.override ) %] [% ELSE %] [% IF itemloo.not_holdable %] [% IF itemloo.not_holdable == 'damaged' %] Item damaged [% ELSIF itemloo.not_holdable == 'ageRestricted' %] Age restricted [% ELSIF itemloo.not_holdable == 'tooManyHoldsForThisRecord' %] Exceeded max holds per record [% ELSIF itemloo.not_holdable == 'tooManyReservesToday' %] Daily hold limit reached for patron [% ELSIF itemloo.not_holdable == 'tooManyReserves' %] Too many holds [% ELSIF itemloo.not_holdable == 'notReservable' %] Not holdable [% ELSIF itemloo.not_holdable == 'cannotReserveFromOtherBranches' %] Patron is from different library [% ELSIF itemloo.not_holdable == 'branchNotInHoldGroup' %] Cannot place hold from patron's library [% ELSIF itemloo.not_holdable == 'itemAlreadyOnHold' %] Patron already has hold for this item [% ELSIF itemloo.not_holdable == 'cannotBeTransferred' %] Cannot be transferred to pickup library [% ELSIF itemloo.not_holdable == 'pickupNotInHoldGroup' %] Only pickup locations within the same hold group are allowed [% ELSIF itemloo.not_holdable == 'noReservesAllowed' %] No holds are allowed on this item [% ELSIF itemloo.not_holdable == 'libraryNotPickupLocation' %] Library is not a pickup location [% ELSIF itemloo.not_holdable == 'no_valid_pickup_location' %] No valid pickup location [% ELSIF itemloo.not_holdable == 'notforloan' %] Not for loan [% ELSE %] [% itemloo.not_holdable | html %] [% END %] [% END %] [% END # /IF force_hold_level %] [% IF (itemloo.pickup_locations_count > 0) %] [% END %] [% UNLESS ( noItemTypeImages ) %] [% IF ( itemloo.itemtype.image_location) %]
    [% END %] [% END %] [% itemloo.itemtype.translated_description | html %]
    [% itemloo.barcode | html %] [% Branches.GetName( itemloo.homebranch ) | html %] [% Branches.GetName( itemloo.holdingbranch ) | html %] [% IF ( itemloo.ccode ) %][% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.ccode', authorised_value => itemloo.ccode ) | html %][% END %] [% itemloo.itemcallnumber | html %] [% IF ( itemloo.copynumber ) %][% itemloo.copynumber | html %][% ELSE %] [% END %] [% itemloo.enumchron | html %] Due [% itemloo.date_due | $KohaDates as_due_date => 1 %] [% ELSE %] [% IF ( itemloo.transfertwhen ) %] In transit from [% Branches.GetName( itemloo.transfertfrom ) | html %], to [% Branches.GetName( itemloo.transfertto ) | html %], since [% itemloo.transfertwhen | $KohaDates %] [% END %] [% END %] [% IF ( itemloo.reservedate ) %] [% IF ( itemloo.nocancel ) %] Can't be cancelled when item is in transit [% ELSE %] [% IF ( itemloo.waitingdate ) %] [% IF ( itemloo.canreservefromotherbranches ) %] Waiting for [% INCLUDE 'patron-title.inc' patron=itemloo.ReservedFor %] at [% Branches.GetName( itemloo.ExpectedAtLibrary ) | html %] since [% itemloo.waitingdate | $KohaDates %] [% ELSE %] Waiting at [% Branches.GetName( itemloo.ExpectedAtLibrary ) | html %] since [% itemloo.waitingdate | $KohaDates %] [% END %] [% ELSE %] [% IF ( itemloo.canreservefromotherbranches ) %] [% IF itemloo.reservedate %] On hold for [% INCLUDE 'patron-title.inc' patron=itemloo.ReservedFor %] expected at [% Branches.GetName( itemloo.ExpectedAtLibrary ) | html %] since [% ELSE %] On hold expected at [% Branches.GetName( itemloo.ExpectedAtLibrary ) | html %] [% END %] [% ELSIF itemloo.reservedate %] On hold expected at [% Branches.GetName( itemloo.ExpectedAtLibrary ) | html %] since [% itemloo.reservedate | $KohaDates %] [% ELSE %] On hold expected at [% Branches.GetName( itemloo.ExpectedAtLibrary ) | html %] [% END %] [% END %] Cancel hold [% END # /IF itemloo.nocancel %] [% ELSE %] Not on hold [% END # /IF itemloo.reservedate %] [% IF itemloo.item_level_holds == "N" %]
    Item level hold not allowed from OPAC [% ELSIF itemloo.item_level_holds == "F" %]
    Item level hold forced from OPAC [% END %] [% IF ( itemloo.itemlost ) %] [% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.itemlost', authorised_value => itemloo.itemlost ) | html %] [% END %] [% IF ( itemloo.damaged ) %] [% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.damaged', authorised_value => itemloo.damaged ) | html %] [% END %] [% IF ( itemloo.withdrawn ) %] [% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.withdrawn', authorised_value => itemloo.withdrawn ) | html %] [% END %] [% IF ( itemloo.notforloan ) %] Not for loan ([% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.notforloan', authorised_value => itemloo.notforloan ) | html %]) [% ELSIF ( itemloo.notforloanitype ) %] Not for loan (Itemtype not for loan) [% END %]
    [% IF hiddencount %]

    Show all items ([% hiddencount | html %] hidden)

    [% END # /IF hiddencount %] [% ELSE # /UNLESS multi_hold %] [% UNLESS Koha.Preference('item-level_itypes') %] [% END %] [% FOREACH biblioloo IN biblioloop %] [% IF ( biblioloo.warn ) %] [% ELSE %] [% END %] [% UNLESS Koha.Preference('item-level_itypes') %] [% END %] [% END # /FOREACH biblioloo %]
      Pickup location TitleItem typePriority Information
    [% UNLESS ( biblioloo.warn ) %] [% END %] [% UNLESS ( biblioloo.none_avail || biblioloo.noitems ) %] [% END %]
    • [% biblioloo.title | html %] [% IF biblioloo.author %] by [% biblioloo.author | html %][% END %]
    • [% IF ( biblioloo.publicationyear ) %]
    • Publication year: [% biblioloo.publicationyear | html %]
    • [% END %]
    [% IF ( biblioloo.warn ) %] [% END %]
    [% biblioloo.itemtype.translated_description | html %] [% biblioloo.rank | html %] [% IF ( biblioloo.checked_previously ) %] Patron has previously checked out this title
    [% END %] [% IF ( biblioloo.alreadyres ) %]
      [% ELSE %] [% IF ( biblioloo.none_avail || biblioloo.noitems ) %]
        [% END %] [% END %] [% IF ( biblioloo.alreadyres ) %]
      • [% INCLUDE 'patron-title.inc' patron => patron no_title => 1 no_cardnumber => 1 hide_patron_infos_if_needed => 1 %] already has a hold on this item
      • [% END %] [% IF ( biblioloo.none_avail || biblioloo.noitems ) %]
      • No items are available to be placed on hold
      • [% END %] [% IF ( biblioloo.alreadyres ) %]
      [% ELSE %] [% IF ( biblioloo.none_avail || biblioloo.noitems ) %]
    [% END %] [% END %]
    [% END # /UNLESS multi_hold %]
    [% IF ( patron AND patron.borrowernumber ) %] [% IF ( multi_hold ) %] [% IF ( override_required ) %] [% ELSIF ( no_bibs_available ) %] [% ELSIF ( none_available ) %] [% ELSE %] [% END %] [% ELSE %] [% IF ( override_required ) %] [% ELSIF ( none_available ) %] [% ELSE %] [% END %] [% END %] [% END # /IF patron %]
    [% END %] [% UNLESS ( patron ) %] [% UNLESS borrowers %] [% SET hold_count = Biblio.HoldsCount( biblio.biblionumber ) | html %] [% IF hold_count %] [% IF always_show_holds == 'DONT' %] [% UNLESS reserveloop %] Show holds ([% hold_count | html %]) [% END %] [% ELSE %] [% END %] [% END %] [% END %] [% IF ( reserveloop ) %]
    [% IF ( multi_hold ) %] [% FOREACH biblionumber IN biblionumbers %] [% END %] [% END %] [% IF enqueued %]

    The job has been enqueued! It will be processed as soon as possible.

    View detail of the enqueued job

    [% END %]

    Existing holds

    [% SET hold_cancellation = AuthorisedValues.GetAuthValueDropbox('HOLD_CANCELLATION') %] [% IF hold_cancellation.count %] [% END %]
    [% FOREACH biblioloo IN biblioloop %] [% IF ( biblioloo.reserveloop ) %]
    [% IF ( multi_hold ) %]

    [% biblioloo.title | html %] [% biblioloo.reserveloop.size | html %] [% tn('Hold', 'Holds', biblioloo.reserveloop.size) | $raw %]

    [% END %] [% IF Koha.Preference('HoldsSplitQueue') == 'branch' %] [% SET branchcodes = [] %] [% FOREACH h IN biblioloo.reserveloop %] [% branchcodes.push( h.branchcode ) %] [% END %] [% branchcodes = branchcodes.unique %] [% IF ( branchcodes.empty ) %]
    There are no holds on this title.
    [% ELSE %] [% FOREACH b IN branchcodes.sort %] [% SET holds_by_branch = [] %] [% FOREACH h IN biblioloo.reserveloop %] [% IF h.branchcode == b %] [% holds_by_branch.push( h ) %] [% END %] [% END %]

    [% Branches.GetName( b ) | html %]

    [% INCLUDE holds_table.inc holds=holds_by_branch %]
    [% END # /FOREACh b %] [% END # /IF ( branchcodes.empty ) %] [% ELSIF Koha.Preference('HoldsSplitQueue') == 'itemtype' %] [% SET itemtypes = [] %] [% FOREACH h IN biblioloo.reserveloop %] [% SET hold_itemtype = h.object.item.effective_itemtype || h.itemtype %] [% itemtypes.push( hold_itemtype ) %] [% END %] [% itemtypes = itemtypes.unique %] [% IF ( itemtypes.empty ) %]
    There are no holds on this title.
    [% ELSE %] [% FOREACH i IN itemtypes.sort %] [% SET holds_by_itemtype = [] %] [% FOREACH h IN biblioloo.reserveloop %] [% SET hold_itemtype = h.object.item.effective_itemtype || h.itemtype %] [% IF hold_itemtype == i %] [% holds_by_itemtype.push( h ) %] [% END %] [% END %]
    [% IF i %]

    [% ItemTypes.GetDescription( i ) | html %]

    [% ELSE %]

    Any item type

    [% END %] [% INCLUDE holds_table.inc holds=holds_by_itemtype %]
    [% END # /FOREACH i %] [% END # /IF ( itemtypes.empty ) %] [% ELSIF Koha.Preference('HoldsSplitQueue') == 'branch_itemtype' %] [% SET branchcodes = [] %] [% FOREACH h IN biblioloo.reserveloop %] [% branchcodes.push( h.branchcode ) %] [% END %] [% branchcodes = branchcodes.unique %] [% IF ( branchcodes.empty ) %]
    There are no holds on this title.
    [% ELSE %] [% FOREACH b IN branchcodes.sort %]

    [% Branches.GetName( b ) | html %]

    [% SET holds_by_branch = [] %] [% FOREACH h IN biblioloo.reserveloop %] [% IF h.branchcode == b %] [% holds_by_branch.push( h ) %] [% END %] [% END %] [% SET itemtypes = [] %] [% FOREACH h IN holds_by_branch %] [% SET hold_itemtype = h.object.item.effective_itemtype || h.itemtype %] [% itemtypes.push( hold_itemtype ) %] [% END %] [% itemtypes = itemtypes.unique %] [% FOREACH i IN itemtypes.sort %]
    [% IF i %] [% ItemTypes.GetDescription( i ) | html %] [% ELSE %] Any item type [% END %]
    [% SET holds_by_itemtype = [] %] [% FOREACH h IN holds_by_branch %] [% SET hold_itemtype = h.object.item.effective_itemtype || h.itemtype %] [% IF hold_itemtype == i %] [% holds_by_itemtype.push( h ) %] [% END %] [% END %] [% INCLUDE holds_table.inc holds=holds_by_itemtype %]
    [% END %]
    [% END # /FOREACH b %] [% END # /IF ( branchcodes.empty ) %] [% ELSE %] [% IF ( biblioloo.reserveloop.size ) %] [% INCLUDE holds_table.inc holds=biblioloo.reserveloop %] [% ELSE %]
    There are no holds on this title.
    [% END %] [% END # /IF HoldsSplitQueue %]
    [% END # /IF biblioloo.reserveloop %] [% END # FOREACH biblioloo %]
    [% END # IF reserveloop %] [% END # UNLESS patron %]
    [% IF ( multi_hold || nobiblio ) # No sidebar menu when placing multiple holds or biblio not found %]
    [% ELSE %]
    [% END %]
    [% MACRO jsinclude BLOCK %] [% INCLUDE 'datatables.inc' %] [% INCLUDE 'calendar.inc' %] [% INCLUDE 'columns_settings.inc' %] [% Asset.js("lib/hc-sticky.js") | $raw %] [% INCLUDE 'select2.inc' %] [% Asset.js("js/holds.js") | $raw%] [% SET url_biblio_params = "biblionumber=" _ biblionumbers.join("&biblionumber=") %] [% IF multi_hold %] [% SET url_biblio_params = url_biblio_params _ "&multi_hold=1" %] [% END %] [% PROCESS patron_search_js table_id => 'table_borrowers', categories => categories, libraries => libraries, extended_attribute_types => attribute_type_codes, columns => columns, open_on_row_click => 1, on_click_url => '/cgi-bin/koha/reserve/request.pl?' _ url_biblio_params, redirect_if_one_result => 1, redirect_url => '/cgi-bin/koha/reserve/request.pl?' _ url_biblio_params, redirect_if_attribute_equal => 'cardnumber' %] [% END %] [% INCLUDE 'intranet-bottom.inc' %]