NIU:
[project/luci.git] / modules / niu / luasrc / model / cbi / niu / wireless / apdevice.lua
index 98f5fc5..66b21ab 100644 (file)
@@ -12,22 +12,35 @@ You may obtain a copy of the License at
 $Id$
 ]]--
 local niulib = require "luci.niulib"
+local cursor = require "luci.model.uci".inst
 
-m = Map("wireless", "Configure Private Access Point")
-s = m:section(NamedSection, "ap", "interface", translate("Wireless Radio Device"),
+m = Map("wireless", translate("Configure Private Access Point"))
+s = m:section(NamedSection, "ap", "wifi-iface", translate("Wireless Radio Device"),
 translate(
 "Select the wireless radio device that should be used to run the interface."..
 " Note that wireless radios will not show up here if you already use"..
-" them for other wireless services and are not capable of being used as"..
-" an access point in parallel."))
+" them for other wireless services and are not capable of being used by"..
+" more than one service simultaneously or run this specific service at all."))
 s.anonymous = true
 s.addremove = false
 
-l = s:option(ListValue, "device", "Device providing Access Point")
+local l = s:option(ListValue, "device", translate("Wireless Device"))
 
 for _, wifi in ipairs(niulib.wifi_get_available("ap")) do
-       l:value(wifi, "WLAN-Adapter (%s)" % wifi)
+       l:value(wifi, translate("WLAN-Adapter (%s)") % wifi)
+end
+l:value("none", translate("Disable Private Access Point"))
+
+
+local extend = cursor:get("wireless", "bridge", "network")
+       and cursor:get("wireless", "bridge", "ssid")
+       
+if extend ~= cursor:get("wireless", "ap", "ssid") then
+       local templ = s:option(ListValue, "_cfgtpl", translate("Configuration Template"))
+       templ:depends({["!default"] = 1})
+       templ:depends({["!reverse"] = 1, device = "none"})
+       templ:value("", translate("Access Point (Current Settings)"))
+       templ:value("bridge", translate("Extend network %s") % extend)
 end
-l:value("none", "Disable Private Access Point")
 
 return m