liquid_feedback_frontend
view app/main/admin/area_list.lua @ 145:90520c9fca44
implement area filter in timeline
allows the user to ignore any area in the timeline filter.
better display in javascript off
allows the user to ignore any area in the timeline filter.
better display in javascript off
author | Daniel Poelzleithner <poelzi@poelzi.org> |
---|---|
date | Thu Oct 07 00:35:48 2010 +0200 (2010-10-07) |
parents | 3bfb2fcf7ab9 |
children | 46351752814f |
line source
1 local show_not_in_use = param.get("show_not_in_use", atom.boolean)
3 local selector = Area:new_selector()
4 if show_not_in_use then
5 selector:add_where("NOT active")
6 else
7 selector:add_where("active")
8 end
10 local areas = selector:exec()
12 slot.put_into("title", _"Area list")
14 if app.session.member.admin then
15 slot.select("actions", function()
16 if show_not_in_use then
17 ui.link{
18 attr = { class = { "admin_only" } },
19 text = _"Show areas in use",
20 module = "admin",
21 view = "area_list"
22 }
23 else
24 ui.link{
25 attr = { class = { "admin_only" } },
26 text = _"Create new area",
27 module = "admin",
28 view = "area_show"
29 }
30 ui.link{
31 attr = { class = { "admin_only" } },
32 text = _"Show areas not in use",
33 module = "admin",
34 view = "area_list",
35 params = { show_not_in_use = true }
36 }
37 end
38 end)
39 end
41 ui.list{
42 records = areas,
43 columns = {
44 {
45 label = _"Area",
46 name = "name"
47 },
48 {
49 content = function(record)
50 if app.session.member.admin then
51 ui.link{
52 attr = { class = { "action admin_only" } },
53 text = _"Edit",
54 module = "admin",
55 view = "area_show",
56 id = record.id
57 }
58 end
59 end
60 }
61 }
62 }