rev |
line source |
bsw@198
|
1 local contacts_selector = Contact:build_selector{
|
bsw@198
|
2 member_id = app.session.member_id,
|
bsw@198
|
3 order = "name"
|
bsw@198
|
4 }
|
bsw@198
|
5
|
bsw@564
|
6 ui.title(_"Contacts")
|
bsw/jbe@0
|
7
|
bsw/jbe@1309
|
8 ui.grid{ content = function()
|
bsw/jbe@1309
|
9 ui.cell_main{ content = function()
|
bsw@198
|
10
|
bsw/jbe@1309
|
11 ui.container{ attr = { class = "mdl-card mdl-card__fullwidth mdl-shadow--2dp" }, content = function()
|
bsw/jbe@1309
|
12 ui.container{ attr = { class = "mdl-card__title mdl-card--border" }, content = function()
|
bsw/jbe@1309
|
13 ui.heading { attr = { class = "mdl-card__title-text" }, level = 2, content = _"Contacts" }
|
bsw/jbe@1309
|
14 end }
|
bsw/jbe@1309
|
15 ui.container{ attr = { class = "mdl-card__content mdl-card--border" }, content = function()
|
bsw/jbe@1309
|
16
|
bsw/jbe@1309
|
17
|
bsw/jbe@1309
|
18 ui.paginate{
|
bsw/jbe@1309
|
19 selector = contacts_selector,
|
bsw/jbe@1309
|
20 content = function()
|
bsw/jbe@1309
|
21 local contacts = contacts_selector:exec()
|
bsw/jbe@1309
|
22 if #contacts == 0 then
|
bsw/jbe@1309
|
23 ui.field.text{ value = _"You didn't save any member as contact yet." }
|
bsw/jbe@1309
|
24 else
|
bsw/jbe@1309
|
25 ui.list{
|
bsw/jbe@1309
|
26 attr = { class = "mdl-data-table mdl-js-data-table mdl-shadow--2dp" },
|
bsw/jbe@1309
|
27 records = contacts,
|
bsw/jbe@1309
|
28 columns = {
|
bsw/jbe@1309
|
29 {
|
bsw/jbe@1309
|
30 label = _"Name",
|
bsw/jbe@1309
|
31 content = function(record)
|
bsw/jbe@1309
|
32 ui.link{
|
bsw/jbe@1309
|
33 text = record.other_member.name,
|
bsw/jbe@1309
|
34 module = "member",
|
bsw/jbe@1309
|
35 view = "show",
|
bsw/jbe@1309
|
36 id = record.other_member_id
|
bsw/jbe@1309
|
37 }
|
bsw/jbe@1309
|
38 end
|
bsw/jbe@1309
|
39 },
|
bsw/jbe@1309
|
40 {
|
bsw/jbe@1309
|
41 label = _"Published",
|
bsw/jbe@1309
|
42 content = function(record)
|
bsw/jbe@1309
|
43 ui.field.boolean{ value = record.public }
|
bsw/jbe@1309
|
44 end
|
bsw/jbe@1309
|
45 },
|
bsw/jbe@1309
|
46 {
|
bsw/jbe@1309
|
47 content = function(record)
|
bsw/jbe@1309
|
48 if record.public then
|
bsw/jbe@1309
|
49 ui.link{
|
bsw/jbe@1309
|
50 attr = { class = "action" },
|
bsw/jbe@1309
|
51 text = _"Hide",
|
bsw/jbe@1309
|
52 module = "contact",
|
bsw/jbe@1309
|
53 action = "add_member",
|
bsw/jbe@1309
|
54 id = record.other_member_id,
|
bsw/jbe@1309
|
55 params = { public = false },
|
bsw/jbe@1309
|
56 routing = {
|
bsw/jbe@1309
|
57 default = {
|
bsw/jbe@1309
|
58 mode = "redirect",
|
bsw/jbe@1309
|
59 module = request.get_module(),
|
bsw/jbe@1309
|
60 view = request.get_view(),
|
bsw/jbe@1309
|
61 id = request.get_id_string(),
|
bsw/jbe@1309
|
62 params = request.get_param_strings()
|
bsw/jbe@1309
|
63 }
|
bsw/jbe@1309
|
64 }
|
bsw/jbe@1309
|
65 }
|
bsw/jbe@1309
|
66 else
|
bsw/jbe@1309
|
67 ui.link{
|
bsw/jbe@1309
|
68 attr = { class = "action" },
|
bsw/jbe@1309
|
69 text = _"Publish",
|
bsw/jbe@1309
|
70 module = "contact",
|
bsw/jbe@1309
|
71 action = "add_member",
|
bsw/jbe@1309
|
72 id = record.other_member_id,
|
bsw/jbe@1309
|
73 params = { public = true },
|
bsw/jbe@1309
|
74 routing = {
|
bsw/jbe@1309
|
75 default = {
|
bsw/jbe@1309
|
76 mode = "redirect",
|
bsw/jbe@1309
|
77 module = request.get_module(),
|
bsw/jbe@1309
|
78 view = request.get_view(),
|
bsw/jbe@1309
|
79 id = request.get_id_string(),
|
bsw/jbe@1309
|
80 params = request.get_param_strings()
|
bsw/jbe@1309
|
81 }
|
bsw/jbe@1309
|
82 }
|
bsw/jbe@1309
|
83 }
|
bsw/jbe@1309
|
84 end
|
bsw/jbe@1309
|
85 end
|
bsw/jbe@1309
|
86 },
|
bsw/jbe@1309
|
87 {
|
bsw/jbe@1309
|
88 content = function(record)
|
bsw/jbe@1309
|
89 ui.link{
|
bsw/jbe@1309
|
90 attr = { class = "action" },
|
bsw/jbe@1309
|
91 text = _"Remove",
|
bsw/jbe@1309
|
92 module = "contact",
|
bsw/jbe@1309
|
93 action = "remove_member",
|
bsw/jbe@1309
|
94 id = record.other_member_id,
|
bsw/jbe@1309
|
95 routing = {
|
bsw/jbe@1309
|
96 default = {
|
bsw/jbe@1309
|
97 mode = "redirect",
|
bsw/jbe@1309
|
98 module = request.get_module(),
|
bsw/jbe@1309
|
99 view = request.get_view(),
|
bsw/jbe@1309
|
100 id = request.get_id_string(),
|
bsw/jbe@1309
|
101 params = request.get_param_strings()
|
bsw/jbe@1309
|
102 }
|
bsw/jbe@1309
|
103 }
|
bsw/jbe@1309
|
104 }
|
bsw/jbe@1309
|
105 end
|
bsw/jbe@1309
|
106 },
|
bsw@198
|
107 }
|
bsw@198
|
108 }
|
bsw@198
|
109 end
|
bsw/jbe@1309
|
110 end
|
bsw@198
|
111 }
|
bsw/jbe@1309
|
112
|
bsw/jbe@1309
|
113 end }
|
bsw/jbe@1309
|
114 end }
|
bsw/jbe@1309
|
115 end }
|
bsw/jbe@1309
|
116 end }
|