jquery-tablesorter 1.12.1 → 1.12.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -1
- data/lib/jquery-tablesorter/version.rb +1 -1
- data/vendor/assets/javascripts/jquery-tablesorter/addons/pager/jquery.tablesorter.pager.js +8 -7
- data/vendor/assets/javascripts/jquery-tablesorter/jquery.tablesorter.js +3 -3
- data/vendor/assets/javascripts/jquery-tablesorter/jquery.tablesorter.widgets-filter-formatter.js +7 -2
- data/vendor/assets/javascripts/jquery-tablesorter/jquery.tablesorter.widgets.js +12 -8
- data/vendor/assets/javascripts/jquery-tablesorter/widgets/widget-pager.js +9 -8
- data/vendor/assets/javascripts/jquery-tablesorter/widgets/widget-print.js +6 -5
- data/vendor/assets/javascripts/jquery-tablesorter/widgets/widget-scroller.js +52 -35
- data/vendor/assets/stylesheets/jquery-tablesorter/theme.bootstrap.css +2 -4
- data/vendor/assets/stylesheets/jquery-tablesorter/theme.bootstrap_2.css +7 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9a9fef9e55fa0f429cfc6e395a74cb7409b0caae
|
4
|
+
data.tar.gz: f0f56588cd17f5cc605031f94f2e2032980781b9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 40578fd063f0ecb0b276b5ef7eafbe2ece5f1320b3b137a4ecb5337c5f38f4538cdeb2b6942cc9aff6ec3b947fe48da85e76c8e9ef47f8eef134e2a4ca49a137
|
7
|
+
data.tar.gz: c332bbf0a7f920f2889ceac65817b5dcbca4563234cb1e8b3fa559d070a5bde09cf723f0d6e54cd3d0440261a313d26b9c763c5388c65202d1ccd31442d17d7b
|
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.17.
|
7
|
+
Current tablesorter version: 2.17.2 (6/18/2014), [documentation]
|
8
8
|
|
9
9
|
Any issue associated with the js/css files, please report to [Mottie's fork].
|
10
10
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
/*!
|
2
2
|
* tablesorter pager plugin
|
3
|
-
* updated
|
3
|
+
* updated 6/18/2014 (v2.17.2)
|
4
4
|
*/
|
5
5
|
/*jshint browser:true, jquery:true, unused:false */
|
6
6
|
;(function($) {
|
@@ -221,7 +221,7 @@
|
|
221
221
|
var i,
|
222
222
|
lastIndex = 0,
|
223
223
|
c = table.config,
|
224
|
-
rows = c.$tbodies.eq(0).children(),
|
224
|
+
rows = c.$tbodies.eq(0).children('tr'),
|
225
225
|
l = rows.length,
|
226
226
|
s = ( p.page * p.size ),
|
227
227
|
e = s + p.size,
|
@@ -289,7 +289,7 @@
|
|
289
289
|
exception === 'timeout' ? 'Time out error' :
|
290
290
|
exception === 'abort' ? 'Ajax Request aborted' :
|
291
291
|
'Uncaught error: ' + xhr.statusText + ' [' + xhr.status + ']' );
|
292
|
-
c.$tbodies.eq(0).detach();
|
292
|
+
c.$tbodies.eq(0).children().detach();
|
293
293
|
p.totalRows = 0;
|
294
294
|
} else {
|
295
295
|
// process ajax object
|
@@ -311,7 +311,8 @@
|
|
311
311
|
if (d instanceof jQuery) {
|
312
312
|
if (p.processAjaxOnInit) {
|
313
313
|
// append jQuery object
|
314
|
-
c.$tbodies.eq(0).
|
314
|
+
c.$tbodies.eq(0).children().detach();
|
315
|
+
c.$tbodies.eq(0).append(d);
|
315
316
|
}
|
316
317
|
} else if (l) {
|
317
318
|
// build table from array
|
@@ -332,7 +333,7 @@
|
|
332
333
|
// only add new header text if the length matches
|
333
334
|
if ( th && th.length === hl ) {
|
334
335
|
hsh = $t.hasClass('hasStickyHeaders');
|
335
|
-
$sh = hsh ? c.widgetOptions.$sticky.children('thead:first').children().children() : '';
|
336
|
+
$sh = hsh ? c.widgetOptions.$sticky.children('thead:first').children('tr').children() : '';
|
336
337
|
$f = $t.find('tfoot tr:first').children();
|
337
338
|
// don't change td headers (may contain pager)
|
338
339
|
c.$headers.filter('th').each(function(j){
|
@@ -655,7 +656,7 @@
|
|
655
656
|
p = c.pager;
|
656
657
|
if ( !p.ajax ) {
|
657
658
|
c.rowsCopy = rows;
|
658
|
-
p.totalRows = p.countChildRows ? c.$tbodies.eq(0).children().length : rows.length;
|
659
|
+
p.totalRows = p.countChildRows ? c.$tbodies.eq(0).children('tr').length : rows.length;
|
659
660
|
p.size = $.data(table, 'pagerLastSize') || p.size || 10;
|
660
661
|
p.totalPages = Math.ceil( p.totalRows / p.size );
|
661
662
|
renderTable(table, rows, p);
|
@@ -730,7 +731,7 @@
|
|
730
731
|
.bind('update updateRows updateAll addRows '.split(' ').join('.pager '), function(e){
|
731
732
|
e.stopPropagation();
|
732
733
|
fixHeight(table, p);
|
733
|
-
var $rows = c.$tbodies.eq(0).children();
|
734
|
+
var $rows = c.$tbodies.eq(0).children('tr');
|
734
735
|
p.totalRows = $rows.length - ( p.countChildRows ? 0 : $rows.filter('.' + c.cssChildRow).length );
|
735
736
|
p.totalPages = Math.ceil( p.totalRows / p.size );
|
736
737
|
updatePageDisplay(table, p);
|
@@ -1,5 +1,5 @@
|
|
1
1
|
/**!
|
2
|
-
* TableSorter 2.17.
|
2
|
+
* TableSorter 2.17.2 - 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.17.
|
27
|
+
ts.version = "2.17.2";
|
28
28
|
|
29
29
|
ts.parsers = [];
|
30
30
|
ts.widgets = [];
|
@@ -1205,7 +1205,7 @@
|
|
1205
1205
|
};
|
1206
1206
|
|
1207
1207
|
ts.clearTableBody = function(table) {
|
1208
|
-
$(table)[0].config.$tbodies.detach();
|
1208
|
+
$(table)[0].config.$tbodies.children().detach();
|
1209
1209
|
};
|
1210
1210
|
|
1211
1211
|
ts.bindEvents = function(table, $headers, core){
|
data/vendor/assets/javascripts/jquery-tablesorter/jquery.tablesorter.widgets-filter-formatter.js
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
/*! Filter widget formatter functions - updated
|
1
|
+
/*! Filter widget formatter functions - updated 6/18/2014 (v2.17.2)
|
2
2
|
* requires: tableSorter 2.15+ and jQuery 1.4.3+
|
3
3
|
*
|
4
4
|
* uiSpinner (jQuery UI spinner)
|
@@ -574,7 +574,7 @@ tsff = ts.filterFormatter = {
|
|
574
574
|
} else {
|
575
575
|
num = (tsff.updateCompare($cell, $input, o)[1]).toString() || '';
|
576
576
|
// differeniate 1388556000000 from 1/1/2014 using \d{5} regex
|
577
|
-
num = num !== '' ? /\d{5}/g.test(num) ? Number(num) : num || '' : '';
|
577
|
+
num = num !== '' ? /\d{5}/g.test(num) ? new Date(Number(num)) : num || '' : '';
|
578
578
|
}
|
579
579
|
$cell.add($shcell).find('.date').datepicker( 'setDate', num || null );
|
580
580
|
setTimeout(function(){
|
@@ -718,6 +718,11 @@ tsff = ts.filterFormatter = {
|
|
718
718
|
// less than date (from date empty)
|
719
719
|
to = val.replace(/<=/, '') || '';
|
720
720
|
}
|
721
|
+
|
722
|
+
// differeniate 1388556000000 from 1/1/2014 using \d{5} regex
|
723
|
+
from = from !== '' ? /\d{5}/g.test(from) ? new Date(Number(from)) : from || '' : '';
|
724
|
+
to = to !== '' ? /\d{5}/g.test(to) ? new Date(Number(to)) : to || '' : '';
|
725
|
+
|
721
726
|
$cell.add($shcell).find('.dateFrom').datepicker('setDate', from || null);
|
722
727
|
$cell.add($shcell).find('.dateTo').datepicker('setDate', to || null);
|
723
728
|
// give datepicker time to process
|
@@ -1,4 +1,4 @@
|
|
1
|
-
/*! tableSorter 2.16+ widgets - updated
|
1
|
+
/*! tableSorter 2.16+ widgets - updated 6/18/2014 (v2.17.2)
|
2
2
|
*
|
3
3
|
* Column Styles
|
4
4
|
* Column Filters
|
@@ -681,13 +681,16 @@ ts.filter = {
|
|
681
681
|
filters = ts.filter.setDefaults(table, c, wo) || [];
|
682
682
|
if (filters.length) {
|
683
683
|
ts.setFilters(table, filters, true);
|
684
|
+
// ts.filter.checkFilters(table, filters);
|
684
685
|
}
|
685
686
|
c.$table.trigger('filterFomatterUpdate');
|
686
|
-
|
687
|
+
if (!wo.filter_initialized) {
|
688
|
+
// filter widget initialized
|
689
|
+
wo.filter_initialized = true;
|
690
|
+
c.$table.trigger('filterInit');
|
691
|
+
}
|
687
692
|
});
|
688
|
-
|
689
|
-
wo.filter_initialized = true;
|
690
|
-
c.$table.trigger('filterInit');
|
693
|
+
|
691
694
|
},
|
692
695
|
setDefaults: function(table, c, wo) {
|
693
696
|
var isArray, saved, indx,
|
@@ -820,6 +823,7 @@ ts.filter = {
|
|
820
823
|
// add filter array back into inputs
|
821
824
|
if (filterArray) {
|
822
825
|
ts.setFilters( table, filters, false, skipFirst !== true );
|
826
|
+
if (!wo.filter_initialized) { c.lastCombinedFilter = ''; }
|
823
827
|
}
|
824
828
|
if (wo.filter_hideFilters) {
|
825
829
|
// show/hide filter row as needed
|
@@ -834,7 +838,7 @@ ts.filter = {
|
|
834
838
|
c.lastCombinedFilter = null;
|
835
839
|
c.lastSearch = [];
|
836
840
|
}
|
837
|
-
c.$table.trigger('filterStart', [filters]);
|
841
|
+
if (wo.filter_initialized) { c.$table.trigger('filterStart', [filters]); }
|
838
842
|
if (c.showProcessing) {
|
839
843
|
// give it time for the processing icon to kick in
|
840
844
|
setTimeout(function() {
|
@@ -1074,7 +1078,7 @@ ts.filter = {
|
|
1074
1078
|
if (c.debug) {
|
1075
1079
|
ts.benchmark("Completed filter widget search", time);
|
1076
1080
|
}
|
1077
|
-
c.$table.trigger('filterEnd');
|
1081
|
+
if (wo.filter_initialized) { c.$table.trigger('filterEnd'); }
|
1078
1082
|
setTimeout(function(){
|
1079
1083
|
c.$table.trigger('applyWidgets'); // make sure zebra widget is applied
|
1080
1084
|
}, 0);
|
@@ -1116,7 +1120,7 @@ ts.filter = {
|
|
1116
1120
|
$.each(arry, function(i, v){
|
1117
1121
|
// parse array data using set column parser; this DOES NOT pass the original
|
1118
1122
|
// table cell to the parser format function
|
1119
|
-
parsed.push({ t : v, p : c.parsers && c.parsers[column].format( v, table, [], column )
|
1123
|
+
parsed.push({ t : v, p : c.parsers && c.parsers[column].format( v, table, [], column ) });
|
1120
1124
|
});
|
1121
1125
|
|
1122
1126
|
// sort parsed select options
|
@@ -1,4 +1,4 @@
|
|
1
|
-
/* Pager widget (beta) for TableSorter
|
1
|
+
/* Pager widget (beta) for TableSorter 6/18/2014 (v2.17.2) */
|
2
2
|
/*jshint browser:true, jquery:true, unused:false */
|
3
3
|
;(function($){
|
4
4
|
"use strict";
|
@@ -153,7 +153,7 @@ tsp = ts.pager = {
|
|
153
153
|
p.$goto = p.$container.find(s.goto);
|
154
154
|
// page size selector
|
155
155
|
p.$size = p.$container.find(s.pageSize);
|
156
|
-
p.totalRows = c.$tbodies.eq(0).children().length;
|
156
|
+
p.totalRows = c.$tbodies.eq(0).children('tr').length;
|
157
157
|
p.oldAjaxSuccess = p.oldAjaxSuccess || wo.pager_ajaxObject.success;
|
158
158
|
c.appender = tsp.appender;
|
159
159
|
if (ts.filter && $.inArray('filter', c.widgets) >= 0) {
|
@@ -247,7 +247,7 @@ tsp = ts.pager = {
|
|
247
247
|
.on('update updateRows updateAll addRows '.split(' ').join('.pager '), function(e){
|
248
248
|
e.stopPropagation();
|
249
249
|
tsp.fixHeight(table, c);
|
250
|
-
var $rows = c.$tbodies.eq(0).children();
|
250
|
+
var $rows = c.$tbodies.eq(0).children('tr');
|
251
251
|
p.totalRows = $rows.length - ( c.widgetOptions.pager_countChildRows ? 0 : $rows.filter('.' + c.cssChildRow).length );
|
252
252
|
p.totalPages = Math.ceil( p.totalRows / p.size );
|
253
253
|
tsp.updatePageDisplay(table, c);
|
@@ -428,7 +428,7 @@ tsp = ts.pager = {
|
|
428
428
|
lastIndex = 0,
|
429
429
|
p = c.pager,
|
430
430
|
wo = c.widgetOptions,
|
431
|
-
rows = c.$tbodies.eq(0).children(),
|
431
|
+
rows = c.$tbodies.eq(0).children('tr'),
|
432
432
|
l = rows.length,
|
433
433
|
s = ( p.page * p.size ),
|
434
434
|
e = s + p.size,
|
@@ -491,7 +491,7 @@ tsp = ts.pager = {
|
|
491
491
|
ts.log('Ajax Error', xhr, exception);
|
492
492
|
}
|
493
493
|
ts.showError(table, exception.message + ' (' + xhr.status + ')');
|
494
|
-
c.$tbodies.eq(0).detach();
|
494
|
+
c.$tbodies.eq(0).children().detach();
|
495
495
|
p.totalRows = 0;
|
496
496
|
} else {
|
497
497
|
// process ajax object
|
@@ -513,7 +513,8 @@ tsp = ts.pager = {
|
|
513
513
|
if (d instanceof jQuery) {
|
514
514
|
if (wo.pager_processAjaxOnInit) {
|
515
515
|
// append jQuery object
|
516
|
-
c.$tbodies.eq(0).
|
516
|
+
c.$tbodies.eq(0).children().detach();
|
517
|
+
c.$tbodies.eq(0).append(d);
|
517
518
|
}
|
518
519
|
} else if (l) {
|
519
520
|
// build table from array
|
@@ -534,7 +535,7 @@ tsp = ts.pager = {
|
|
534
535
|
// only add new header text if the length matches
|
535
536
|
if ( th && th.length === hl ) {
|
536
537
|
hsh = $t.hasClass('hasStickyHeaders');
|
537
|
-
$sh = hsh ? wo.$sticky.children('thead:first').children().children() : '';
|
538
|
+
$sh = hsh ? wo.$sticky.children('thead:first').children('tr').children() : '';
|
538
539
|
$f = $t.find('tfoot tr:first').children();
|
539
540
|
// don't change td headers (may contain pager)
|
540
541
|
c.$headers.filter('th').each(function(j){
|
@@ -862,7 +863,7 @@ tsp = ts.pager = {
|
|
862
863
|
p = c.pager;
|
863
864
|
if ( !p.ajax ) {
|
864
865
|
c.rowsCopy = rows;
|
865
|
-
p.totalRows = c.widgetOptions.pager_countChildRows ? c.$tbodies.eq(0).children().length : rows.length;
|
866
|
+
p.totalRows = c.widgetOptions.pager_countChildRows ? c.$tbodies.eq(0).children('tr').length : rows.length;
|
866
867
|
p.size = $.data(table, 'pagerLastSize') || p.size || wo.pager_size || 10;
|
867
868
|
p.totalPages = Math.ceil( p.totalRows / p.size );
|
868
869
|
tsp.moveToPage(table, p, true);
|
@@ -1,5 +1,5 @@
|
|
1
|
-
/* Print widget (beta) for TableSorter
|
2
|
-
* Requires tablesorter v2.8+ and jQuery 1.
|
1
|
+
/* Print widget (beta) for TableSorter 6/18/2014 (v2.17.2)
|
2
|
+
* Requires tablesorter v2.8+ and jQuery 1.2.6+
|
3
3
|
*/
|
4
4
|
/*jshint browser:true, jquery:true, unused:false */
|
5
5
|
/*global jQuery: false */
|
@@ -15,8 +15,8 @@ printTable = ts.printTable = {
|
|
15
15
|
|
16
16
|
init : function(c) {
|
17
17
|
c.$table
|
18
|
-
.
|
19
|
-
.
|
18
|
+
.unbind(printTable.event)
|
19
|
+
.bind(printTable.event, function(){
|
20
20
|
// explicitly use table.config.widgetOptions because we want
|
21
21
|
// the most up-to-date values; not the "wo" from initialization
|
22
22
|
printTable.process(c, c.widgetOptions);
|
@@ -82,8 +82,9 @@ printTable = ts.printTable = {
|
|
82
82
|
'<style>' + style + '</style>' +
|
83
83
|
'</head><body>' + data + '</body></html>'
|
84
84
|
);
|
85
|
-
generator.print();
|
86
85
|
generator.document.close();
|
86
|
+
generator.print();
|
87
|
+
generator.close();
|
87
88
|
return true;
|
88
89
|
},
|
89
90
|
|
@@ -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
|
13
|
+
Version 2.0 - modified by Rob Garrison 4/12/2013; updated 6/18/2014 (v2.17.2)
|
14
14
|
Requires jQuery v1.7+
|
15
15
|
Requires the tablesorter plugin, v2.8+, available at http://mottie.github.com/tablesorter/docs/
|
16
16
|
|
@@ -22,7 +22,7 @@
|
|
22
22
|
widgets: ['zebra', 'scroller'],
|
23
23
|
widgetOptions : {
|
24
24
|
scroller_height : 300, // height of scroll window
|
25
|
-
scroller_barWidth :
|
25
|
+
scroller_barWidth : 18, // scroll bar width
|
26
26
|
scroller_jumpToHeader : true, // header snap to browser top when scrolling the tbody
|
27
27
|
scroller_idPrefix : 's_' // cloned thead id prefix (random number added to end)
|
28
28
|
}
|
@@ -53,8 +53,12 @@ ts.window_resize = function(){
|
|
53
53
|
// Add extra scroller css
|
54
54
|
$(function(){
|
55
55
|
var s = '<style>' +
|
56
|
+
'.tablesorter-scroller-reset { width: auto !important; } ' +
|
57
|
+
'.tablesorter-scroller { text-align: left; overflow: hidden; }' +
|
58
|
+
'.tablesorter-scroller-header { overflow: hidden; }' +
|
56
59
|
'.tablesorter-scroller-header table.tablesorter { margin-bottom: 0; }' +
|
57
|
-
'.tablesorter-scroller-table
|
60
|
+
'.tablesorter-scroller-table { overflow-y: scroll; }' +
|
61
|
+
'.tablesorter-scroller-table table.tablesorter { margin-top: 0; overflow: scroll; } ' +
|
58
62
|
'.tablesorter-scroller-table .tablesorter-filter-row, .tablesorter-scroller-table tfoot { display: none; }' +
|
59
63
|
'.tablesorter-scroller-table table.tablesorter thead tr.tablesorter-headerRow * {' +
|
60
64
|
'line-height:0;height:0;border:none;background-image:none;padding-top:0;padding-bottom:0;margin-top:0;margin-bottom:0;overflow:hidden;' +
|
@@ -67,21 +71,21 @@ ts.addWidget({
|
|
67
71
|
priority: 60, // run after the filter widget
|
68
72
|
options: {
|
69
73
|
scroller_height : 300,
|
70
|
-
scroller_barWidth :
|
74
|
+
scroller_barWidth : 18,
|
71
75
|
scroller_jumpToHeader: true,
|
72
76
|
scroller_idPrefix : 's_'
|
73
77
|
},
|
74
78
|
init: function(table, thisWidget, c, wo){
|
75
79
|
var $win = $(window);
|
76
|
-
//Setup window.resizeEnd event
|
80
|
+
// Setup window.resizeEnd event
|
77
81
|
$win
|
78
82
|
.bind('resize', ts.window_resize)
|
79
83
|
.bind('resizeEnd', function() {
|
80
84
|
// init is run before format, so scroller_resizeWidth
|
81
85
|
// won't be defined within the "c" or "wo" parameters
|
82
86
|
if (typeof table.config.widgetOptions.scroller_resizeWidth === 'function') {
|
83
|
-
//IE calls resize when you modify content, so we have to unbind the resize event
|
84
|
-
//so we don't end up with an infinite loop. we can rebind after we're done.
|
87
|
+
// IE calls resize when you modify content, so we have to unbind the resize event
|
88
|
+
// so we don't end up with an infinite loop. we can rebind after we're done.
|
85
89
|
$win.unbind('resize', ts.window_resize);
|
86
90
|
table.config.widgetOptions.scroller_resizeWidth();
|
87
91
|
$win.bind('resize', ts.window_resize);
|
@@ -97,11 +101,11 @@ ts.addWidget({
|
|
97
101
|
h = wo.scroller_height || 300;
|
98
102
|
t = $tbl.find('tbody').height();
|
99
103
|
if (t !== 0 && h > t) { h = t + 10; } // Table is less than h px
|
100
|
-
id = wo.scroller_id = wo.scroller_idPrefix + Math.floor(Math.random() *
|
104
|
+
id = wo.scroller_id = wo.scroller_idPrefix + Math.floor(Math.random() * 1001);
|
101
105
|
|
102
106
|
$hdr = $('<table class="' + $tbl.attr('class') + '" cellpadding=0 cellspacing=0><thead>' + $tbl.find('thead:first').html() + '</thead></table>');
|
103
107
|
$tbl
|
104
|
-
.wrap('<div id="' + id + '" class="tablesorter-scroller"
|
108
|
+
.wrap('<div id="' + id + '" class="tablesorter-scroller" />')
|
105
109
|
.before($hdr)
|
106
110
|
.find('.tablesorter-filter-row').addClass('hideme');
|
107
111
|
|
@@ -109,7 +113,7 @@ ts.addWidget({
|
|
109
113
|
.wrap('<div class="tablesorter-scroller-header" style="width:' + $tbl.width() + ';" />')
|
110
114
|
.find('.' + ts.css.header);
|
111
115
|
|
112
|
-
$tbl.wrap('<div class="tablesorter-scroller-table" style="height:' + h + 'px;width:' + $tbl.width() + ';
|
116
|
+
$tbl.wrap('<div class="tablesorter-scroller-table" style="height:' + h + 'px;width:' + $tbl.width() + ';" />');
|
113
117
|
|
114
118
|
// make scroller header sortable
|
115
119
|
ts.bindEvents(table, $cells);
|
@@ -120,46 +124,57 @@ ts.addWidget({
|
|
120
124
|
}
|
121
125
|
|
122
126
|
resize = function(){
|
123
|
-
var d,
|
124
|
-
//Hide other scrollers so we can resize
|
127
|
+
var d, b, $h, $th, w,
|
128
|
+
// Hide other scrollers so we can resize
|
125
129
|
$div = $('div.scroller[id != "' + id + '"]').hide();
|
126
130
|
|
127
131
|
$tbl.find('thead').show();
|
128
132
|
|
129
|
-
//Reset sizes so parent can resize.
|
130
|
-
$hdr
|
131
|
-
.width(0)
|
132
|
-
.parent().width(0)
|
133
|
-
.find('th,td').width(0);
|
134
|
-
|
133
|
+
// Reset sizes so parent can resize.
|
135
134
|
$tbl
|
136
|
-
.
|
137
|
-
.find('thead').find('
|
135
|
+
.addClass('tablesorter-scroller-reset')
|
136
|
+
.find('thead').find('.tablesorter-header-inner').addClass('tablesorter-scroller-reset');
|
138
137
|
d = $tbl.parent();
|
139
|
-
d.
|
138
|
+
d.addClass('tablesorter-scroller-reset');
|
140
139
|
|
141
140
|
d.parent().trigger('resize');
|
141
|
+
|
142
142
|
// Shrink a bit to accommodate scrollbar
|
143
143
|
d.width( d.parent().innerWidth() - ( d.parent().hasScrollBar() ? wo.scroller_barWidth : 0 ) );
|
144
|
-
|
145
|
-
$tbl.width(
|
146
|
-
$
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
144
|
+
w = d.innerWidth() - ( d.hasScrollBar() ? wo.scroller_barWidth : 0 );
|
145
|
+
$tbl.width( w );
|
146
|
+
$hdr.width( w );
|
147
|
+
$hdr.parent().width( w );
|
148
|
+
|
149
|
+
$tbl.closest('.tablesorter-scroller').find('.tablesorter-scroller-reset').removeClass('tablesorter-scroller-reset');
|
150
|
+
|
151
|
+
// include left & right border widths
|
152
|
+
b = parseInt( $tbl.css('border-left-width'), 10 ) + parseInt( $tbl.css('border-right-width'), 10 );
|
153
|
+
$h = $hdr.find('thead').children().children();
|
154
|
+
|
155
|
+
// adjust cloned header to match original table width - includes wrappers, headers, and header inner div
|
156
|
+
$tbl.find('thead').children().children().each(function(i, c){
|
157
|
+
$th = $(c).find('.tablesorter-header-inner');
|
158
|
+
if ($th.length) {
|
159
|
+
// I have no idea why this is in here anymore LOL
|
160
|
+
w = parseInt( $th.css('min-width').replace('auto', '0').replace(/(px|em)/, ''), 10 );
|
161
|
+
if ( $th.width() < w ) {
|
162
|
+
$th.width(w);
|
163
|
+
} else {
|
164
|
+
w = $th.width();
|
165
|
+
}
|
166
|
+
$h.eq(i)
|
167
|
+
.find('.tablesorter-header-inner').width(w - b)
|
168
|
+
// set inner width first
|
169
|
+
.parent()
|
170
|
+
.width( $th.parent().width() - b );
|
154
171
|
}
|
155
|
-
$hdr.find('th,td').eq(i).width(w);
|
156
172
|
});
|
157
173
|
|
158
|
-
$hdr.width($tbl.innerWidth());
|
159
174
|
$div.show();
|
160
175
|
};
|
161
176
|
|
162
|
-
//Expose to external calls
|
177
|
+
// Expose to external calls
|
163
178
|
wo.scroller_resizeWidth = resize;
|
164
179
|
|
165
180
|
resize();
|
@@ -168,6 +183,7 @@ ts.addWidget({
|
|
168
183
|
c.isScrolling = true;
|
169
184
|
|
170
185
|
t = $tbl.parent().parent().height();
|
186
|
+
|
171
187
|
// The header will always jump into view if scrolling the table body
|
172
188
|
$tbl.parent().bind('scroll', function(){
|
173
189
|
if (wo.scroller_jumpToHeader) {
|
@@ -176,11 +192,12 @@ ts.addWidget({
|
|
176
192
|
$win.scrollTop( $hdr.offset().top );
|
177
193
|
}
|
178
194
|
}
|
195
|
+
$hdr.parent().scrollLeft( $(this).scrollLeft() );
|
179
196
|
});
|
180
197
|
|
181
198
|
}
|
182
199
|
|
183
|
-
//Sorting, so scroll to top
|
200
|
+
// Sorting, so scroll to top
|
184
201
|
$tbl.parent().animate({ scrollTop: 0 }, 'fast');
|
185
202
|
|
186
203
|
},
|
@@ -43,11 +43,10 @@
|
|
43
43
|
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAAOCAMAAADOvxanAAAAVFBMVEUAAABCQkJZWVkZGRnJyckgICAZGRkZGRn8/PweHh4dHR0aGhoaGhpUVFQbGxvQ0NDc3NxMTExSUlIbGxvr6+s4ODhKSkogICAtLS00NDQzMzMnJydSEPrQAAAAGHRSTlMA1ssZRLgdAQbDyisqsZo8QdXUq0r9xPepSRwiAAAAX0lEQVQI13XHSQKAIAwEwQAKxn13Ev7/T2Pu9qmarJKPXIicI4PH4hxaKNrhm2S8bJK5h4YzKHrzJNtK6yYT/TdXzpS5zuYg4MSQYF6i4IHExdw1UVRi05HPrrvT53a+qyMFC9t04gcAAAAASUVORK5CYII=);
|
44
44
|
}
|
45
45
|
|
46
|
-
/* white unsorted icon
|
47
|
-
.tablesorter-bootstrap .bootstrap-icon-unsorted {
|
46
|
+
/* white unsorted icon */
|
47
|
+
.tablesorter-bootstrap .icon-white.bootstrap-icon-unsorted {
|
48
48
|
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAAOBAMAAAALT/umAAAAKlBMVEUAAAD///////////////////////////////////////////////////+Gu8ovAAAADXRSTlMA4EXKBtQqvR0+sxmalc142gAAAFdJREFUCNdjYGDoamAAAjZbMxCVfvd6AgMDd+3du9UMDKx3hWSvMjBwXZww8RYDGuC53NB8h4GB8a617UUGBs7Yu3cjGRhYVO9eVQFKOskKOQApFmUgBwBZ+xXRTttNdAAAAABJRU5ErkJggg==);
|
49
49
|
}
|
50
|
-
*/
|
51
50
|
|
52
51
|
/* since bootstrap (table-striped) uses nth-child(), we just use this to add a zebra stripe color */
|
53
52
|
.tablesorter-bootstrap > tbody > tr.odd > td,
|
@@ -80,7 +79,6 @@
|
|
80
79
|
/* filter widget */
|
81
80
|
.tablesorter-bootstrap .tablesorter-filter-row .tablesorter-filter {
|
82
81
|
width: 98%;
|
83
|
-
height: auto;
|
84
82
|
margin: 0 auto;
|
85
83
|
padding: 4px 6px;
|
86
84
|
color: #333;
|
@@ -48,10 +48,17 @@
|
|
48
48
|
line-height: 14px;
|
49
49
|
display: inline-block;
|
50
50
|
}
|
51
|
+
|
52
|
+
/* black unsorted icon */
|
51
53
|
.tablesorter-bootstrap .bootstrap-icon-unsorted {
|
52
54
|
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAAOCAYAAAD5YeaVAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAWVJREFUeNqUUL9Lw2AUTGP8mqGlpBQkNeCSRcckEBcHq1jImMElToKuDvpHFMGhU0BQcHBwLji6CE1B4uB/INQsDi4d2jQ/fPeZxo764OV6915f7lLJ81xot9tCURXqdVEUr7IsO6ffH9Q5BlEUCaLwWxWqTcbYnaIoh0Dw4gAvcWlxq1qt9hqNxg6hUGAP+uIPUrGs0qXLer2+v/pTX6QpxLtkc2U2m53ACb8sSdIDXerSEms2m6+DweAICA4d89KGbduf9MpEVdXQ9/2LVqv1CASHjjn3iq/x1xKFfxQPqGnada1W86bT6SiO42OS3qk3KPStLMvbk8nkfjwen/LLuq6blFymMB0KdUPSGhAcOualjX6/f0bCiC7NaWGPQr0BwaFjzn0gYJqmLAiCA8/zni3LmhuGkQPBoWPOPwQeaPIqD4fDruu6L6Zp5kBw6IudchmdJAkLw3DXcZwnIPjy/FuAAQCiqqWWCAFKcwAAAABJRU5ErkJggg==);
|
53
55
|
}
|
54
56
|
|
57
|
+
/* white unsorted icon */
|
58
|
+
.tablesorter-bootstrap .icon-white.bootstrap-icon-unsorted {
|
59
|
+
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAAOBAMAAAALT/umAAAAKlBMVEUAAAD///////////////////////////////////////////////////+Gu8ovAAAADXRSTlMA4EXKBtQqvR0+sxmalc142gAAAFdJREFUCNdjYGDoamAAAjZbMxCVfvd6AgMDd+3du9UMDKx3hWSvMjBwXZww8RYDGuC53NB8h4GB8a617UUGBs7Yu3cjGRhYVO9eVQFKOskKOQApFmUgBwBZ+xXRTttNdAAAAABJRU5ErkJggg==);
|
60
|
+
}
|
61
|
+
|
55
62
|
/* since bootstrap (table-striped) uses nth-child(), we just use this to add a zebra stripe color */
|
56
63
|
.tablesorter-bootstrap tr.odd td {
|
57
64
|
background-color: #f9f9f9;
|
@@ -79,7 +86,6 @@ caption {
|
|
79
86
|
/* filter widget */
|
80
87
|
.tablesorter-bootstrap .tablesorter-filter-row .tablesorter-filter {
|
81
88
|
width: 98%;
|
82
|
-
height: auto;
|
83
89
|
margin: 0 auto;
|
84
90
|
padding: 4px 6px;
|
85
91
|
background-color: #fff;
|
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.12.
|
4
|
+
version: 1.12.2
|
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-
|
12
|
+
date: 2014-06-19 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: railties
|