From cf1b5c0461b312fb1b00d943be6b5748c1913576 Mon Sep 17 00:00:00 2001 From: Dan Pearl Date: Fri, 23 Mar 2018 15:47:08 -0400 Subject: [PATCH] LP1732591 - Eliminate unwanted ARRAY messages in searchboxes. Testing procedure: Set holds for all the following items, observing that the searchbox in the searchbar is not blank and does not contain ARRAY(xxx). Basic Search / Place Hold Basic Search / Record Detail / Place Hold Advanced Search with a plain search term / Place Hold Advanced Search with a plain search term / Record Detail / Place Hold Advanced Search with a fancy (multiline) search term / Place Hold Advanced Search with a fancy (multiline) search term / Record Detail / Place Hold Signed-off-by: Dan Pearl Signed-off-by: Jason Stephenson --- .../src/templates/opac/parts/record/summary.tt2 | 17 ++-------- Open-ILS/src/templates/opac/parts/result/table.tt2 | 39 ++++++++++++++-------- 2 files changed, 29 insertions(+), 27 deletions(-) diff --git a/Open-ILS/src/templates/opac/parts/record/summary.tt2 b/Open-ILS/src/templates/opac/parts/record/summary.tt2 index 33ef814c22..7797c5e0a7 100644 --- a/Open-ILS/src/templates/opac/parts/record/summary.tt2 +++ b/Open-ILS/src/templates/opac/parts/record/summary.tt2 @@ -69,22 +69,11 @@ IF ctx.place_unfillable || ( attrs.marc_xml.findnodes('//*[local-name()="holdings" and @has_holdable="true"]').size && (ctx.holds_block.enabled != 'true' || !attrs.org_copy_counts.$search_ou.available) - ); - - add_parms = {hold_target => ctx.bre_id, - hold_type => 'T', - hold_source_page => mkurl()}; - - IF is_advanced; - # Do not pass "advanced params" to hold code - # Instead, pass the scrubed query in one-line form - stop_parms = stop_parms.merge(['query', 'bool', - 'qtype', 'contains', '_adv']); - add_parms = add_parms.merge({query = ctx.naive_query_scrub(ctx.user_query)}); - END; + ) %]
- [% l('Place Hold') %] diff --git a/Open-ILS/src/templates/opac/parts/result/table.tt2 b/Open-ILS/src/templates/opac/parts/result/table.tt2 index 075537f9b7..432dffaa83 100644 --- a/Open-ILS/src/templates/opac/parts/result/table.tt2 +++ b/Open-ILS/src/templates/opac/parts/result/table.tt2 @@ -56,25 +56,40 @@ IF rec.mmr_id; IF rec.mr_constituent_count > 1; # metarecords link to record list page - record_url = mkurl(ctx.opac_root _ '/results', - {metarecord => rec.mmr_id}, ['page']); + record_url_path = ctx.opac_root _ '/results'; + add_parms = {metarecord => rec.mmr_id}; + del_parms = ['page']; ELSE; # for MR, bre_id refers to the master and in # this case, only, record - record_url = mkurl(ctx.opac_root _ '/record/' _ attrs.mr_constituent_ids.0, { badges => rec.badges.join(',') }); + record_url_path = ctx.opac_root _ '/record/' _ attrs.mr_constituent_ids.0; + add_parms = { badges => rec.badges.join(',') }; + del_parms = []; END; hold_type = 'M'; ELSE; - record_url = mkurl(ctx.opac_root _ '/record/' _ rec.bre_id, { badges => rec.badges.join(',') }); + record_url_path = ctx.opac_root _ '/record/' _ rec.bre_id; + add_parms = { badges => rec.badges.join(',') }; + del_parms = []; hold_type = 'T'; END; - -%] + + IF is_advanced; + # Do not pass "advanced params" to result detail code. + # Instead, pass the scrubed query in one-line form + del_parms = del_parms.merge(['query', 'bool', + 'qtype', 'contains', '_adv']); + add_parms.import( + {query => ctx.naive_query_scrub(ctx.user_query)} ); + END; + %] [% result_count; result_count = result_count + 1 %]. - [% l('Book cover') %] + [% l('Book cover') %]
@@ -386,6 +401,7 @@ END; && (ctx.holds_block.enabled != 'true' || attrs.org_copy_counts.$search_ou.available == 0) ) %] + [% del_parms = ['tag','subfield','term','_special', 'sort','page']; add_parms = {hold_target => rec.id, @@ -395,13 +411,10 @@ END; IF is_advanced; # Do not pass "advanced params" to hold code # Instead, pass the scrubed query in one-line form - add_del_parms = ['query', 'bool', - 'qtype', 'contains', '_adv']; - del_parms = del_parms.merge(add_del_parms); - add_parms = {hold_target => rec.id, - hold_type => hold_type, - hold_source_page => mkurl(), - query = ctx.naive_query_scrub(ctx.user_query)}; + del_parms = del_parms.merge(['query', 'bool', + 'qtype', 'contains', '_adv']); + add_parms.import( + {query => ctx.naive_query_scrub(ctx.user_query)}); END; %]