2017-02-17 10:22:01 +00:00
-- ------ extra functions ------ --
function policyCheck ( ) -- check to see if this policy's name exceed the maximum of 15 characters
policyNameLength = string.len ( arg [ 1 ] )
if policyNameLength > 15 then
nameTooLong = 1
end
end
function policyWarn ( ) -- display status and warning messages at the top of the page
if nameTooLong == 1 then
2017-11-03 08:56:58 +00:00
return " <font color= \" ff0000 \" ><strong> " .. translatef ( " WARNING: This policy's name is %d characters exceeding the maximum of 15! " , policyNameLength ) .. " </strong></font> "
2017-02-17 10:22:01 +00:00
else
return " "
end
end
function cbiAddMember ( field )
uci.cursor ( ) : foreach ( " mwan3 " , " member " ,
function ( section )
field : value ( section [ " .name " ] )
end
)
end
-- ------ policy configuration ------ --
dsp = require " luci.dispatcher "
arg [ 1 ] = arg [ 1 ] or " "
nameTooLong = 0
policyCheck ( )
2017-04-09 12:38:36 +00:00
m5 = Map ( " mwan3 " , translatef ( " MWAN Policy Configuration - %s " , arg [ 1 ] ) ,
policyWarn ( ) )
2018-01-11 13:10:01 +00:00
m5.redirect = dsp.build_url ( " admin " , " network " , " mwan " , " policy " )
2017-02-17 10:22:01 +00:00
mwan_policy = m5 : section ( NamedSection , arg [ 1 ] , " policy " , " " )
mwan_policy.addremove = false
mwan_policy.dynamic = false
use_member = mwan_policy : option ( DynamicList , " use_member " , translate ( " Member used " ) )
cbiAddMember ( use_member )
last_resort = mwan_policy : option ( ListValue , " last_resort " , translate ( " Last resort " ) ,
translate ( " When all policy members are offline use this behavior for matched traffic " ) )
last_resort.default = " unreachable "
last_resort : value ( " unreachable " , translate ( " unreachable (reject) " ) )
last_resort : value ( " blackhole " , translate ( " blackhole (drop) " ) )
last_resort : value ( " default " , translate ( " default (use main routing table) " ) )
return m5