From 0e3ab0fe28e681012f69d468191d5895a96f2579 Mon Sep 17 00:00:00 2001 From: Toastman Date: Thu, 2 Aug 2012 19:56:56 +0700 Subject: [PATCH] Column sorting fixes, thanks to Tony550 --- release/src/router/www/ipt-daily.asp | 10 ++++++---- release/src/router/www/ipt-monthly.asp | 8 ++++++-- release/src/router/www/tomato.js | 6 +++++- release/src/router/www/tools-wol.asp | 11 +++++++++++ 4 files changed, 28 insertions(+), 7 deletions(-) diff --git a/release/src/router/www/ipt-daily.asp b/release/src/router/www/ipt-daily.asp index ba30d332f6..4c0029e757 100644 --- a/release/src/router/www/ipt-daily.asp +++ b/release/src/router/www/ipt-daily.asp @@ -249,13 +249,15 @@ dg.sortCompare = function(a, b) { var r = 0; switch (col) { case 0: // Date - case 1: // Hostname - r = cmpText(da[col], db[col]); - break; + case 1: // Hostname + r = cmpIP(da[col], db[col]); + if (r == 0) + r = cmpText(da[col], db[col]); + break; case 2: // Download case 3: // Upload case 4: // Total - r = cmpFloat(parseFloat(da[col].replace(",","")), parseFloat(db[col].replace(",",""))); + r = cmpFloat(da[col].replace(/,/g,""), db[col].replace(/,/g,"")); break; } return this.sortAscending ? r : -r; diff --git a/release/src/router/www/ipt-monthly.asp b/release/src/router/www/ipt-monthly.asp index f63de72ee8..e80242bd64 100644 --- a/release/src/router/www/ipt-monthly.asp +++ b/release/src/router/www/ipt-monthly.asp @@ -249,13 +249,17 @@ dg.sortCompare = function(a, b) { var r = 0; switch (col) { case 0: // Date - case 1: // Hostname r = cmpText(da[col], db[col]); break; + case 1: // Hostname + r = cmpIP(da[col], db[col]); + if (r == 0) + r = cmpText(da[col], db[col]); + break; case 2: // Download case 3: // Upload case 4: // Total - r = cmpFloat(parseFloat(da[col].replace(",","")), parseFloat(db[col].replace(",",""))); + r = cmpFloat(da[col].replace(/,/g,""), db[col].replace(/,/g,"")); break; } return this.sortAscending ? r : -r; diff --git a/release/src/router/www/tomato.js b/release/src/router/www/tomato.js index 5a6836ef41..7c2991c9f8 100644 --- a/release/src/router/www/tomato.js +++ b/release/src/router/www/tomato.js @@ -479,8 +479,12 @@ function v_macip(e, quiet, bok, lan_ipaddr, lan_netmask) function fixIP(ip, x) { var a, n, i; + a = ip; + i = a.indexOf("
"); + if (i > 0) + a = a.slice(0,i); - a = ip.split('.'); + a = a.split('.'); if (a.length != 4) return null; for (i = 0; i < 4; ++i) { n = a[i] * 1; diff --git a/release/src/router/www/tools-wol.asp b/release/src/router/www/tools-wol.asp index 331fc4daa5..9fb9a511ed 100644 --- a/release/src/router/www/tools-wol.asp +++ b/release/src/router/www/tools-wol.asp @@ -53,6 +53,17 @@ wg.setup = function() { this.headerSet(['MAC Address', 'IP Address', 'Status', 'Name']); this.sort(3); } +wg.sortCompare = function(a, b) { + var da = a.getRowData(); + var db = b.getRowData(); + var r = 0; + var c = this.sortColumn; + if (c == 1) + r = cmpIP(da[c], db[c]); + else + r = cmpText(da[c], db[c]); + return this.sortAscending ? r : -r; +} wg.populate = function() { var i, j, r, s; -- 2.11.4.GIT