modules/admin-full: Improved system configuration page
authorSteven Barth <steven@midlink.org>
Fri, 18 Jul 2008 14:08:34 +0000 (14:08 +0000)
committerSteven Barth <steven@midlink.org>
Fri, 18 Jul 2008 14:08:34 +0000 (14:08 +0000)
modules/admin-mini: Introduced system configuration page

i18n/english/luasrc/i18n/admin-core.en.lua
i18n/german/luasrc/i18n/admin-core.de.lua
modules/admin-full/luasrc/model/cbi/admin_system/system.lua
modules/admin-mini/luasrc/controller/mini/network.lua
modules/admin-mini/luasrc/controller/mini/system.lua
modules/admin-mini/luasrc/model/cbi/mini/system.lua [new file with mode: 0644]

index bc07343..abfba40 100644 (file)
@@ -43,6 +43,7 @@ routes_netmask = "Netmask"
 routes_gateway = "Gateway"
 routes_metric = "Metric"
 
+a_s_desc = "Here you can configure the basic aspects of your device like its hostname or the timezone."
 a_s_packages = "Software"
 a_s_changepw = "Admin Password"
 a_s_p_ipkg = "IPKG-Configuration"
@@ -245,4 +246,9 @@ m_w_ap = "Provide (Access Point)"
 m_w_adhoc = "Independent (Ad-Hoc)"
 m_w_client = "Join (Client)"
 m_w_wds = "Distributed (WDS)"
-m_w_clientmode = "Clientmode"
\ No newline at end of file
+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
index 3d986be..989b586 100644 (file)
@@ -50,6 +50,7 @@ a_s_changepw = [[Passwort ändern]]
 a_s_changepw1 = [[Ändert das Passwort des Systemverwalters (Benutzer "root")]]
 a_s_changepw_changed = [[Passwort erfolgreich geändert]]
 a_s_changepw_nomatch = [[Passwörter stimmen nicht überein]]
+a_s_desc = "An dieser Stelle können Grundeinstellungen des Systems wie Hostname oder Zeitzone vorgenommen werden."
 a_s_flash = [[Upgrade]]
 a_s_flash_flashed = [[Flashvorgang erfolgreich. Router startet neu...]]
 a_s_flash_flasherr = [[Flashvorgang fehlgeschlagen]]
@@ -258,4 +259,10 @@ m_w_ap = "Anbieten (Access Point)"
 m_w_adhoc = "Unabhängig (Ad-Hoc)"
 m_w_client = "Einklinken (Client)"
 m_w_wds = "Verteilen (WDS)"
-m_w_clientmode = "Verbindungsmodus"
\ No newline at end of file
+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
index dd59d8c..260bac1 100644 (file)
@@ -11,12 +11,29 @@ You may obtain a copy of the License at
 
 $Id$
 ]]--
-m = Map("system", translate("system"))
+require("luci.http.protocol.date")
+
+m = Map("system", translate("system"), translate("a_s_desc"))
 
 s = m:section(TypedSection, "system", "")
 s.anonymous = true
 
 s:option(Value, "hostname", translate("hostname"))
-s:option(Value, "timezone", translate("timezone"))
 
+tz = s:option(ListValue, "timezone", translate("timezone"))
+for k, offset in luci.util.vspairs(luci.http.protocol.date.TZ) do
+       local zone = k:upper()  
+       local osgn = (offset > 0 and "+" or "")
+       local ohrs = math.floor(offset / 3600)
+       local omin = (offset % 3600) / 60
+       
+       local ptz = zone .. osgn .. (ohrs ~= 0 and ohrs or "") .. (omin ~= 0 and ":" .. omin or "")
+       local dtz = string.format("%+03d:%02d ", ohrs, omin) .. zone
+       
+       tz:value(ptz, dtz)
+end
+
+s:option(Value, "log_size", nil, "kiB").optional = true
+s:option(Value, "log_ip").optional = true
+s:option(Value, "conloglevel").optional = true
 return m
\ No newline at end of file
index d59dbe7..838bc9b 100644 (file)
@@ -19,7 +19,6 @@ function index()
        luci.i18n.loadc("admin-core")
        local i18n = luci.i18n.translate
 
-       entry({"mini", "network"}, alias("mini", "network", "basic"), i18n("network"), 20)
-       entry({"mini", "network", "basic"}, cbi("mini/network"), i18n("basicsettings"), 10)
+       entry({"mini", "network"}, cbi("mini/network"), i18n("network"), 20)
        entry({"mini", "network", "dhcp"}, cbi("mini/dhcp"), "DHCP", 20)
 end
\ No newline at end of file
index 9cc5b18..b24c1c0 100644 (file)
@@ -19,7 +19,7 @@ function index()
        luci.i18n.loadc("admin-core")
        local i18n = luci.i18n.translate
 
-       entry({"mini", "system"}, call("action_reboot"), i18n("system"))
+       entry({"mini", "system"}, cbi("mini/system"), i18n("system"))
        entry({"mini", "system", "passwd"}, call("action_passwd"), i18n("a_s_changepw"), 10)
        entry({"mini", "system", "upgrade"}, call("action_upgrade"), i18n("a_s_flash"), 90)
        entry({"mini", "system", "reboot"}, call("action_reboot"), i18n("reboot"), 100)
diff --git a/modules/admin-mini/luasrc/model/cbi/mini/system.lua b/modules/admin-mini/luasrc/model/cbi/mini/system.lua
new file mode 100644 (file)
index 0000000..06f8707
--- /dev/null
@@ -0,0 +1,36 @@
+--[[
+LuCI - Lua Configuration Interface
+
+Copyright 2008 Steven Barth <steven@midlink.org>
+
+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.http.protocol.date")
+
+m = Map("system", translate("system"), translate("a_s_desc"))
+
+s = m:section(TypedSection, "system", "")
+s.anonymous = true
+
+s:option(Value, "hostname", translate("hostname"))
+
+tz = s:option(ListValue, "timezone", translate("timezone"))
+for k, offset in luci.util.vspairs(luci.http.protocol.date.TZ) do
+       local zone = k:upper()  
+       local osgn = (offset > 0 and "+" or "")
+       local ohrs = math.floor(offset / 3600)
+       local omin = (offset % 3600) / 60
+       
+       local ptz = zone .. osgn .. (ohrs ~= 0 and ohrs or "") .. (omin ~= 0 and ":" .. omin or "")
+       local dtz = string.format("%+03d:%02d ", ohrs, omin) .. zone
+       
+       tz:value(ptz, dtz)
+end
+
+return m
\ No newline at end of file