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

(-)a/koha-tmpl/intranet-tmpl/prog/en/includes/js_includes.inc (-1 lines)
Lines 25-31 Link Here
25
[% Asset.js("lib/jquery/plugins/jquery.validate.min.js") | $raw %]
25
[% Asset.js("lib/jquery/plugins/jquery.validate.min.js") | $raw %]
26
<!-- koha core js -->
26
<!-- koha core js -->
27
[% Asset.js("js/staff-global.js") | $raw %]
27
[% Asset.js("js/staff-global.js") | $raw %]
28
[% Asset.js("js/commons.js") | $raw %]
29
28
30
[% INCLUDE 'validator-strings.inc' %]
29
[% INCLUDE 'validator-strings.inc' %]
31
[% IF ( IntranetUserJS ) %]
30
[% IF ( IntranetUserJS ) %]
(-)a/koha-tmpl/intranet-tmpl/prog/js/commons.js (-73 lines)
Lines 1-73 Link Here
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
});
(-)a/koha-tmpl/intranet-tmpl/prog/js/staff-global.js (-1 / +75 lines)
Lines 1-4 Link Here
1
/* global shortcut delCookie delBasket Sticky */
1
/* global shortcut delCookie delBasket Sticky */
2
/* exported paramOfUrl addBibToContext delBibToContext */
2
if ( KOHA === undefined ) var KOHA = {};
3
if ( KOHA === undefined ) var KOHA = {};
3
4
4
function _(s) { return s; } // dummy function for gettext
5
function _(s) { return s; } // dummy function for gettext
Lines 126-131 $.fn.selectTabByID = function (tabID) { Link Here
126
        $.cookie("lastborrowercard", $("#hiddenborrowercard").val(), { path: "/" });
127
        $.cookie("lastborrowercard", $("#hiddenborrowercard").val(), { path: "/" });
127
    }
128
    }
128
    $.cookie("currentborrowernumber", $("#hiddenborrowernumber").val(), { path: "/" });
129
    $.cookie("currentborrowernumber", $("#hiddenborrowernumber").val(), { path: "/" });
130
131
    /* Search results browsing */
132
    /* forms with action leading to search */
133
    $("form[action*='search.pl']").submit(function(){
134
        resetSearchContext();
135
    });
136
    /* any link to launch a search except navigation links */
137
    $("[href*='search.pl?']").not(".nav").not('.searchwithcontext').click(function(){
138
        resetSearchContext();
139
    });
140
    /* any link to a detail page from the results page. */
141
    $("#bookbag_form a[href*='detail.pl?']").click(function(){
142
        resetSearchContext();
143
    });
144
129
});
145
});
130
146
131
// http://jennifermadden.com/javascript/stringEnterKeyDetector.html
147
// http://jennifermadden.com/javascript/stringEnterKeyDetector.html
Lines 239-241 function keep_text(clicked_index) { Link Here
239
        searchboxes[i].value = persist;
255
        searchboxes[i].value = persist;
240
    }
256
    }
241
}
257
}
242
- 
258
259
// Extends jQuery API
260
jQuery.extend({uniqueArray:function(array){
261
    return $.grep(array, function(el, index) {
262
        return index === $.inArray(el, array);
263
    });
264
}});
265
266
function removeByValue(arr, val) {
267
    for(var i=0; i<arr.length; i++) {
268
        if(arr[i] == val) {
269
            arr.splice(i, 1);
270
            break;
271
        }
272
    }
273
}
274
275
function paramOfUrl( url, param ) {
276
    param = param.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
277
    var regexS = "[\\?&]"+param+"=([^&#]*)";
278
    var regex = new RegExp( regexS );
279
    var results = regex.exec( url );
280
    if( results == null ) {
281
        return "";
282
    } else {
283
        return results[1];
284
    }
285
}
286
287
function addBibToContext( bibnum ) {
288
    bibnum = parseInt(bibnum, 10);
289
    var bibnums = getContextBiblioNumbers();
290
    bibnums.push(bibnum);
291
    setContextBiblioNumbers( bibnums );
292
    setContextBiblioNumbers( $.uniqueArray( bibnums ) );
293
}
294
295
function delBibToContext( bibnum ) {
296
    var bibnums = getContextBiblioNumbers();
297
    removeByValue( bibnums, bibnum );
298
    setContextBiblioNumbers( $.uniqueArray( bibnums ) );
299
}
300
301
function setContextBiblioNumbers( bibnums ) {
302
    $.cookie('bibs_selected', JSON.stringify( bibnums ));
303
}
304
305
function getContextBiblioNumbers() {
306
    var r = $.cookie('bibs_selected');
307
    if ( r ) {
308
        return JSON.parse(r);
309
    }
310
    r = new Array();
311
    return r;
312
}
313
314
function resetSearchContext() {
315
    setContextBiblioNumbers( new Array() );
316
}

Return to bug 25363