jquery-tablesorter 1.13.3 → 1.13.4

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 118a095f29f08043c86da826b130c99bde031eef
4
- data.tar.gz: 2c3c3439dd14689e8aceedddcbb473c33a70c56d
3
+ metadata.gz: fbc77e5c7eae0e53eeabee85b7bc2383ee47f418
4
+ data.tar.gz: fc1cc344b8642f999e4787d8c82e4d93c6f73f30
5
5
  SHA512:
6
- metadata.gz: 21a31cdb42000c4027b9ceb97d7e3337bad59fa67460d2d55a697ba61ed95f0a10185fd605951790f740029112f409ef689bcd1726035b0fb9674fec42e1c1e3
7
- data.tar.gz: 6c5475bb17311b6df0f58acd007427899f0829e28fc0f256f867f2d587afdd328ba958f812bca8106bfea82e4b79bcb721aff23b06844c9aec1bfec5ae61cd64
6
+ metadata.gz: db3c65d13f8da77d1cdd84f9c40d6e3460317d7f59f3a30a3c6042f7366d0bc2606c2b4fcb94030164e8490251d592764c6664523b5e0cf6e4eb65fb34e6d46f
7
+ data.tar.gz: 0cd1b23750074956747fba1febbbcbe0d1084bcef6218d67d96723e65c6aeb28959ed198d016984a32f6667b7e57040e8ddce8b8531c7f63aa40dfc2de8a1b95
data/README.md CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  Simple integration of jquery-tablesorter into the asset pipeline.
6
6
 
7
- Current tablesorter version: 2.18.3 (11/7/2014), [documentation]
7
+ Current tablesorter version: 2.18.4 (12/22/2014), [documentation]
8
8
 
9
9
  Any issue associated with the js/css files, please report to [Mottie's fork].
10
10
 
@@ -24,9 +24,9 @@ Or install it yourself as:
24
24
 
25
25
  ## Requirements
26
26
 
27
- Rails 3.1 and higher (tested up to 4.1)
27
+ Rails 3.1 and higher (tested up to 4.2)
28
28
 
29
- Tested with ruby 1.9.3 - 2.1.4
29
+ Tested with ruby 1.9.3 - 2.1.5
30
30
 
31
31
  ## Usage
32
32
 
@@ -73,11 +73,11 @@ Avaliable theme names:
73
73
  * theme.dropbox
74
74
  * theme.green
75
75
  * theme.grey
76
- * theme.ice
76
+ * theme.ice.css (file extension required due to sprockets, see [issue #3](https://github.com/themilkman/jquery-tablesorter-rails/issues/3))
77
77
  * theme.jui
78
78
  * theme.metro-dark
79
79
 
80
- pager theme:
80
+ Pager theme:
81
81
 
82
82
  ```css
83
83
  /*
@@ -1,3 +1,3 @@
1
1
  module JqueryTablesorter
2
- VERSION = '1.13.3'
2
+ VERSION = '1.13.4'
3
3
  end
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * tablesorter (FORK) pager plugin
3
- * updated 11/3/2014 (v2.18.2)
3
+ * updated 12/22/2014 (v2.18.4)
4
4
  */
5
5
  /*jshint browser:true, jquery:true, unused:false */
6
6
  ;(function($) {
@@ -284,7 +284,7 @@
284
284
  c = table.config,
285
285
  $b = c.$tbodies.eq(0);
286
286
  $b.find('tr.pagerSavedHeightSpacer').remove();
287
- if (p.fixedHeight && !p.isDisabled) {
287
+ if (p.fixedHeight && !p.isDisabled) {
288
288
  h = $.data(table, 'pagerSavedHeight');
289
289
  if (h) {
290
290
  d = h - $b.height();
@@ -846,9 +846,9 @@
846
846
  // make sure we have a copy of all table rows once the cache has been built
847
847
  updateCache(table);
848
848
  }
849
+ updatePageDisplay(table, p, false);
849
850
  moveToPage(table, p, false);
850
851
  c.$table.trigger('applyWidgets');
851
- updatePageDisplay(table, p, false);
852
852
  }
853
853
  })
854
854
  .bind('disable.pager', function(e){
@@ -1,5 +1,5 @@
1
1
  /**!
2
- * TableSorter (FORK) 2.18.3 - Client-side table sorting with ease!
2
+ * TableSorter (FORK) 2.18.4 - Client-side table sorting with ease!
3
3
  * @requires jQuery v1.2.6+
4
4
  *
5
5
  * Copyright (c) 2007 Christian Bach
@@ -24,7 +24,7 @@
24
24
 
25
25
  var ts = this;
26
26
 
27
- ts.version = "2.18.3";
27
+ ts.version = "2.18.4";
28
28
 
29
29
  ts.parsers = [];
30
30
  ts.widgets = [];
@@ -96,6 +96,7 @@
96
96
  cssIconDesc : '', // class name added to the icon when the column has a descending sort
97
97
  cssInfoBlock : 'tablesorter-infoOnly', // don't sort tbody with this class name (only one class name allowed here!)
98
98
  cssAllowClicks : 'tablesorter-allowClicks', // class name added to table header which allows clicks to bubble up
99
+ cssIgnoreRow : 'tablesorter-ignoreRow', // header row to ignore; cells within this row will not be added to c.$headers
99
100
 
100
101
  // *** selectors
101
102
  selectorHeaders : '> thead th, > thead td',
@@ -447,40 +448,44 @@
447
448
  // add icon if cssIcon option exists
448
449
  i = c.cssIcon ? '<i class="' + ( c.cssIcon === ts.css.icon ? ts.css.icon : c.cssIcon + ' ' + ts.css.icon ) + '"></i>' : '';
449
450
  // redefine c.$headers here in case of an updateAll that replaces or adds an entire header cell - see #683
450
- c.$headers = $(table).find(c.selectorHeaders).each(function(index) {
451
- $t = $(this);
451
+ c.$headers = $( $.map( $(table).find(c.selectorHeaders), function(elem, index) {
452
+ $t = $(elem);
453
+ // ignore cell (don't add it to c.$headers) if row has ignoreRow class
454
+ if ($t.parent().hasClass(c.cssIgnoreRow)) { return; }
452
455
  // make sure to get header cell & not column indexed cell
453
456
  ch = ts.getColumnData( table, c.headers, index, true );
454
457
  // save original header content
455
- c.headerContent[index] = $(this).html();
458
+ c.headerContent[index] = $t.html();
456
459
  // if headerTemplate is empty, don't reformat the header cell
457
460
  if ( c.headerTemplate !== '' ) {
458
461
  // set up header template
459
- t = c.headerTemplate.replace(/\{content\}/g, $(this).html()).replace(/\{icon\}/g, i);
462
+ t = c.headerTemplate.replace(/\{content\}/g, $t.html()).replace(/\{icon\}/g, i);
460
463
  if (c.onRenderTemplate) {
461
464
  h = c.onRenderTemplate.apply($t, [index, t]);
462
465
  if (h && typeof h === 'string') { t = h; } // only change t if something is returned
463
466
  }
464
- $(this).html('<div class="' + ts.css.headerIn + '">' + t + '</div>'); // faster than wrapInner
467
+ $t.html('<div class="' + ts.css.headerIn + '">' + t + '</div>'); // faster than wrapInner
465
468
  }
466
469
  if (c.onRenderHeader) { c.onRenderHeader.apply($t, [index, c, c.$table]); }
467
470
  // *** remove this.column value if no conflicts found
468
- this.column = parseInt( $(this).attr('data-column'), 10);
469
- this.order = formatSortingOrder( ts.getData($t, ch, 'sortInitialOrder') || c.sortInitialOrder ) ? [1,0,2] : [0,1,2];
470
- this.count = -1; // set to -1 because clicking on the header automatically adds one
471
- this.lockedOrder = false;
471
+ elem.column = parseInt( $t.attr('data-column'), 10);
472
+ elem.order = formatSortingOrder( ts.getData($t, ch, 'sortInitialOrder') || c.sortInitialOrder ) ? [1,0,2] : [0,1,2];
473
+ elem.count = -1; // set to -1 because clicking on the header automatically adds one
474
+ elem.lockedOrder = false;
472
475
  lock = ts.getData($t, ch, 'lockedOrder') || false;
473
476
  if (typeof lock !== 'undefined' && lock !== false) {
474
- this.order = this.lockedOrder = formatSortingOrder(lock) ? [1,1,1] : [0,0,0];
477
+ elem.order = elem.lockedOrder = formatSortingOrder(lock) ? [1,1,1] : [0,0,0];
475
478
  }
476
479
  $t.addClass(ts.css.header + ' ' + c.cssHeader);
477
480
  // add cell to headerList
478
- c.headerList[index] = this;
481
+ c.headerList[index] = elem;
479
482
  // add to parent in case there are multiple rows
480
483
  $t.parent().addClass(ts.css.headerRow + ' ' + c.cssHeaderRow).attr('role', 'row');
481
484
  // allow keyboard cursor to focus on element
482
485
  if (c.tabIndex) { $t.attr("tabindex", 0); }
483
- }).attr({
486
+ return elem;
487
+ }));
488
+ $(table).find(c.selectorHeaders).attr({
484
489
  scope: 'col',
485
490
  role : 'columnheader'
486
491
  });
@@ -1163,27 +1168,28 @@
1163
1168
  if (typeof c.initialized === 'function') { c.initialized(table); }
1164
1169
  };
1165
1170
 
1166
- ts.getColumnData = function(table, obj, indx, getCell){
1171
+ ts.getColumnData = function(table, obj, indx, getCell, $headers){
1167
1172
  if (typeof obj === 'undefined' || obj === null) { return; }
1168
1173
  table = $(table)[0];
1169
- var result, $h, k,
1170
- c = table.config;
1174
+ var $h, k,
1175
+ c = table.config,
1176
+ $cell = ( $headers || c.$headers );
1171
1177
  if (obj[indx]) {
1172
- return getCell ? obj[indx] : obj[c.$headers.index( c.$headers.filter('[data-column="' + indx + '"]:last') )];
1178
+ return getCell ? obj[indx] : obj[$cell.index( $cell.filter('[data-column="' + indx + '"]:last') )];
1173
1179
  }
1174
1180
  for (k in obj) {
1175
1181
  if (typeof k === 'string') {
1176
- $h = c.$headers.filter('[data-column="' + indx + '"]:last')
1182
+ $h = $cell.filter('[data-column="' + indx + '"]:last')
1177
1183
  // header cell with class/id
1178
1184
  .filter(k)
1179
1185
  // find elements within the header cell with cell/id
1180
- .add( c.$headers.filter('[data-column="' + indx + '"]:last').find(k) );
1186
+ .add( $cell.filter('[data-column="' + indx + '"]:last').find(k) );
1181
1187
  if ($h.length) {
1182
1188
  return obj[k];
1183
1189
  }
1184
1190
  }
1185
1191
  }
1186
- return result;
1192
+ return;
1187
1193
  };
1188
1194
 
1189
1195
  // computeTableHeaderCellIndexes from:
@@ -1,4 +1,4 @@
1
- /*! tableSorter (FORK) 2.16+ widgets - updated 11/7/2014 (v2.18.3)
1
+ /*! tableSorter (FORK) 2.16+ widgets - updated 12/22/2014 (v2.18.4)
2
2
  *
3
3
  * Column Styles
4
4
  * Column Filters
@@ -1655,7 +1655,7 @@ ts.addWidget({
1655
1655
  .wrap('<div class="' + ts.css.stickyWrap + '">'),
1656
1656
  $stickyWrap = $stickyTable.parent().css({
1657
1657
  position : $attach.length ? 'absolute' : 'fixed',
1658
- margin : 0,
1658
+ padding : parseInt( $stickyTable.parent().parent().css('padding-left'), 10 ),
1659
1659
  top : stickyOffset + nestedStickyTop,
1660
1660
  left : 0,
1661
1661
  visibility : 'hidden',
@@ -1709,9 +1709,7 @@ ts.addWidget({
1709
1709
  // include caption & filter row (fixes #126 & #249) - don't remove cells to get correct cell indexing
1710
1710
  $stickyTable.find('thead:gt(0), tr.sticky-false').hide();
1711
1711
  $stickyTable.find('tbody, tfoot').remove();
1712
- if (!wo.stickyHeaders_includeCaption) {
1713
- $stickyTable.find('caption').remove();
1714
- }
1712
+ $stickyTable.find('caption').toggle(wo.stickyHeaders_includeCaption);
1715
1713
  // issue #172 - find td/th in sticky header
1716
1714
  $stickyCells = $stickyThead.children().children();
1717
1715
  $stickyTable.css({ height:0, width:0, margin: 0 });
@@ -1746,12 +1744,12 @@ ts.addWidget({
1746
1744
  nestedStickyTop = $nestedSticky.length ? $nestedSticky.offset().top - $yScroll.scrollTop() + $nestedSticky.height() : 0;
1747
1745
  var prefix = 'tablesorter-sticky-',
1748
1746
  offset = $table.offset(),
1749
- yWindow = $.isWindow( $yScroll[0] ),
1747
+ yWindow = $.isWindow( $yScroll[0] ), // $.isWindow needs jQuery 1.4.3
1750
1748
  xWindow = $.isWindow( $xScroll[0] ),
1751
1749
  // scrollTop = ( $attach.length ? $attach.offset().top : $yScroll.scrollTop() ) + stickyOffset + nestedStickyTop,
1752
1750
  scrollTop = ( $attach.length ? ( yWindow ? $yScroll.scrollTop() : $yScroll.offset().top ) : $yScroll.scrollTop() ) + stickyOffset + nestedStickyTop,
1753
1751
  tableHeight = $table.height() - ($stickyWrap.height() + ($tfoot.height() || 0)),
1754
- isVisible = ( scrollTop > offset.top) && (scrollTop < offset.top + tableHeight) ? 'visible' : 'hidden',
1752
+ isVisible = ( scrollTop > offset.top ) && ( scrollTop < offset.top + tableHeight ) ? 'visible' : 'hidden',
1755
1753
  cssSettings = { visibility : isVisible };
1756
1754
 
1757
1755
  if ($attach.length) {
@@ -1,4 +1,4 @@
1
- /* Column Selector/Responsive table widget (beta) for TableSorter - 11/3/2014 (v2.18.1)
1
+ /* Column Selector/Responsive table widget (beta) for TableSorter - 12/22/2014 (v2.18.4)
2
2
  * Requires tablesorter v2.8+ and jQuery 1.7+
3
3
  * by Justin Hallett & Rob Garrison
4
4
  */
@@ -103,6 +103,7 @@ tsColSel = ts.columnSelector = {
103
103
  // input may not be wrapped within the layout template
104
104
  .find('input').add( colSel.$wrapper[colId].filter('input') )
105
105
  .attr('data-column', colId)
106
+ .toggleClass( wo.columnSelector_cssChecked, colSel.states[colId] )
106
107
  .prop('checked', colSel.states[colId])
107
108
  .on('change', function(){
108
109
  colSel.states[colId] = this.checked;
@@ -138,6 +139,7 @@ tsColSel = ts.columnSelector = {
138
139
  .find('input').add( colSel.$auto.filter('input') )
139
140
  .attr('data-column', 'auto')
140
141
  .prop('checked', colSel.auto)
142
+ .toggleClass( wo.columnSelector_cssChecked, colSel.auto )
141
143
  .on('change', function(){
142
144
  colSel.auto = this.checked;
143
145
  $.each( colSel.$checkbox, function(i, $cb){
@@ -225,6 +227,7 @@ tsColSel = ts.columnSelector = {
225
227
  styles.push(prefix + ' tr th:nth-child(' + column + ')');
226
228
  styles.push(prefix + ' tr td:nth-child(' + column + ')');
227
229
  }
230
+ $(this).toggleClass( wo.columnSelector_cssChecked, this.checked );
228
231
  });
229
232
  if (wo.columnSelector_mediaquery){
230
233
  colSel.$breakpoints.prop('disabled', true);
@@ -235,6 +238,7 @@ tsColSel = ts.columnSelector = {
235
238
  if (wo.columnSelector_saveColumns && ts.storage) {
236
239
  ts.storage( c.$table[0], 'tablesorter-columnSelector', colSel.states );
237
240
  }
241
+ c.$table.trigger('columnUpdate');
238
242
  },
239
243
 
240
244
  attachTo : function(table, elm) {
@@ -252,12 +256,13 @@ tsColSel = ts.columnSelector = {
252
256
  $popup.find('.tablesorter-column-selector')
253
257
  .html( colSel.$container.html() )
254
258
  .find('input').each(function(){
255
- var indx = $(this).attr('data-column');
256
- $(this).prop( 'checked', indx === 'auto' ? colSel.auto : colSel.states[indx] );
259
+ var indx = $(this).toggleClass( wo.columnSelector_cssChecked, isChecked ).attr('data-column'),
260
+ isChecked = indx === 'auto' ? colSel.auto : colSel.states[indx];
261
+ $(this).prop( 'checked', isChecked );
257
262
  });
258
263
  colSel.$popup = $popup.on('change', 'input', function(){
259
264
  // data input
260
- indx = $(this).attr('data-column');
265
+ indx = $(this).toggleClass( wo.columnSelector_cssChecked, this.checked ).attr('data-column');
261
266
  // update original popup
262
267
  colSel.$container.find('input[data-column="' + indx + '"]')
263
268
  .prop('checked', this.checked)
@@ -299,7 +304,10 @@ ts.addWidget({
299
304
  // data attribute containing column priority
300
305
  // duplicates how jQuery mobile uses priorities:
301
306
  // http://view.jquerymobile.com/1.3.2/dist/demos/widgets/table-column-toggle/
302
- columnSelector_priority : 'data-priority'
307
+ columnSelector_priority : 'data-priority',
308
+ // class name added to checked checkboxes - this fixes an issue with Chrome not updating FontAwesome
309
+ // applied icons; use this class name (input.checked) instead of input:checked
310
+ columnSelector_cssChecked : 'checked'
303
311
 
304
312
  },
305
313
  init: function(table, thisWidget, c, wo) {
@@ -1,4 +1,4 @@
1
- /* Pager widget for TableSorter 11/3/2014 (v2.18.1) - requires jQuery 1.7+ */
1
+ /* Pager widget for TableSorter 12/22/2014 (v2.18.4) - requires jQuery 1.7+ */
2
2
  /*jshint browser:true, jquery:true, unused:false */
3
3
  ;(function($){
4
4
  "use strict";
@@ -240,9 +240,9 @@ tsp = ts.pager = {
240
240
  // make sure we have a copy of all table rows once the cache has been built
241
241
  tsp.updateCache(table);
242
242
  }
243
+ tsp.updatePageDisplay(table, c, false);
243
244
  // tsp.moveToPage(table, p, false); <-- called when applyWidgets is triggered
244
245
  c.$table.trigger('applyWidgets');
245
- tsp.updatePageDisplay(table, c, false);
246
246
  }
247
247
  })
248
248
  .on('disable.pager', function(e){
@@ -157,7 +157,8 @@ caption {
157
157
  filter: alpha(opacity=0);
158
158
  }
159
159
  /* filters */
160
- .tablesorter-blackice .tablesorter-filter {
160
+ .tablesorter-blackice input.tablesorter-filter,
161
+ .tablesorter-blackice select.tablesorter-filter {
161
162
  width: 98%;
162
163
  height: auto;
163
164
  margin: 0;
@@ -192,7 +192,8 @@ caption {
192
192
  filter: alpha(opacity=0);
193
193
  }
194
194
  /* filters */
195
- .tablesorter-blue .tablesorter-filter {
195
+ .tablesorter-blue input.tablesorter-filter,
196
+ .tablesorter-blue select.tablesorter-filter {
196
197
  width: 98%;
197
198
  height: auto;
198
199
  margin: 0;
@@ -25,7 +25,7 @@
25
25
  }
26
26
 
27
27
  /* bootstrap uses <i> for icons */
28
- .tablesorter-bootstrap .tablesorter-header i {
28
+ .tablesorter-bootstrap .tablesorter-header i.tablesorter-icon {
29
29
  font-size: 11px;
30
30
  position: absolute;
31
31
  right: 2px;
@@ -77,7 +77,8 @@
77
77
  }
78
78
 
79
79
  /* filter widget */
80
- .tablesorter-bootstrap .tablesorter-filter-row .tablesorter-filter {
80
+ .tablesorter-bootstrap .tablesorter-filter-row input.tablesorter-filter,
81
+ .tablesorter-bootstrap .tablesorter-filter-row select.tablesorter-filter {
81
82
  width: 98%;
82
83
  margin: 0 auto;
83
84
  padding: 4px 6px;
@@ -37,7 +37,7 @@
37
37
  }
38
38
 
39
39
  /* bootstrap uses <i> for icons */
40
- .tablesorter-bootstrap .tablesorter-header i {
40
+ .tablesorter-bootstrap .tablesorter-header i.tablesorter-icon {
41
41
  position: absolute;
42
42
  right: 2px;
43
43
  top: 50%;
@@ -84,7 +84,8 @@ caption {
84
84
  }
85
85
 
86
86
  /* filter widget */
87
- .tablesorter-bootstrap .tablesorter-filter-row .tablesorter-filter {
87
+ .tablesorter-bootstrap .tablesorter-filter-row input.tablesorter-filter,
88
+ .tablesorter-bootstrap .tablesorter-filter-row select.tablesorter-filter {
88
89
  width: 98%;
89
90
  margin: 0 auto;
90
91
  padding: 4px 6px;
@@ -158,7 +158,8 @@ caption {
158
158
  }
159
159
 
160
160
  /* filters */
161
- .tablesorter-dark .tablesorter-filter {
161
+ .tablesorter-dark input.tablesorter-filter,
162
+ .tablesorter-dark select.tablesorter-filter {
162
163
  width: 98%;
163
164
  height: auto;
164
165
  margin: 4px;
@@ -160,7 +160,8 @@ caption {
160
160
  filter: alpha(opacity=0);
161
161
  }
162
162
  /* filters */
163
- .tablesorter-default .tablesorter-filter {
163
+ .tablesorter-default input.tablesorter-filter,
164
+ .tablesorter-default select.tablesorter-filter {
164
165
  width: 95%;
165
166
  height: auto;
166
167
  margin: 4px;
@@ -46,7 +46,7 @@
46
46
  .tablesorter-dropbox .tablesorter-header {
47
47
  cursor: pointer;
48
48
  }
49
- .tablesorter-dropbox .tablesorter-header i {
49
+ .tablesorter-dropbox .tablesorter-header i.tablesorter-icon {
50
50
  width: 9px;
51
51
  height: 9px;
52
52
  padding: 0 10px 0 4px;
@@ -55,23 +55,23 @@
55
55
  background-repeat: no-repeat;
56
56
  content: "";
57
57
  }
58
- .tablesorter-dropbox .tablesorter-headerSortUp i,
59
- .tablesorter-dropbox .tablesorter-headerAsc i {
58
+ .tablesorter-dropbox .tablesorter-headerSortUp i.tablesorter-icon,
59
+ .tablesorter-dropbox .tablesorter-headerAsc i.tablesorter-icon {
60
60
  background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAALhJREFUeNpi/P//PwMhwILMiexYx8bIxNTy/9+/muUVQb9g4kzIitg4edI4+YRLQTSyOCPMupjerUI8whK3OXgEhH58+fDuy9sXqkuKvd+hmMTOxdvCxS8sxMUvxACiQXwU6+Im7DDg5BNKY+fiY2BmYWMA0SA+SByuiJ2bbzIHrwAzMxsb0AGMDCAaxAeJg+SZ7wtaqfAISfQAdTIwMUM8ywhUyMTEzPD/71+5FXvPLWUkJpwAAgwAZqYvvHStbD4AAAAASUVORK5CYII=');
61
61
  /* background-image: url(/assets/jquery-tablesorter/dropbox-asc.png); */
62
62
  }
63
- .tablesorter-dropbox .tablesorter-headerSortUp:hover i,
64
- .tablesorter-dropbox .tablesorter-headerAsc:hover i {
63
+ .tablesorter-dropbox .tablesorter-headerSortUp:hover i.tablesorter-icon,
64
+ .tablesorter-dropbox .tablesorter-headerAsc:hover i.tablesorter-icon {
65
65
  background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAALVJREFUeNpi/P//PwMhwILMCc+qZGNkYmr5/+9fzcpp7b9g4kzIitjYOdM4uXlLQTSyOCPMuqi8OiEefsHbHFzcQj++fX335eN71WWTmt6hmMTOwdXCycMnBDSJAUSD+CjWxRQ0GHBw86Sxc3AyMDOzMIBoEB8kDlfEzsk1mYOLByjPCnQAIwOIBvFB4iB55rsfmVS4+QV7QNYwMTNDHApUyMTExPDv/z+5Feu3L2UkJpwAAgwA244u+I9CleAAAAAASUVORK5CYII=');
66
66
  /* background-image: url(/assets/jquery-tablesorter/dropbox-asc-hovered.png); */
67
67
  }
68
- .tablesorter-dropbox .tablesorter-headerSortDown i,
69
- .tablesorter-dropbox .tablesorter-headerDesc i {
68
+ .tablesorter-dropbox .tablesorter-headerSortDown i.tablesorter-icon,
69
+ .tablesorter-dropbox .tablesorter-headerDesc i.tablesorter-icon {
70
70
  background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAALdJREFUeNpi/P//PwMhwBLdtVGFhZ3zNhMzC4bkv79/GP78/K7KCDIpZ9mVw+xcfDaMTExwBf///WP4+e3TkSlROrZg7UxMLLns3HxnmFnZmGGK/v7+9ff3j2+5YHkQMSlC48Kv719m/f//D2IKkAbxQeJwRSDw4/OHmr+/fr0DqmAA0SA+TA6uaEq0zjugG+r//vkFcks9iA/3HbJvvn18O+vf379yP758mMXAoAAXZyQmnAACDADX316BiTFbMQAAAABJRU5ErkJggg==');
71
71
  /* background-image: url(/assets/jquery-tablesorter/dropbox-desc.png); */
72
72
  }
73
- .tablesorter-dropbox .tablesorter-headerSortDown:hover i,
74
- .tablesorter-dropbox .tablesorter-headerDesc:hover i {
73
+ .tablesorter-dropbox .tablesorter-headerSortDown:hover i.tablesorter-icon,
74
+ .tablesorter-dropbox .tablesorter-headerDesc:hover i.tablesorter-icon {
75
75
  background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAALNJREFUeNpi/P//PwMhwBJf3uP879e3PUzMzBiS//7+ZWBi43JhBJmU2z7nIzMzEx8jIyNcAUj8799/nyZXpvCzgARYuXjTWBkZVjCzIEz7++cvw+//DGkgNiPMTWVT1l5hZvynDTINbMp/pqtdOcE6IDkmmM5fv3/5//v37z9QBQOIBvFhcnBFEwoj7/5jZFnz9+8fBhAN4sN9h+ybH9++JrGxscr/+vE1CVmckZhwAggwANvlUyq5Dd1wAAAAAElFTkSuQmCC');
76
76
  /* background-image: url(/assets/jquery-tablesorter/dropbox-desc-hovered.png); */
77
77
  }
@@ -79,8 +79,8 @@
79
79
  cursor: default;
80
80
  }
81
81
 
82
- .tablesorter-dropbox thead .sorter-false i,
83
- .tablesorter-dropbox thead .sorter-false:hover i {
82
+ .tablesorter-dropbox thead .sorter-false i.tablesorter-icon,
83
+ .tablesorter-dropbox thead .sorter-false:hover i.tablesorter-icon {
84
84
  background-image: none;
85
85
  padding: 4px;
86
86
  }
@@ -183,7 +183,8 @@ caption {
183
183
  }
184
184
 
185
185
  /* filters */
186
- .tablesorter-dropbox .tablesorter-filter {
186
+ .tablesorter-dropbox input.tablesorter-filter,
187
+ .tablesorter-dropbox select.tablesorter-filter {
187
188
  width: 98%;
188
189
  height: auto;
189
190
  margin: 4px;
@@ -174,7 +174,8 @@ caption {
174
174
  filter: alpha(opacity=0);
175
175
  }
176
176
  /* filters */
177
- .tablesorter-green .tablesorter-filter {
177
+ .tablesorter-green input.tablesorter-filter,
178
+ .tablesorter-green select.tablesorter-filter {
178
179
  width: 98%;
179
180
  height: auto;
180
181
  margin: 4px;
@@ -41,7 +41,7 @@
41
41
  cursor: pointer;
42
42
  }
43
43
  .tablesorter-grey .header i,
44
- .tablesorter-grey .tablesorter-header i {
44
+ .tablesorter-grey .tablesorter-header i.tablesorter-icon {
45
45
  width: 18px;
46
46
  height: 10px;
47
47
  position: absolute;
@@ -69,22 +69,22 @@
69
69
  background-image: linear-gradient(to bottom, #195c93, #0e4776);
70
70
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#195c93', endColorstr='#0e4776',GradientType=0 );
71
71
  }
72
- .tablesorter-grey .headerSortUp i,
73
- .tablesorter-grey .tablesorter-headerSortUp i,
74
- .tablesorter-grey .tablesorter-headerAsc i {
72
+ .tablesorter-grey .headerSortUp i.tablesorter-icon,
73
+ .tablesorter-grey .tablesorter-headerSortUp i.tablesorter-icon,
74
+ .tablesorter-grey .tablesorter-headerAsc i.tablesorter-icon {
75
75
  /* white asc arrow */
76
76
  background-image: url(data:image/gif;base64,R0lGODlhFQAEAIAAAP///////yH5BAEAAAEALAAAAAAVAAQAAAINjI8Bya2wnINUMopZAQA7);
77
77
  }
78
- .tablesorter-grey .headerSortDown i,
79
- .tablesorter-grey .tablesorter-headerSortDown i,
80
- .tablesorter-grey .tablesorter-headerDesc i {
78
+ .tablesorter-grey .headerSortDown i.tablesorter-icon,
79
+ .tablesorter-grey .tablesorter-headerSortDown i.tablesorter-icon,
80
+ .tablesorter-grey .tablesorter-headerDesc i.tablesorter-icon {
81
81
  /* white desc arrow */
82
82
  background-image: url(data:image/gif;base64,R0lGODlhFQAEAIAAAP///////yH5BAEAAAEALAAAAAAVAAQAAAINjB+gC+jP2ptn0WskLQA7);
83
83
  }
84
84
  .tablesorter-grey thead .sorter-false {
85
85
  cursor: default;
86
86
  }
87
- .tablesorter-grey thead .sorter-false i {
87
+ .tablesorter-grey thead .sorter-false i.tablesorter-icon {
88
88
  background-image: none;
89
89
  padding: 4px;
90
90
  }
@@ -216,7 +216,8 @@ caption {
216
216
  filter: alpha(opacity=0);
217
217
  }
218
218
  /* filters */
219
- .tablesorter-grey .tablesorter-filter {
219
+ .tablesorter-grey input.tablesorter-filter,
220
+ .tablesorter-grey select.tablesorter-filter {
220
221
  width: 98%;
221
222
  height: auto;
222
223
  margin: 0;
@@ -172,7 +172,8 @@ caption {
172
172
  filter: alpha(opacity=0);
173
173
  }
174
174
  /* filters */
175
- .tablesorter-ice .tablesorter-filter {
175
+ .tablesorter-ice input.tablesorter-filter,
176
+ .tablesorter-ice select.tablesorter-filter {
176
177
  width: 98%;
177
178
  height: auto;
178
179
  margin: 4px;
@@ -130,7 +130,8 @@
130
130
  filter: alpha(opacity=0);
131
131
  }
132
132
  /* filters */
133
- .tablesorter-jui .tablesorter-filter {
133
+ .tablesorter-jui input.tablesorter-filter,
134
+ .tablesorter-jui select.tablesorter-filter {
134
135
  width: 98%;
135
136
  height: auto;
136
137
  margin: 0;
@@ -163,7 +163,8 @@ Metro Dark Theme
163
163
  filter: alpha(opacity=0);
164
164
  }
165
165
  /* filters */
166
- .tablesorter-metro-dark .tablesorter-filter {
166
+ .tablesorter-metro-dark input.tablesorter-filter,
167
+ .tablesorter-metro-dark select.tablesorter-filter {
167
168
  width: 95%;
168
169
  height: auto;
169
170
  margin: 4px;
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jquery-tablesorter
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.13.3
4
+ version: 1.13.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jun Lin
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-11-10 00:00:00.000000000 Z
12
+ date: 2014-12-23 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: railties
@@ -150,7 +150,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
150
150
  version: '0'
151
151
  requirements: []
152
152
  rubyforge_project:
153
- rubygems_version: 2.4.2
153
+ rubygems_version: 2.4.3
154
154
  signing_key:
155
155
  specification_version: 4
156
156
  summary: Simple integration of jquery-tablesorter (Mottie's fork) into the Rails asset