self.packages[scheme] = sc()
return true
else
- return false, so:error(ERR.SME_READ(so,file))
- end
+ return false, so:error(ERR.SME_READ(so,bc))
+ end
end
end
local oo = so:option(r[3])
local eo = oo:enum(v.value)
- if t.type ~= "enum" then
+ if t.type ~= "enum" and t.type ~= "reference" then
return false, scheme:error(ERR.SME_EBADTYPE(eo))
end
uvlitem = luci.util.class()
function uvlitem.cid(self)
- return table.concat( self.cref, '.' )
+ if #self.cref == 1 then
+ return self.cref[1]
+ else
+ local r = { unpack(self.cref) }
+ local c = self.c
+ if c and c[r[2]] and c[r[2]]['.anonymous'] and c[r[2]]['.index'] then
+ r[2] = '@' .. c[r[2]]['.type'] ..
+ '[' .. tostring(c[r[2]]['.index']) .. ']'
+ end
+ return table.concat( r, '.' )
+ end
end
function uvlitem.sid(self)
--- Get the value of this option.
-- @return The associated configuration value
function option.value(self)
- local v = self:config()
+ local v = self:config() or self:scheme('default')
if v and self:scheme('multival') then
v = luci.util.split( v, "%s+", nil, true )
end