@@ -, +, @@ AllowHoldPolicyOverride set to "Don't allow" dropdown --- .../prog/en/modules/reserve/request.tt | 32 ++++++++++++++++------ 1 file changed, 23 insertions(+), 9 deletions(-) --- a/koha-tmpl/intranet-tmpl/prog/en/modules/reserve/request.tt +++ a/koha-tmpl/intranet-tmpl/prog/en/modules/reserve/request.tt @@ -1183,6 +1183,22 @@ }); [% END %] + function display_pickup_location (state) { + var $text; + if ( state.needs_override === true ) { + $text = $( + '' + state.text + ' ' + ); + } + else { + $text = $(''+state.text+''); + } + + return $text; + }; + $(".pickup_location_dropdown").each( function () { var this_dropdown = $(this); var hold_id = $(this).data('hold_id'); @@ -1190,34 +1206,32 @@ this_dropdown.select2({ allowClear: false, ajax: { - [%- IF Koha.Preference('AllowHoldPolicyOverride') -%] - url: '/api/v1/libraries', - [%- ELSE -%] url: '/api/v1/holds/' + encodeURIComponent(hold_id) + '/pickup_locations', - [%- END -%] delay: 300, // wait 300 milliseconds before triggering the request dataType: 'json', data: function (params) { var search_term = (params.term === undefined) ? '' : params.term; var query = { - "q": JSON.stringify({"name":{"-like":search_term+'%'},"pickup_location":1}), + "q": JSON.stringify({"name":{"-like":search_term+'%'}}), "_order_by": "name" }; return query; }, processResults: function (data) { var results = []; - data.forEach( function ( library ) { + data.forEach( function ( pickup_location ) { results.push( { - "id": library.library_id.escapeHtml(), - "text": library.name.escapeHtml() + "id": pickup_location.library_id.escapeHtml(), + "text": pickup_location.name.escapeHtml(), + "needs_override": pickup_location.needs_override } ); }); return { "results": results }; } - } + }, + templateResult: display_pickup_location }); }); }); --