From 7d08bec3ae84c79c17718cf794427fef7af37085 Mon Sep 17 00:00:00 2001
From: Steven Barth
Date: Sun, 17 Aug 2008 00:19:44 +0000
Subject: [PATCH] modules/admin-mini: Revised homepage
---
.../luasrc/controller/mini/index.lua | 2 +-
.../luasrc/model/cbi/mini/index.lua | 105 ++++++++++++++++
modules/admin-mini/luasrc/view/mini/index.htm | 113 ------------------
.../admin-mini/luasrc/view/mini/index2.htm | 54 +++++++++
4 files changed, 160 insertions(+), 114 deletions(-)
create mode 100644 modules/admin-mini/luasrc/model/cbi/mini/index.lua
create mode 100644 modules/admin-mini/luasrc/view/mini/index2.htm
diff --git a/modules/admin-mini/luasrc/controller/mini/index.lua b/modules/admin-mini/luasrc/controller/mini/index.lua
index a1a29b5ce..77847dccc 100644
--- a/modules/admin-mini/luasrc/controller/mini/index.lua
+++ b/modules/admin-mini/luasrc/controller/mini/index.lua
@@ -33,7 +33,7 @@ function index()
page.ucidata = true
entry({"mini", "index"}, alias("mini", "index", "index"), i18n("overview"), 10)
- entry({"mini", "index", "index"}, template("mini/index"), i18n("general"), 1)
+ entry({"mini", "index", "index"}, form("mini/index"), i18n("general"), 1)
entry({"mini", "index", "luci"}, cbi("mini/luci"), i18n("settings"), 10)
entry({"mini", "index", "logout"}, call("action_logout"), i18n("logout"))
end
diff --git a/modules/admin-mini/luasrc/model/cbi/mini/index.lua b/modules/admin-mini/luasrc/model/cbi/mini/index.lua
new file mode 100644
index 000000000..eb7d77eb1
--- /dev/null
+++ b/modules/admin-mini/luasrc/model/cbi/mini/index.lua
@@ -0,0 +1,105 @@
+--[[
+LuCI - Lua Configuration Interface
+
+Copyright 2008 Steven Barth
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+$Id$
+]]--
+require("luci.sys")
+require("luci.tools.webadmin")
+
+w = Template("mini/index")
+
+f = SimpleForm("main", translate("system"))
+f.reset = false
+f.submit = false
+
+local system, model, memtotal, memcached, membuffers, memfree = luci.sys.sysinfo()
+local uptime = luci.sys.uptime()
+f:field(DummyValue, "_system", translate("system")).value = system
+f:field(DummyValue, "_cpu", translate("m_i_processor")).value = model
+
+local load1, load5, load15 = luci.sys.loadavg()
+f:field(DummyValue, "_la", translate("load")).value =
+ string.format("%.2f, %.2f, %.2f", load1, load5, load15)
+
+f:field(DummyValue, "_memtotal", translate("m_i_memory")).value =
+ string.format("%.2f MB (%.0f%% %s, %.0f%% %s, %.0f%% %s)",
+ tonumber(memtotal) / 1024,
+ 100 * memcached / memtotal,
+ translate("mem_cached") or "",
+ 100 * membuffers / memtotal,
+ translate("mem_buffered") or "",
+ 100 * memfree / memtotal,
+ translate("mem_free") or "")
+
+f:field(DummyValue, "_systime", translate("m_i_systemtime")).value =
+ os.date("%c")
+
+f:field(DummyValue, "_uptime", translate("m_i_uptime")).value =
+ luci.tools.webadmin.date_format(tonumber(uptime))
+
+
+m = Map("network", translate("interfaces"))
+local netstat = luci.sys.net.deviceinfo()
+
+m.parse = function() end
+
+s = m:section(TypedSection, "interface", "")
+s.template = "cbi/tblsection"
+
+function s.filter(self, section)
+ return section ~= "loopback" and section
+end
+
+hwaddr = s:option(DummyValue, "_hwaddr")
+function hwaddr.cfgvalue(self, section)
+ local ix = self.map:stateget(section, "ifname") or ""
+ return luci.fs.readfile("/sys/class/net/" .. ix .. "/address") or "n/a"
+end
+
+
+ipaddr = s:option(DummyValue, "ipaddr", translate("ipaddress"))
+ipaddr.stateful = true
+
+ipaddr = s:option(DummyValue, "netmask", translate("netmask"))
+ipaddr.stateful = true
+
+txrx = s:option(DummyValue, "_txrx")
+
+function txrx.cfgvalue(self, section)
+ local ix = self.map:stateget(section, "ifname")
+
+ local rx = netstat and netstat[ix] and netstat[ix][1]
+ rx = rx and luci.tools.webadmin.byte_format(tonumber(rx)) or "-"
+
+ local tx = netstat and netstat[ix] and netstat[ix][9]
+ tx = tx and luci.tools.webadmin.byte_format(tonumber(tx)) or "-"
+
+ return string.format("%s / %s", tx, rx)
+end
+
+errors = s:option(DummyValue, "_err")
+
+function errors.cfgvalue(self, section)
+ local ix = self.map:stateget(section, "ifname")
+
+ local rx = netstat and netstat[ix] and netstat[ix][3]
+ local tx = netstat and netstat[ix] and netstat[ix][11]
+
+ rx = rx and tostring(rx) or "-"
+ tx = tx and tostring(tx) or "-"
+
+ return string.format("%s / %s", tx, rx)
+end
+
+
+
+w2 = Template("mini/index2")
+return w, f, m, w2
\ No newline at end of file
diff --git a/modules/admin-mini/luasrc/view/mini/index.htm b/modules/admin-mini/luasrc/view/mini/index.htm
index e00100c18..385deaf7a 100644
--- a/modules/admin-mini/luasrc/view/mini/index.htm
+++ b/modules/admin-mini/luasrc/view/mini/index.htm
@@ -11,22 +11,6 @@ You may obtain a copy of the License at
$Id$
--%>
-<%+header%>
-<%-
-local system, model, memtotal = luci.sys.sysinfo()
-
-local uptime = luci.sys.uptime()
-uptime = tonumber(uptime)
-
-local utdays = math.floor(uptime / 86400)
-uptime = uptime % 86400
-local uthour = math.floor(uptime / 3600)
-uptime = uptime % 3600
-local utmins = math.floor(uptime / 60)
-local utsecs = uptime % 60
-
-local iwconfig = luci.sys.wifi.getiwconfig()
-%>
<%:a_i_i_hello%>
<%:a_i_i_admin1%>
@@ -34,100 +18,3 @@ local iwconfig = luci.sys.wifi.getiwconfig()
<%:a_i_i_admin3%>
<%:a_i_i_admin6%>
<%:a_i_i_team%>
-
-
-
-Systemstatus
-
-
- <%:hostname%>: |
- <%=luci.sys.hostname()%> |
-
-
- <%:system%>: |
- <%=system%> |
-
-
- <%:m_i_processor%>: |
- <%=model%> |
-
-
- <%:m_i_memory%>: |
- <%=string.format("%.2f", tonumber(memtotal) / 1024)%> MiB |
-
-
- <%:m_i_systemtime%>: |
- <%=os.date("%c")%> |
-
-
- <%:m_i_uptime%>: |
- <%=string.format("%dd %d:%d:%.0f", utdays, uthour, utmins, utsecs)%> |
-
-
-
-
-
-<%:m_n_local%>
-
-
- <%:ipaddress%>: |
- <%=luci.model.uci.get_statevalue("network", "lan", "ipaddr")%> |
-
-
- <%:netmask%>: |
- <%=luci.model.uci.get_statevalue("network", "lan", "netmask")%> |
-
-
-
-
-
-<%:m_n_inet%>
-
-
- <%:ipaddress%>: |
- <%=luci.model.uci.get_statevalue("network", "wan", "ipaddr")%> |
-
-
- <%:netmask%>: |
- <%=luci.model.uci.get_statevalue("network", "wan", "netmask")%> |
-
-
-
-<%- if next(iwconfig) then %>
-<%:wifi%>
-
-
-
-<%:name%> |
-<%:protocol%> |
-<%:frequency%> |
-<%:power%> |
-<%:bitrate%> |
-<%:rts%> |
-<%:frag%> |
-<%:link%> |
-<%:signal%> |
-<%:noise%> |
-
-<%for k, v in pairs(iwconfig) do
-%>
-
-<%=k%> |
-<%=v[1]%> |
-<%=v.Frequency%> |
-<%=v["Tx-Power"]%> |
-<%=v["Bit Rate"]%> |
-<%=v["RTS thr"]%> |
-<%=v["Fragment thr"]%> |
-<%=v["Link Quality"]%> |
-<%=v["Signal level"]%> |
-<%=v["Noise level"]%> |
-
-
-ESSID: <%=v.ESSID%> |
-BSSID: <%=(v.Cell or v["Access Point"])%> |
-
-<%end%>
-
-<%-end%>
-<%+footer%>
diff --git a/modules/admin-mini/luasrc/view/mini/index2.htm b/modules/admin-mini/luasrc/view/mini/index2.htm
new file mode 100644
index 000000000..741ef7c46
--- /dev/null
+++ b/modules/admin-mini/luasrc/view/mini/index2.htm
@@ -0,0 +1,54 @@
+<%#
+LuCI - Lua Configuration Interface
+Copyright 2008 Steven Barth
+Copyright 2008 Jo-Philipp Wich
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+$Id$
+
+-%>
+<%
+local iwconfig = luci.sys.wifi.getiwconfig()
+if next(iwconfig) then
+%>
+<%:wifi%>
+
+
+
+<%:name%> |
+<%:protocol%> |
+<%:frequency%> |
+<%:power%> |
+<%:bitrate%> |
+<%:rts%> |
+<%:frag%> |
+<%:link%> |
+<%:signal%> |
+<%:noise%> |
+
+<%for k, v in pairs(iwconfig) do
+%>
+
+<%=k%> |
+<%=v[1]%> |
+<%=v.Frequency%> |
+<%=v["Tx-Power"]%> |
+<%=v["Bit Rate"]%> |
+<%=v["RTS thr"]%> |
+<%=v["Fragment thr"]%> |
+<%=v["Link Quality"]%> |
+<%=v["Signal level"]%> |
+<%=v["Noise level"]%> |
+
+
+ESSID: <%=v.ESSID%> |
+BSSID: <%=(v.Cell or v["Access Point"])%> |
+
+<%end%>
+
+<%-end%>
\ No newline at end of file
--
2.25.1