summaryrefslogtreecommitdiffstats
path: root/acf2/model
diff options
context:
space:
mode:
authorKaarle Ritvanen <kaarle.ritvanen@datakunkku.fi>2014-02-23 22:48:10 +0200
committerKaarle Ritvanen <kaarle.ritvanen@datakunkku.fi>2014-02-26 16:52:56 +0200
commit728c851a40146e6a9bbf8334651c14857a8301a2 (patch)
treee6b84045afc47329c09f7f6df9ab929af95f32e1 /acf2/model
parent14a41b574b937a8b904c609ea55dfe72810a0019 (diff)
downloadacf2-728c851a40146e6a9bbf8334651c14857a8301a2.tar.bz2
acf2-728c851a40146e6a9bbf8334651c14857a8301a2.tar.xz
model: configurable detail fields
Diffstat (limited to 'acf2/model')
-rw-r--r--acf2/model/aaa.lua5
-rw-r--r--acf2/model/field.lua8
2 files changed, 9 insertions, 4 deletions
diff --git a/acf2/model/aaa.lua b/acf2/model/aaa.lua
index dcd9a58..7a650a8 100644
--- a/acf2/model/aaa.lua
+++ b/acf2/model/aaa.lua
@@ -4,6 +4,7 @@ See LICENSE file for license details
--]]
local M = require('acf2.model')
+local object = require('acf2.object')
local digest = require('crypto').digest
@@ -19,7 +20,9 @@ end
local hash_pattern = '^(%w+)%$(%w+)%$%x+$'
-local Password = require('acf2.object').class(M.String)
+local Password = object.class(M.String)
+
+function Password:init() object.super(self, Password):init{detail=true} end
function Password:normalize(context, value)
if value:find(hash_pattern) then return value end
diff --git a/acf2/model/field.lua b/acf2/model/field.lua
index 69f36c6..76c8931 100644
--- a/acf2/model/field.lua
+++ b/acf2/model/field.lua
@@ -139,7 +139,8 @@ function M.Field:meta(context)
end,
choice
),
- widget=self.widget
+ widget=self.widget,
+ detail=self.detail
}
)
end
@@ -305,8 +306,9 @@ end
M.TreeNode = class(M.Field)
function M.TreeNode:init(params)
- if not params.widget then params.widget = 'link' end
- super(self, M.TreeNode):init(params)
+ super(self, M.TreeNode):init(
+ setdefaults(params, {detail=true, widget='link'})
+ )
end
function M.TreeNode:topology(context)