diff --git a/lib/filters/nodefilter.js b/lib/filters/nodefilter.js index 319a71e..17e6b41 100644 --- a/lib/filters/nodefilter.js +++ b/lib/filters/nodefilter.js @@ -4,9 +4,8 @@ define([], function () { var n = Object.create(data) n.nodes = {} - for (var key in data.nodes) { + for (var key in data.nodes) n.nodes[key] = data.nodes[key].filter(filter) - } var filteredIds = new Set() diff --git a/lib/meshstats.js b/lib/meshstats.js index 3174eee..e9b9845 100644 --- a/lib/meshstats.js +++ b/lib/meshstats.js @@ -11,9 +11,11 @@ define(function () { var totalClients = sum(d.nodes.all.filter(online).map( function (d) { return d.statistics.clients ? d.statistics.clients : 0 })) - var totalGateways = sum(d.nodes.all.filter(online).filter( function (d) { + var totalGateways = sum(Array.from(new Set(d.nodes.all.filter(online).map( function(d) { + return d.statistics.gateway + }).concat(d.nodes.all.filter( function (d) { return d.flags.gateway - }).map(one)) + })))).map(one)) var nodetext = [{ count: totalOnlineNodes, label: "online" }, { count: totalNewNodes, label: "neu" },