liquid_feedback_frontend
view app/main/admin/area_show.lua @ 119:915cc0341538
Allow policies to be selected in admin interface of area
author | Daniel Poelzleithner <poelzi@poelzi.org> |
---|---|
date | Mon Oct 04 14:19:08 2010 +0200 (2010-10-04) |
parents | afd9f769c7ae |
children | 36aedac3e4bf |
line source
1 local id = param.get_id()
3 local area
4 if id then
5 area = Area:new_selector():add_where{ "id = ?", id }:single_object_mode():exec()
6 end
8 slot.put_into("title", _"Create new area")
10 ui.form{
11 attr = { class = "vertical" },
12 record = area,
13 module = "admin",
14 action = "area_update",
15 routing = {
16 default = {
17 mode = "redirect",
18 module = "admin",
19 view = "area_list"
20 }
21 },
22 id = area and area.id or nil,
23 content = function()
24 ui.field.text{ label = _"Name", name = "name" }
25 ui.field.boolean{ label = _"Active?", name = "active" }
26 ui.field.text{ label = _"Description", name = "description", multiline = true }
27 ui.multiselect{ label = _"Policies", name = "allowed_policies[]",
28 foreign_records = Policy:new_selector():add_where{ "active='t'"}:exec(),
29 foreign_id = "id",
30 foreign_name = "name",
31 connecting_records = area.allowed_policies,
32 foreign_reference = "id" }
33 ui.submit{ text = _"Save" }
34 end
35 }