View | Details | Raw Unified | Return to bug 19290
Collapse All | Expand All

(-)a/installer/data/mysql/atomicupdate/bug_19290.sql (+1 lines)
Line 0 Link Here
1
INSERT IGNORE INTO systempreferences (`variable`, `value`, `options`, `explanation`, `type`) VALUES  ('BrowseResultSelection','0',NULL,'Enable/Disable browsing search results fromt the bibliographic record detail page in staff client','YesNo');
(-)a/installer/data/mysql/sysprefs.sql (+1 lines)
Lines 90-95 INSERT INTO systempreferences ( `variable`, `value`, `options`, `explanation`, ` Link Here
90
('BorrowersTitles','Mr|Mrs|Miss|Ms',NULL,'Define appropriate Titles for patrons','free'),
90
('BorrowersTitles','Mr|Mrs|Miss|Ms',NULL,'Define appropriate Titles for patrons','free'),
91
('BorrowerUnwantedField','',NULL,'Name the fields you don\'t need to store for a patron\'s account','free'),
91
('BorrowerUnwantedField','',NULL,'Name the fields you don\'t need to store for a patron\'s account','free'),
92
('BranchTransferLimitsType','ccode','itemtype|ccode','When using branch transfer limits, choose whether to limit by itemtype or collection code.','Choice'),
92
('BranchTransferLimitsType','ccode','itemtype|ccode','When using branch transfer limits, choose whether to limit by itemtype or collection code.','Choice'),
93
('BrowseResultSelection','0',NULL,'Enable/Disable browsing search results fromt the bibliographic record detail page in staff client','YesNo'),
93
('CalculateFinesOnReturn','1','','Switch to control if overdue fines are calculated on return or not','YesNo'),
94
('CalculateFinesOnReturn','1','','Switch to control if overdue fines are calculated on return or not','YesNo'),
94
('CalendarFirstDayOfWeek','0','0|1|2|3|4|5|6','Select the first day of week to use in the calendar.','Choice'),
95
('CalendarFirstDayOfWeek','0','0|1|2|3|4|5|6','Select the first day of week to use in the calendar.','Choice'),
95
('canreservefromotherbranches','1','','With Independent branches on, can a user from one library place a hold on an item from another library','YesNo'),
96
('canreservefromotherbranches','1','','With Independent branches on, can a user from one library place a hold on an item from another library','YesNo'),
(-)a/koha-tmpl/intranet-tmpl/js/browser.js (-1 / +1 lines)
Lines 102-108 KOHA.browser = function (searchid, biblionumber) { Link Here
102
                    } else {
102
                    } else {
103
                        nextbutton = '<a href="#" id="browse-next" class="browse-button">' + BROWSER_NEXT + ' »</a>';
103
                        nextbutton = '<a href="#" id="browse-next" class="browse-button">' + BROWSER_NEXT + ' »</a>';
104
                    }
104
                    }
105
                    $('#menu').before('<div class="browse-controls"><div class="browse-controls-inner"><div class="browse-label"><a href="' + searchURL + '" id="browse-return-to-results" class="browse-button">' + BROWSER_RETURN_TO_SEARCH + '</a></div><div class="browse-prev-next">' + prevbutton + nextbutton + '</div></div></div>');
105
                    $('#menu').before('<div class="browse-controls"><div class="browse-controls-inner"><div class="browse-label"><a href="' + searchURL + '" id="browse-return-to-results" class="browse-button searchwithcontext">' + BROWSER_RETURN_TO_SEARCH + '</a></div><div class="browse-prev-next">' + prevbutton + nextbutton + '</div></div></div>');
106
                    $('a#browse-previous').click(function (ev) {
106
                    $('a#browse-previous').click(function (ev) {
107
                        ev.preventDefault();
107
                        ev.preventDefault();
108
                        browseRecords(-1);
108
                        browseRecords(-1);
(-)a/koha-tmpl/intranet-tmpl/prog/en/includes/js_includes.inc (+1 lines)
Lines 21-26 Link Here
21
<script type="text/javascript" src="[% interface %]/lib/jquery/plugins/jquery.validate.min.js"></script>
21
<script type="text/javascript" src="[% interface %]/lib/jquery/plugins/jquery.validate.min.js"></script>
22
<!-- koha core js -->
22
<!-- koha core js -->
23
<script type="text/javascript" src="[% interface %]/[% theme %]/js/staff-global.js"></script>
23
<script type="text/javascript" src="[% interface %]/[% theme %]/js/staff-global.js"></script>
24
<script type="text/javascript" src="[% interface %]/[% theme %]/js/commons.js"></script>
24
25
25
[% INCLUDE 'validator-strings.inc' %]
26
[% INCLUDE 'validator-strings.inc' %]
26
[% IF ( IntranetUserJS ) %]
27
[% IF ( IntranetUserJS ) %]
(-)a/koha-tmpl/intranet-tmpl/prog/en/includes/page-numbers.inc (-5 / +5 lines)
Lines 1-18 Link Here
1
[% IF ( PAGE_NUMBERS ) %]<nav><ul class="pagination">
1
[% IF ( PAGE_NUMBERS ) %]<nav><ul class="pagination">
2
    [% IF ( previous_page_offset.defined ) %]
2
    [% IF ( previous_page_offset.defined ) %]
3
        <li><a href="/cgi-bin/koha/catalogue/search.pl?[% query_cgi |html %][% limit_cgi |html %][% IF ( sort_by ) %]&amp;sort_by=[% sort_by |url %][% END %]">First</a></li>
3
        <li><a class="nav" href="/cgi-bin/koha/catalogue/search.pl?[% query_cgi |html %][% limit_cgi |html %][% IF ( sort_by ) %]&amp;sort_by=[% sort_by |url %][% END %]">First</a></li>
4
        <!-- Row of numbers corresponding to search result pages -->
4
        <!-- Row of numbers corresponding to search result pages -->
5
        <li><a href="/cgi-bin/koha/catalogue/search.pl?[% query_cgi |html %][% limit_cgi |html %]&amp;offset=[% previous_page_offset %][% IF ( sort_by ) %]&amp;sort_by=[% sort_by |url %][% END %]">&lt;&lt; Previous</a></li>
5
        <li><a class="nav" href="/cgi-bin/koha/catalogue/search.pl?[% query_cgi |html %][% limit_cgi |html %]&amp;offset=[% previous_page_offset %][% IF ( sort_by ) %]&amp;sort_by=[% sort_by |url %][% END %]">&lt;&lt; Previous</a></li>
6
    [% END %]
6
    [% END %]
7
    [% FOREACH PAGE_NUMBER IN PAGE_NUMBERS %]
7
    [% FOREACH PAGE_NUMBER IN PAGE_NUMBERS %]
8
        [% IF ( PAGE_NUMBER.highlight ) %]
8
        [% IF ( PAGE_NUMBER.highlight ) %]
9
            <li class="active"><span>[% PAGE_NUMBER.pg %]</span></li>
9
            <li class="active"><span>[% PAGE_NUMBER.pg %]</span></li>
10
        [% ELSE %]
10
        [% ELSE %]
11
            <li><a href="/cgi-bin/koha/catalogue/search.pl?[% query_cgi |html %][% limit_cgi |html %]&amp;offset=[% PAGE_NUMBER.offset %][% IF ( sort_by ) %]&amp;sort_by=[% sort_by |url %][% END %]">[% PAGE_NUMBER.pg %]</a></li>
11
            <li><a class="nav" href="/cgi-bin/koha/catalogue/search.pl?[% query_cgi |html %][% limit_cgi |html %]&amp;offset=[% PAGE_NUMBER.offset %][% IF ( sort_by ) %]&amp;sort_by=[% sort_by |url %][% END %]">[% PAGE_NUMBER.pg %]</a></li>
12
        [% END %]
12
        [% END %]
13
    [% END %]
13
    [% END %]
14
    [% IF ( next_page_offset ) %]
14
    [% IF ( next_page_offset ) %]
15
        <li><a href="/cgi-bin/koha/catalogue/search.pl?[% query_cgi |html %][% limit_cgi |html %]&amp;offset=[% next_page_offset %][% IF ( sort_by ) %]&amp;sort_by=[% sort_by |url %][% END %]">Next &gt;&gt;</a></li>
15
        <li><a class="nav" href="/cgi-bin/koha/catalogue/search.pl?[% query_cgi |html %][% limit_cgi |html %]&amp;offset=[% next_page_offset %][% IF ( sort_by ) %]&amp;sort_by=[% sort_by |url %][% END %]">Next &gt;&gt;</a></li>
16
        <li><a href="/cgi-bin/koha/catalogue/search.pl?[% query_cgi |html %][% limit_cgi |html %]&amp;offset=[% last_page_offset %][% IF ( sort_by ) %]&amp;sort_by=[% sort_by |url %][% END %]">Last</a></li>
16
        <li><a class="nav" href="/cgi-bin/koha/catalogue/search.pl?[% query_cgi |html %][% limit_cgi |html %]&amp;offset=[% last_page_offset %][% IF ( sort_by ) %]&amp;sort_by=[% sort_by |url %][% END %]">Last</a></li>
17
    [% END %]
17
    [% END %]
18
</ul></nav>[% END %]
18
</ul></nav>[% END %]
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/searching.pref (+7 lines)
Lines 78-83 Searching: Link Here
78
                  yes: Keep
78
                  yes: Keep
79
                  no: "Don't keep"
79
                  no: "Don't keep"
80
            - patron search history in the staff client.
80
            - patron search history in the staff client.
81
        -
82
            - pref: BrowseResultSelection
83
              default: 0
84
              choices:
85
                  yes: Enable
86
                  no: Disable
87
            - "browsing search results fromt the bibliographic record detail page in staff client."
81
    Search Form:
88
    Search Form:
82
        -
89
        -
83
            - Load the unlogged history to the next user.
90
            - Load the unlogged history to the next user.
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tt (-1 / +2 lines)
Lines 1043-1049 Link Here
1043
    [% INCLUDE 'browser-strings.inc' %]
1043
    [% INCLUDE 'browser-strings.inc' %]
1044
    <script type="text/javascript" src="[% interface %]/js/browser.js"></script>
1044
    <script type="text/javascript" src="[% interface %]/js/browser.js"></script>
1045
    <script type="text/javascript">
1045
    <script type="text/javascript">
1046
        var browser = KOHA.browser('[% searchid %]', parseInt(biblionumber, 10));
1046
        var browser;
1047
        browser = KOHA.browser('[% searchid %]', parseInt(biblionumber, 10));
1047
        browser.show();
1048
        browser.show();
1048
1049
1049
        function activate_filters(id) {
1050
        function activate_filters(id) {
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/results.tt (-5 / +55 lines)
Lines 19-24 Link Here
19
<script type="text/javascript" src="[% interface %]/lib/shims/json2.min.js"></script>
19
<script type="text/javascript" src="[% interface %]/lib/shims/json2.min.js"></script>
20
<![endif]-->
20
<![endif]-->
21
<script type="text/javascript" src="[% interface %]/js/browser.js"></script>
21
<script type="text/javascript" src="[% interface %]/js/browser.js"></script>
22
<script type="text/javascript" src="[% interface %]/lib/jquery/plugins/jquery.checkboxes.min.js"></script>
22
<script type="text/javascript">
23
<script type="text/javascript">
23
//<![CDATA[
24
//<![CDATA[
24
var MSG_NO_ITEM_SELECTED = _("Nothing is selected.");
25
var MSG_NO_ITEM_SELECTED = _("Nothing is selected.");
Lines 48-55 function Dopop(link) { Link Here
48
        newin=window.open(link,'popup','width=500,height=500,toolbar=false,scrollbars=yes,resizeable=yes');
49
        newin=window.open(link,'popup','width=500,height=500,toolbar=false,scrollbars=yes,resizeable=yes');
49
}
50
}
50
function cartList(){
51
function cartList(){
51
    var checkboxes = $("#searchresults").find(":checkbox");
52
    var vshelf = vShelfAdd();
52
    var vshelf = vShelfAdd(checkboxes);
53
    if($("#addto").find("option:selected").attr("value") == "addtolist"){
53
    if($("#addto").find("option:selected").attr("value") == "addtolist"){
54
        var shelfnumber = $("#addto").find("option:selected").attr("id").replace("s","");
54
        var shelfnumber = $("#addto").find("option:selected").attr("id").replace("s","");
55
        if (vshelf) {
55
        if (vshelf) {
Lines 68-74 function cartList(){ Link Here
68
        return false;
68
        return false;
69
    }
69
    }
70
    if($("#addto").find("option:selected").attr("value") == "addtocart"){
70
    if($("#addto").find("option:selected").attr("value") == "addtocart"){
71
        addMultiple(checkboxes);
71
        addMultiple();
72
        return false;
72
        return false;
73
    }
73
    }
74
}
74
}
Lines 97-102 $("#forgetholdfor").click(function(){ Link Here
97
    $(".btn-group").removeClass("open");
97
    $(".btn-group").removeClass("open");
98
    return false;
98
    return false;
99
});
99
});
100
$("#searchheader").on("click", ".browse_selection", function(){
101
    browse_selection();
102
    return false;
103
});
100
$('#sortbyform').find("input:submit").hide();
104
$('#sortbyform').find("input:submit").hide();
101
$('#sort_by').change(function() {
105
$('#sort_by').change(function() {
102
        $('#sortbyform').submit();
106
        $('#sortbyform').submit();
Lines 211-216 $('#sort_by').change(function() { Link Here
211
        delSingleRecord(biblionumber);
215
        delSingleRecord(biblionumber);
212
    });
216
    });
213
217
218
    [% UNLESS Koha.Preference('BrowseResultSelection') %]
219
        resetSearchContext();
220
    [% END %]
221
    $(".selection").change(function(){
222
        if ( $(this).is(':checked') == true ) {
223
          addBibToContext( $(this).val() );
224
        } else {
225
          delBibToContext( $(this).val() );
226
        }
227
    });
228
    $("#bookbag_form").ready(function(){
229
        $("#bookbag_form").unCheckCheckboxes();
230
        var bibnums = getContextBiblioNumbers();
231
        if (bibnums) {
232
            for (var i=0; i < bibnums.length; i++) {
233
                var id = ('#bib' + bibnums[i]);
234
                if ($(id)) {
235
                    $(id).attr('checked', true);
236
                }
237
            }
238
        }
239
    });
214
});
240
});
215
241
216
242
Lines 231-240 function highlightOn() { Link Here
231
}[% END %]
257
}[% END %]
232
258
233
function selectAll () {
259
function selectAll () {
234
    $(".selection").prop("checked", true);
260
    $("#bookbag_form").checkCheckboxes();
261
    $("#bookbag_form").find("input[type='checkbox'][name='biblionumber']").each(function(){
262
        $(this).change();
263
    } );
264
    return false;
235
}
265
}
236
function clearAll () {
266
function clearAll () {
237
    $(".selection").prop("checked", false);
267
    $("#bookbag_form").unCheckCheckboxes();
268
    $("#bookbag_form").find("input[type='checkbox'][name='biblionumber']").each(function(){
269
        $(this).change();
270
    } );
271
    return false;
238
}
272
}
239
function placeHold () {
273
function placeHold () {
240
    var checkedItems = $(".selection:checked");
274
    var checkedItems = $(".selection:checked");
Lines 267-272 function forgetPatron(){ Link Here
267
    $("#placeholdc").html("<a class=\"btn btn-default btn-xs placehold\" href=\"#\"><i class=\"fa fa-sticky-note-o\"></i> "+_("Place hold")+"</a>");
301
    $("#placeholdc").html("<a class=\"btn btn-default btn-xs placehold\" href=\"#\"><i class=\"fa fa-sticky-note-o\"></i> "+_("Place hold")+"</a>");
268
}
302
}
269
303
304
function browse_selection () {
305
    var bibnums = getContextBiblioNumbers();
306
    if ( bibnums && bibnums.length > 0 ) {
307
        var browser = KOHA.browser('', parseInt('[% biblionumber %]', 10));
308
        browser.create(1, '[% query_cgi %]', '[% limit_cgi | uri %]','[% sort_cgi | uri %]', bibnums, bibnums.length);
309
        window.location = '/cgi-bin/koha/catalogue/detail.pl?biblionumber=' + bibnums[0] + '&searchid='+browser.searchid;
310
    } else {
311
        alert(MSG_NO_ITEM_SELECTED);
312
    }
313
    return false;
314
}
315
316
270
function addToList () {
317
function addToList () {
271
    var checkedItems = $(".selection:checked");
318
    var checkedItems = $(".selection:checked");
272
    if ($(checkedItems).size() == 0) {
319
    if ($(checkedItems).size() == 0) {
Lines 391-396 var holdForPatron = function () { Link Here
391
                    <div id="placeholdc" class="btn-group"><a class="btn btn-default btn-xs placehold" href="#"><i class="fa fa-sticky-note-o"></i> Place hold</a></div>
438
                    <div id="placeholdc" class="btn-group"><a class="btn btn-default btn-xs placehold" href="#"><i class="fa fa-sticky-note-o"></i> Place hold</a></div>
392
                [% END %]
439
                [% END %]
393
                [% END %]
440
                [% END %]
441
                [% IF Koha.Preference('BrowseResultSelection') %]
442
                    <div id="browse_selection" class="btn-group"><a class="btn btn-default btn-xs browse_selection" href="#"><i class="fa fa-sticky-note-o"></i> Browse selected records</a></div>
443
                [% END %]
394
444
395
                [% IF ( CAN_user_editcatalogue_edit_catalogue ) %] <div class="btn-group"><a class="btn btn-default btn-xs" id="z3950submit" href="#"><i class="fa fa-search"></i> Z39.50/SRU search</a></div>[% END %]
445
                [% IF ( CAN_user_editcatalogue_edit_catalogue ) %] <div class="btn-group"><a class="btn btn-default btn-xs" id="z3950submit" href="#"><i class="fa fa-search"></i> Z39.50/SRU search</a></div>[% END %]
396
            </div>
446
            </div>
(-)a/koha-tmpl/intranet-tmpl/prog/js/basket.js (-15 / +33 lines)
Lines 157-173 function SelectAll(){ Link Here
157
157
158
function addMultiple(biblist){
158
function addMultiple(biblist){
159
    var c_value = "";
159
    var c_value = "";
160
    if(biblist.length > 0) {
160
    if( biblist && biblist.length > 0 ) {
161
        for (var i=0; i < biblist.length; i++) {
161
        for (var i=0; i < biblist.length; i++) {
162
            if (biblist[i].checked) {
162
            if (biblist[i].checked) {
163
                c_value = c_value + biblist[i].value + "/";
163
                c_value = c_value + biblist[i].value + "/";
164
            }
164
            }
165
        }
165
        }
166
        addSelRecords(c_value);
167
    } else {
166
    } else {
168
        c_value = c_value + biblist.value + "/";
167
        var bibnums = getContextBiblioNumbers();
169
        addSelRecords(c_value);
168
        if ( bibnums.length > 0 ) {
169
            for ( var i = 0 ; i < bibnums.length ; i++ ) {
170
                c_value = c_value + bibnums[i] + "/";
171
            }
172
        } else {
173
            if(document.bookbag_form.biblionumber.length > 0) {
174
                for (var i=0; i < document.bookbag_form.biblionumber.length; i++) {
175
                    if (document.bookbag_form.biblionumber[i].checked) {
176
                        c_value = c_value + document.bookbag_form.biblionumber[i].value + "/";
177
                    }
178
                }
179
            } else {
180
                c_value = c_value + document.bookbag_form.biblionumber.value + "/";
181
            }
182
        }
170
    }
183
    }
184
    addSelRecords(c_value);
171
}
185
}
172
186
173
function addSelRecords(valSel) { // function for adding a selection of biblios to the basket
187
function addSelRecords(valSel) { // function for adding a selection of biblios to the basket
Lines 421-440 function addSelToShelf() { Link Here
421
///  vShelfAdd()  builds url string for multiple-biblio adds.
435
///  vShelfAdd()  builds url string for multiple-biblio adds.
422
436
423
function vShelfAdd(biblist) {
437
function vShelfAdd(biblist) {
424
        bibs = [];
438
    var bibs = new Array;
425
        if(biblist.length > 0) {
439
    if( biblist && biblist.length > 0 ) {
426
                for (var i=0; i < biblist.length; i++) {
440
        for (var i=0; i < biblist.length; i++) {
427
                        if (biblist[i].checked) {
441
            if (biblist[i].checked) {
428
                                bibs.push("biblionumber=" +  biblist[i].value);
442
                bibs.push("biblionumber=" +  biblist[i].value);
429
                        }
443
            }
430
                }
444
        }
431
        if (bibs.length === 0) { showListsUpdate(MSG_NO_RECORD_SELECTED); }
445
        if (bibs.length === 0) { showListsUpdate(MSG_NO_RECORD_SELECTED); }
432
            return bibs.join("&");
446
        return bibs.join("&");
433
        } else {
447
    } else {
434
            if (biblist.checked) {
448
        var bibnums = getContextBiblioNumbers();
435
                return "biblionumber=" + biblist.value;
449
        if ( bibnums.length > 0 ) {
450
            for ( var i = 0 ; i < bibnums.length ; i++ ) {
451
                bibs.push("biblionumber=" + bibnums[i]);
436
            }
452
            }
453
            return bibs.join("&");
437
        }
454
        }
455
    }
438
}
456
}
439
457
440
function showCart(){
458
function showCart(){
(-)a/koha-tmpl/intranet-tmpl/prog/js/cart.js (+2 lines)
Lines 71-76 $(document).ready(function(){ Link Here
71
    $("#bookbag_form").checkCheckboxes("*", true).each(
71
    $("#bookbag_form").checkCheckboxes("*", true).each(
72
        function() {
72
        function() {
73
            selRecord(this.value,true);
73
            selRecord(this.value,true);
74
            $(this).change();
74
        }
75
        }
75
    );
76
    );
76
        return false;
77
        return false;
Lines 80-85 $(document).ready(function(){ Link Here
80
    $("#bookbag_form").unCheckCheckboxes("*",true).each(
81
    $("#bookbag_form").unCheckCheckboxes("*",true).each(
81
        function() {
82
        function() {
82
            selRecord(this.value,false);
83
            selRecord(this.value,false);
84
            $(this).change();
83
        }
85
        }
84
    );
86
    );
85
        return false;
87
        return false;
(-)a/koha-tmpl/intranet-tmpl/prog/js/commons.js (-1 / +73 lines)
Line 0 Link Here
0
- 
1
// Extends jQuery API
2
jQuery.extend({uniqueArray:function(array){
3
    return $.grep(array, function(el, index) {
4
        return index === $.inArray(el, array);
5
    });
6
}});
7
8
function removeByValue(arr, val) {
9
    for(var i=0; i<arr.length; i++) {
10
        if(arr[i] == val) {
11
            arr.splice(i, 1);
12
            break;
13
        }
14
    }
15
}
16
17
function paramOfUrl( url, param ) {
18
    param = param.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
19
    var regexS = "[\\?&]"+param+"=([^&#]*)";
20
    var regex = new RegExp( regexS );
21
    var results = regex.exec( url );
22
    if( results == null ) {
23
        return "";
24
    } else {
25
        return results[1];
26
    }
27
}
28
29
function addBibToContext( bibnum ) {
30
    bibnum = parseInt(bibnum, 10);
31
    var bibnums = getContextBiblioNumbers();
32
    bibnums.push(bibnum);
33
    setContextBiblioNumbers( bibnums );
34
    setContextBiblioNumbers( $.uniqueArray( bibnums ) );
35
}
36
37
function delBibToContext( bibnum ) {
38
    var bibnums = getContextBiblioNumbers();
39
    removeByValue( bibnums, bibnum );
40
    setContextBiblioNumbers( $.uniqueArray( bibnums ) );
41
}
42
43
function setContextBiblioNumbers( bibnums ) {
44
    $.cookie('bibs_selected', JSON.stringify( bibnums ));
45
}
46
47
function getContextBiblioNumbers() {
48
    var r = $.cookie('bibs_selected');
49
    if ( r ) {
50
        return JSON.parse(r);
51
    }
52
    r = new Array();
53
    return r;
54
}
55
56
function resetSearchContext() {
57
    setContextBiblioNumbers( new Array() );
58
}
59
60
$(document).ready(function(){
61
    // forms with action leading to search
62
    $("form[action*='search.pl']").submit(function(){
63
        resetSearchContext();
64
    });
65
    // any link to launch a search except navigation links
66
    $("[href*='search.pl?']").not(".nav").not('.searchwithcontext').click(function(){
67
        resetSearchContext();
68
    });
69
    // any link to a detail page from the results page.
70
    $("#bookbag_form a[href*='detail.pl?']").click(function(){
71
        resetSearchContext();
72
    });
73
});

Return to bug 19290