jquery-tablesorter 1.10.7 → 1.10.8
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 +4 -4
- data/README.md +2 -2
- data/Rakefile +20 -30
- data/lib/jquery-tablesorter.rb +1 -1
- data/lib/jquery-tablesorter/version.rb +1 -1
- data/vendor/assets/javascripts/jquery-tablesorter/addons/pager/jquery.tablesorter.pager.js +20 -4
- data/vendor/assets/javascripts/jquery-tablesorter/jquery.tablesorter.js +15 -10
- data/vendor/assets/javascripts/jquery-tablesorter/jquery.tablesorter.widgets.js +27 -13
- data/vendor/assets/javascripts/jquery-tablesorter/widgets/widget-columnSelector.js +7 -7
- data/vendor/assets/javascripts/jquery-tablesorter/widgets/widget-pager.js +20 -5
- data/vendor/assets/stylesheets/jquery-tablesorter/theme.black-ice.css +4 -0
- data/vendor/assets/stylesheets/jquery-tablesorter/theme.blue.css +4 -0
- data/vendor/assets/stylesheets/jquery-tablesorter/theme.bootstrap.css +4 -0
- data/vendor/assets/stylesheets/jquery-tablesorter/theme.bootstrap_2.css +4 -0
- data/vendor/assets/stylesheets/jquery-tablesorter/theme.dark.css +4 -0
- data/vendor/assets/stylesheets/jquery-tablesorter/theme.default.css +4 -0
- data/vendor/assets/stylesheets/jquery-tablesorter/theme.dropbox.css +4 -0
- data/vendor/assets/stylesheets/jquery-tablesorter/theme.green.css +4 -0
- data/vendor/assets/stylesheets/jquery-tablesorter/theme.grey.css +4 -0
- data/vendor/assets/stylesheets/jquery-tablesorter/theme.ice.css +4 -0
- data/vendor/assets/stylesheets/jquery-tablesorter/theme.jui.css +4 -0
- metadata +2 -10
- data/vendor/assets/images/jquery-tablesorter/dropbox-asc1.png +0 -0
- data/vendor/assets/images/jquery-tablesorter/dropbox-asc2.png +0 -0
- data/vendor/assets/images/jquery-tablesorter/dropbox-desc1.png +0 -0
- data/vendor/assets/images/jquery-tablesorter/dropbox-desc2.png +0 -0
- data/vendor/assets/images/jquery-tablesorter/green-asc.png +0 -0
- data/vendor/assets/images/jquery-tablesorter/green-desc.png +0 -0
- data/vendor/assets/images/jquery-tablesorter/green-header.png +0 -0
- data/vendor/assets/images/jquery-tablesorter/green-unsorted.png +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ffc506ef591e1d7e8f5274e6058dfb43a6b9f7b9
|
4
|
+
data.tar.gz: 126d7677c03b8a8f2905b0fd2accbbd0c01645e6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cf473da52e37a4960a477aa9bccee11c1f5c6b43a5df212e7af16e5eca97dd73a11aaed29651c01407605b81435a380174f83cd31fa6a6540c0905b32723f7f6
|
7
|
+
data.tar.gz: 7f4c0f0c095bf9e29973d455d713a8356fa6888464bd7f5a70ec7f73423daf3be3977b3b65d8d220bfd2c17512f1ba8744d8e2507d7e4fc84bc31cb0b2099579
|
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.15.
|
7
|
+
Current tablesorter version: 2.15.12 (3/31/2014), [documentation]
|
8
8
|
|
9
9
|
Any issue associate with the js/css files, please report to [Mottie's fork].
|
10
10
|
|
@@ -38,7 +38,7 @@ In your `application.js`
|
|
38
38
|
//= require jquery-tablesorter
|
39
39
|
```
|
40
40
|
|
41
|
-
This will require all jquery-tablesorter files (excluding addons
|
41
|
+
This will require all jquery-tablesorter files (excluding addons and extras).
|
42
42
|
|
43
43
|
Or you can include single file with:
|
44
44
|
|
data/Rakefile
CHANGED
@@ -11,60 +11,50 @@ namespace :jquery_tablesorter do
|
|
11
11
|
# javascripts
|
12
12
|
#
|
13
13
|
javascript_dir = File.join('vendor', 'assets', 'javascripts', 'jquery-tablesorter')
|
14
|
-
|
15
|
-
Dir.glob(File.join('tablesorter', 'js', '*.js')).reject{|file| file =~ /.min.js\Z/}.each do |file|
|
16
|
-
FileUtils.cp file, javascript_dir, :verbose => true
|
17
|
-
end
|
14
|
+
copy_files(Dir.glob(File.join('tablesorter', 'js', '*.js')).reject{|file| file =~ /.min.js\Z/}, javascript_dir)
|
18
15
|
|
19
16
|
# stylesheets
|
20
17
|
#
|
21
18
|
stylesheet_dir = File.join('vendor', 'assets', 'stylesheets', 'jquery-tablesorter')
|
22
|
-
|
23
|
-
Dir.glob(File.join('tablesorter', 'css', '*.css')).each do |file|
|
24
|
-
FileUtils.cp file, stylesheet_dir, :verbose => true
|
25
|
-
end
|
19
|
+
copy_files(Dir.glob(File.join('tablesorter', 'css', '*.css')), stylesheet_dir)
|
26
20
|
|
27
21
|
# images
|
28
22
|
#
|
29
23
|
images_dir = File.join('vendor', 'assets', 'images', 'jquery-tablesorter')
|
30
|
-
|
31
|
-
Dir.glob(File.join('tablesorter', 'css', 'images', '*')).each do |file|
|
32
|
-
FileUtils.cp file, images_dir, :verbose => true
|
33
|
-
end
|
24
|
+
copy_files(Dir.glob(File.join('tablesorter', 'css', 'images', '*')), images_dir)
|
34
25
|
|
35
26
|
# addons
|
36
27
|
#
|
37
28
|
## pager
|
38
|
-
pager_stylesheet_dir =
|
39
|
-
|
40
|
-
FileUtils.cp File.join('tablesorter', 'addons', 'pager', 'jquery.tablesorter.pager.css'),
|
41
|
-
pager_stylesheet_dir,
|
42
|
-
:verbose => true
|
29
|
+
pager_stylesheet_dir = File.join(stylesheet_dir, 'addons', 'pager')
|
30
|
+
copy_files([File.join('tablesorter', 'addons', 'pager', 'jquery.tablesorter.pager.css')], pager_stylesheet_dir)
|
43
31
|
|
44
32
|
pager_javascript_dir = File.join(javascript_dir, 'addons', 'pager')
|
45
|
-
|
46
|
-
FileUtils.cp File.join('tablesorter', 'addons', 'pager', 'jquery.tablesorter.pager.js'),
|
47
|
-
pager_javascript_dir,
|
48
|
-
:verbose => true
|
33
|
+
copy_files([File.join('tablesorter', 'addons', 'pager', 'jquery.tablesorter.pager.js')], pager_javascript_dir)
|
49
34
|
|
50
|
-
pager_images_dir = File.join(images_dir, 'addons', 'pager')
|
51
|
-
|
52
|
-
FileUtils.cp_r File.join('tablesorter', 'addons', 'pager', 'icons'), pager_images_dir,
|
53
|
-
:verbose => true
|
35
|
+
pager_images_dir = File.join(images_dir, 'addons', 'pager', 'icons')
|
36
|
+
copy_files(Dir.glob(File.join('tablesorter', 'addons', 'pager', 'icons', '*')), pager_images_dir)
|
54
37
|
|
55
38
|
|
56
|
-
# parsers and
|
39
|
+
# parsers, widgets and extras
|
57
40
|
#
|
58
41
|
%w(parsers widgets extras).each do |folder|
|
59
42
|
folder_javascript_dir = File.join(javascript_dir, folder)
|
60
|
-
|
61
|
-
|
62
|
-
FileUtils.cp file, folder_javascript_dir, :verbose => true
|
63
|
-
end
|
43
|
+
files = Dir.glob(File.join('tablesorter', 'js', folder, '*.js')).reject{|file| file =~ /.min.js\Z/}
|
44
|
+
copy_files(files, folder_javascript_dir)
|
64
45
|
end
|
65
46
|
|
66
47
|
end
|
67
48
|
|
49
|
+
def copy_files(files, target_dir)
|
50
|
+
FileUtils.mkdir_p(target_dir)
|
51
|
+
FileUtils.rm_rf("#{target_dir}/.", :secure => true)
|
52
|
+
|
53
|
+
files.each do |file|
|
54
|
+
FileUtils.cp(file, target_dir, :verbose => true)
|
55
|
+
end
|
56
|
+
end
|
57
|
+
|
68
58
|
desc 'Sanitize image paths'
|
69
59
|
task :sanitize_image_paths do
|
70
60
|
Dir.glob(File.join('vendor', 'assets', 'stylesheets', 'jquery-tablesorter', '*.css')).each do |file_path|
|
data/lib/jquery-tablesorter.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/*!
|
2
2
|
* tablesorter pager plugin
|
3
|
-
* updated 3/
|
3
|
+
* updated 3/31/2014 (v2.15.12)
|
4
4
|
*/
|
5
5
|
/*jshint browser:true, jquery:true, unused:false */
|
6
6
|
;(function($) {
|
@@ -207,6 +207,7 @@
|
|
207
207
|
hideRows = function(table, p){
|
208
208
|
if (!p.ajaxUrl) {
|
209
209
|
var i,
|
210
|
+
lastIndex = 0,
|
210
211
|
c = table.config,
|
211
212
|
rows = c.$tbodies.eq(0).children(),
|
212
213
|
l = rows.length,
|
@@ -216,9 +217,23 @@
|
|
216
217
|
j = 0; // size counter
|
217
218
|
for ( i = 0; i < l; i++ ){
|
218
219
|
if ( !rows[i].className.match(f) ) {
|
219
|
-
|
220
|
-
|
221
|
-
|
220
|
+
if (j === s && rows[i].className.match(c.cssChildRow)) {
|
221
|
+
// hide child rows @ start of pager (if already visible)
|
222
|
+
rows[i].style.display = 'none';
|
223
|
+
} else {
|
224
|
+
rows[i].style.display = ( j >= s && j < e ) ? '' : 'none';
|
225
|
+
// don't count child rows
|
226
|
+
j += rows[i].className.match(c.cssChildRow + '|' + c.selectorRemove.slice(1)) && !p.countChildRows ? 0 : 1;
|
227
|
+
if ( j === e && rows[i].style.display !== 'none' && rows[i].className.match(ts.css.cssHasChild) ) {
|
228
|
+
lastIndex = i;
|
229
|
+
}
|
230
|
+
}
|
231
|
+
}
|
232
|
+
}
|
233
|
+
// add any attached child rows to last row of pager. Fixes part of issue #396
|
234
|
+
if ( lastIndex > 0 && rows[lastIndex].className.match(ts.css.cssHasChild) ) {
|
235
|
+
while ( ++lastIndex < l && rows[lastIndex].className.match(c.cssChildRow) ) {
|
236
|
+
rows[lastIndex].style.display = '';
|
222
237
|
}
|
223
238
|
}
|
224
239
|
}
|
@@ -457,6 +472,7 @@
|
|
457
472
|
for ( i = s; i < e; i++ ) {
|
458
473
|
$tb.append(rows[i]);
|
459
474
|
}
|
475
|
+
|
460
476
|
ts.processTbody(table, $tb, false);
|
461
477
|
}
|
462
478
|
|
@@ -1,5 +1,5 @@
|
|
1
1
|
/**!
|
2
|
-
* TableSorter 2.15.
|
2
|
+
* TableSorter 2.15.12 - 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.15.
|
27
|
+
ts.version = "2.15.12";
|
28
28
|
|
29
29
|
ts.parsers = [];
|
30
30
|
ts.widgets = [];
|
@@ -114,6 +114,7 @@
|
|
114
114
|
// the table and MUST only contain one class name - fixes #381
|
115
115
|
ts.css = {
|
116
116
|
table : 'tablesorter',
|
117
|
+
cssHasChild: 'tablesorter-hasChildRow',
|
117
118
|
childRow : 'tablesorter-childRow',
|
118
119
|
header : 'tablesorter-header',
|
119
120
|
headerRow : 'tablesorter-headerRow',
|
@@ -291,6 +292,10 @@
|
|
291
292
|
// if this is a child row, add it to the last row's children and continue to the next row
|
292
293
|
if (c.hasClass(tc.cssChildRow)) {
|
293
294
|
tc.cache[k].row[tc.cache[k].row.length - 1] = tc.cache[k].row[tc.cache[k].row.length - 1].add(c);
|
295
|
+
// add "hasChild" class name to parent row
|
296
|
+
if (!c.prev().hasClass(tc.cssChildRow)) {
|
297
|
+
c.prev().addClass(ts.css.cssHasChild);
|
298
|
+
}
|
294
299
|
// go to the next for loop
|
295
300
|
continue;
|
296
301
|
}
|
@@ -394,7 +399,7 @@
|
|
394
399
|
for (j = 0; j < cells.length; j++) {
|
395
400
|
c = cells[j];
|
396
401
|
rowIndex = c.parentNode.rowIndex;
|
397
|
-
cellId = rowIndex + "-" + c.
|
402
|
+
cellId = rowIndex + "-" + $(c).index();
|
398
403
|
rowSpan = c.rowSpan || 1;
|
399
404
|
colSpan = c.colSpan || 1;
|
400
405
|
if (typeof(matrix[rowIndex]) === "undefined") {
|
@@ -424,7 +429,6 @@
|
|
424
429
|
}
|
425
430
|
// may not be accurate if # header columns !== # tbody columns
|
426
431
|
t.config.columns = cols + 1; // add one because it's a zero-based index
|
427
|
-
return lookup;
|
428
432
|
}
|
429
433
|
|
430
434
|
function formatSortingOrder(v) {
|
@@ -433,13 +437,15 @@
|
|
433
437
|
}
|
434
438
|
|
435
439
|
function buildHeaders(table) {
|
436
|
-
var
|
437
|
-
h, i, t, lock, time,
|
440
|
+
var ch, $t,
|
441
|
+
h, i, t, lock, time,
|
442
|
+
c = table.config;
|
438
443
|
c.headerList = [];
|
439
444
|
c.headerContent = [];
|
440
445
|
if (c.debug) {
|
441
446
|
time = new Date();
|
442
447
|
}
|
448
|
+
computeThIndexes(table);
|
443
449
|
// add icon if cssIcon option exists
|
444
450
|
i = c.cssIcon ? '<i class="' + ( c.cssIcon === ts.css.icon ? ts.css.icon : c.cssIcon + ' ' + ts.css.icon ) + '"></i>' : '';
|
445
451
|
c.$headers = $(table).find(c.selectorHeaders).each(function(index) {
|
@@ -455,8 +461,7 @@
|
|
455
461
|
$(this).html('<div class="' + ts.css.headerIn + '">' + t + '</div>'); // faster than wrapInner
|
456
462
|
|
457
463
|
if (c.onRenderHeader) { c.onRenderHeader.apply($t, [index]); }
|
458
|
-
|
459
|
-
this.column = header_index[this.parentNode.rowIndex + "-" + this.cellIndex];
|
464
|
+
this.column = parseInt( $(this).attr('data-column'), 10);
|
460
465
|
this.order = formatSortingOrder( ts.getData($t, ch, 'sortInitialOrder') || c.sortInitialOrder ) ? [1,0,2] : [0,1,2];
|
461
466
|
this.count = -1; // set to -1 because clicking on the header automatically adds one
|
462
467
|
this.lockedOrder = false;
|
@@ -829,9 +834,9 @@
|
|
829
834
|
// tbody may not exist if update is initialized while tbody is removed for processing
|
830
835
|
if ($tb.length && tbdy >= 0) {
|
831
836
|
row = $tb.eq(tbdy).find('tr').index( $row );
|
832
|
-
icell = cell.
|
837
|
+
icell = $(cell).index();
|
833
838
|
l = c.cache[tbdy].normalized[row].length - 1;
|
834
|
-
c.cache[tbdy].row[
|
839
|
+
c.cache[tbdy].row[ c.cache[tbdy].normalized[row][l] ] = $row;
|
835
840
|
c.cache[tbdy].normalized[row][icell] = c.parsers[icell].format( getElementText(table, cell, icell), table, cell, icell );
|
836
841
|
checkResort($table, resort, callback);
|
837
842
|
}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
/*! tableSorter 2.15+ widgets - updated 3/
|
1
|
+
/*! tableSorter 2.15+ widgets - updated 3/31/2014 (v2.15.12)
|
2
2
|
*
|
3
3
|
* Column Styles
|
4
4
|
* Column Filters
|
@@ -868,7 +868,7 @@ ts.filter = {
|
|
868
868
|
$rows = $tbody.children('tr').not(c.selectorRemove);
|
869
869
|
len = $rows.length;
|
870
870
|
if (combinedFilters === '' || wo.filter_serversideFiltering) {
|
871
|
-
$tbody.children().not('.' + c.cssChildRow).show()
|
871
|
+
$tbody.children().removeClass(wo.filter_filteredRow).not('.' + c.cssChildRow).show();
|
872
872
|
} else {
|
873
873
|
// optimize searching only through already filtered rows - see #313
|
874
874
|
searchFiltered = true;
|
@@ -990,13 +990,11 @@ ts.filter = {
|
|
990
990
|
showRow = (result) ? showRow : false;
|
991
991
|
}
|
992
992
|
}
|
993
|
-
$rows
|
994
|
-
|
993
|
+
$rows.eq(rowIndex)
|
994
|
+
.toggle(showRow)
|
995
|
+
.toggleClass(wo.filter_filteredRow, !showRow);
|
995
996
|
if (childRow.length) {
|
996
|
-
|
997
|
-
childRow[showRow ? 'removeClass' : 'addClass'](wo.filter_filteredRow); // see issue #396
|
998
|
-
}
|
999
|
-
childRow.toggle(showRow);
|
997
|
+
childRow.toggleClass(wo.filter_filteredRow, !showRow);
|
1000
998
|
}
|
1001
999
|
cacheIndex++;
|
1002
1000
|
}
|
@@ -1348,11 +1346,13 @@ ts.addWidget({
|
|
1348
1346
|
priority: 40,
|
1349
1347
|
options: {
|
1350
1348
|
resizable : true,
|
1351
|
-
resizable_addLastColumn : false
|
1349
|
+
resizable_addLastColumn : false,
|
1350
|
+
resizable_widths : []
|
1352
1351
|
},
|
1353
1352
|
format: function(table, c, wo) {
|
1354
1353
|
if (c.$table.hasClass('hasResizable')) { return; }
|
1355
1354
|
c.$table.addClass('hasResizable');
|
1355
|
+
ts.resizableReset(table, true); // set default widths
|
1356
1356
|
var $rows, $columns, $column, column,
|
1357
1357
|
storedSizes = {},
|
1358
1358
|
$table = c.$table,
|
@@ -1368,7 +1368,8 @@ ts.addWidget({
|
|
1368
1368
|
$target.width( storedSizes[$target.index()] );
|
1369
1369
|
$next.width( storedSizes[$next.index()] );
|
1370
1370
|
if (wo.resizable !== false) {
|
1371
|
-
|
1371
|
+
// save all column widths
|
1372
|
+
ts.storage(table, 'tablesorter-resizable', c.$headers.map(function(){ return $(this).width(); }).get() );
|
1372
1373
|
}
|
1373
1374
|
}
|
1374
1375
|
mouseXPosition = 0;
|
@@ -1463,10 +1464,23 @@ ts.addWidget({
|
|
1463
1464
|
ts.resizableReset(table);
|
1464
1465
|
}
|
1465
1466
|
});
|
1466
|
-
ts.resizableReset = function(table) {
|
1467
|
+
ts.resizableReset = function(table, nosave) {
|
1467
1468
|
$(table).each(function(){
|
1468
|
-
|
1469
|
-
|
1469
|
+
var $t,
|
1470
|
+
c = this.config,
|
1471
|
+
wo = c && c.widgetOptions;
|
1472
|
+
if (table && c) {
|
1473
|
+
c.$headers.each(function(i){
|
1474
|
+
$t = $(this);
|
1475
|
+
if (wo.resizable_widths[i]) {
|
1476
|
+
$t.css('width', wo.resizable_widths[i]);
|
1477
|
+
} else if (!$t.hasClass('resizable-false')) {
|
1478
|
+
// don't clear the width of any column that is not resizable
|
1479
|
+
$t.css('width','');
|
1480
|
+
}
|
1481
|
+
});
|
1482
|
+
if (ts.storage && !nosave) { ts.storage(this, 'tablesorter-resizable', {}); }
|
1483
|
+
}
|
1470
1484
|
});
|
1471
1485
|
};
|
1472
1486
|
|
@@ -1,4 +1,4 @@
|
|
1
|
-
/* Column Selector/Responsive table widget (beta) for TableSorter
|
1
|
+
/* Column Selector/Responsive table widget (beta) for TableSorter 3/31/2014 (v2.15.12)
|
2
2
|
* Requires tablesorter v2.8+ and jQuery 1.7+
|
3
3
|
* by Justin Hallett & Rob Garrison
|
4
4
|
*/
|
@@ -83,7 +83,7 @@ tsColSel = ts.columnSelector = {
|
|
83
83
|
// set default state; storage takes priority
|
84
84
|
colSel.states[colId] = saved && typeof(saved[colId]) !== 'undefined' ?
|
85
85
|
saved[colId] : typeof(wo.columnSelector_columns[colId]) !== 'undefined' ?
|
86
|
-
wo.columnSelector_columns[colId] : state === 'true' || !(state === 'false');
|
86
|
+
wo.columnSelector_columns[colId] : (state === 'true' || !(state === 'false'));
|
87
87
|
colSel.$column[colId] = $(this);
|
88
88
|
|
89
89
|
// set default col title
|
@@ -96,7 +96,7 @@ tsColSel = ts.columnSelector = {
|
|
96
96
|
.find('input').add( colSel.$wrapper[colId].filter('input') )
|
97
97
|
.attr('data-column', colId)
|
98
98
|
.prop('checked', colSel.states[colId])
|
99
|
-
.
|
99
|
+
.on('change', function(){
|
100
100
|
colSel.states[colId] = this.checked;
|
101
101
|
tsColSel.updateCols(c, wo);
|
102
102
|
}).change();
|
@@ -114,7 +114,7 @@ tsColSel = ts.columnSelector = {
|
|
114
114
|
colSel.lastIndex = -1;
|
115
115
|
wo.columnSelector_breakpoints.sort();
|
116
116
|
tsColSel.updateBreakpoints(c, wo);
|
117
|
-
c.$table.
|
117
|
+
c.$table.off('updateAll' + namespace).on('updateAll' + namespace, function(){
|
118
118
|
tsColSel.updateBreakpoints(c, wo);
|
119
119
|
tsColSel.updateCols(c, wo);
|
120
120
|
});
|
@@ -129,7 +129,7 @@ tsColSel = ts.columnSelector = {
|
|
129
129
|
.find('input').add( colSel.$auto.filter('input') )
|
130
130
|
.attr('data-column', 'auto')
|
131
131
|
.prop('checked', colSel.auto)
|
132
|
-
.
|
132
|
+
.on('change', function(){
|
133
133
|
colSel.auto = this.checked;
|
134
134
|
$.each( colSel.$checkbox, function(i, $cb){
|
135
135
|
if ($cb) {
|
@@ -156,7 +156,7 @@ tsColSel = ts.columnSelector = {
|
|
156
156
|
}).change();
|
157
157
|
}
|
158
158
|
// Add a bind on update to re-run col setup
|
159
|
-
c.$table.
|
159
|
+
c.$table.off('update' + namespace).on('update' + namespace, function() {
|
160
160
|
tsColSel.updateCols(c, wo);
|
161
161
|
});
|
162
162
|
}
|
@@ -298,7 +298,7 @@ ts.addWidget({
|
|
298
298
|
csel.$popup.empty();
|
299
299
|
csel.$style.remove();
|
300
300
|
csel.$breakpoints.remove();
|
301
|
-
c.$table.
|
301
|
+
c.$table.off('updateAll' + namespace + ' update' + namespace);
|
302
302
|
}
|
303
303
|
|
304
304
|
});
|
@@ -1,4 +1,4 @@
|
|
1
|
-
/* Pager widget (beta) for TableSorter 3/
|
1
|
+
/* Pager widget (beta) for TableSorter 3/31/2014 (v2.15.12) */
|
2
2
|
/*jshint browser:true, jquery:true, unused:false */
|
3
3
|
;(function($){
|
4
4
|
"use strict";
|
@@ -181,7 +181,7 @@ tsp = ts.pager = {
|
|
181
181
|
} else {
|
182
182
|
p.ajax = false;
|
183
183
|
// Regular pager; all rows stored in memory
|
184
|
-
c.$table.trigger("appendCache", true);
|
184
|
+
c.$table.trigger("appendCache", [{}, true]);
|
185
185
|
tsp.hideRowsSetup(table, c);
|
186
186
|
}
|
187
187
|
|
@@ -400,6 +400,7 @@ tsp = ts.pager = {
|
|
400
400
|
hideRows: function(table, c){
|
401
401
|
if (!c.widgetOptions.pager_ajaxUrl) {
|
402
402
|
var i,
|
403
|
+
lastIndex = 0,
|
403
404
|
p = c.pager,
|
404
405
|
wo = c.widgetOptions,
|
405
406
|
rows = c.$tbodies.eq(0).children(),
|
@@ -410,9 +411,23 @@ tsp = ts.pager = {
|
|
410
411
|
j = 0; // size counter
|
411
412
|
for ( i = 0; i < l; i++ ){
|
412
413
|
if ( !rows[i].className.match(f) ) {
|
413
|
-
|
414
|
-
|
415
|
-
|
414
|
+
if (j === s && rows[i].className.match(c.cssChildRow)) {
|
415
|
+
// hide child rows @ start of pager (if already visible)
|
416
|
+
rows[i].style.display = 'none';
|
417
|
+
} else {
|
418
|
+
rows[i].style.display = ( j >= s && j < e ) ? '' : 'none';
|
419
|
+
// don't count child rows
|
420
|
+
j += rows[i].className.match(c.cssChildRow + '|' + c.selectorRemove.slice(1)) && !wo.pager_countChildRows ? 0 : 1;
|
421
|
+
if ( j === e && rows[i].style.display !== 'none' && rows[i].className.match(ts.css.cssHasChild) ) {
|
422
|
+
lastIndex = i;
|
423
|
+
}
|
424
|
+
}
|
425
|
+
}
|
426
|
+
}
|
427
|
+
// add any attached child rows to last row of pager. Fixes part of issue #396
|
428
|
+
if ( lastIndex > 0 && rows[lastIndex].className.match(ts.css.cssHasChild) ) {
|
429
|
+
while ( ++lastIndex < l && rows[lastIndex].className.match(c.cssChildRow) ) {
|
430
|
+
rows[lastIndex].style.display = '';
|
416
431
|
}
|
417
432
|
}
|
418
433
|
}
|
@@ -173,6 +173,10 @@ caption {
|
|
173
173
|
-o-transition: height 0.1s ease;
|
174
174
|
transition: height 0.1s ease;
|
175
175
|
}
|
176
|
+
/* rows hidden by filtering (needed for child rows) */
|
177
|
+
.tablesorter .filtered {
|
178
|
+
display: none;
|
179
|
+
}
|
176
180
|
|
177
181
|
/* ajax error row */
|
178
182
|
.tablesorter .tablesorter-errorRow td {
|
@@ -208,6 +208,10 @@ caption {
|
|
208
208
|
-o-transition: height 0.1s ease;
|
209
209
|
transition: height 0.1s ease;
|
210
210
|
}
|
211
|
+
/* rows hidden by filtering (needed for child rows) */
|
212
|
+
.tablesorter .filtered {
|
213
|
+
display: none;
|
214
|
+
}
|
211
215
|
|
212
216
|
/* ajax error row */
|
213
217
|
.tablesorter .tablesorter-errorRow td {
|
@@ -123,6 +123,10 @@ caption {
|
|
123
123
|
opacity: 0;
|
124
124
|
filter: alpha(opacity=0);
|
125
125
|
}
|
126
|
+
/* rows hidden by filtering (needed for child rows) */
|
127
|
+
.tablesorter .filtered {
|
128
|
+
display: none;
|
129
|
+
}
|
126
130
|
|
127
131
|
/* pager plugin */
|
128
132
|
.tablesorter-bootstrap .tablesorter-pager select {
|
@@ -174,6 +174,10 @@ caption {
|
|
174
174
|
-o-transition: height 0.1s ease;
|
175
175
|
transition: height 0.1s ease;
|
176
176
|
}
|
177
|
+
/* rows hidden by filtering (needed for child rows) */
|
178
|
+
.tablesorter .filtered {
|
179
|
+
display: none;
|
180
|
+
}
|
177
181
|
|
178
182
|
/* ajax error row */
|
179
183
|
.tablesorter .tablesorter-errorRow td {
|
@@ -176,6 +176,10 @@ caption {
|
|
176
176
|
-o-transition: height 0.1s ease;
|
177
177
|
transition: height 0.1s ease;
|
178
178
|
}
|
179
|
+
/* rows hidden by filtering (needed for child rows) */
|
180
|
+
.tablesorter .filtered {
|
181
|
+
display: none;
|
182
|
+
}
|
179
183
|
|
180
184
|
/* ajax error row */
|
181
185
|
.tablesorter .tablesorter-errorRow td {
|
@@ -199,6 +199,10 @@ caption {
|
|
199
199
|
-o-transition: height 0.1s ease;
|
200
200
|
transition: height 0.1s ease;
|
201
201
|
}
|
202
|
+
/* rows hidden by filtering (needed for child rows) */
|
203
|
+
.tablesorter .filtered {
|
204
|
+
display: none;
|
205
|
+
}
|
202
206
|
|
203
207
|
/* ajax error row */
|
204
208
|
.tablesorter .tablesorter-errorRow td {
|
@@ -190,6 +190,10 @@ caption {
|
|
190
190
|
-o-transition: height 0.1s ease;
|
191
191
|
transition: height 0.1s ease;
|
192
192
|
}
|
193
|
+
/* rows hidden by filtering (needed for child rows) */
|
194
|
+
.tablesorter .filtered {
|
195
|
+
display: none;
|
196
|
+
}
|
193
197
|
|
194
198
|
/* ajax error row */
|
195
199
|
.tablesorter .tablesorter-errorRow td {
|
@@ -232,6 +232,10 @@ caption {
|
|
232
232
|
-o-transition: height 0.1s ease;
|
233
233
|
transition: height 0.1s ease;
|
234
234
|
}
|
235
|
+
/* rows hidden by filtering (needed for child rows) */
|
236
|
+
.tablesorter .filtered {
|
237
|
+
display: none;
|
238
|
+
}
|
235
239
|
|
236
240
|
/* ajax error row */
|
237
241
|
.tablesorter .tablesorter-errorRow td {
|
@@ -188,6 +188,10 @@ caption {
|
|
188
188
|
-o-transition: height 0.1s ease;
|
189
189
|
transition: height 0.1s ease;
|
190
190
|
}
|
191
|
+
/* rows hidden by filtering (needed for child rows) */
|
192
|
+
.tablesorter .filtered {
|
193
|
+
display: none;
|
194
|
+
}
|
191
195
|
|
192
196
|
/* ajax error row */
|
193
197
|
.tablesorter .tablesorter-errorRow td {
|
@@ -141,6 +141,10 @@
|
|
141
141
|
-o-transition: height 0.1s ease;
|
142
142
|
transition: height 0.1s ease;
|
143
143
|
}
|
144
|
+
/* rows hidden by filtering (needed for child rows) */
|
145
|
+
.tablesorter .filtered {
|
146
|
+
display: none;
|
147
|
+
}
|
144
148
|
|
145
149
|
/* ajax error row */
|
146
150
|
.tablesorter .tablesorter-errorRow td {
|
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.10.
|
4
|
+
version: 1.10.8
|
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-03-
|
12
|
+
date: 2014-03-31 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: railties
|
@@ -54,20 +54,12 @@ files:
|
|
54
54
|
- vendor/assets/images/jquery-tablesorter/black-unsorted.gif
|
55
55
|
- vendor/assets/images/jquery-tablesorter/dropbox-asc-hovered.png
|
56
56
|
- vendor/assets/images/jquery-tablesorter/dropbox-asc.png
|
57
|
-
- vendor/assets/images/jquery-tablesorter/dropbox-asc1.png
|
58
|
-
- vendor/assets/images/jquery-tablesorter/dropbox-asc2.png
|
59
57
|
- vendor/assets/images/jquery-tablesorter/dropbox-desc-hovered.png
|
60
58
|
- vendor/assets/images/jquery-tablesorter/dropbox-desc.png
|
61
|
-
- vendor/assets/images/jquery-tablesorter/dropbox-desc1.png
|
62
|
-
- vendor/assets/images/jquery-tablesorter/dropbox-desc2.png
|
63
59
|
- vendor/assets/images/jquery-tablesorter/green-asc.gif
|
64
|
-
- vendor/assets/images/jquery-tablesorter/green-asc.png
|
65
60
|
- vendor/assets/images/jquery-tablesorter/green-desc.gif
|
66
|
-
- vendor/assets/images/jquery-tablesorter/green-desc.png
|
67
61
|
- vendor/assets/images/jquery-tablesorter/green-header.gif
|
68
|
-
- vendor/assets/images/jquery-tablesorter/green-header.png
|
69
62
|
- vendor/assets/images/jquery-tablesorter/green-unsorted.gif
|
70
|
-
- vendor/assets/images/jquery-tablesorter/green-unsorted.png
|
71
63
|
- vendor/assets/images/jquery-tablesorter/ice-asc.gif
|
72
64
|
- vendor/assets/images/jquery-tablesorter/ice-desc.gif
|
73
65
|
- vendor/assets/images/jquery-tablesorter/ice-unsorted.gif
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|