Bug 30708: Rebase - Use name instead of url for router-links
[koha.git] / koha-tmpl / intranet-tmpl / prog / js / table_filters.js
1 function activate_filters(id, bShowFilters) {
2     var table = $("#" + id );
3     if (table.length == 1) {
4         filters_row = table.find('thead tr.filters_row');
5
6         var aoColumns = [];
7         filters_row.find('th').each(function() {
8             if(this.className === "NoSort"){
9                 aoColumns.push(null);
10             } else {
11                 aoColumns.push('text');
12             }
13         });
14
15         if (table.find('thead tr.columnFilter').length == 0) {
16             table.dataTable().columnFilter({
17                 'sPlaceHolder': 'head:after'
18                 ,   'aoColumns': aoColumns
19                 ,'bFiltersAlreadyActivated': false
20             });
21             filters_row.addClass('columnFilter');
22         } else {
23             table.dataTable().columnFilter({
24                 'sPlaceHolder': 'head:after'
25                 ,   'aoColumns': aoColumns
26                 ,'bFiltersAlreadyActivated': true
27             });
28         }
29
30         if (bShowFilters) {
31             filters_row.show();
32
33             $('#' + id + '_activate_filters')
34                 .html('<i class="fa fa-filter"></i> ' + __('Deactivate filters') )
35                 .unbind('click')
36                 .click(function() {
37                     deactivate_filters(id);
38                     return false;
39                 });
40         }
41     }
42 }
43
44 function deactivate_filters(id) {
45     filters_row = $("#" + id ).find('thead tr.filters_row');
46
47     filters_row.find('input[type="text"]')
48         .val('')            // Empty filter text boxes
49         .trigger('keyup')   // Filter (display all rows)
50         .trigger('blur');   // Reset value to the column name
51     filters_row.hide();
52
53     $('#' + id + '_activate_filters')
54         .html('<i class="fa fa-filter"></i> ' + __('Activate filters') )
55         .unbind('click')
56         .click(function() {
57             activate_filters(id, true);
58             return false;
59         });
60 }