Bug 25002: JS Includes should be wrapped with template comments
[srvgit] / koha-tmpl / intranet-tmpl / prog / en / includes / js_includes.inc
1 [% USE raw %]
2 [% USE Asset %]
3 [% USE AudioAlerts %]
4 [% USE To %]
5 [%# Prevent XFS attacks -%]
6 [% UNLESS popup %]
7     <script>
8        if (self === top) {
9            var antiClickjack = document.getElementById("antiClickjack");
10            antiClickjack.parentNode.removeChild(antiClickjack);
11        } else {
12            top.location = self.location;
13        }
14     </script>
15 [% END %]
16
17 [% Asset.js("lib/jquery/jquery-2.2.3.min.js") | $raw %]
18 [% Asset.js("lib/jquery/jquery-migrate-1.3.0.min.js") | $raw %]
19 [% Asset.js("lib/jquery/jquery-ui-1.11.4.min.js") | $raw %]
20 [% Asset.js("lib/shortcut/shortcut.js") | $raw %]
21 [% Asset.js("lib/jquery/plugins/jquery.cookie.min.js") | $raw %]
22 [% Asset.js("lib/js-cookie/js.cookie-2.2.1.min.js") | $raw %]
23 [% Asset.js("lib/jquery/plugins/jquery.highlight-3.js") | $raw %]
24 [% Asset.js("lib/bootstrap/bootstrap.min.js") | $raw %]
25 [% Asset.js("lib/jquery/plugins/jquery.validate.min.js") | $raw %]
26 <!-- koha core js -->
27 [% Asset.js("js/staff-global.js") | $raw %]
28 [% Asset.js("js/commons.js") | $raw %]
29
30 [% INCLUDE 'validator-strings.inc' %]
31 [% IF ( IntranetUserJS ) %]
32     <!-- js_includes.inc: IntranetUserJS -->
33     <script>
34     [% IntranetUserJS | $raw %]
35     </script>
36     <!-- / js_includes.inc: IntranetUserJS -->
37 [% END %]
38
39 <!-- js_includes.inc -->
40 [% IF ( virtualshelves || intranetbookbag ) %]
41     <script>
42         // virtualshelves || intranetbookbag
43         var MSG_BASKET_EMPTY = _("Your cart is currently empty");
44         var MSG_RECORD_IN_BASKET = _("This item is already in your cart");
45         var MSG_RECORD_ADDED = _("This item has been added to your cart");
46         var MSG_NRECORDS_ADDED = _("%s item(s) added to your cart");
47         var MSG_NRECORDS_IN_BASKET = _("%s already in your cart");
48         var MSG_NO_RECORD_SELECTED = _("No item was selected");
49         var MSG_NO_RECORD_ADDED = _("No item was added to your cart (already in your cart)!");
50         var MSG_CONFIRM_DEL_BASKET = _("Are you sure you want to empty your cart?");
51         var MSG_CONFIRM_DEL_RECORDS = _("Are you sure you want to remove the selected items?");
52         var MSG_IN_YOUR_CART = _("Items in your cart: %s");
53         var MSG_NON_RESERVES_SELECTED = _("One or more selected items cannot be reserved.");
54         var MSG_ITEM_NOT_IN_CART = _("Add to cart");
55         var MSG_ITEM_IN_CART = _("In your cart");
56         var MSG_RECORD_REMOVED = _("The item has been removed from your cart");
57     </script>
58
59     [% Asset.js("js/basket.js") | $raw %]
60 [% END %]
61
62 [% IF LocalCoverImages %]
63     [% Asset.js("js/localcovers.js") | $raw %]
64     <script>
65         // LocalCoverImages
66         var NO_LOCAL_JACKET = _("No cover image available");
67     </script>
68 [% END %]
69
70 [% IF Koha.Preference('AudioAlerts') || AudioAlertsPage %]
71     <script>
72         // AudioAlerts
73         var AUDIO_ALERT_PATH = '[% interface | html %]/[% theme | html %]/sound/';
74         var AUDIO_ALERTS = JSON.parse( "[% To.json(AudioAlerts.AudioAlerts) | $raw %]" );
75
76         $( document ).ready(function() {
77             if ( AUDIO_ALERTS ) {
78                 for ( var k in AUDIO_ALERTS ) {
79                     var alert = AUDIO_ALERTS[k];
80                     if ( $( alert.selector ).length ) {
81                         playSound( alert.sound );
82                         break;
83                     }
84                 }
85             }
86         });
87     </script>
88 [% END %]
89
90 [% IF ( CAN_user_circulate_circulate_remaining_permissions ) %]
91     [% IF ( PatronAutoComplete ) %]
92         <script>
93             // PatronAutoComplete && CAN_user_circulate_circulate_remaining_permissions
94             $(document).ready(function(){
95                 var obj = $( "#findborrower" ).autocomplete({
96                     source: "/cgi-bin/koha/circ/ysearch.pl",
97                     minLength: 3,
98                     select: function( event, ui ) {
99                         window.location.href = ui.item.link;
100                     }
101                 }).data( "ui-autocomplete" );
102                 if( obj ) {
103                     obj._renderItem = function( ul, item ) {
104                         item.link = "/cgi-bin/koha/circ/circulation.pl?borrowernumber=" + item.borrowernumber;
105                         var cardnumber = "";
106                         if( item.cardnumber != "" ){
107                             // Display card number in parentheses if it exists
108                             cardnumber = " (" + item.cardnumber + ") ";
109                         }
110                         return $( "<li></li>" )
111                         .data( "ui-autocomplete-item", item )
112                         .append( "<a href=\"" + item.link + "\">" + item.surname + ", " + item.firstname + cardnumber + " <small>" + item.dateofbirth + " " + item.address + " " + item.city + " " + item.zipcode + " " + item.country + "</small></a>" )
113                         .appendTo( ul );
114                     };
115                 }
116             });
117         </script>
118     [% END %]
119 [% END %]
120 [% IF ( PatronAutoComplete ) %]
121     <script>
122     // PatronAutoComplete
123     $(document).ready(function(){
124         var obj = $( "#searchmember" ).autocomplete({
125             source: "/cgi-bin/koha/circ/ysearch.pl",
126             minLength: 3,
127             select: function( event, ui ) {
128                 window.location.href = ui.item.link;
129             }
130         }).data( "ui-autocomplete" );
131         if( obj ) {
132             obj._renderItem = function( ul, item ) {
133                 item.link = "/cgi-bin/koha/circ/circulation.pl?borrowernumber=" + item.borrowernumber;
134                 var cardnumber = "";
135                 if( item.cardnumber != "" ){
136                     // Display card number in parentheses if it exists
137                     cardnumber = " (" + item.cardnumber + ") ";
138                 }
139                 return $( "<li></li>" )
140                 .data( "ui-autocomplete-item", item )
141                 .append( "<a href=\"" + item.link + "\">" + item.surname + ", " + item.firstname + cardnumber + " <small>" + item.dateofbirth + " " + item.address + " " + item.city + " " + item.zipcode + " " + item.country + "</small></a>" )
142                 .appendTo( ul );
143             };
144         }
145     });
146     </script>
147 [% END %]
148 <!-- / js_includes.inc -->