[applications]: multiwan: Added Fast Balancer Option, added mini menu

This commit is contained in:
Craig M. Coffee 2010-05-14 12:52:44 +00:00
parent b2254ac625
commit dc217653e2
5 changed files with 82 additions and 1 deletions

View file

@ -10,4 +10,9 @@ function index()
page.i18n = "multiwan" page.i18n = "multiwan"
page.dependent = true page.dependent = true
local page = entry({"mini", "network", "multiwan"}, cbi("multiwan/multiwanmini", {autoapply=true}), "Multi-WAN")
page.i18n = "multiwan"
page.dependent = true
end end

View file

@ -21,6 +21,7 @@ end
default_route = s:option(ListValue, "default_route", translate("Default Route")) default_route = s:option(ListValue, "default_route", translate("Default Route"))
luci.tools.webadmin.cbi_add_networks(default_route) luci.tools.webadmin.cbi_add_networks(default_route)
default_route:value("fastbalancer", translate("Fast Balancer"))
default_route:value("balancer", translate("Load Balancer")) default_route:value("balancer", translate("Load Balancer"))
default_route.default = "balancer" default_route.default = "balancer"
default_route.optional = false default_route.optional = false
@ -102,6 +103,7 @@ recovery.rmempty = false
failover_to = s:option(ListValue, "failover_to", translate("Failover Traffic Destination")) failover_to = s:option(ListValue, "failover_to", translate("Failover Traffic Destination"))
failover_to:value("disable", translate("None")) failover_to:value("disable", translate("None"))
luci.tools.webadmin.cbi_add_networks(failover_to) luci.tools.webadmin.cbi_add_networks(failover_to)
failover_to:value("fastbalancer", translate("Fast Balancer"))
failover_to:value("balancer", translate("Load Balancer")) failover_to:value("balancer", translate("Load Balancer"))
failover_to.default = "balancer" failover_to.default = "balancer"
failover_to.optional = false failover_to.optional = false
@ -142,8 +144,9 @@ ports:value("", translate("all", translate("all")))
wanrule = s:option(ListValue, "wanrule", translate("WAN Uplink")) wanrule = s:option(ListValue, "wanrule", translate("WAN Uplink"))
luci.tools.webadmin.cbi_add_networks(wanrule) luci.tools.webadmin.cbi_add_networks(wanrule)
wanrule:value("fastbalancer", translate("Fast Balancer"))
wanrule:value("balancer", translate("Load Balancer")) wanrule:value("balancer", translate("Load Balancer"))
wanrule.default = "balancer" wanrule.default = "fastbalancer"
wanrule.optional = false wanrule.optional = false
wanrule.rmempty = false wanrule.rmempty = false

View file

@ -0,0 +1,65 @@
require("luci.tools.webadmin")
m = Map("multiwan", translate("Multi-WAN"),
translate("Multi-WAN allows for the use of multiple uplinks for load balancing and failover."))
s = m:section(NamedSection, "config", "multiwan", "")
e = s:option(Flag, "enabled", translate("Enable"))
e.rmempty = false
function e.write(self, section, value)
local cmd = (value == "1") and "enable" or "disable"
if value ~= "1" then
os.execute("/etc/init.d/multiwan stop")
end
os.execute("/etc/init.d/multiwan " .. cmd)
end
function e.cfgvalue(self, section)
return (os.execute("/etc/init.d/multiwan enabled") == 0) and "1" or "0"
end
default_route = s:option(ListValue, "default_route", translate("Default Route"))
luci.tools.webadmin.cbi_add_networks(default_route)
default_route:value("fastbalancer", translate("Fast Balancer"))
default_route:value("balancer", translate("Load Balancer"))
default_route.default = "balancer"
default_route.optional = false
default_route.rmempty = false
s = m:section(TypedSection, "mwanfw", translate("Multi-WAN Traffic Rules"),
translate("Configure rules for directing outbound traffic through specified WAN Uplinks."))
s.template = "cbi/tblsection"
s.anonymous = true
s.addremove = true
src = s:option(Value, "src", translate("Source Address"))
src.rmempty = true
src:value("", translate("all"))
luci.tools.webadmin.cbi_add_knownips(src)
dst = s:option(Value, "dst", translate("Destination Address"))
dst.rmempty = true
dst:value("", translate("all"))
luci.tools.webadmin.cbi_add_knownips(dst)
proto = s:option(ListValue, "proto", translate("Protocol"))
proto:value("", translate("all"))
proto:value("tcp", "TCP")
proto:value("udp", "UDP")
proto:value("icmp", "ICMP")
proto.rmempty = true
ports = s:option(Value, "ports", translate("Ports"))
ports.rmempty = true
ports:value("", translate("all", translate("all")))
wanrule = s:option(ListValue, "wanrule", translate("WAN Uplink"))
luci.tools.webadmin.cbi_add_networks(wanrule)
wanrule:value("fastbalancer", translate("Fast Balancer"))
wanrule:value("balancer", translate("Load Balancer"))
wanrule.default = "fastbalancer"
wanrule.optional = false
wanrule.rmempty = false
return m

View file

@ -119,3 +119,8 @@ msgstr "DNS Server(s)"
msgid "Enable" msgid "Enable"
msgstr "Enable" msgstr "Enable"
#: /tmp/i18n/luasrc/i18n/multiwan.en.lua:24
#. Fast Balancer
msgid "Fast Balancer"
msgstr "Fast Balancer"

View file

@ -32,6 +32,9 @@ msgstr ""
msgid "Failover Traffic Destination" msgid "Failover Traffic Destination"
msgstr "" msgstr ""
msgid "Fast Balancer"
msgstr ""
msgid "Health Monitor ICMP Host(s)" msgid "Health Monitor ICMP Host(s)"
msgstr "" msgstr ""