bsw/jbe@52: slot.put_into("title", _"Policies") bsw/jbe@52: bsw/jbe@52: util.help("policy.list", _"Policies") bsw/jbe@52: local policies = Policy:new_selector() bsw/jbe@52: :add_where("active") bsw/jbe@52: :add_order_by("index") bsw/jbe@52: :exec() bsw/jbe@52: bsw/jbe@52: ui.list{ bsw/jbe@52: records = policies, bsw/jbe@52: columns = { bsw/jbe@52: { bsw/jbe@52: label_attr = { width = "500" }, bsw/jbe@52: label = _"Policy", bsw/jbe@52: content = function(policy) bsw/jbe@52: ui.tag{ bsw/jbe@52: tag = "div", bsw/jbe@52: attr = { style = "font-weight: bold" }, bsw/jbe@52: content = function() bsw/jbe@52: slot.put(encode.html(policy.name)) bsw/jbe@52: if not policy.active then bsw/jbe@52: slot.put(" (", _"disabled", ")") bsw/jbe@52: end bsw/jbe@52: end bsw/jbe@52: } bsw/jbe@52: ui.tag{ bsw/jbe@52: tag = "div", bsw/jbe@52: content = policy.description bsw/jbe@52: } bsw/jbe@52: end bsw/jbe@52: }, bsw/jbe@52: { bsw/jbe@52: label_attr = { width = "200" }, bsw/jbe@52: label = _"Phases", bsw/jbe@52: content = function(policy) bsw/jbe@52: ui.field.text{ label = _"New" .. ":", value = "≤ " .. policy.admission_time } bsw/jbe@52: ui.field.text{ label = _"Discussion" .. ":", value = policy.discussion_time } bsw/jbe@52: ui.field.text{ label = _"Frozen" .. ":", value = policy.verification_time } bsw/jbe@52: ui.field.text{ label = _"Voting" .. ":", value = policy.voting_time } bsw/jbe@52: end bsw/jbe@52: }, bsw/jbe@52: { bsw/jbe@52: label_attr = { width = "200" }, bsw/jbe@52: label = _"Quorum", bsw/jbe@52: content = function(policy) bsw/jbe@52: ui.field.text{ bsw/jbe@52: label = _"Issue quorum" .. ":", bsw/jbe@52: value = "≥ " .. tostring(policy.issue_quorum_num) .. "/" .. tostring(policy.issue_quorum_den) bsw/jbe@52: } bsw/jbe@52: ui.field.text{ bsw/jbe@52: label = _"Initiative quorum" .. ":", bsw/jbe@52: value = "≥ " .. tostring(policy.initiative_quorum_num) .. "/" .. tostring(policy.initiative_quorum_den) bsw/jbe@52: } bsw/jbe@52: ui.field.text{ bsw/jbe@52: label = _"Majority" .. ":", bsw/jbe@52: value = (policy.majority_strict and ">" or "≥" ) .. " " .. tostring(policy.majority_num) .. "/" .. tostring(policy.majority_den) bsw/jbe@52: } bsw/jbe@52: end bsw/jbe@52: }, bsw/jbe@52: } bsw/jbe@52: }