jquery-tablesorter 1.10.7 → 1.10.8
Sign up to get free protection for your applications and to get access to all the features.
- 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
|