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

(-)a/koha-tmpl/opac-tmpl/bootstrap/en/includes/opac-bottom.inc (+3 lines)
Lines 85-90 $.widget.bridge('uitooltip', $.ui.tooltip); Link Here
85
</script>
85
</script>
86
<script type="text/javascript" src="[% interface %]/[% theme %]/lib/bootstrap/js/bootstrap.min.js"></script>
86
<script type="text/javascript" src="[% interface %]/[% theme %]/lib/bootstrap/js/bootstrap.min.js"></script>
87
<script type="text/javascript" src="[% interface %]/[% theme %]/js/global.js"></script>
87
<script type="text/javascript" src="[% interface %]/[% theme %]/js/global.js"></script>
88
<script type="text/javascript" src="[% interface %]/[% theme %]/lib/jquery/plugins/jquery.cookie.min.js"></script>
89
<script type="text/javascript" src="[% interface %]/[% theme %]/js/commons.js"></script>
88
<script type="text/javascript">
90
<script type="text/javascript">
89
    Modernizr.load([
91
    Modernizr.load([
90
        // Test need for polyfill
92
        // Test need for polyfill
Lines 127-132 $.widget.bridge('uitooltip', $.ui.tooltip); Link Here
127
        var MSG_ITEM_IN_CART = _("In your cart");
129
        var MSG_ITEM_IN_CART = _("In your cart");
128
        var MSG_IN_YOUR_CART = _("Items in your cart: ");
130
        var MSG_IN_YOUR_CART = _("Items in your cart: ");
129
        var MSG_ITEM_NOT_IN_CART = _("Add to your cart");
131
        var MSG_ITEM_NOT_IN_CART = _("Add to your cart");
132
        var MSG_NEED_COOKIE_ENABLED = _("Your browser does not accept cookies, you must accept them to browse selected results.");
130
    [% END %]
133
    [% END %]
131
    [% IF ( Koha.Preference( 'opacuserlogin' ) == 1 ) && ( Koha.Preference( 'TagsEnabled' ) == 1 ) %]
134
    [% IF ( Koha.Preference( 'opacuserlogin' ) == 1 ) && ( Koha.Preference( 'TagsEnabled' ) == 1 ) %]
132
        var MSG_TAGS_DISABLED = _("Sorry, tags are not enabled on this system.");
135
        var MSG_TAGS_DISABLED = _("Sorry, tags are not enabled on this system.");
(-)a/koha-tmpl/opac-tmpl/bootstrap/en/includes/page-numbers.inc (-2 / +2 lines)
Lines 8-18 Link Here
8
            [% IF ( PAGE_NUMBER.highlight ) %]
8
            [% IF ( PAGE_NUMBER.highlight ) %]
9
                <li class="active"><a href="#">[% PAGE_NUMBER.pg %]</a></li>
9
                <li class="active"><a href="#">[% PAGE_NUMBER.pg %]</a></li>
10
            [% ELSE %]
10
            [% ELSE %]
11
                <li><a href="/cgi-bin/koha/opac-search.pl?[% query_cgi |html %][% limit_cgi |html %]&amp;offset=[% PAGE_NUMBER.offset %][% IF ( sort_by ) %]&amp;sort_by=[% sort_by |html%][% END %]">[% PAGE_NUMBER.pg %]</a></li>
11
                <li><a class="nav" href="/cgi-bin/koha/opac-search.pl?[% query_cgi |html %][% limit_cgi |html %]&amp;offset=[% PAGE_NUMBER.offset %][% IF ( sort_by ) %]&amp;sort_by=[% sort_by |html%][% 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/opac-search.pl?[% query_cgi |html %][% limit_cgi |html %]&amp;offset=[% next_page_offset %][% IF ( sort_by ) %]&amp;sort_by=[% sort_by |html %][% END %]">Next &raquo;</a></li>
15
            <li><a class="nav" href="/cgi-bin/koha/opac-search.pl?[% query_cgi |html %][% limit_cgi |html %]&amp;offset=[% next_page_offset %][% IF ( sort_by ) %]&amp;sort_by=[% sort_by |html %][% END %]">Next &raquo;</a></li>
16
        [% END %]
16
        [% END %]
17
        </ul>
17
        </ul>
18
    </div>
18
    </div>
(-)a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-detail.tt (-29 / +35 lines)
Lines 1073-1079 Link Here
1073
                                [% END %]
1073
                                [% END %]
1074
                            </li>
1074
                            </li>
1075
                            [%# busc is already URI encoded %]
1075
                            [%# busc is already URI encoded %]
1076
                            <li class="back_results"><a href="opac-search.pl?[% busc %]" title="Back to the results search list">Back to results</a></li>
1076
                            <li class="back_results"><a href="opac-search.pl?[% busc %]" title="Back to the results search list" class="searchwithcontext">Back to results</a></li>
1077
                            <li class="right_results">
1077
                            <li class="right_results">
1078
                                [% IF ( nextBiblionumber ) %]
1078
                                [% IF ( nextBiblionumber ) %]
1079
                                    <a href="opac-detail.pl?biblionumber=[% nextBiblionumber %][% IF ( query_desc && OpacHighlightedWords ) %]&query_desc=[% query_desc |uri %][% END %]" title="See: [% IF ( nextTitle ) %][% nextTitle |html %][% ELSE %]next biblio[% END %]">Next &raquo;</a>
1079
                                    <a href="opac-detail.pl?biblionumber=[% nextBiblionumber %][% IF ( query_desc && OpacHighlightedWords ) %]&query_desc=[% query_desc |uri %][% END %]" title="See: [% IF ( nextTitle ) %][% nextTitle |html %][% ELSE %]next biblio[% END %]">Next &raquo;</a>
Lines 1096-1128 Link Here
1096
                    </div>
1096
                    </div>
1097
                [% END # / IF OpacBrowseResults && busc %]
1097
                [% END # / IF OpacBrowseResults && busc %]
1098
1098
1099
                [% INCLUDE 'opac-detail-sidebar.inc' %]
1099
                <div id="sidebar">
1100
                    [% INCLUDE 'opac-detail-sidebar.inc' %]
1100
1101
1101
                [% IF ( NovelistSelectProfile && NovelistSelectView == 'right' && normalized_isbn ) %]
1102
                    [% IF ( NovelistSelectProfile && NovelistSelectView == 'right' && normalized_isbn ) %]
1102
                    <div id="NovelistSelect">
1103
                        <div id="NovelistSelect">
1103
                        <h4>Novelist Select</h4>
1104
                            <h4>Novelist Select</h4>
1104
                        <div data-novelist-novelistselect=[% normalized_isbn %]></div>
1105
                            <div data-novelist-novelistselect=[% normalized_isbn %]></div>
1105
                    </div>
1106
                        </div>
1106
                [% END %]
1107
                    [% END %]
1107
1108
1108
                [% IF ( Babeltheque ) %]
1109
                    [% IF ( Babeltheque ) %]
1109
                    <div class="babeltheque_adds">
1110
                        <div class="babeltheque_adds">
1110
                        <div id="BW_critiques_aj"></div>
1111
                            <div id="BW_critiques_aj"></div>
1111
                        <div id="BW_citations_aj"></div>
1112
                            <div id="BW_citations_aj"></div>
1112
                    </div>
1113
                        </div>
1113
                [% END %]
1114
                    [% END %]
1114
1115
1115
                [% IF ( SocialNetworks ) %]
1116
                    [% IF ( SocialNetworks ) %]
1116
                    <div id="social_networks" class="clearfix">
1117
                        <div id="social_networks" class="clearfix">
1117
                        <span>Share</span>
1118
                            <span>Share</span>
1118
                        <div><a id="facebook" href="http://www.facebook.com/sharer.php?u=[% current_url |url %]&amp;t=[% title |url %]" title="Share on Facebook">Facebook</a></div>
1119
                            <div><a id="facebook" href="http://www.facebook.com/sharer.php?u=[% current_url |url %]&amp;t=[% title |url %]" title="Share on Facebook">Facebook</a></div>
1119
                        <div><a id="linkedin" href="http://www.linkedin.com/shareArticle?mini=true&amp;url=[% current_url |url %]&amp;title=[% title |url %]" title="Share on LinkedIn">LinkedIn</a></div>
1120
                            <div><a id="linkedin" href="http://www.linkedin.com/shareArticle?mini=true&amp;url=[% current_url |url %]&amp;title=[% title |url %]" title="Share on LinkedIn">LinkedIn</a></div>
1120
                        <div><a id="delicious" href="http://www.delicious.com/save?url=[% current_url |url %]&amp;title=[% title |url %]" title="Share on Delicious">Delicious</a></div>
1121
                            <div><a id="delicious" href="http://www.delicious.com/save?url=[% current_url |url %]&amp;title=[% title |url %]" title="Share on Delicious">Delicious</a></div>
1121
                        <div><a id="email" href="mailto:?subject=[% title |url %]&amp;body=[% title |url %]%20([% current_url |url %])" title="Share by email">Email</a></div>
1122
                            <div><a id="email" href="mailto:?subject=[% title |url %]&amp;body=[% title |url %]%20([% current_url |url %])" title="Share by email">Email</a></div>
1122
                        <div><div class="g-plusone" data-size="small" data-count="false"></div></div>
1123
                            <div><div class="g-plusone" data-size="small" data-count="false"></div></div>
1123
                        <div><a id="twitter" href="https://twitter.com/share" class="twitter-share-button" data-count="none" data-text="[% title |url %]" data-lang="[% lang %]">Tweet</a></div>
1124
                            <div><a id="twitter" href="https://twitter.com/share" class="twitter-share-button" data-count="none" data-text="[% title |url %]" data-lang="[% lang %]">Tweet</a></div>
1124
                    </div>
1125
                        </div>
1125
                [% END %]
1126
                    [% END %]
1127
                </div>
1126
            </div> <!-- / .ulactioncontainer -->
1128
            </div> <!-- / .ulactioncontainer -->
1127
        </div> <!-- / .span4 -->
1129
        </div> <!-- / .span4 -->
1128
    </div> <!-- / .row-fluid -->
1130
    </div> <!-- / .row-fluid -->
Lines 1495-1500 Link Here
1495
            renderPagIndexList(pag_index_ini, $("#listResults"));
1497
            renderPagIndexList(pag_index_ini, $("#listResults"));
1496
        }
1498
        }
1497
        $("#a_listResults").click(function(e) {
1499
        $("#a_listResults").click(function(e) {
1500
            $("#sidebar").toggle();
1498
            if (arrPagination.length > 0) {
1501
            if (arrPagination.length > 0) {
1499
                e.preventDefault();
1502
                e.preventDefault();
1500
                var navigation = $(".results-pagination");
1503
                var navigation = $(".results-pagination");
Lines 1514-1519 Link Here
1514
            e.preventDefault();
1517
            e.preventDefault();
1515
            var navigation = $(".results-pagination");
1518
            var navigation = $(".results-pagination");
1516
            navigation.hide();
1519
            navigation.hide();
1520
            $("#sidebar").toggle();
1517
        });
1521
        });
1518
    [% END %]
1522
    [% END %]
1519
[% IF ( OPACShelfBrowser ) %]
1523
[% IF ( OPACShelfBrowser ) %]
Lines 1684-1691 Link Here
1684
        var timeoutRFW;
1688
        var timeoutRFW;
1685
        var totalPagItemList = 10;
1689
        var totalPagItemList = 10;
1686
1690
1687
        function rewindList()
1691
        function rewindList(e)
1688
        {
1692
        {
1693
            e.preventDefault();
1689
            var ul = $("#listResults");
1694
            var ul = $("#listResults");
1690
            var li_ini = ul.children(':first').next();
1695
            var li_ini = ul.children(':first').next();
1691
            var index_ini = pag_index_ini;
1696
            var index_ini = pag_index_ini;
Lines 1703-1710 Link Here
1703
            }
1708
            }
1704
        }//rewindList
1709
        }//rewindList
1705
1710
1706
        function forwardList()
1711
        function forwardList(e)
1707
        {
1712
        {
1713
            e.preventDefault();
1708
            var ul = $("#listResults");
1714
            var ul = $("#listResults");
1709
            var li_ini = ul.children(':first').next();
1715
            var li_ini = ul.children(':first').next();
1710
            var index_ini = pag_index_ini;
1716
            var index_ini = pag_index_ini;
Lines 1735-1741 Link Here
1735
            var ini = index - 1;
1741
            var ini = index - 1;
1736
            var end = ini + totalPagItemList - 1;
1742
            var end = ini + totalPagItemList - 1;
1737
            li = $("<li />");
1743
            li = $("<li />");
1738
            html = (index > pag_index_ini)?"<a href='#' id='rew_list_index' onclick='rewindList()' title='" + _("Click to rewind the list to") + " " + ini + " - " + end + "'>&laquo;</a>":"&laquo;";
1744
            html = (index > pag_index_ini)?"<a href='#' id='rew_list_index' onclick='rewindList(event)' title='" + _("Click to rewind the list to") + " " + ini + " - " + end + "'>&laquo;</a>":"&laquo;";
1739
            li.html(html);
1745
            li.html(html);
1740
            ul.append(li);
1746
            ul.append(li);
1741
            var title = "";
1747
            var title = "";
Lines 1757-1763 Link Here
1757
            li = $("<li />");
1763
            li = $("<li />");
1758
            ini = index + 1;
1764
            ini = index + 1;
1759
            end = (arrPagination.length > index + totalPagItemList)?index + totalPagItemList:arrPagination.length - 1;
1765
            end = (arrPagination.length > index + totalPagItemList)?index + totalPagItemList:arrPagination.length - 1;
1760
            html = (end <= arrPagination.length - 1 && (end - index) >= totalPagItemList)?"<a href='#' id='fw_list_index' onclick='forwardList()' title='" + _("Click to forward the list to") + " " + ini + " - " + end + "'>&raquo;</a>":"&raquo;";
1766
            html = (end <= arrPagination.length - 1 && (end - index) >= totalPagItemList)?"<a href='#' id='fw_list_index' onclick='forwardList(event)' title='" + _("Click to forward the list to") + " " + ini + " - " + end + "'>&raquo;</a>":"&raquo;";
1761
            li.html(html);
1767
            li.html(html);
1762
            ul.append(li);
1768
            ul.append(li);
1763
        }//renderPagIndexList
1769
        }//renderPagIndexList
(-)a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-results.tt (-3 / +51 lines)
Lines 175-180 Link Here
175
                                                    Tag status here.
175
                                                    Tag status here.
176
                                                </div>
176
                                                </div>
177
                                            [% END %]
177
                                            [% END %]
178
                                            [% IF Koha.Preference('OpacBrowseResults') %]
179
                                              <span class="details_link"></span>
180
                                            [% END %]
178
                                        </span> <!-- / .links -->
181
                                        </span> <!-- / .links -->
179
                                </div> <!-- / #selections-toolbar -->
182
                                </div> <!-- / #selections-toolbar -->
180
183
Lines 660-670 function tagAdded() { Link Here
660
663
661
function enableCheckboxActions(){
664
function enableCheckboxActions(){
662
    // Enable/disable controls if checkboxes are checked
665
    // Enable/disable controls if checkboxes are checked
663
    var checkedBoxes = $(".checkboxed input:checkbox:checked");
666
    var bibnums = getContextBiblioNumbers();
664
    var controls = $("#selections-toolbar .links a, #selections-toolbar .links input, #selections-toolbar .links select, , #selections-toolbar .links label")
667
    var controls = $("#selections-toolbar .links a, #selections-toolbar .links input, #selections-toolbar .links select, , #selections-toolbar .links label")
665
    if ($(checkedBoxes).size()) {
668
    if ( bibnums.length > 0 ) {
666
      $("#selections").html(_("With selected titles: "));
669
      $("#selections").html(_("With selected titles: "));
667
      $(controls).removeClass("disabled");
670
      $(controls).removeClass("disabled");
671
      // Hide or show details link
672
      // Update with first biblionumber in queue
673
      $(".details_link a").attr("href", "/cgi-bin/koha/opac-detail.pl?biblionumber=" + bibnums[0]);
668
    } else {
674
    } else {
669
      $("#selections").html(_("Select titles to: "));
675
      $("#selections").html(_("Select titles to: "));
670
      $(controls).addClass("disabled");
676
      $(controls).addClass("disabled");
Lines 693-698 function highlightOn() { Link Here
693
    $(".highlight_toggle").toggle();
699
    $(".highlight_toggle").toggle();
694
}
700
}
695
[% END %]
701
[% END %]
702
696
$(document).ready(function(){
703
$(document).ready(function(){
697
    [% IF ( OpacHighlightedWords ) %]
704
    [% IF ( OpacHighlightedWords ) %]
698
        $('a.title').each(function() {
705
        $('a.title').each(function() {
Lines 700-710 $(document).ready(function(){ Link Here
700
        });
707
        });
701
    [% END %]
708
    [% END %]
702
709
703
    $(".cb").click(function(){
710
    $(".cb").change(function(){
711
      [% IF Koha.Preference('OpacBrowseResults') %]
712
        if ( $(this).is(':checked') == true ) {
713
          addBibToContext( $(this).val() );
714
        } else {
715
          delBibToContext( $(this).val() );
716
        }
717
      [% END %]
704
      enableCheckboxActions();
718
      enableCheckboxActions();
705
    });
719
    });
720
721
    $("span.details_link").html("<a href=\"#\" class=\"disabled\">"+_("Browse selected records")+"<\/a>");
722
    $(".details_link a").click(function(e) {
723
      if ( $(this).hasClass("disabled") == true ) {
724
        e.preventDefault();
725
        var checkedBoxes = $(".searchresults :checkbox:checked");
726
        if ($(checkedBoxes).size() == 0) {
727
            alert(MSG_NO_RECORD_SELECTED);
728
        } else {
729
            alert(MSG_NEED_COOKIE_ENABLED);
730
        }
731
        return false;
732
      }
733
    });
706
    enableCheckboxActions();
734
    enableCheckboxActions();
707
735
736
737
    $("#bookbag_form").ready(function(){
738
      $("#bookbag_form").unCheckCheckboxes();
739
      var bibnums = getContextBiblioNumbers();
740
      if (bibnums) {
741
        for (var i=0; i < bibnums.length; i++) {
742
          var id = ('#bib' + bibnums[i]);
743
          if ($(id)) {
744
            $(id).attr('checked', true);
745
          }
746
        }
747
      }
748
    });
749
708
    [% IF ( IDreamBooksResults ) %]
750
    [% IF ( IDreamBooksResults ) %]
709
        $('.idbresult').each(function() {
751
        $('.idbresult').each(function() {
710
            var isbn = $(this).children('a').text().replace(/\s*/,'');
752
            var isbn = $(this).children('a').text().replace(/\s*/,'');
Lines 848-858 $(document).ready(function(){ Link Here
848
    $("#CheckAll").click(function(){
890
    $("#CheckAll").click(function(){
849
        $("#bookbag_form").checkCheckboxes();
891
        $("#bookbag_form").checkCheckboxes();
850
        enableCheckboxActions();
892
        enableCheckboxActions();
893
        $("#bookbag_form").find("input[type='checkbox'][name='biblionumber']").each(function(){
894
            $(this).change();
895
        } );
851
        return false;
896
        return false;
852
    });
897
    });
853
    $("#CheckNone").click(function(){
898
    $("#CheckNone").click(function(){
854
        $("#bookbag_form").unCheckCheckboxes();
899
        $("#bookbag_form").unCheckCheckboxes();
855
        enableCheckboxActions();
900
        enableCheckboxActions();
901
        $("#bookbag_form").find("input[type='checkbox'][name='biblionumber']").each(function(){
902
            $(this).change();
903
        } );
856
        return false;
904
        return false;
857
    });
905
    });
858
906
(-)a/koha-tmpl/opac-tmpl/bootstrap/js/basket.js (-13 / +29 lines)
Lines 157-173 function SelectAll(){ Link Here
157
}
157
}
158
158
159
function addMultiple(){
159
function addMultiple(){
160
    var bibnums = getContextBiblioNumbers();
160
    var c_value = "";
161
    var c_value = "";
161
    if(document.bookbag_form.biblionumber.length > 0) {
162
    if ( bibnums.length > 0 ) {
162
        for (var i=0; i < document.bookbag_form.biblionumber.length; i++) {
163
        for ( var i = 0 ; i < bibnums.length ; i++ ) {
163
            if (document.bookbag_form.biblionumber[i].checked) {
164
            c_value = c_value + bibnums[i] + "/";
164
                c_value = c_value + document.bookbag_form.biblionumber[i].value + "/";
165
            }
166
        }
165
        }
167
        addSelRecords(c_value);
166
        addSelRecords(c_value);
168
    } else {
167
    } else {
169
        c_value = c_value + document.bookbag_form.biblionumber.value + "/";
168
        if(document.bookbag_form.biblionumber.length > 0) {
170
        addSelRecords(c_value);
169
            for (var i=0; i < document.bookbag_form.biblionumber.length; i++) {
170
                if (document.bookbag_form.biblionumber[i].checked) {
171
                    c_value = c_value + document.bookbag_form.biblionumber[i].value + "/";
172
                }
173
            }
174
            addSelRecords(c_value);
175
        } else {
176
            c_value = c_value + document.bookbag_form.biblionumber.value + "/";
177
            addSelRecords(c_value);
178
        }
171
    }
179
    }
172
}
180
}
173
181
Lines 442-461 function addSelToShelf() { Link Here
442
///  vShelfAdd()  builds url string for multiple-biblio adds.
450
///  vShelfAdd()  builds url string for multiple-biblio adds.
443
451
444
function vShelfAdd() {
452
function vShelfAdd() {
445
        bibs= new Array;
453
    var bibnums = getContextBiblioNumbers();
454
    bibs = new Array;
455
    if ( bibnums.length > 0 ) {
456
        for ( var i = 0 ; i < bibnums.length ; i++ ) {
457
            bibs.push("biblionumber=" + bibnums[i]);
458
        }
459
        return bibs.join("&");
460
    } else {
446
        if(document.bookbag_form.biblionumber.length > 0) {
461
        if(document.bookbag_form.biblionumber.length > 0) {
447
                for (var i=0; i < document.bookbag_form.biblionumber.length; i++) {
462
            for (var i=0; i < document.bookbag_form.biblionumber.length; i++) {
448
                        if (document.bookbag_form.biblionumber[i].checked) {
463
                if (document.bookbag_form.biblionumber[i].checked) {
449
                                bibs.push("biblionumber=" +  document.bookbag_form.biblionumber[i].value);
464
                    bibs.push("biblionumber=" +  document.bookbag_form.biblionumber[i].value);
450
                        }
451
                }
465
                }
452
        if (bibs.length == 0) { showListsUpdate(MSG_NO_RECORD_SELECTED); }
466
            }
467
            if (bibs.length == 0) { showListsUpdate(MSG_NO_RECORD_SELECTED); }
453
            return bibs.join("&");
468
            return bibs.join("&");
454
        } else {
469
        } else {
455
            if (document.bookbag_form.biblionumber.checked) {
470
            if (document.bookbag_form.biblionumber.checked) {
456
                return "biblionumber=" + document.bookbag_form.biblionumber.value;
471
                return "biblionumber=" + document.bookbag_form.biblionumber.value;
457
            }
472
            }
458
        }
473
        }
474
    }
459
}
475
}
460
476
461
function showCart(){
477
function showCart(){
(-)a/koha-tmpl/opac-tmpl/bootstrap/js/commons.js (+69 lines)
Line 0 Link Here
1
// Extends jQuery API
2
// http://www.wskidmore.com/downloads/jquery-uniqueArray.min.js
3
jQuery.extend({uniqueArray:function(e){if($.isArray(e)){var c={};var a,b;for(b=0,a=e.length;b<a;b++){var d=e[b].toString();if(c[d]){e.splice(b,1);a--;b--}else{c[d]=true}}}return(e)}});
4
5
function removeByValue(arr, val) {
6
    for(var i=0; i<arr.length; i++) {
7
        if(arr[i] == val) {
8
            arr.splice(i, 1);
9
            break;
10
        }
11
    }
12
}
13
14
function paramOfUrl( url, param ) {
15
    param = param.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
16
    var regexS = "[\\?&]"+param+"=([^&#]*)";
17
    var regex = new RegExp( regexS );
18
    var results = regex.exec( url );
19
    if( results == null ) {
20
        return "";
21
    } else {
22
        return results[1];
23
    }
24
}
25
26
function addBibToContext( bibnum ) {
27
    var bibnums = getContextBiblioNumbers();
28
    bibnums.push(bibnum);
29
    setContextBiblioNumbers( bibnums );
30
    setContextBiblioNumbers( $.uniqueArray( bibnums ) );
31
}
32
33
function delBibToContext( bibnum ) {
34
    var bibnums = getContextBiblioNumbers();
35
    removeByValue( bibnums, bibnum );
36
    setContextBiblioNumbers( $.uniqueArray( bibnums ) );
37
}
38
39
function setContextBiblioNumbers( bibnums ) {
40
    $.cookie('bibs_selected', JSON.stringify( bibnums ));
41
}
42
43
function getContextBiblioNumbers() {
44
    var r = $.cookie('bibs_selected');
45
    if ( r ) {
46
        return JSON.parse(r);
47
    }
48
    r = new Array();
49
    return r;
50
}
51
52
function resetSearchContext() {
53
    setContextBiblioNumbers( new Array() );
54
}
55
56
$(document).ready(function(){
57
    // forms with action leading to search
58
    $("form[action*='opac-search.pl']").submit(function(){
59
        resetSearchContext();
60
    });
61
    // any link to launch a search except navigation links
62
    $("[href*='opac-search.pl?']").not(".nav").not('.searchwithcontext').click(function(){
63
        resetSearchContext();
64
    });
65
    // any link to a detail page from the results page.
66
    $("#bookbag_form a[href*='opac-detail.pl?']").click(function(){
67
        resetSearchContext();
68
    });
69
});
(-)a/opac/opac-detail.pl (-4 / +17 lines)
Lines 24-29 use Modern::Perl; Link Here
24
24
25
use CGI qw ( -utf8 );
25
use CGI qw ( -utf8 );
26
use C4::Acquisition qw( SearchOrders );
26
use C4::Acquisition qw( SearchOrders );
27
use JSON;
27
use C4::Auth qw(:DEFAULT get_session);
28
use C4::Auth qw(:DEFAULT get_session);
28
use C4::Koha;
29
use C4::Koha;
29
use C4::Serials;    #uses getsubscriptionfrom biblionumber
30
use C4::Serials;    #uses getsubscriptionfrom biblionumber
Lines 259-269 if ($session->param('busc')) { Link Here
259
            push @{$arrParamsBusc{$key}}, uri_unescape($value);
260
            push @{$arrParamsBusc{$key}}, uri_unescape($value);
260
        }
261
        }
261
    }
262
    }
263
262
    my $searchAgain = 0;
264
    my $searchAgain = 0;
265
    my ( $offset, $results_per_page );
266
267
    my $bibnums = JSON::from_json( $query->cookie('bibs_selected') || '[]' );
268
    if ( scalar( @$bibnums ) ) {
269
        $arrParamsBusc{count} = scalar( @$bibnums );
270
        $arrParamsBusc{listBiblios} = join ',', @$bibnums;
271
        $results_per_page = $arrParamsBusc{count};
272
        $offset = 0;
273
    } else {
274
    $offset = ($arrParamsBusc{'offset'} && $arrParamsBusc{'offset'} =~ /^[0-9]+?/)?$arrParamsBusc{'offset'}:0;
263
    my $count = C4::Context->preference('OPACnumSearchResults') || 20;
275
    my $count = C4::Context->preference('OPACnumSearchResults') || 20;
264
    my $results_per_page = ($arrParamsBusc{'count'} && $arrParamsBusc{'count'} =~ /^[0-9]+?/)?$arrParamsBusc{'count'}:$count;
276
    $results_per_page = ($arrParamsBusc{'count'} && $arrParamsBusc{'count'} =~ /^[0-9]+?/)?$arrParamsBusc{'count'}:$count;
265
    $arrParamsBusc{'count'} = $results_per_page;
277
    $arrParamsBusc{'count'} = $results_per_page;
266
    my $offset = ($arrParamsBusc{'offset'} && $arrParamsBusc{'offset'} =~ /^[0-9]+?/)?$arrParamsBusc{'offset'}:0;
267
    # The value OPACnumSearchResults has changed and the search has to be rebuild
278
    # The value OPACnumSearchResults has changed and the search has to be rebuild
268
    if ($count != $results_per_page) {
279
    if ($count != $results_per_page) {
269
        if (exists($arrParamsBusc{'listBiblios'}) && $arrParamsBusc{'listBiblios'} =~ /^[0-9]+(?:,[0-9]+)*$/) {
280
        if (exists($arrParamsBusc{'listBiblios'}) && $arrParamsBusc{'listBiblios'} =~ /^[0-9]+(?:,[0-9]+)*$/) {
Lines 323-328 if ($session->param('busc')) { Link Here
323
            @arrBusc = split(/\&(?:amp;)?/, $newbusc);
334
            @arrBusc = split(/\&(?:amp;)?/, $newbusc);
324
        }
335
        }
325
    }
336
    }
337
338
    } # end if cookie bibs_selected exists
339
326
    my $buscParam = '';
340
    my $buscParam = '';
327
    my $j = 0;
341
    my $j = 0;
328
    # Rebuild the query for the button "back to results"
342
    # Rebuild the query for the button "back to results"
Lines 389-395 if ($session->param('busc')) { Link Here
389
        }
403
        }
390
        $offsetSearch = 0 if (defined($offsetSearch) && $offsetSearch < 0);
404
        $offsetSearch = 0 if (defined($offsetSearch) && $offsetSearch < 0);
391
    }
405
    }
392
    if ($searchAgain) {
406
    if ($searchAgain and not scalar( @$bibnums )) {
393
        my $newresultsRef = searchAgain(\%arrParamsBusc, $offsetSearch, $results_per_page);
407
        my $newresultsRef = searchAgain(\%arrParamsBusc, $offsetSearch, $results_per_page);
394
        my @newresults = @$newresultsRef;
408
        my @newresults = @$newresultsRef;
395
        # build the new listBiblios
409
        # build the new listBiblios
396
- 

Return to bug 10858