diff options
Diffstat (limited to 'applications/luci-app-vnstat2/luasrc/view/vnstat2/graphs.htm')
-rw-r--r-- | applications/luci-app-vnstat2/luasrc/view/vnstat2/graphs.htm | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/applications/luci-app-vnstat2/luasrc/view/vnstat2/graphs.htm b/applications/luci-app-vnstat2/luasrc/view/vnstat2/graphs.htm new file mode 100644 index 0000000000..318611a9d6 --- /dev/null +++ b/applications/luci-app-vnstat2/luasrc/view/vnstat2/graphs.htm @@ -0,0 +1,55 @@ +<%# + This is free software, licensed under the Apache License, Version 2.0 +-%> + +<%- + +local util = require "luci.util" +local json = require "luci.jsonc" + + +local ifaces = {} + +local data = util.exec("vnstat --json f 1 2>/dev/null") +local content = json.parse(data) +if type(content) == "table" then + for _, iface in pairs(content["interfaces"]) do + table.insert(ifaces, iface["name"]) + end +end + + +local function render_section(style, title) + %><div class="cbi-section" data-tab="<%=style%>" data-tab-title="<%=title%>"><% + + for _, iface in ipairs(ifaces) do + %><p><img src="<%=url("admin/status/vnstat2/graph")%>?iface=<%=iface%>&style=<%=style%>" alt="" style="max-width:100%" /></p><% + end + + %></div><% +end + + +-%> + +<%+header%> + +<h2 name="content"><%:vnStat Graphs%></h2> + +<div> + <% + if #ifaces == 0 then + %><p><em><%:No monitored interfaces have been found. Go to the configuration to enable monitoring for one or more interfaces.%></em></p><% + else + render_section("s", translate("Summary")) + render_section("t", translate("Top")) + render_section("5", translate("5 Minute")) + render_section("h", translate("Hourly")) + render_section("d", translate("Daily")) + render_section("m", translate("Monthly")) + render_section("y", translate("Yearly")) + end + %> +</div> + +<%+footer%> |