jquery-tablesorter 1.13.4 → 1.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. checksums.yaml +4 -4
  2. data/MIT-LICENSE +1 -1
  3. data/README.md +2 -2
  4. data/lib/jquery-tablesorter/version.rb +1 -1
  5. data/vendor/assets/images/jquery-tablesorter/dragtable-handle.png +0 -0
  6. data/vendor/assets/images/jquery-tablesorter/dragtable-handle.svg +7 -0
  7. data/vendor/assets/javascripts/jquery-tablesorter/addons/pager/jquery.tablesorter.pager.js +58 -32
  8. data/vendor/assets/javascripts/jquery-tablesorter/extras/jquery.dragtable.mod.js +605 -0
  9. data/vendor/assets/javascripts/jquery-tablesorter/jquery.tablesorter.js +161 -81
  10. data/vendor/assets/javascripts/jquery-tablesorter/jquery.tablesorter.widgets-filter-formatter-select2.js +41 -30
  11. data/vendor/assets/javascripts/jquery-tablesorter/jquery.tablesorter.widgets.js +151 -96
  12. data/vendor/assets/javascripts/jquery-tablesorter/parsers/parser-duration.js +32 -5
  13. data/vendor/assets/javascripts/jquery-tablesorter/parsers/parser-input-select.js +21 -26
  14. data/vendor/assets/javascripts/jquery-tablesorter/widgets/widget-alignChar.js +5 -4
  15. data/vendor/assets/javascripts/jquery-tablesorter/widgets/widget-build-table.js +2 -2
  16. data/vendor/assets/javascripts/jquery-tablesorter/widgets/widget-chart.js +276 -0
  17. data/vendor/assets/javascripts/jquery-tablesorter/widgets/widget-columnSelector.js +64 -32
  18. data/vendor/assets/javascripts/jquery-tablesorter/widgets/widget-cssStickyHeaders.js +3 -2
  19. data/vendor/assets/javascripts/jquery-tablesorter/widgets/widget-editable.js +11 -5
  20. data/vendor/assets/javascripts/jquery-tablesorter/widgets/widget-formatter.js +70 -0
  21. data/vendor/assets/javascripts/jquery-tablesorter/widgets/widget-math.js +13 -6
  22. data/vendor/assets/javascripts/jquery-tablesorter/widgets/widget-output.js +7 -3
  23. data/vendor/assets/javascripts/jquery-tablesorter/widgets/widget-pager.js +70 -41
  24. data/vendor/assets/javascripts/jquery-tablesorter/widgets/widget-print.js +2 -2
  25. data/vendor/assets/javascripts/jquery-tablesorter/widgets/widget-reflow.js +4 -3
  26. data/vendor/assets/javascripts/jquery-tablesorter/widgets/widget-repeatheaders.js +14 -12
  27. data/vendor/assets/javascripts/jquery-tablesorter/widgets/widget-scroller.js +68 -26
  28. data/vendor/assets/stylesheets/jquery-tablesorter/dragtable.mod.css +64 -0
  29. data/vendor/assets/stylesheets/jquery-tablesorter/theme.black-ice.css +3 -0
  30. data/vendor/assets/stylesheets/jquery-tablesorter/theme.blue.css +3 -0
  31. data/vendor/assets/stylesheets/jquery-tablesorter/theme.bootstrap.css +3 -0
  32. data/vendor/assets/stylesheets/jquery-tablesorter/theme.bootstrap_2.css +3 -0
  33. data/vendor/assets/stylesheets/jquery-tablesorter/theme.dark.css +3 -0
  34. data/vendor/assets/stylesheets/jquery-tablesorter/theme.default.css +3 -0
  35. data/vendor/assets/stylesheets/jquery-tablesorter/theme.dropbox.css +3 -0
  36. data/vendor/assets/stylesheets/jquery-tablesorter/theme.green.css +3 -0
  37. data/vendor/assets/stylesheets/jquery-tablesorter/theme.grey.css +3 -0
  38. data/vendor/assets/stylesheets/jquery-tablesorter/theme.ice.css +3 -0
  39. data/vendor/assets/stylesheets/jquery-tablesorter/theme.jui.css +3 -0
  40. data/vendor/assets/stylesheets/jquery-tablesorter/theme.metro-dark.css +3 -0
  41. metadata +8 -2
@@ -1,4 +1,4 @@
1
- /* Print widget (beta) for TableSorter 6/18/2014 (v2.17.2)
1
+ /* Print widget for TableSorter 2/7/2015 (v2.19.0)
2
2
  * Requires tablesorter v2.8+ and jQuery 1.2.6+
3
3
  */
4
4
  /*jshint browser:true, jquery:true, unused:false */
@@ -55,7 +55,7 @@ printTable = ts.printTable = {
55
55
  // add the definition to the wo.print_extraCSS option
56
56
  if (/s/i.test(wo.print_columns) && c.selector && c.widgets.indexOf('columnSelector') >= 0) {
57
57
  // show selected (visible) columns; make a copy of the columnSelector widget css (not media queries)
58
- printStyle += c.selector.auto ? '' : c.selector.$style.text();
58
+ printStyle += wo.columnSelector_mediaquery && c.selector.auto ? '' : c.selector.$style.text();
59
59
  } else if (/a/i.test(wo.print_columns)) {
60
60
  // force show all cells
61
61
  printStyle += 'td, th { display: table-cell !important; }';
@@ -1,4 +1,4 @@
1
- /* table reflow widget (beta) for TableSorter 3/22/2014 (v2.16.0)
1
+ /* table reflow widget for TableSorter 2/7/2015 (v2.19.0)
2
2
  * Requires tablesorter v2.8+ and jQuery 1.7+
3
3
  * Also, this widget requires the following default css (modify as desired)
4
4
 
@@ -73,7 +73,7 @@ tablereflow = {
73
73
  });
74
74
  c.$headers.each(function(){
75
75
  $this = $(this);
76
- headers.push( $this.attr(header) || $this.text() );
76
+ headers.push( $.trim( $this.attr(header) || $this.text() ) );
77
77
  });
78
78
  c.$tbodies.children().each(function(){
79
79
  $(this).children().each(function(i){
@@ -100,6 +100,7 @@ tablereflow = {
100
100
  $hdr = c.$headers.filter('[data-column="' + i + '"]');
101
101
  if ($hdr.length > 1) {
102
102
  txt = [];
103
+ /*jshint loopfunc:true */
103
104
  $hdr.each(function(){
104
105
  $this = $(this);
105
106
  if (!$this.hasClass(wo.reflow2_classIgnore)) {
@@ -117,7 +118,7 @@ tablereflow = {
117
118
  $tbody = ts.processTbody(table, $(this), true);
118
119
  $tbody.children().each(function(j){
119
120
  $this = $(this);
120
- len = headers[j].length
121
+ len = headers[j].length;
121
122
  i = len - 1;
122
123
  while (i >= 0) {
123
124
  $this.prepend(txt + (i === 0 && len > 1 ? ' ' + wo.reflow2_labelTop : '') + '">' + headers[j][i] + '</b>');
@@ -1,13 +1,13 @@
1
- /*! tablesorter repeatHeaders widget - updated 10/26/2014 (v2.18.0)
1
+ /*! tablesorter repeatHeaders widget - updated 2/7/2015 (v2.19.0)
2
2
  * Requires tablesorter v2.8+ and jQuery 1.7+
3
3
  * Original by Christian Bach from the example-widgets.html demo
4
4
  */
5
5
  /*global jQuery: false */
6
6
  ;(function($){
7
- "use strict";
7
+ 'use strict';
8
8
 
9
9
  $.tablesorter.addWidget({
10
- id: "repeatHeaders",
10
+ id: 'repeatHeaders',
11
11
  priority: 10,
12
12
  options: {
13
13
  rowsToSkip : 4
@@ -18,11 +18,12 @@
18
18
  // cache and collect all TH headers
19
19
  if (!wo.repeatHeaders) {
20
20
  h = '<tr class="repeated-header remove-me">';
21
- $.each(c.headerContent, function(i,t) {
22
- h += '<th>' + t + '</th>';
23
- });
24
- // "remove-me" class was added in case the table needs to be updated, the "remove-me" rows will be
25
- // removed prior to the update to prevent including the rows in the update - see "selectorRemove" option
21
+ for (i = 0; i < c.columns; i++) {
22
+ // only get the headerContent text
23
+ h += '<th>' + $.trim( c.$headers.eq(i).text() ) + '</th>';
24
+ }
25
+ // 'remove-me' class was added in case the table needs to be updated, the 'remove-me' rows will be
26
+ // removed prior to the update to prevent including the rows in the update - see 'selectorRemove' option
26
27
  wo.repeatHeaders = h + '</tr>';
27
28
  }
28
29
 
@@ -30,10 +31,10 @@
30
31
  skip = wo && wo.rowsToSkip || 4;
31
32
 
32
33
  // remove appended headers by classname
33
- c.$table.find("tr.repeated-header").remove();
34
+ c.$table.find('tr.repeated-header').remove();
34
35
  $tr = c.$tbodies.find('tr');
35
36
  l = $tr.length;
36
- // loop all tr elements and insert a copy of the "headers"
37
+ // loop all tr elements and insert a copy of the 'headers'
37
38
  for (i = skip; i < l; i += skip) {
38
39
  // insert a copy of the table head every X rows
39
40
  $tr.eq(i).before(wo.repeatHeaders);
@@ -41,8 +42,9 @@
41
42
  },
42
43
  // this remove function is called when using the refreshWidgets method or when destroying the tablesorter plugin
43
44
  // this function only applies to tablesorter v2.4+
44
- remove: function(table, c){
45
- c.$table.find("tr.repeated-header").remove();
45
+ remove: function(table, c, wo){
46
+ wo.repeatHeaders = '';
47
+ c.$table.find('tr.repeated-header').remove();
46
48
  }
47
49
 
48
50
  });
@@ -10,7 +10,7 @@
10
10
 
11
11
  Resizable scroller widget for the jQuery tablesorter plugin
12
12
 
13
- Version 2.0 - modified by Rob Garrison 4/12/2013; updated 10/26/2014 (v2.18.0)
13
+ Version 2.0 - modified by Rob Garrison 4/12/2013; updated 2/7/2015 (v2.19.0)
14
14
  Requires jQuery v1.7+
15
15
  Requires the tablesorter plugin, v2.8+, available at http://mottie.github.com/tablesorter/docs/
16
16
 
@@ -32,7 +32,7 @@
32
32
  Website: www.tconnell.com
33
33
  */
34
34
  /*jshint browser:true, jquery:true, unused:false */
35
- ;(function($){
35
+ ;(function($, window){
36
36
  "use strict";
37
37
 
38
38
  $.fn.hasScrollBar = function(){
@@ -52,6 +52,7 @@ ts.window_resize = function(){
52
52
  // Add extra scroller css
53
53
  $(function(){
54
54
  var s = '<style>' +
55
+ '.tablesorter-scrollbar-measure { width: 100px; height: 100px; overflow: scroll; position: absolute; top: -9999px; } ' +
55
56
  '.tablesorter-scroller-reset { width: auto !important; } ' +
56
57
  '.tablesorter-scroller { text-align: left; overflow: hidden; }' +
57
58
  '.tablesorter-scroller-header { overflow: hidden; }' +
@@ -70,9 +71,10 @@ ts.addWidget({
70
71
  priority: 60, // run after the filter widget
71
72
  options: {
72
73
  scroller_height : 300,
73
- scroller_barWidth : 18,
74
74
  scroller_jumpToHeader: true,
75
- scroller_upAfterSort: true
75
+ scroller_upAfterSort: true,
76
+ // bar width is now calculated; set a value to override
77
+ scroller_barWidth : null
76
78
  },
77
79
  init: function(table, thisWidget, c, wo){
78
80
  var $win = $(window),
@@ -83,7 +85,7 @@ ts.addWidget({
83
85
  .bind('resizeEnd' + namespace, function() {
84
86
  // init is run before format, so scroller_resizeWidth
85
87
  // won't be defined within the "c" or "wo" parameters
86
- if (typeof table.config.widgetOptions.scroller_resizeWidth === 'function') {
88
+ if ($.isFunction(table.config.widgetOptions.scroller_resizeWidth)) {
87
89
  // IE calls resize when you modify content, so we have to unbind the resize event
88
90
  // so we don't end up with an infinite loop. we can rebind after we're done.
89
91
  $win.unbind('resize' + namespace, ts.window_resize);
@@ -93,28 +95,37 @@ ts.addWidget({
93
95
  });
94
96
  },
95
97
  format: function(table, c, wo) {
96
- var h, $hdr, t, resize, $cells,
98
+ var maxHt, tbHt, $hdr, resize, getBarWidth, $cells,
97
99
  // c.namespace contains a unique tablesorter ID, per table
98
100
  id = c.namespace.slice(1) + 'tsscroller',
99
101
  $win = $(window),
100
102
  $tbl = c.$table;
101
103
 
102
104
  if (!c.isScrolling) {
103
- h = wo.scroller_height || 300;
104
- t = $tbl.find('tbody').height();
105
- if (t !== 0 && h > t) { h = t + 10; } // Table is less than h px
106
-
107
- $hdr = $('<table class="' + $tbl.attr('class') + '" cellpadding=0 cellspacing=0><thead>' + $tbl.find('thead:first').html() + '</thead></table>');
105
+ maxHt = wo.scroller_height || 300;
106
+ tbHt = $tbl.children('tbody').height();
107
+ if (tbHt !== 0 && maxHt > tbHt) { maxHt = tbHt + 10; } // Table is less than h px
108
+
109
+ $hdr = $('<table class="' + $tbl.attr('class') + '" cellpadding=0 cellspacing=0>' +
110
+ '<thead>' + $tbl.find('thead:first').html() + '</thead>' +
111
+ '</table>');
112
+ if (c.$extraTables && c.$extraTables.length) {
113
+ c.$extraTables = c.$extraTables.add($hdr);
114
+ } else {
115
+ c.$extraTables = $hdr;
116
+ }
108
117
  $tbl
109
118
  .wrap('<div id="' + id + '" class="tablesorter-scroller" />')
110
119
  .before($hdr)
120
+ // shrink filter row but don't completely hide it because the inputs/selectors may distort the columns
111
121
  .find('.tablesorter-filter-row').addClass('hideme');
112
122
 
113
123
  $cells = $hdr
114
124
  .wrap('<div class="tablesorter-scroller-header" style="width:' + $tbl.width() + ';" />')
115
125
  .find('.' + ts.css.header);
116
126
 
117
- $tbl.wrap('<div class="tablesorter-scroller-table" style="height:' + h + 'px;width:' + $tbl.width() + ';" />');
127
+ // use max-height, so the height resizes dynamically while filtering
128
+ $tbl.wrap('<div class="tablesorter-scroller-table" style="max-height:' + maxHt + 'px;width:' + $tbl.width() + ';" />');
118
129
 
119
130
  // make scroller header sortable
120
131
  ts.bindEvents(table, $cells);
@@ -124,37 +135,59 @@ ts.addWidget({
124
135
  ts.filter.bindSearch( $tbl, $hdr.find('.' + ts.css.filter) );
125
136
  }
126
137
 
138
+ // modified from http://davidwalsh.name/detect-scrollbar-width
139
+ getBarWidth = function(){
140
+ var $scrollDiv = $('<div class="tablesorter-scrollbar-measure">').appendTo('body'),
141
+ div = $scrollDiv[0],
142
+ barWidth = div.offsetWidth - div.clientWidth;
143
+ $scrollDiv.remove();
144
+ return barWidth;
145
+ };
146
+
127
147
  resize = function(){
128
148
  var d, b, $h, $th, w,
129
149
  // Hide other scrollers so we can resize
130
- $div = $('div.scroller[id != "' + id + '"]').hide();
150
+ $div = $('div.tablesorter-scroller[id != "' + id + '"]').hide();
131
151
 
132
- $tbl.find('thead').show();
152
+ $tbl.children('thead').show();
153
+ // only remove colgroup if it was added by the plugin
154
+ // the $.tablesorter.fixColumnWidth() function already does this (v2.19.0)
155
+ // but we need to get "accurate" resized measurements here - see issue #680
156
+ $tbl.children('colgroup.tablesorter-colgroup').remove();
157
+ $hdr.children('colgroup').remove();
133
158
 
134
159
  // Reset sizes so parent can resize.
135
160
  $tbl
136
161
  .addClass('tablesorter-scroller-reset')
137
- .find('thead').find('.tablesorter-header-inner').addClass('tablesorter-scroller-reset');
162
+ .children('thead')
163
+ .find('.tablesorter-header-inner').addClass('tablesorter-scroller-reset').end()
164
+ .find('.tablesorter-filter-row').show();
138
165
  d = $tbl.parent();
139
166
  d.addClass('tablesorter-scroller-reset');
140
167
 
141
168
  d.parent().trigger('resize');
142
169
 
170
+ // include left & right border widths
171
+ b = parseInt( $tbl.css('border-left-width'), 10 ) + parseInt( $tbl.css('border-right-width'), 10 );
172
+
143
173
  // Shrink a bit to accommodate scrollbar
144
- d.width( d.parent().innerWidth() - ( d.parent().hasScrollBar() ? wo.scroller_barWidth : 0 ) );
145
- w = d.innerWidth() - ( d.hasScrollBar() ? wo.scroller_barWidth : 0 );
174
+ w = ( wo.scroller_barWidth || getBarWidth() ) + b;
175
+
176
+ d.width( d.parent().innerWidth() - ( d.parent().hasScrollBar() ? w : 0 ) );
177
+ w = d.innerWidth() - ( d.hasScrollBar() ? w : 0 );
146
178
  $tbl.width( w );
147
179
  $hdr.width( w );
148
180
  $hdr.parent().width( w );
149
181
 
150
- $tbl.closest('.tablesorter-scroller').find('.tablesorter-scroller-reset').removeClass('tablesorter-scroller-reset');
182
+ $tbl
183
+ .closest('.tablesorter-scroller')
184
+ .find('.tablesorter-scroller-reset')
185
+ .removeClass('tablesorter-scroller-reset');
151
186
 
152
- // include left & right border widths
153
- b = parseInt( $tbl.css('border-left-width'), 10 ) + parseInt( $tbl.css('border-right-width'), 10 );
154
187
  $h = $hdr.find('thead').children().children();
155
188
 
156
189
  // adjust cloned header to match original table width - includes wrappers, headers, and header inner div
157
- $tbl.find('thead').children().children().each(function(i, c){
190
+ $tbl.children('thead').children().children().each(function(i, c){
158
191
  $th = $(c).find('.tablesorter-header-inner');
159
192
  if ($th.length) {
160
193
  // I have no idea why this is in here anymore LOL
@@ -164,14 +197,23 @@ ts.addWidget({
164
197
  } else {
165
198
  w = $th.width();
166
199
  }
200
+
167
201
  $h.eq(i)
168
- .find('.tablesorter-header-inner').width(w - b)
169
- // set inner width first
170
202
  .parent()
171
203
  .width( $th.parent().width() - b );
172
204
  }
173
205
  });
174
206
 
207
+ // refresh colgroup & copy to cloned header
208
+ $.tablesorter.fixColumnWidth( table );
209
+ $h = $tbl.children('colgroup').clone();
210
+ if ($h.length) {
211
+ $hdr.prepend($h);
212
+ }
213
+
214
+ // hide filter row because filterEnd event fires
215
+ $tbl.children('thead').find('.tablesorter-filter-row').hide();
216
+
175
217
  $div.show();
176
218
  };
177
219
 
@@ -183,13 +225,13 @@ ts.addWidget({
183
225
  $tbl.find('thead').css('visibility', 'hidden');
184
226
  c.isScrolling = true;
185
227
 
186
- t = $tbl.parent().parent().height();
228
+ tbHt = $tbl.parent().parent().height();
187
229
 
188
230
  // The header will always jump into view if scrolling the table body
189
231
  $tbl.parent().bind('scroll', function(){
190
232
  if (wo.scroller_jumpToHeader) {
191
233
  var pos = $win.scrollTop() - $hdr.offset().top;
192
- if ($(this).scrollTop() !== 0 && pos < t && pos > 0) {
234
+ if ($(this).scrollTop() !== 0 && pos < tbHt && pos > 0) {
193
235
  $win.scrollTop( $hdr.offset().top );
194
236
  }
195
237
  }
@@ -217,4 +259,4 @@ ts.addWidget({
217
259
  }
218
260
  });
219
261
 
220
- })(jQuery);
262
+ })(jQuery, window);
@@ -0,0 +1,64 @@
1
+ /*
2
+ * dragtable
3
+ * @Version 2.0.14 MOD
4
+ * default css
5
+ */
6
+ .dragtable-sortable {
7
+ list-style-type: none;
8
+ margin: 0;
9
+ padding: 0;
10
+ -moz-user-select: none;
11
+ z-index: 10;
12
+ }
13
+ .dragtable-sortable li {
14
+ margin: 0;
15
+ padding: 0;
16
+ float: left;
17
+ font-size: 1em;
18
+ }
19
+ .dragtable-sortable table {
20
+ margin-top: 0;
21
+ }
22
+ .dragtable-sortable th, .dragtable-sortable td {
23
+ border-left: 0px;
24
+ }
25
+ .dragtable-sortable li:first-child th, .dragtable-sortable li:first-child td {
26
+ border-left: 1px solid #CCC;
27
+ }
28
+ .dragtable-handle-selected {
29
+ /* table-handle class while actively dragging a column */
30
+ }
31
+ .ui-sortable-helper {
32
+ opacity: 0.7;
33
+ filter: alpha(opacity=70);
34
+ }
35
+ .ui-sortable-placeholder {
36
+ -moz-box-shadow: 4px 5px 4px rgba(0,0,0,0.2) inset;
37
+ -webkit-box-shadow: 4px 5px 4px rgba(0,0,0,0.2) inset;
38
+ box-shadow: 4px 5px 4px rgba(0,0,0,0.2) inset;
39
+ border-bottom: 1px solid rgba(0,0,0,0.2);
40
+ border-top: 1px solid rgba(0,0,0,0.2);
41
+ visibility: visible !important;
42
+ /* change the background color here to match the tablesorter theme */
43
+ background: #EFEFEF;
44
+ }
45
+ .ui-sortable-placeholder * {
46
+ opacity: 0.0;
47
+ visibility: hidden;
48
+ }
49
+ .table-handle, .table-handle-disabled {
50
+ /* background-image: url(/assets/jquery-tablesorter/dragtable-handle.png); */
51
+ /* background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAANAQMAAAC5Li2yAAAABlBMVEUAAAAzMzPI8eYgAAAAAnRSTlMAzORBQ6MAAAAOSURBVAjXYwABByyYAQAQWgFBLN2RnwAAAABJRU5ErkJggg=='); */
52
+ background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyIiBoZWlnaHQ9IjEzIj48cmVjdCBzdHlsZT0iZmlsbDojMzMzO2ZpbGwtb3BhY2l0eTouODsiIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHg9IjEiIHk9IjIiLz4JPHJlY3Qgc3R5bGU9ImZpbGw6IzMzMztmaWxsLW9wYWNpdHk6Ljg7IiB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4PSIxIiB5PSI0Ii8+CTxyZWN0IHN0eWxlPSJmaWxsOiMzMzM7ZmlsbC1vcGFjaXR5Oi44OyIgd2lkdGg9IjEiIGhlaWdodD0iMSIgeD0iMSIgeT0iNiIvPjxyZWN0IHN0eWxlPSJmaWxsOiMzMzM7ZmlsbC1vcGFjaXR5Oi44OyIgd2lkdGg9IjEiIGhlaWdodD0iMSIgeD0iMSIgeT0iOCIvPjxyZWN0IHN0eWxlPSJmaWxsOiMzMzM7ZmlsbC1vcGFjaXR5Oi44OyIgd2lkdGg9IjEiIGhlaWdodD0iMSIgeD0iMSIgeT0iMTAiLz48L3N2Zz4=);
53
+ background-repeat: repeat-x;
54
+ height: 13px;
55
+ margin: 0 1px;
56
+ cursor: move;
57
+ }
58
+ .table-handle-disabled {
59
+ opacity: 0;
60
+ cursor: not-allowed;
61
+ }
62
+ .dragtable-sortable table {
63
+ margin-bottom: 0;
64
+ }
@@ -120,6 +120,9 @@ caption {
120
120
  }
121
121
 
122
122
  /* filter widget */
123
+ .tablesorter-blackice .tablesorter-filter-row {
124
+ background: #222;
125
+ }
123
126
  .tablesorter-blackice .tablesorter-filter-row td {
124
127
  background: #222;
125
128
  line-height: normal;
@@ -155,6 +155,9 @@ caption {
155
155
  }
156
156
 
157
157
  /* filter widget */
158
+ .tablesorter-blue .tablesorter-filter-row {
159
+ background: #eee;
160
+ }
158
161
  .tablesorter-blue .tablesorter-filter-row td {
159
162
  background: #eee;
160
163
  line-height: normal;
@@ -101,6 +101,9 @@
101
101
  box-sizing: border-box;
102
102
  transition: height 0.1s ease;
103
103
  }
104
+ .tablesorter-bootstrap .tablesorter-filter-row {
105
+ background: #efefef;
106
+ }
104
107
  .tablesorter-bootstrap .tablesorter-filter-row td {
105
108
  background: #efefef;
106
109
  line-height: normal;
@@ -103,6 +103,9 @@ caption {
103
103
  background: #eee;
104
104
  cursor: not-allowed;
105
105
  }
106
+ .tablesorter-bootstrap .tablesorter-filter-row {
107
+ background: #eee;
108
+ }
106
109
  .tablesorter-bootstrap .tablesorter-filter-row td {
107
110
  background: #eee;
108
111
  line-height: normal;
@@ -119,6 +119,9 @@ caption {
119
119
  }
120
120
 
121
121
  /* filter widget */
122
+ .tablesorter-dark .tablesorter-filter-row {
123
+ background: #202020;
124
+ }
122
125
  .tablesorter-dark .tablesorter-filter-row td {
123
126
  background: #202020;
124
127
  line-height: normal;
@@ -122,6 +122,9 @@ caption {
122
122
  }
123
123
 
124
124
  /* filter widget */
125
+ .tablesorter-default .tablesorter-filter-row {
126
+ background: #eee;
127
+ }
125
128
  .tablesorter-default .tablesorter-filter-row td {
126
129
  background: #eee;
127
130
  border-bottom: #ccc 1px solid;
@@ -144,6 +144,9 @@ caption {
144
144
  }
145
145
 
146
146
  /* Filter Widget */
147
+ .tablesorter-dropbox .tablesorter-filter-row {
148
+ background: #fff;
149
+ }
147
150
  .tablesorter-dropbox .tablesorter-filter-row td {
148
151
  background: #fff;
149
152
  line-height: normal;