From 5fd51f05a8f6bf7da7247c8c568080db625efa96 Mon Sep 17 00:00:00 2001 From: pmelange Date: Mon, 5 Nov 2018 16:27:40 +0100 Subject: [PATCH] luci-app-olsr: convert olsr.lua and smartgw.htm to new json plugin Signed-off-by: pmelange --- .../luci-app-olsr/luasrc/controller/olsr.lua | 5 +- .../luasrc/view/status-olsr/smartgw.htm | 62 +++++++++---------- 2 files changed, 34 insertions(+), 33 deletions(-) diff --git a/applications/luci-app-olsr/luasrc/controller/olsr.lua b/applications/luci-app-olsr/luasrc/controller/olsr.lua index e2e93d269..dc424c011 100644 --- a/applications/luci-app-olsr/luasrc/controller/olsr.lua +++ b/applications/luci-app-olsr/luasrc/controller/olsr.lua @@ -318,13 +318,14 @@ function action_smartgw() local function compare(a,b) if a.proto == b.proto then - return a.tcPathCost < b.tcPathCost + return a.cost < b.cost else return a.proto < b.proto end end - table.sort(data, compare) + table.sort(data.ipv4, compare) + table.sort(data.ipv6, compare) luci.template.render("status-olsr/smartgw", {gws=data, has_v4=has_v4, has_v6=has_v6}) end diff --git a/applications/luci-app-olsr/luasrc/view/status-olsr/smartgw.htm b/applications/luci-app-olsr/luasrc/view/status-olsr/smartgw.htm index 46cc27dec..ba36ce980 100644 --- a/applications/luci-app-olsr/luasrc/view/status-olsr/smartgw.htm +++ b/applications/luci-app-olsr/luasrc/view/status-olsr/smartgw.htm @@ -17,23 +17,23 @@ end) if luci.http.formvalue("status") == "1" then local rv = {} - for k, gw in ipairs(gws) do - gw.tcPathCost = tonumber(gw.tcPathCost)/1024 or 0 - if gw.tcPathCost == 4096 then - gw.tcPathCost = 0 + for k, gw in ipairs(gws.ipv4, gws.ipv6) do + gw.cost = tonumber(gw.cost)/1024 or 0 + if gw.cost == 4096 then + gw.cost = 0 end rv[#rv+1] = { - proto = gw.proto, - ipAddress = gw.ipAddress, - status = gw.ipv4Status or gw.ipv6Status, - tcPathCost = string.format("%.3f", gw.tcPathCost), - hopCount = gw.hopCount, - uplinkSpeed = gw.uplinkSpeed, - downlinkSpeed = gw.downlinkSpeed, - v4 = gw.ipv4 and luci.i18n.translate('yes') or luci.i18n.translate('no'), - v6 = gw.ipv6 and luci.i18n.translate('yes') or luci.i18n.translate('no'), - externalPrefix = gw.externalPrefix + proto = gw.IPv4 and '4' or '6', + originator = gw.originator, + selected = gw.selected and luci.i18n.translate('yes') or luci.i18n.translate('no'), + cost = string.format("%.3f", gw.cost), + hops = gw.hops, + uplink = gw.uplink, + downlink = gw.downlink, + v4 = gw.IPv4 and luci.i18n.translate('yes') or luci.i18n.translate('no'), + v6 = gw.IPv6 and luci.i18n.translate('yes') or luci.i18n.translate('no'), + prefix = gw.prefix } end luci.http.prepare_content("application/json") @@ -58,9 +58,9 @@ XHR.poll(10, '<%=REQUEST_URI%>', { status: 1 }, var linkgw; s += '
' if (smartgw.proto == '6') { - linkgw = '' + smartgw.ipAddress + '' + linkgw = '' + smartgw.originator + '' } else { - linkgw = '' + smartgw.ipAddress + '' + linkgw = '' + smartgw.originator + '' } s += String.format( @@ -73,7 +73,7 @@ XHR.poll(10, '<%=REQUEST_URI%>', { status: 1 }, '
%s
' + '
%s
' + '
%s
', - linkgw, smartgw.status, smartgw.tcPathCost, smartgw.hopCount, smartgw.uplinkSpeed, smartgw.downlinkSpeed, smartgw.v4, smartgw.v6, smartgw.externalPrefix + linkgw, smartgw.selected, smartgw.cost, smartgw.hops, smartgw.uplink, smartgw.downlink, smartgw.v4, smartgw.v6, smartgw.prefix ) s += '
' } @@ -98,7 +98,7 @@ XHR.poll(10, '<%=REQUEST_URI%>', { status: 1 },
<%:Gateway%>
-
<%:Status%>
+
<%:Selected%>
<%:ETX%>
<%:Hops%>
<%:Uplink%>
@@ -113,27 +113,27 @@ XHR.poll(10, '<%=REQUEST_URI%>', { status: 1 },
<% for k, gw in ipairs(gws) do - gw.tcPathCost = tonumber(gw.tcPathCost)/1024 or 0 - if gw.tcPathCost == 4096 then - gw.tcPathCost = 0 + gw.cost = tonumber(gw.cost)/1024 or 0 + if gw.cost == 4096 then + gw.cost = 0 end %>
<% if gw.proto == '6' then %> - + <% else %> - + <% end %> -
<%=gw.ipv4Status or gw.ipv6Status or '-' %>
-
<%=string.format("%.3f", gw.tcPathCost)%>
-
<%=gw.hopCount%>
-
<%=gw.uplinkSpeed%>
-
<%=gw.downlinkSpeed%>
-
<%=gw.ipv4 and luci.i18n.translate('yes') or luci.i18n.translate('no')%>
-
<%=gw.ipv6 and luci.i18n.translate('yes') or luci.i18n.translate('no')%>
-
<%=gw.externalPrefix%>
+
<%=gw.selected and luci.i18n.translate('yes') or luci.i18n.translate('no')%>
+
<%=string.format("%.3f", gw.cost)%>
+
<%=gw.hops%>
+
<%=gw.uplink%>
+
<%=gw.downlink%>
+
<%=gw.IPv4 and luci.i18n.translate('yes') or luci.i18n.translate('no')%>
+
<%=gw.IPv6 and luci.i18n.translate('yes') or luci.i18n.translate('no')%>
+
<%=gw.prefix%>
<% i = ((i % 2) + 1) -- 2.25.1