LP1732591 Improve code and handle additional case of placing a hold from record detail
authorDan Pearl <dpearl@cwmars.org>
Fri, 23 Mar 2018 15:44:01 +0000 (11:44 -0400)
committerJason Stephenson <jason@sigio.com>
Wed, 18 Apr 2018 13:42:01 +0000 (09:42 -0400)
Signed-off-by: Dan Pearl <dpearl@cwmars.org>
Signed-off-by: Jason Stephenson <jason@sigio.com>
Open-ILS/src/templates/opac/parts/record/summary.tt2
Open-ILS/src/templates/opac/parts/result/table.tt2

index 7797c5e..33ef814 100644 (file)
                 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;
              %]
             <div class="rdetail_aux_utils place_hold">
-                <a href="[% mkurl(ctx.opac_root _ '/place_hold', 
-                    {hold_target => ctx.bre_id, hold_type => 'T', hold_source_page => mkurl()}, stop_parms) %]" 
+                <a href="[% mkurl(ctx.opac_root _ '/place_hold', add_parms, stop_parms) %]" 
                 class="no-dec" rel="nofollow" vocab=""><img src="[% ctx.media_prefix %]/images/green_check.png[% ctx.cache_key %]"
                     [% img_alt(l('Place Hold on [_1]', attrs.title)) %]/>
                 <span class="place_hold">[% l('Place Hold') %]</span></a>
index d594f87..075537f 100644 (file)
@@ -10,7 +10,6 @@
 
 %]
 
-[% USE cgi %]
 [% PROCESS "opac/parts/result/paginate.tt2" %] 
 [% ctx.results_count_header = PROCESS results_count_header;
     ctx.results_count_header %]
@@ -393,7 +392,7 @@ END;
                                                                      hold_type => hold_type, 
                                                                      hold_source_page => mkurl()};
 
-                                                        IF cgi.param("_adv");
+                                                        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',