modules/admin-mini: Several tweaks, initial status page
authorSteven Barth <steven@midlink.org>
Fri, 18 Jul 2008 21:33:25 +0000 (21:33 +0000)
committerSteven Barth <steven@midlink.org>
Fri, 18 Jul 2008 21:33:25 +0000 (21:33 +0000)
i18n/english/luasrc/i18n/admin-core.en.lua
i18n/german/luasrc/i18n/admin-core.de.lua
libs/core/luasrc/sys.lua
modules/admin-mini/luasrc/model/cbi/mini/dhcp.lua
modules/admin-mini/luasrc/view/mini/index.htm

index abfba40..1c2294b 100644 (file)
@@ -251,4 +251,12 @@ m_w_clientmode = "Clientmode"
 system_system_logsize = "System log buffer size"
 system_system_logip = "External system log server"
 system_system_conloglevel = "Log output level"
-system_system_conloglevel_desc = "Level of log messages on the console"
\ No newline at end of file
+system_system_conloglevel_desc = "Level of log messages on the console"
+
+m_i_processor = "Processor"
+m_i_memory = "Memory"
+m_i_systemtime = "Local Time"
+m_i_uptime = "Uptime"
+
+m_n_d_firstaddress = "First leased address"
+m_n_d_numleases = "Number of leasesed addresses"
\ No newline at end of file
index 989b586..0597fd8 100644 (file)
@@ -265,4 +265,12 @@ m_w_clientmode = "Verbindungsmodus"
 system_system_logsize = "Größe des Systemprotokollpuffers"
 system_system_logip = "Externer Systemprotokollserver"
 system_system_conloglevel = "Protokollausgabelevel"
-system_system_conloglevel_desc = "Level auf der Konsole ausgegebener Meldungen"
\ No newline at end of file
+system_system_conloglevel_desc = "Level auf der Konsole ausgegebener Meldungen"
+
+m_i_processor = "Prozessor"
+m_i_memory = "Hauptspeicher"
+m_i_systemtime = "Lokale Zeit"
+m_i_uptime = "Laufzeit"
+
+m_n_d_firstaddress = "Erste vergebene Adresse"
+m_n_d_numleases = "Anzahl vergebener Adressen"
\ No newline at end of file
index d0195c5..9f25b84 100644 (file)
@@ -158,6 +158,13 @@ function uniqueid(bytes)
 end
 
 
+-- Returns uptime stats
+function uptime()
+       local loadavg = io.lines("/proc/uptime")()
+       return loadavg:match("^(.-) (.-)$")
+end
+
+
 group = {}
 group.getgroup = posix.getgroup
 
index 5a27f1e..0533404 100644 (file)
@@ -22,15 +22,15 @@ s.anonymous = true
 s:depends("interface", "lan")
 
 enable = s:option(ListValue, "ignore", "", "")
-enable:value(0, "enabled")
-enable:value(1, "disabled")
+enable:value(0, translate("enable"))
+enable:value(1, translate("disable"))
 
-start = s:option(Value, "start", "First address")
+start = s:option(Value, "start", translate("m_n_d_firstaddress"))
 start.rmempty = true
 start:depends("ignore", "0")
 
 
-limit = s:option(Value, "limit", "Number of leases", "")
+limit = s:option(Value, "limit", translate("m_n_d_numleases"), "")
 limit:depends("ignore", "0")
 
 function limit.cfgvalue(self, section)
index 4ea58c2..1b9e46a 100644 (file)
@@ -12,13 +12,126 @@ You may obtain a copy of the License at
 $Id$
 
 -%>
+<%
+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()
+-%>
 <%+header%>
 <h1><%:a_i_i_hello%></h1>
 <p><%:a_i_i_admin1%></p>
 <p><%:a_i_i_admin2%><br />
 <%:a_i_i_admin3%></p>
-<p><%:a_i_i_admin4%></p>
-<p><%:a_i_i_admin5%></p>
 <p><%:a_i_i_admin6%></p>
-<p><em><strong><a href="<%=controller%>/about"><%:a_i_i_team%></a></strong></em></p> 
+<p><em><strong><a href="<%=controller%>/about"><%:a_i_i_team%></a></strong></em></p>
+<br />
+<hr />
+<br />
+<h2>Systemstatus</h2>
+<table cellspacing="0" cellpadding="6" class="smalltext">
+  <tr>
+    <th><%:hostname%>:</th>
+    <td><%=luci.sys.hostname()%></td>
+  </tr>
+  <tr>
+    <th><%:system%>:</th>
+    <td><%=system%></td>
+  </tr>
+  <tr>
+    <th><%:m_i_processor%>:</th>
+    <td><%=model%></td>
+  </tr>
+  <tr>
+    <th><%:m_i_memory%>:</th>
+    <td><%=string.format("%.2f", tonumber(memtotal) / 1024)%> MiB</td>
+  </tr>
+  <tr>
+    <th><%:m_i_systemtime%>:</th>
+    <td><%=os.date("%c")%></td>
+  </tr>
+  <tr>
+    <th><%:m_i_uptime%>:</th>
+    <td><%=string.format("%dd %d:%d:%.0f", utdays, uthour, utmins, utsecs)%></td>
+  </tr>
+</table>
+
+
+<%- if luci.model.uci.get_statevalue("network", "lan", "up") == "1" then %>
+<br />
+<h2><%:m_n_local%></h2>
+<table cellspacing="0" cellpadding="6" class="smalltext">
+  <tr>
+    <th><%:ipaddress%>:</th>
+    <td><%=luci.model.uci.get_statevalue("network", "lan", "ipaddr")%></td>
+  </tr>
+  <tr>
+    <th><%:netmask%>:</th>
+    <td><%=luci.model.uci.get_statevalue("network", "lan", "netmask")%></td>
+  </tr>
+</table>
+<%- end %>
+
+
+<%- if luci.model.uci.get_statevalue("network", "lan", "up") == "1" then %>
+<br />
+<h2><%:m_n_inet%></h2>
+<table cellspacing="0" cellpadding="6" class="smalltext">
+  <tr>
+    <th><%:ipaddress%>:</th>
+    <td><%=luci.model.uci.get_statevalue("network", "wan", "ipaddr")%></td>
+  </tr>
+  <tr>
+    <th><%:netmask%>:</th>
+    <td><%=luci.model.uci.get_statevalue("network", "wan", "netmask")%></td>
+  </tr>
+</table>
+<%- end %>
+
+<%- if next(iwconfig) then %> 
+<h2><%:wifi%></h2>
+<br />
+<table cellspacing="0" cellpadding="6" class="smalltext">
+<tr>
+<th><%:name%></th>
+<th><%:protocol%></th>
+<th><%:frequency%></th>
+<th><%:power%></th>
+<th><%:bitrate%></th>
+<th><%:rts%></th>
+<th><%:frag%></th>
+<th><%:link%></th>
+<th><%:signal%></th>
+<th><%:noise%></th>
+</tr>
+<%for k, v in pairs(iwconfig) do
+%>
+<tr>
+<td rowspan="2"><%=k%></td>
+<td><%=v[1]%></td>
+<td><%=v.Frequency%></td>
+<td><%=v["Tx-Power"]%></td>
+<td><%=v["Bit Rate"]%></td>
+<td><%=v["RTS thr"]%></td>
+<td><%=v["Fragment thr"]%></td>
+<td><%=v["Link Quality"]%></td>
+<td><%=v["Signal level"]%></td>
+<td><%=v["Noise level"]%></td>
+</tr>
+<tr>
+<td colspan="4"><strong>ESSID: </strong><%=v.ESSID%></td>
+<td colspan="5"><strong>BSSID: </strong><%=(v.Cell or v["Access Point"])%></td>
+</tr>
+<%end%>
+</table>
+<%-end%>
 <%+footer%>
\ No newline at end of file