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

(-)a/koha-tmpl/intranet-tmpl/prog/en/includes/strings.inc (+1 lines)
Lines 13-18 Link Here
13
    var PREVIOUS_CHECKOUTS = _("Previous checkouts");
13
    var PREVIOUS_CHECKOUTS = _("Previous checkouts");
14
    var BY = _("by _AUTHOR_");
14
    var BY = _("by _AUTHOR_");
15
    var ON_HOLD = _("On hold");
15
    var ON_HOLD = _("On hold");
16
    var PLACE_HOLD = _("Place hold");
16
    var NOT_RENEWABLE = _("Not renewable");
17
    var NOT_RENEWABLE = _("Not renewable");
17
    var NOT_RENEWABLE_TOO_SOON = _("No renewal before %s");
18
    var NOT_RENEWABLE_TOO_SOON = _("No renewal before %s");
18
    var NOT_RENEWABLE_AUTO_TOO_SOON = _("Scheduled for automatic renewal");
19
    var NOT_RENEWABLE_AUTO_TOO_SOON = _("Scheduled for automatic renewal");
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/results.tt (-315 / +35 lines)
Lines 672-995 Link Here
672
    <script>
672
    <script>
673
        var MSG_NO_ITEM_SELECTED = _("Nothing is selected.");
673
        var MSG_NO_ITEM_SELECTED = _("Nothing is selected.");
674
        var MSG_NON_RESERVES_SELECTED = _("One or more selected items cannot be placed on hold.");
674
        var MSG_NON_RESERVES_SELECTED = _("One or more selected items cannot be placed on hold.");
675
        var PREF_AmazonCoverImages = parseInt( [% Koha.Preference('AmazonCoverImages') | html %], 10);
675
        var q_array = new Array();  // will hold search terms, if present
676
        var q_array = new Array();  // will hold search terms, if present
676
        [% IF ( AmazonCoverImages ) %]
677
        var PREF_LocalCoverImages = parseInt( [% Koha.Preference('LocalCoverImages') | html %], 10);
677
            // http://www.oreillynet.com/pub/a/javascript/2003/10/21/amazonhacks.html
678
        var PREF_IntranetCoce = parseInt( [% Koha.Preference('IntranetCoce') | html %], 10);
678
            function verify_images() {
679
        var PREF_CoceProviders = "[% Koha.Preference('CoceProviders') | html %]";
679
                $("img").each(function(i){
680
        var CoceHost = "[% CoceHost | html %]";
680
                    if ((this.src.indexOf('images-amazon.com') >= 0) || (this.src.indexOf('images.amazon.com') >=0)) {
681
        var CoceProviders = "[% CoceProviders | html %]";
681
                        w = this.width;
682
        var PREF_BrowseResultSelection = parseInt( [% Koha.Preference('BrowseResultSelection') | html %], 10);
682
                        h = this.height;
683
        var PREF_NotHighlightedWords = "[% Koha.Preference('NotHighlightedWords') | html %]";
683
                        if ((w == 1) || (h == 1)) {
684
        var biblionumber = "[% biblionumber | html %]";
684
                            $(this).parent().html('<span class="no-image">No cover image available</span>');
685
        var holdfor_cardnumber = "[% holdfor_cardnumber | html %]";
685
                        } else if ((this.complete != null) && (!this.complete)) {
686
        var holdforclub = "[% holdforclub | html %]";
686
                            $(this).parent().html('<span class="no-image">No cover image available</span>');
687
        var SEARCH_RESULTS = [% IF (SEARCH_RESULTS) %]1[% ELSE %]0[% END %];
687
                        }
688
        var new_results_browser = [
688
                    }
689
            [%- FOREACH result IN SEARCH_RESULTS -%]
689
                });
690
                [%- result.biblionumber | html -%],
690
            }
691
            [%- END -%]
691
692
        ];
692
            $(window).load(function() {
693
        var strQuery="&frameworkcode=";
693
                verify_images();
694
        [%- FOREACH z3950_search_param IN z3950_search_params -%]
694
            });
695
            strQuery += "&" + "[% z3950_search_param.name |uri %]" + "=" + "[% z3950_search_param.value |uri %]";
695
        [% END %]
696
        [%- END -%]
696
        var Sticky;
697
697
        $(document).ready(function() {
698
        var search_result = {
698
699
            query_desc: "[% query_desc |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') | html %]",
699
            $(".moretoggle").click(function(e) {
700
            query_cgi: "[% query_cgi | html %]",
700
                e.preventDefault();
701
            limit_cgi: "[% limit_cgi | html %]",
701
                $(this).siblings(".collapsible-facet").toggle();
702
            sort_cgi: "[% sort_cgi | html %]",
702
                $(this).siblings(".moretoggle").toggle();
703
            gotoPage: "[% gotoPage | html %]",
703
                $(this).toggle();
704
            gotoNumber: "[% gotoNumber | html %]",
704
            });
705
            searchid: "[% searchid | html %]",
705
706
            total: "[% total | html %]",
706
            Sticky = $("#searchheader");
707
            first_result_number: "[% SEARCH_RESULTS.first.result_number | html %]",
707
            Sticky.hcSticky({
708
            first_biblionumber: "[% SEARCH_RESULTS.first.biblionumber | html %]",
708
                stickTo: "main",
709
            last_biblionumber: "[% SEARCH_RESULTS.last.biblionumber | html %]",
709
                stickyClass: "floating"
710
            });
711
712
            $("#cartsubmit").click(function(e){
713
                e.preventDefault();
714
                addMultiple();
715
            });
716
717
            $(".addtolist").on("click",function(e){
718
                e.preventDefault();
719
                var shelfnumber = $(this).data("shelfnumber");
720
                var vshelf = vShelfAdd();
721
                if( vshelf ){
722
                    if( $(this).hasClass("morelists") ){
723
                        openWindow('/cgi-bin/koha/virtualshelves/addbybiblionumber.pl?' + vshelf);
724
                    } else if( $(this).hasClass("newlist") ){
725
                        openWindow('/cgi-bin/koha/virtualshelves/addbybiblionumber.pl?newshelf=1&' + vshelf);
726
                    } else {
727
                        openWindow('/cgi-bin/koha/virtualshelves/addbybiblionumber.pl?shelfnumber='+shelfnumber+'&confirm=1&' + vshelf);
728
                    }
729
                }
730
            });
731
732
            $("#z3950submit").click(function(){
733
                PopupZ3950();
734
                return false;
735
            });
736
737
            $("#searchheader").on("click", ".browse_selection", function(){
738
                browse_selection();
739
                return false;
740
            });
741
742
            $("#searchheader").on("click",".placehold", function(){
743
                $("#holdFor").val("");
744
                $("#holdForClub").val("");
745
                placeHold();
746
                $(".btn-group").removeClass("open");
747
                return false;
748
            });
749
750
            $(".placeholdfor").click(function(){
751
                holdForPatron();
752
                $(".btn-group").removeClass("open");
753
                return false;
754
            });
755
756
            $(".placeholdforclub").click(function(){
757
                holdForClub();
758
                $(".btn-group").removeClass("open");
759
                return false;
760
            });
761
762
            $("#forgetholdfor, #forgetholdforclub").click(function(){
763
                forgetPatronAndClub();
764
                $(".btn-group").removeClass("open");
765
                return false;
766
            });
767
768
            $("#tagsel_span").html("<input id=\"tagsel_tag\" class=\"submit\" type=\"submit\" value=\"Tag\"/>");
769
770
            $(".selection").show();
771
772
            [% IF ( query_desc ) %]
773
                toHighlight = $("p,span.results_summary,a.title");
774
                var query_desc = "[% query_desc |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') | html %]";
775
                q_array = query_desc.split(" ");
776
                // ensure that we don't have "" at the end of the array, which can
777
                // break the highlighter
778
                while (q_array.length > 0 && q_array[q_array.length-1] == "") {
779
                    q_array = q_array.splice(0,-1);
780
                }
781
                highlightOn();
782
                $("#highlight_toggle_on" ).hide().click(function(e) {
783
                    e.preventDefault();
784
                     highlightOn();
785
                });
786
                $("#highlight_toggle_off").show().click(function(e) {
787
                    e.preventDefault();
788
                    highlightOff();
789
                });
790
            [% END %]
791
792
            [% IF (SEARCH_RESULTS) %]
793
                var newresults = [
794
                    [%- FOREACH result IN SEARCH_RESULTS -%]
795
                        [%- result.biblionumber | html %],
796
                    [%- END -%]
797
                ];
798
                var browser = KOHA.browser('[% searchid | html %]', parseInt('[% biblionumber | html %]', 10));
799
                browser.create([% SEARCH_RESULTS.first.result_number | html %], '[% query_cgi | html %]', '[% limit_cgi | html %]','[% sort_cgi | html %]',
800
                       newresults, '[% total | html %]');
801
            [% END %]
802
803
            [% IF (gotoPage && gotoNumber) %]
804
                [% IF (gotoNumber == 'first') %]
805
                    window.location = '/cgi-bin/koha/catalogue/[% gotoPage | html %]?biblionumber=' + [% SEARCH_RESULTS.first.biblionumber | html %] + '&searchid=[% searchid | html %]';
806
                [% ELSIF (gotoNumber == 'last') %]
807
                    window.location = '/cgi-bin/koha/catalogue/[% gotoPage | html %]?biblionumber=' + [% SEARCH_RESULTS.last.biblionumber | html %] + '&searchid=[% searchid | html %]';
808
                [% END %]
809
            [% END %]
810
811
            [% IF LocalCoverImages %]
812
                KOHA.LocalCover.LoadResultsCovers();
813
            [% END %]
814
815
            [% IF ( IntranetCoce && CoceProviders ) %]
816
                KOHA.coce.getURL('[% CoceHost | html %]', '[% CoceProviders | html %]');
817
            [% END %]
818
819
            $("#select_all").on("click",function(e){
820
                e.preventDefault();
821
                selectAll();
822
            });
823
824
            $("#clear_all").on("click",function(e){
825
                e.preventDefault();
826
                clearAll();
827
            });
828
829
            $("#searchresults").on("click",".addtocart",function(e){
830
                e.preventDefault();
831
                var selection_id = this.id;
832
                var biblionumber = selection_id.replace("cart","");
833
                addRecord(biblionumber);
834
            });
835
836
            $("#searchresults").on("click",".cartRemove",function(e){
837
                e.preventDefault();
838
                var selection_id = this.id;
839
                var biblionumber = selection_id.replace("cartR","");
840
                delSingleRecord(biblionumber);
841
            });
842
843
            [% UNLESS Koha.Preference('BrowseResultSelection') %]
844
                resetSearchContext();
845
            [% END %]
846
            $(".selection").change(function(){
847
                if ( $(this).is(':checked') == true ) {
848
                  addBibToContext( $(this).val() );
849
                } else {
850
                  delBibToContext( $(this).val() );
851
                }
852
            });
853
            $("#bookbag_form").ready(function(){
854
                $("#bookbag_form").unCheckCheckboxes();
855
                var bibnums = getContextBiblioNumbers();
856
                if (bibnums) {
857
                    for (var i=0; i < bibnums.length; i++) {
858
                        var id = ('#bib' + bibnums[i]);
859
                        if ($(id)) {
860
                            $(id).attr('checked', true);
861
                        }
862
                    }
863
                }
864
            });
865
866
        });
867
868
869
        [% IF ( query_desc ) %]
870
            function highlightOff() {
871
                toHighlight.removeHighlight();
872
                $(".highlight_toggle").toggle();
873
            }
874
            function highlightOn() {
875
                var x;
876
                for (x in q_array) {
877
                    q_array[x] = q_array[x].toLowerCase();
878
                    var myStopwords = "[% Koha.Preference('NotHighlightedWords') | html %]".toLowerCase().split('|');
879
                    if ( (q_array[x].length > 0) && ($.inArray(q_array[x], myStopwords) == -1) ) {
880
                        toHighlight.highlight(q_array[x]);
881
                    }
882
                }
883
                $(".highlight_toggle").toggle();
884
            }
885
        [% END %]
886
887
        function selectAll () {
888
            $("#bookbag_form").checkCheckboxes();
889
            $("#bookbag_form").find("input[type='checkbox'][name='biblionumber']").each(function(){
890
                $(this).change();
891
            } );
892
            return false;
893
        }
894
        function clearAll () {
895
            $("#bookbag_form").unCheckCheckboxes();
896
            $("#bookbag_form").find("input[type='checkbox'][name='biblionumber']").each(function(){
897
                $(this).change();
898
            } );
899
            return false;
900
        }
901
        function placeHold () {
902
            var checkedItems = $(".selection:checked");
903
            if ($(checkedItems).size() == 0) {
904
                alert(MSG_NO_ITEM_SELECTED);
905
                return false;
906
            }
907
            var bibs = "";
908
            var badBibs = false;
909
            $(checkedItems).each(function() {
910
                var bib = $(this).val();
911
                if ($("#reserve_" + bib).size() == 0) {
912
                    alert(MSG_NON_RESERVES_SELECTED);
913
                    badBibs = true;
914
                    return false;
915
                }
916
                bibs += bib + "/";
917
            });
918
            if (badBibs) {
919
                return false;
920
            }
921
            $("#hold_form_biblios").val(bibs);
922
            $("#hold_form").submit();
923
            return false;
924
        }
925
926
        function forgetPatronAndClub(){
927
            $.removeCookie("holdfor", { path: '/' });
928
            $.removeCookie("holdforclub", { path: '/' });
929
            $(".holdforlink").remove();
930
            $("#placeholdc").html("<a class=\"btn btn-default btn-xs placehold\" href=\"#\"><i class=\"fa fa-sticky-note-o\"></i> "+_("Place hold")+"</a>");
931
        }
932
933
        function browse_selection () {
934
            var bibnums = getContextBiblioNumbers();
935
            if ( bibnums && bibnums.length > 0 ) {
936
                var browser = KOHA.browser('', parseInt('[% biblionumber | html %]', 10));
937
                browser.create(1, '[% query_cgi | html %]', '[% limit_cgi | html %]','[% sort_cgi | html %]', bibnums, bibnums.length);
938
                window.location = '/cgi-bin/koha/catalogue/detail.pl?biblionumber=' + bibnums[0] + '&searchid='+browser.searchid;
939
            } else {
940
                alert(MSG_NO_ITEM_SELECTED);
941
            }
942
            return false;
943
        }
944
945
        function addToList () {
946
            var checkedItems = $(".selection:checked");
947
            if ($(checkedItems).size() == 0) {
948
                alert(MSG_NO_ITEM_SELECTED);
949
                return false;
950
            }
951
            var bibs = "";
952
            $(checkedItems).each(function() {
953
                bibs += $(this).val() + "/";
954
            });
955
956
            var url = "/cgi-bin/koha/virtualshelves/addbybiblionumber.pl?biblionumbers=" + bibs;
957
            window.open(url, 'Add_to_virtualshelf', 'width=500, height=400, toolbar=false, scrollbars=yes');
958
            return false;
959
        }
960
961
        /* this function open a popup to search on z3950 server.  */
962
        function PopupZ3950() {
963
            var strQuery = GetZ3950Terms();
964
            if(strQuery){
965
                window.open("/cgi-bin/koha/cataloguing/z3950_search.pl?biblionumber=[% biblionumber | html %]"+strQuery,"z3950search",'width=740,height=450,location=yes,toolbar=no,scrollbars=yes,resize=yes');
966
            }
967
        }
968
        /* provide Z3950 search points */
969
        function GetZ3950Terms(){
970
            var strQuery="&frameworkcode=";
971
            [% FOREACH z3950_search_param IN z3950_search_params %]
972
                strQuery += "&" + "[% z3950_search_param.name |uri %]" + "=" + "[% z3950_search_param.value |uri %]";
973
            [% END %]
974
            return strQuery;
975
        }
976
977
        function holdfor(){
978
            $("#holdFor").val("");
979
            $("#holdForClub").val("");
980
            placeHold();
981
        }
982
983
        function holdForPatron() {
984
            $("#holdFor").val("[% holdfor_cardnumber | html %]");
985
            placeHold();
986
        }
987
988
        function holdForClub() {
989
            $("#holdForClub").val("[% holdforclub | html %]");
990
            placeHold();
991
        }
710
        }
992
    </script>
711
    </script>
712
    [% Asset.js("js/pages/results.js") | $raw %]
993
[% END %]
713
[% END %]
994
714
995
[% INCLUDE 'intranet-bottom.inc' %]
715
[% INCLUDE 'intranet-bottom.inc' %]
(-)a/koha-tmpl/intranet-tmpl/prog/js/pages/results.js (-1 / +308 lines)
Line 0 Link Here
0
- 
1
/* global KOHA biblionumber new_results_browser addMultiple vShelfAdd openWindow search_result SEARCH_RESULTS PREF_AmazonCoverImages PREF_LocalCoverImages PREF_IntranetCoce PREF_CoceProviders CoceHost CoceProviders addRecord delSingleRecord PREF_BrowseResultSelection resetSearchContext addBibToContext delBibToContext getContextBiblioNumbers MSG_NO_ITEM_SELECTED MSG_NO_ITEM_SELECTED holdfor_cardnumber holdforclub strQuery MSG_NON_RESERVES_SELECTED PREF_NotHighlightedWords PLACE_HOLD */
2
3
if( PREF_AmazonCoverImages ){
4
    $(window).load(function() {
5
        verify_images();
6
    });
7
}
8
9
var Sticky;
10
var toHighlight = {};
11
var q_array;
12
13
$(document).ready(function() {
14
15
    $(".moretoggle").click(function(e) {
16
        e.preventDefault();
17
        $(this).siblings(".collapsible-facet").toggle();
18
        $(this).siblings(".moretoggle").toggle();
19
        $(this).toggle();
20
    });
21
22
    Sticky = $("#searchheader");
23
    Sticky.hcSticky({
24
        stickTo: "main",
25
        stickyClass: "floating"
26
    });
27
28
    $("#cartsubmit").click(function(e){
29
        e.preventDefault();
30
        addMultiple();
31
    });
32
33
    $(".addtolist").on("click",function(e){
34
        e.preventDefault();
35
        var shelfnumber = $(this).data("shelfnumber");
36
        var vshelf = vShelfAdd();
37
        if( vshelf ){
38
            if( $(this).hasClass("morelists") ){
39
                openWindow('/cgi-bin/koha/virtualshelves/addbybiblionumber.pl?' + vshelf);
40
            } else if( $(this).hasClass("newlist") ){
41
                openWindow('/cgi-bin/koha/virtualshelves/addbybiblionumber.pl?newshelf=1&' + vshelf);
42
            } else {
43
                openWindow('/cgi-bin/koha/virtualshelves/addbybiblionumber.pl?shelfnumber='+shelfnumber+'&confirm=1&' + vshelf);
44
            }
45
        }
46
    });
47
48
    $("#z3950submit").click(function(){
49
        PopupZ3950();
50
        return false;
51
    });
52
53
    $("#searchheader").on("click", ".browse_selection", function(){
54
        browse_selection();
55
        return false;
56
    });
57
58
    $("#searchheader").on("click",".placehold", function(){
59
        $("#holdFor").val("");
60
        $("#holdForClub").val("");
61
        placeHold();
62
        $(".btn-group").removeClass("open");
63
        return false;
64
    });
65
66
    $(".placeholdfor").click(function(){
67
        holdForPatron();
68
        $(".btn-group").removeClass("open");
69
        return false;
70
    });
71
72
    $(".placeholdforclub").click(function(){
73
        holdForClub();
74
        $(".btn-group").removeClass("open");
75
        return false;
76
    });
77
78
    $("#forgetholdfor, #forgetholdforclub").click(function(){
79
        forgetPatronAndClub();
80
        $(".btn-group").removeClass("open");
81
        return false;
82
    });
83
84
    $(".selection").show();
85
86
    if( search_result.query_desc ){
87
        toHighlight = $("p,span.results_summary,a.title");
88
        q_array = search_result.query_desc.split(" ");
89
        // ensure that we don't have "" at the end of the array, which can
90
        // break the highlighter
91
        while ( q_array.length > 0 && q_array[q_array.length-1] == "") {
92
            q_array = q_array.splice(0,-1);
93
        }
94
        highlightOn();
95
        $("#highlight_toggle_on" ).hide().click(function(e) {
96
            e.preventDefault();
97
            highlightOn();
98
        });
99
        $("#highlight_toggle_off").show().click(function(e) {
100
            e.preventDefault();
101
            highlightOff();
102
        });
103
    }
104
105
    if( SEARCH_RESULTS ){
106
        var browser = KOHA.browser( search_result.searchid, parseInt( biblionumber, 10));
107
        browser.create( search_result.first_result_number, search_result.query_cgi, search_result.limit_cgi, search_result.sort_cgi, new_results_browser, search_result.total );
108
    }
109
110
    if( search_result.gotoPage && search_result.gotoNumber){
111
        if( search_result.gotoNumber == 'first' ){
112
            window.location = "/cgi-bin/koha/catalogue/" + search_result.gotoPage + "?biblionumber=" + search_result.first_biblionumber + "&searchid=" + search_result.searchid;
113
        } else if( search_result.gotoNumber == "last" ){
114
            window.location = "/cgi-bin/koha/catalogue/" + search_result.gotoPage + "?biblionumber=" + search_result.last_biblionumber + "&searchid=" + search_result.searchid;
115
        }
116
    }
117
118
    if( PREF_LocalCoverImages ){
119
        KOHA.LocalCover.LoadResultsCovers();
120
    }
121
122
    if( PREF_IntranetCoce && PREF_CoceProviders ){
123
        KOHA.coce.getURL( CoceHost, CoceProviders );
124
    }
125
126
    $("#select_all").on("click",function(e){
127
        e.preventDefault();
128
        selectAll();
129
    });
130
131
    $("#clear_all").on("click",function(e){
132
        e.preventDefault();
133
        clearAll();
134
    });
135
136
    $("#searchresults").on("click",".addtocart",function(e){
137
        e.preventDefault();
138
        var selection_id = this.id;
139
        var biblionumber = selection_id.replace("cart","");
140
        addRecord(biblionumber);
141
    });
142
143
    $("#searchresults").on("click",".cartRemove",function(e){
144
        e.preventDefault();
145
        var selection_id = this.id;
146
        var biblionumber = selection_id.replace("cartR","");
147
        delSingleRecord(biblionumber);
148
    });
149
150
    if( !PREF_BrowseResultSelection ){
151
        resetSearchContext();
152
    }
153
154
    $(".selection").change(function(){
155
        if ( $(this).is(':checked') == true ) {
156
            addBibToContext( $(this).val() );
157
        } else {
158
            delBibToContext( $(this).val() );
159
        }
160
    });
161
    $("#bookbag_form").ready(function(){
162
        $("#bookbag_form").unCheckCheckboxes();
163
        var bibnums = getContextBiblioNumbers();
164
        if (bibnums) {
165
            for (var i=0; i < bibnums.length; i++) {
166
                var id = ('#bib' + bibnums[i]);
167
                if ($(id)) {
168
                    $(id).attr('checked', true);
169
                }
170
            }
171
        }
172
    });
173
});
174
175
176
function highlightOff() {
177
    if( toHighlight.length > 0 ){
178
        toHighlight.removeHighlight();
179
        $(".highlight_toggle").toggle();
180
    }
181
}
182
183
function highlightOn() {
184
    if( toHighlight.length > 0 ){
185
        var x;
186
        for (x in q_array) {
187
            q_array[x] = q_array[x].toLowerCase();
188
            var myStopwords = PREF_NotHighlightedWords.toLowerCase().split('|');
189
            if ( (q_array[x].length > 0) && ($.inArray(q_array[x], myStopwords) == -1) ) {
190
                toHighlight.highlight(q_array[x]);
191
            }
192
        }
193
        $(".highlight_toggle").toggle();
194
    }
195
}
196
197
198
function selectAll () {
199
    $("#bookbag_form").checkCheckboxes();
200
    $("#bookbag_form").find("input[type='checkbox'][name='biblionumber']").each(function(){
201
        $(this).change();
202
    } );
203
    return false;
204
}
205
function clearAll () {
206
    $("#bookbag_form").unCheckCheckboxes();
207
    $("#bookbag_form").find("input[type='checkbox'][name='biblionumber']").each(function(){
208
        $(this).change();
209
    } );
210
    return false;
211
}
212
function placeHold () {
213
    var checkedItems = $(".selection:checked");
214
    if ($(checkedItems).size() == 0) {
215
        alert(MSG_NO_ITEM_SELECTED);
216
        return false;
217
    }
218
    var bibs = "";
219
    var badBibs = false;
220
    $(checkedItems).each(function() {
221
        var bib = $(this).val();
222
        if ($("#reserve_" + bib).size() == 0) {
223
            alert(MSG_NON_RESERVES_SELECTED);
224
            badBibs = true;
225
            return false;
226
        }
227
        bibs += bib + "/";
228
    });
229
    if (badBibs) {
230
        return false;
231
    }
232
    $("#hold_form_biblios").val(bibs);
233
    $("#hold_form").submit();
234
    return false;
235
}
236
237
function forgetPatronAndClub(){
238
    $.removeCookie("holdfor", { path: '/' });
239
    $.removeCookie("holdforclub", { path: '/' });
240
    $(".holdforlink").remove();
241
    $("#placeholdc").html("<a class=\"btn btn-default btn-xs placehold\" href=\"#\"><i class=\"fa fa-sticky-note-o\"></i> " + PLACE_HOLD + "</a>");
242
}
243
244
function browse_selection () {
245
    var bibnums = getContextBiblioNumbers();
246
    if ( bibnums && bibnums.length > 0 ) {
247
        var browser = KOHA.browser('', parseInt( biblionumber, 10));
248
        browser.create(1, search_result.query_cgi, search_result.limit_cgi, search_result.sort_cgi, bibnums, bibnums.length);
249
        window.location = '/cgi-bin/koha/catalogue/detail.pl?biblionumber=' + bibnums[0] + '&searchid='+browser.searchid;
250
    } else {
251
        alert(MSG_NO_ITEM_SELECTED);
252
    }
253
    return false;
254
}
255
256
function addToList () {
257
    var checkedItems = $(".selection:checked");
258
    if ($(checkedItems).size() == 0) {
259
        alert(MSG_NO_ITEM_SELECTED);
260
        return false;
261
    }
262
    var bibs = "";
263
    $(checkedItems).each(function() {
264
        bibs += $(this).val() + "/";
265
    });
266
267
    var url = "/cgi-bin/koha/virtualshelves/addbybiblionumber.pl?biblionumbers=" + bibs;
268
    window.open(url, 'Add_to_virtualshelf', 'width=500, height=400, toolbar=false, scrollbars=yes');
269
    return false;
270
}
271
272
/* this function open a popup to search on z3950 server.  */
273
function PopupZ3950() {
274
    if( strQuery ){
275
        window.open("/cgi-bin/koha/cataloguing/z3950_search.pl?biblionumber=" + biblionumber + strQuery,"z3950search",'width=740,height=450,location=yes,toolbar=no,scrollbars=yes,resize=yes');
276
    }
277
}
278
279
function holdfor(){
280
    $("#holdFor").val("");
281
    $("#holdForClub").val("");
282
    placeHold();
283
}
284
285
function holdForPatron() {
286
    $("#holdFor").val( holdfor_cardnumber );
287
    placeHold();
288
}
289
290
function holdForClub() {
291
    $("#holdForClub").val( holdforclub );
292
    placeHold();
293
}
294
295
// http://www.oreillynet.com/pub/a/javascript/2003/10/21/amazonhacks.html
296
function verify_images() {
297
    $("img").each(function(){
298
        if ((this.src.indexOf('images-amazon.com') >= 0) || (this.src.indexOf('images.amazon.com') >=0)) {
299
            var w = this.width;
300
            var h = this.height;
301
            if ((w == 1) || (h == 1)) {
302
                $(this).parent().html('<span class="no-image">No cover image available</span>');
303
            } else if ((this.complete != null) && (!this.complete)) {
304
                $(this).parent().html('<span class="no-image">No cover image available</span>');
305
            }
306
        }
307
    });
308
}

Return to bug 23885