mirror of
https://github.com/ntop/ntopng.git
synced 2026-05-03 09:20:10 +00:00
add sorting to snmp table
This commit is contained in:
parent
552d81688c
commit
b6d78df176
2 changed files with 108 additions and 4 deletions
100
httpdocs/js/utils/datatable-ipsorting.js
Normal file
100
httpdocs/js/utils/datatable-ipsorting.js
Normal file
|
|
@ -0,0 +1,100 @@
|
|||
jQuery.extend( jQuery.fn.dataTableExt.oSort, {
|
||||
"ip-address-pre": function ( a ) {
|
||||
var i, item;
|
||||
var m, n, t;
|
||||
var x, xa;
|
||||
|
||||
if (!a) {
|
||||
return 0
|
||||
}
|
||||
|
||||
a = a.replace(/<[\s\S]*?>/g, "");
|
||||
//IPv4:Port
|
||||
t = a.split(":");
|
||||
if (t.length == 2){
|
||||
m = t[0].split(".");
|
||||
}
|
||||
else {
|
||||
m = a.split(".");
|
||||
}
|
||||
n = a.split(":");
|
||||
x = "";
|
||||
xa = "";
|
||||
|
||||
if (m.length == 4) {
|
||||
// IPV4
|
||||
for(i = 0; i < m.length; i++) {
|
||||
item = m[i];
|
||||
|
||||
if(item.length == 1) {
|
||||
x += "00" + item;
|
||||
}
|
||||
else if(item.length == 2) {
|
||||
x += "0" + item;
|
||||
}
|
||||
else {
|
||||
x += item;
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (n.length > 0) {
|
||||
// IPV6
|
||||
var count = 0;
|
||||
for(i = 0; i < n.length; i++) {
|
||||
item = n[i];
|
||||
|
||||
if (i > 0) {
|
||||
xa += ":";
|
||||
}
|
||||
|
||||
if(item.length === 0) {
|
||||
count += 0;
|
||||
}
|
||||
else if(item.length == 1) {
|
||||
xa += "000" + item;
|
||||
count += 4;
|
||||
}
|
||||
else if(item.length == 2) {
|
||||
xa += "00" + item;
|
||||
count += 4;
|
||||
}
|
||||
else if(item.length == 3) {
|
||||
xa += "0" + item;
|
||||
count += 4;
|
||||
}
|
||||
else {
|
||||
xa += item;
|
||||
count += 4;
|
||||
}
|
||||
}
|
||||
|
||||
// Padding the ::
|
||||
n = xa.split(":");
|
||||
var paddDone = 0;
|
||||
|
||||
for (i = 0; i < n.length; i++) {
|
||||
item = n[i];
|
||||
|
||||
if (item.length === 0 && paddDone === 0) {
|
||||
for (var padding = 0 ; padding < (32-count) ; padding++) {
|
||||
x += "0";
|
||||
paddDone = 1;
|
||||
}
|
||||
}
|
||||
else {
|
||||
x += item;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return x;
|
||||
},
|
||||
|
||||
"ip-address-asc": function ( a, b ) {
|
||||
return ((a < b) ? -1 : ((a > b) ? 1 : 0));
|
||||
},
|
||||
|
||||
"ip-address-desc": function ( a, b ) {
|
||||
return ((a < b) ? 1 : ((a > b) ? -1 : 0));
|
||||
}
|
||||
});
|
||||
Loading…
Add table
Add a link
Reference in a new issue