summaryrefslogtreecommitdiffhomepage
path: root/modules/admin-full
diff options
context:
space:
mode:
authorJo-Philipp Wich <jow@openwrt.org>2009-12-21 02:50:30 +0000
committerJo-Philipp Wich <jow@openwrt.org>2009-12-21 02:50:30 +0000
commitdcc617fc48f6198f933332472ec6b4b0a6823222 (patch)
treef96d2b1041eb6ee55c99b58dc6ca5cd37313f3ac /modules/admin-full
parent85eec9c21f5be8ce2b5e0d8b8b6e2f31a4f19f12 (diff)
modules/admin-full: cope with missing wireless or dnsmasq config, hide menu points if config is not present
Diffstat (limited to 'modules/admin-full')
-rw-r--r--modules/admin-full/luasrc/controller/admin/network.lua27
-rw-r--r--modules/admin-full/luasrc/controller/admin/services.lua12
2 files changed, 23 insertions, 16 deletions
diff --git a/modules/admin-full/luasrc/controller/admin/network.lua b/modules/admin-full/luasrc/controller/admin/network.lua
index df2a4c47f..459b8311e 100644
--- a/modules/admin-full/luasrc/controller/admin/network.lua
+++ b/modules/admin-full/luasrc/controller/admin/network.lua
@@ -17,6 +17,7 @@ function index()
require("luci.i18n")
local uci = require("luci.model.uci").cursor()
local i18n = luci.i18n.translate
+ local has_wifi = nixio.fs.stat("/etc/config/wireless")
local page = node("admin", "network")
page.target = alias("admin", "network", "network")
@@ -29,15 +30,17 @@ function index()
page.title = i18n("Switch")
page.order = 20
- local page = entry({"admin", "network", "wireless"}, arcombine(template("admin_network/wifi_overview"), cbi("admin_network/wifi")), i18n("Wifi"), 15)
- page.leaf = true
- page.subindex = true
+ if has_wifi and has_wifi.size > 0 then
+ local page = entry({"admin", "network", "wireless"}, arcombine(template("admin_network/wifi_overview"), cbi("admin_network/wifi")), i18n("Wifi"), 15)
+ page.leaf = true
+ page.subindex = true
- local page = entry({"admin", "network", "wireless_join"}, call("wifi_join"), nil, 16)
- page.leaf = true
+ local page = entry({"admin", "network", "wireless_join"}, call("wifi_join"), nil, 16)
+ page.leaf = true
- local page = entry({"admin", "network", "wireless_delete"}, call("wifi_delete"), nil, 16)
- page.leaf = true
+ local page = entry({"admin", "network", "wireless_delete"}, call("wifi_delete"), nil, 16)
+ page.leaf = true
+ end
local page = entry({"admin", "network", "network"}, arcombine(cbi("admin_network/network"), cbi("admin_network/ifaces")), i18n("Interfaces"), 10)
page.leaf = true
@@ -57,10 +60,12 @@ function index()
end
)
- local page = node("admin", "network", "dhcpleases")
- page.target = cbi("admin_network/dhcpleases")
- page.title = i18n("DHCP Leases")
- page.order = 30
+ if nixio.fs.access("/etc/config/dhcp") then
+ local page = node("admin", "network", "dhcpleases")
+ page.target = cbi("admin_network/dhcpleases")
+ page.title = i18n("DHCP Leases")
+ page.order = 30
+ end
local page = node("admin", "network", "hosts")
page.target = cbi("admin_network/hosts")
diff --git a/modules/admin-full/luasrc/controller/admin/services.lua b/modules/admin-full/luasrc/controller/admin/services.lua
index d2fab8ad0..b88e8ab57 100644
--- a/modules/admin-full/luasrc/controller/admin/services.lua
+++ b/modules/admin-full/luasrc/controller/admin/services.lua
@@ -46,9 +46,11 @@ function index()
page.target = cbi("admin_services/dropbear")
page.title = "Dropbear SSHd"
page.order = 20
-
- local page = node("admin", "services", "dnsmasq")
- page.target = cbi("admin_services/dnsmasq")
- page.title = "Dnsmasq"
- page.order = 30
+
+ if nixio.fs.access("/etc/config/dhcp") then
+ local page = node("admin", "services", "dnsmasq")
+ page.target = cbi("admin_services/dnsmasq")
+ page.title = "Dnsmasq"
+ page.order = 30
+ end
end