jquery-datatables 1.10.17 → 1.10.18
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/README.md +26 -9
- data/app/assets/javascripts/datatables/dataTables.bootstrap4.js +2 -2
- data/app/assets/javascripts/datatables/dataTables.dataTables.js +37 -0
- data/app/assets/javascripts/datatables/dataTables.semanticui.js +7 -3
- data/app/assets/javascripts/datatables/jquery.dataTables.js +3 -3
- data/app/assets/javascripts/datatables/plugins/api/average.js +0 -1
- data/app/assets/javascripts/datatables/plugins/api/sum.js +9 -10
- data/app/assets/javascripts/datatables/plugins/pagination/input.js +203 -203
- data/app/assets/javascripts/datatables/plugins/search/{alphabetSearch.js → dataTables.alphabetSearch.js} +81 -50
- data/app/assets/javascripts/datatables/plugins/sorting/currency.js +36 -0
- data/app/assets/javascripts/datatables/plugins/sorting/date-uk.js +42 -0
- data/app/assets/javascripts/datatables/plugins/sorting/file-size.js +2 -1
- data/app/assets/javascripts/datatables/plugins/sorting/formatted-numbers.js +40 -0
- data/app/assets/javascripts/datatables/plugins/sorting/ip-address.js +74 -73
- data/app/assets/javascripts/datatables/plugins/sorting/num-html.js +38 -0
- data/app/assets/javascripts/datatables/plugins/sorting/numeric-comma.js +37 -0
- data/app/assets/javascripts/datatables/plugins/type-detection/currency.js +40 -0
- data/app/assets/javascripts/datatables/plugins/type-detection/date-uk.js +19 -0
- data/app/assets/javascripts/datatables/plugins/type-detection/file-size.js +20 -0
- data/app/assets/javascripts/datatables/plugins/type-detection/formatted-num.js +28 -0
- data/app/assets/javascripts/datatables/plugins/type-detection/ip-address.js +18 -0
- data/app/assets/javascripts/datatables/plugins/type-detection/num-html.js +56 -0
- data/app/assets/javascripts/datatables/plugins/type-detection/numeric-comma.js +40 -0
- data/app/assets/stylesheets/datatables/dataTables.bootstrap4.scss +1 -1
- data/app/assets/stylesheets/datatables/dataTables.semanticui.scss +1 -1
- data/app/assets/stylesheets/datatables/plugins/search/dataTables.alphabetSearch.bootstrap.css +53 -0
- data/app/assets/stylesheets/datatables/plugins/search/dataTables.alphabetSearch.css +83 -0
- data/jquery-datatables.gemspec +3 -5
- data/lib/generators/jquery/datatables/templates/javascripts/initializer.js.tt +11 -0
- data/lib/generators/jquery/datatables/templates/views/index.html.erb +1 -1
- data/lib/generators/jquery/datatables/templates/views/index.html.haml +12 -0
- data/lib/jquery-datatables/version.rb +1 -1
- metadata +19 -18
- data/app/assets/stylesheets/datatables/plugins/search/alphabetSearch.css +0 -43
@@ -1,4 +1,4 @@
|
|
1
|
-
/*! AlphabetSearch for DataTables v1.
|
1
|
+
/*! AlphabetSearch for DataTables v1.2.4
|
2
2
|
* 2014 SpryMedia Ltd - datatables.net/license
|
3
3
|
* Gyrocode - MIT License
|
4
4
|
*/
|
@@ -7,7 +7,7 @@
|
|
7
7
|
* @summary AlphabetSearch
|
8
8
|
* @description Show an set of alphabet buttons alongside a table providing
|
9
9
|
* search input options
|
10
|
-
* @version 1.
|
10
|
+
* @version 1.2.4
|
11
11
|
* @file dataTables.alphabetSearch.js
|
12
12
|
* @author SpryMedia Ltd (www.sprymedia.co.uk)
|
13
13
|
* @contact www.sprymedia.co.uk/contact
|
@@ -19,7 +19,7 @@
|
|
19
19
|
* License MIT - http://datatables.net/license/mit
|
20
20
|
*
|
21
21
|
* For more detailed information please see:
|
22
|
-
*
|
22
|
+
* https://www.gyrocode.com/projects/jquery-datatables-alphabetsearch/
|
23
23
|
*/
|
24
24
|
(function(){
|
25
25
|
|
@@ -34,7 +34,7 @@ $.fn.dataTable.Api.register( 'alphabetSearch()', function ( searchTerm ) {
|
|
34
34
|
} );
|
35
35
|
|
36
36
|
// Recalculate the alphabet display for updated data
|
37
|
-
$.fn.dataTable.Api.register( 'alphabetSearch.recalc()', function (
|
37
|
+
$.fn.dataTable.Api.register( 'alphabetSearch.recalc()', function () {
|
38
38
|
this.iterator( 'table', function ( context ) {
|
39
39
|
draw(
|
40
40
|
new $.fn.dataTable.Api( context ),
|
@@ -49,6 +49,11 @@ $.fn.dataTable.Api.register( 'alphabetSearch.recalc()', function ( searchTerm )
|
|
49
49
|
|
50
50
|
// Search plug-in
|
51
51
|
$.fn.dataTable.ext.search.push( function ( context, searchData ) {
|
52
|
+
// Ensure that table has alphabet search feature enabled
|
53
|
+
if ( ! context.hasOwnProperty('alphabetSearch') ) {
|
54
|
+
return true;
|
55
|
+
}
|
56
|
+
|
52
57
|
// Ensure that there is a search applied to this table before running it
|
53
58
|
if ( ! context.alphabetSearch.letterSearch ) {
|
54
59
|
return true;
|
@@ -80,7 +85,7 @@ $.fn.dataTable.ext.search.push( function ( context, searchData ) {
|
|
80
85
|
// there would be two calls to this method
|
81
86
|
$.fn.dataTable.ext.order['alphabetSearch'] = function ( context, col )
|
82
87
|
{
|
83
|
-
var order_col
|
88
|
+
var order_col = this.api().order()[0][0];
|
84
89
|
var order_method = this.api().order()[0][1];
|
85
90
|
|
86
91
|
// If sorting by column other than the one being alphabetized
|
@@ -89,28 +94,29 @@ $.fn.dataTable.ext.order['alphabetSearch'] = function ( context, col )
|
|
89
94
|
}
|
90
95
|
|
91
96
|
var data = this.api().column( col, { order: 'index' } ).data().map( function (value, index) {
|
97
|
+
var letter = value.replace(/<.*?>/g, '').charAt(0).toUpperCase();
|
98
|
+
|
92
99
|
// If sorting by alphabetized column
|
93
100
|
return (order_col === context.alphabetSearch.column)
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
101
|
+
? (
|
102
|
+
// If first pass
|
103
|
+
( !context.alphabetSearch.pass )
|
104
|
+
// Ignore
|
105
|
+
?
|
106
|
+
''
|
107
|
+
// Otherwise, if it's a second pass
|
108
|
+
:
|
109
|
+
(
|
110
|
+
// If method is ascending sort
|
111
|
+
( order_method === 'asc' )
|
112
|
+
// Return first letter
|
113
|
+
? letter
|
114
|
+
: String.fromCharCode(65535 - letter.charCodeAt(0))
|
115
|
+
)
|
116
|
+
)
|
117
|
+
// Otherwise, if sorting by column other than the one being alphabetized,
|
118
|
+
// return first letter
|
119
|
+
: letter;
|
114
120
|
} );
|
115
121
|
|
116
122
|
// If sorting by alphabetized column
|
@@ -151,34 +157,50 @@ function bin ( data ) {
|
|
151
157
|
function draw ( table, alphabet, context )
|
152
158
|
{
|
153
159
|
alphabet.empty();
|
154
|
-
|
160
|
+
|
161
|
+
if(context.oLanguage.alphabetSearch.infoDisplay !== ''){
|
162
|
+
$('<span class="alphabet-info-display"></span>')
|
163
|
+
.html(context.oLanguage.alphabetSearch.infoDisplay)
|
164
|
+
.appendTo( alphabet );
|
165
|
+
}
|
155
166
|
|
156
167
|
var columnData = table.column(context.alphabetSearch.column, { search: 'applied' } ).data();
|
157
168
|
var bins = bin( columnData );
|
158
169
|
|
159
|
-
|
170
|
+
var alphabetList = $('<ul/>');
|
171
|
+
|
172
|
+
$('<a/>')
|
173
|
+
.attr( 'href', 'javascript:;' )
|
160
174
|
.data( 'letter', '' )
|
161
175
|
.data( 'match-count', columnData.length )
|
162
|
-
.
|
163
|
-
|
176
|
+
.addClass(
|
177
|
+
((!context.alphabetSearch.letter) ? 'active' : '')
|
178
|
+
)
|
179
|
+
.html( '<span>' + context.oLanguage.alphabetSearch.infoAll + '</span>' )
|
180
|
+
.wrap( '<li/>' )
|
181
|
+
.parent()
|
182
|
+
.appendTo( alphabetList );
|
164
183
|
|
165
184
|
for ( var i=0 ; i<context.oLanguage.alphabetSearch.alphabet.length ; i++ ) {
|
166
185
|
var letter = context.oLanguage.alphabetSearch.alphabet[i];
|
167
186
|
|
168
|
-
$('<
|
187
|
+
$('<a/>')
|
188
|
+
.attr( 'href', 'javascript:;' )
|
169
189
|
.data( 'letter', letter )
|
170
190
|
.data( 'match-count', bins[letter] || 0 )
|
171
191
|
.addClass(
|
172
192
|
(! bins[letter] ? 'empty' : '')
|
173
193
|
+ ((context.alphabetSearch.letter === letter) ? ' active' : '')
|
174
194
|
)
|
175
|
-
.html(
|
176
|
-
|
177
|
-
)
|
178
|
-
.appendTo(
|
195
|
+
.html( '<span>' + letter + '</span>' )
|
196
|
+
.wrap( '<li/>' )
|
197
|
+
.parent()
|
198
|
+
.appendTo( alphabetList );
|
179
199
|
}
|
180
200
|
|
181
|
-
|
201
|
+
alphabetList.appendTo( alphabet );
|
202
|
+
|
203
|
+
$('<div class="alphabet-info"></div>')
|
182
204
|
.appendTo( alphabet );
|
183
205
|
|
184
206
|
|
@@ -221,7 +243,7 @@ $.fn.dataTable.AlphabetSearch = function ( context ) {
|
|
221
243
|
$.extend(
|
222
244
|
{
|
223
245
|
'alphabet': '#ABCDEFGHIJKLMNOPQRSTUVWXYZ',
|
224
|
-
'infoDisplay': 'Display',
|
246
|
+
'infoDisplay': 'Display:',
|
225
247
|
'infoAll': 'All'
|
226
248
|
},
|
227
249
|
((context.oLanguage.alphabetSearch)
|
@@ -288,7 +310,10 @@ $.fn.dataTable.AlphabetSearch = function ( context ) {
|
|
288
310
|
|
289
311
|
|
290
312
|
// Trigger a search
|
291
|
-
alphabet.on( 'click', '
|
313
|
+
alphabet.on( 'click', 'a', function (e) {
|
314
|
+
// Prevent default behavior
|
315
|
+
e.preventDefault();
|
316
|
+
|
292
317
|
alphabet.find( '.active' ).removeClass( 'active' );
|
293
318
|
$(this).addClass( 'active' );
|
294
319
|
|
@@ -299,19 +324,25 @@ $.fn.dataTable.AlphabetSearch = function ( context ) {
|
|
299
324
|
|
300
325
|
// Mouse events to show helper information
|
301
326
|
alphabet
|
302
|
-
.on( 'mouseenter', '
|
303
|
-
|
304
|
-
|
327
|
+
.on( 'mouseenter', 'a', function () {
|
328
|
+
var $el = $(this);
|
329
|
+
var el_pos = $el.position();
|
330
|
+
|
331
|
+
var $alphabet_info = $('.alphabet-info', alphabet);
|
332
|
+
|
333
|
+
$alphabet_info.html( $el.data('match-count') );
|
334
|
+
|
335
|
+
// Display helper centered horizontally under the letter
|
336
|
+
$alphabet_info
|
305
337
|
.css( {
|
306
338
|
opacity: 1,
|
307
|
-
left: $(
|
308
|
-
|
309
|
-
} )
|
310
|
-
.html( $(this).data('match-count') );
|
339
|
+
left: el_pos.left + Math.round(($el.outerWidth() - $alphabet_info.outerWidth())/2),
|
340
|
+
top: $(this).position().top + $el.outerHeight()
|
341
|
+
} );
|
311
342
|
} )
|
312
|
-
.on( 'mouseleave', '
|
343
|
+
.on( 'mouseleave', 'a', function () {
|
313
344
|
alphabet
|
314
|
-
.find('div.
|
345
|
+
.find('div.alphabet-info')
|
315
346
|
.css('opacity', 0);
|
316
347
|
} );
|
317
348
|
|
@@ -325,11 +356,11 @@ $.fn.dataTable.AlphabetSearch = function ( context ) {
|
|
325
356
|
var group_last = null;
|
326
357
|
|
327
358
|
api.column(context.alphabetSearch.column, { page: 'current' }).data().each(function (name, index){
|
328
|
-
var group = name.charAt(0).toUpperCase();
|
359
|
+
var group = name.replace(/<.*?>/g, '').charAt(0).toUpperCase();
|
329
360
|
|
330
361
|
if (group_last !== group) {
|
331
362
|
$(rows).eq(index).before(
|
332
|
-
'<tr class="
|
363
|
+
'<tr class="alphabet-group"><td colspan="' + col_total + '">' + group + '</td></tr>'
|
333
364
|
);
|
334
365
|
|
335
366
|
group_last = group;
|
@@ -338,10 +369,10 @@ $.fn.dataTable.AlphabetSearch = function ( context ) {
|
|
338
369
|
|
339
370
|
// If there are no rows found and letter is selected
|
340
371
|
if(!rows.length && context.alphabetSearch){
|
341
|
-
var letter =
|
372
|
+
var letter = context.alphabetSearch.letter;
|
342
373
|
|
343
374
|
$(api.table().body()).prepend(
|
344
|
-
'<tr class="
|
375
|
+
'<tr class="alphabet-group"><td colspan="' + col_total + '">' + letter + '</td></tr>'
|
345
376
|
);
|
346
377
|
}
|
347
378
|
});
|
@@ -0,0 +1,36 @@
|
|
1
|
+
/**
|
2
|
+
* This plug-in will provide numeric sorting for currency columns (either
|
3
|
+
* detected automatically with the currency type detection plug-in or set
|
4
|
+
* manually) while taking account of the currency symbol ($ or £ by default).
|
5
|
+
*
|
6
|
+
* DataTables 1.10+ has currency sorting abilities built-in and will be
|
7
|
+
* automatically detected. As such this plug-in is marked as deprecated, but
|
8
|
+
* might be useful when working with old versions of DataTables.
|
9
|
+
*
|
10
|
+
* @name Currency
|
11
|
+
* @summary Sort data numerically when it has a leading currency symbol.
|
12
|
+
* @deprecated
|
13
|
+
* @author [Allan Jardine](http://sprymedia.co.uk)
|
14
|
+
*
|
15
|
+
* @example
|
16
|
+
* $('#example').dataTable( {
|
17
|
+
* columnDefs: [
|
18
|
+
* { type: 'currency', targets: 0 }
|
19
|
+
* ]
|
20
|
+
* } );
|
21
|
+
*/
|
22
|
+
|
23
|
+
jQuery.extend( jQuery.fn.dataTableExt.oSort, {
|
24
|
+
"currency-pre": function ( a ) {
|
25
|
+
a = (a==="-") ? 0 : a.replace( /[^\d\-\.]/g, "" );
|
26
|
+
return parseFloat( a );
|
27
|
+
},
|
28
|
+
|
29
|
+
"currency-asc": function ( a, b ) {
|
30
|
+
return a - b;
|
31
|
+
},
|
32
|
+
|
33
|
+
"currency-desc": function ( a, b ) {
|
34
|
+
return b - a;
|
35
|
+
}
|
36
|
+
} );
|
@@ -0,0 +1,42 @@
|
|
1
|
+
/**
|
2
|
+
* DataTables internal date sorting replies on `Date.parse()` which is part of
|
3
|
+
* the Javascript language, but you may wish to sort on dates which is doesn't
|
4
|
+
* recognise. The following is a plug-in for sorting dates in the format
|
5
|
+
* `dd/mm/yy`.
|
6
|
+
*
|
7
|
+
* An automatic type detection plug-in is available for this sorting plug-in.
|
8
|
+
*
|
9
|
+
* Please note that this plug-in is **deprecated*. The
|
10
|
+
* [datetime](//datatables.net/blog/2014-12-18) plug-in provides enhanced
|
11
|
+
* functionality and flexibility.
|
12
|
+
*
|
13
|
+
* @name Date (dd/mm/YY)
|
14
|
+
* @summary Sort dates in the format `dd/mm/YY`
|
15
|
+
* @author Andy McMaster
|
16
|
+
* @deprecated
|
17
|
+
*
|
18
|
+
* @example
|
19
|
+
* $('#example').dataTable( {
|
20
|
+
* columnDefs: [
|
21
|
+
* { type: 'date-uk', targets: 0 }
|
22
|
+
* ]
|
23
|
+
* } );
|
24
|
+
*/
|
25
|
+
|
26
|
+
jQuery.extend( jQuery.fn.dataTableExt.oSort, {
|
27
|
+
"date-uk-pre": function ( a ) {
|
28
|
+
if (a == null || a == "") {
|
29
|
+
return 0;
|
30
|
+
}
|
31
|
+
var ukDatea = a.split('/');
|
32
|
+
return (ukDatea[2] + ukDatea[1] + ukDatea[0]) * 1;
|
33
|
+
},
|
34
|
+
|
35
|
+
"date-uk-asc": function ( a, b ) {
|
36
|
+
return ((a < b) ? -1 : ((a > b) ? 1 : 0));
|
37
|
+
},
|
38
|
+
|
39
|
+
"date-uk-desc": function ( a, b ) {
|
40
|
+
return ((a < b) ? 1 : ((a > b) ? -1 : 0));
|
41
|
+
}
|
42
|
+
} );
|
@@ -22,6 +22,7 @@ jQuery.fn.dataTable.ext.type.order['file-size-pre'] = function ( data ) {
|
|
22
22
|
var matches = data.match( /^(\d+(?:\.\d+)?)\s*([a-z]+)/i );
|
23
23
|
var multipliers = {
|
24
24
|
b: 1,
|
25
|
+
bytes: 1,
|
25
26
|
kb: 1000,
|
26
27
|
kib: 1024,
|
27
28
|
mb: 1000000,
|
@@ -40,4 +41,4 @@ jQuery.fn.dataTable.ext.type.order['file-size-pre'] = function ( data ) {
|
|
40
41
|
} else {
|
41
42
|
return -1;
|
42
43
|
};
|
43
|
-
};
|
44
|
+
};
|
@@ -0,0 +1,40 @@
|
|
1
|
+
/**
|
2
|
+
* This plug-in will provide numeric sorting for numeric columns which have
|
3
|
+
* extra formatting, such as thousands separators, currency symbols or any other
|
4
|
+
* non-numeric data.
|
5
|
+
*
|
6
|
+
* By default when a cell is found to have no numeric data its value is sorted
|
7
|
+
* numerically as if its value were 0. This could also be altered to be Inifnity
|
8
|
+
* or -Infinity as required.
|
9
|
+
*
|
10
|
+
* DataTables 1.10+ has formatted number detection and sorting abilities built-
|
11
|
+
* in. As such this plug-in is marked as deprecated, but might be useful when
|
12
|
+
* working with old versions of DataTables.
|
13
|
+
*
|
14
|
+
* @name Formatted numbers
|
15
|
+
* @summary Sort numbers which are displayed with thousand separators
|
16
|
+
* @deprecated
|
17
|
+
* @author [Allan Jardine](http://sprymedia.co.uk)
|
18
|
+
*
|
19
|
+
* @example
|
20
|
+
* $('#example').dataTable( {
|
21
|
+
* columnDefs: [
|
22
|
+
* { type: 'formatted-num', targets: 0 }
|
23
|
+
* ]
|
24
|
+
* } );
|
25
|
+
*/
|
26
|
+
|
27
|
+
jQuery.extend( jQuery.fn.dataTableExt.oSort, {
|
28
|
+
"formatted-num-pre": function ( a ) {
|
29
|
+
a = (a === "-" || a === "") ? 0 : a.replace( /[^\d\-\.]/g, "" );
|
30
|
+
return parseFloat( a );
|
31
|
+
},
|
32
|
+
|
33
|
+
"formatted-num-asc": function ( a, b ) {
|
34
|
+
return a - b;
|
35
|
+
},
|
36
|
+
|
37
|
+
"formatted-num-desc": function ( a, b ) {
|
38
|
+
return b - a;
|
39
|
+
}
|
40
|
+
} );
|
@@ -17,87 +17,88 @@
|
|
17
17
|
*/
|
18
18
|
|
19
19
|
jQuery.extend( jQuery.fn.dataTableExt.oSort, {
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
20
|
+
"ip-address-pre": function ( a ) {
|
21
|
+
if (!a) { return 0 }
|
22
|
+
var i, item;
|
23
|
+
var m = a.split("."),
|
24
|
+
n = a.split(":"),
|
25
|
+
x = "",
|
26
|
+
xa = "";
|
26
27
|
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
28
|
+
if (m.length == 4) {
|
29
|
+
// IPV4
|
30
|
+
for(i = 0; i < m.length; i++) {
|
31
|
+
item = m[i];
|
31
32
|
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
33
|
+
if(item.length == 1) {
|
34
|
+
x += "00" + item;
|
35
|
+
}
|
36
|
+
else if(item.length == 2) {
|
37
|
+
x += "0" + item;
|
38
|
+
}
|
39
|
+
else {
|
40
|
+
x += item;
|
41
|
+
}
|
42
|
+
}
|
43
|
+
}
|
44
|
+
else if (n.length > 0) {
|
45
|
+
// IPV6
|
46
|
+
var count = 0;
|
47
|
+
for(i = 0; i < n.length; i++) {
|
48
|
+
item = n[i];
|
48
49
|
|
49
|
-
|
50
|
-
|
51
|
-
|
50
|
+
if (i > 0) {
|
51
|
+
xa += ":";
|
52
|
+
}
|
52
53
|
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
54
|
+
if(item.length === 0) {
|
55
|
+
count += 0;
|
56
|
+
}
|
57
|
+
else if(item.length == 1) {
|
58
|
+
xa += "000" + item;
|
59
|
+
count += 4;
|
60
|
+
}
|
61
|
+
else if(item.length == 2) {
|
62
|
+
xa += "00" + item;
|
63
|
+
count += 4;
|
64
|
+
}
|
65
|
+
else if(item.length == 3) {
|
66
|
+
xa += "0" + item;
|
67
|
+
count += 4;
|
68
|
+
}
|
69
|
+
else {
|
70
|
+
xa += item;
|
71
|
+
count += 4;
|
72
|
+
}
|
73
|
+
}
|
73
74
|
|
74
|
-
|
75
|
-
|
76
|
-
|
75
|
+
// Padding the ::
|
76
|
+
n = xa.split(":");
|
77
|
+
var paddDone = 0;
|
77
78
|
|
78
|
-
|
79
|
-
|
79
|
+
for (i = 0; i < n.length; i++) {
|
80
|
+
item = n[i];
|
80
81
|
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
82
|
+
if (item.length === 0 && paddDone === 0) {
|
83
|
+
for (var padding = 0 ; padding < (32-count) ; padding++) {
|
84
|
+
x += "0";
|
85
|
+
paddDone = 1;
|
86
|
+
}
|
87
|
+
}
|
88
|
+
else {
|
89
|
+
x += item;
|
90
|
+
}
|
91
|
+
}
|
92
|
+
}
|
92
93
|
|
93
|
-
|
94
|
-
|
94
|
+
return x;
|
95
|
+
},
|
95
96
|
|
96
|
-
|
97
|
-
|
98
|
-
|
97
|
+
"ip-address-asc": function ( a, b ) {
|
98
|
+
return ((a < b) ? -1 : ((a > b) ? 1 : 0));
|
99
|
+
},
|
99
100
|
|
100
|
-
|
101
|
-
|
102
|
-
|
101
|
+
"ip-address-desc": function ( a, b ) {
|
102
|
+
return ((a < b) ? 1 : ((a > b) ? -1 : 0));
|
103
|
+
}
|
103
104
|
});
|