rev |
line source |
bsw/jbe@0
|
1 local member = Member:by_id(param.get_id())
|
bsw/jbe@0
|
2
|
bsw@286
|
3 if not member or not member.activated then
|
bsw@286
|
4 error("access denied")
|
bsw@286
|
5 end
|
bsw@286
|
6
|
jorges@103
|
7 app.html_title.title = member.name
|
jorges@103
|
8 app.html_title.subtitle = _("Member")
|
jorges@103
|
9
|
bsw/jbe@0
|
10 slot.select("title", function()
|
bsw/jbe@4
|
11 execute.view{
|
bsw/jbe@4
|
12 module = "member_image",
|
bsw/jbe@4
|
13 view = "_show",
|
bsw/jbe@4
|
14 params = {
|
bsw/jbe@4
|
15 member = member,
|
bsw/jbe@4
|
16 image_type = "avatar"
|
bsw/jbe@4
|
17 }
|
bsw/jbe@0
|
18 }
|
bsw/jbe@0
|
19 end)
|
bsw/jbe@0
|
20
|
bsw/jbe@0
|
21 slot.put_into("title", encode.html(_"Member '#{member}'":gsub("#{member}", member.name)))
|
bsw/jbe@0
|
22
|
bsw@57
|
23 slot.select("actions", function()
|
bsw@426
|
24 ui.link{
|
bsw@426
|
25 content = function()
|
bsw@426
|
26 ui.image{ static = "icons/16/clock_edit.png" }
|
bsw@426
|
27 slot.put(encode.html(_"Show member history"))
|
bsw@426
|
28 end,
|
bsw@426
|
29 module = "member",
|
bsw@426
|
30 view = "history",
|
bsw@426
|
31 id = member.id
|
bsw@426
|
32 }
|
bsw@426
|
33 if not member.activated then
|
bsw@426
|
34 ui.tag{
|
bsw@426
|
35 tag = "div",
|
bsw@426
|
36 attr = { class = "interest deactivated_member_info" },
|
bsw@426
|
37 content = _"This member is deactivated."
|
bsw@426
|
38 }
|
bsw@426
|
39 slot.put(" ")
|
bsw@426
|
40 end
|
bsw@75
|
41 if not (member.id == app.session.member.id) then
|
bsw@57
|
42 --TODO performance
|
bsw@57
|
43 local contact = Contact:by_pk(app.session.member.id, member.id)
|
bsw@57
|
44 if contact then
|
bsw/jbe@4
|
45 ui.container{
|
bsw/jbe@4
|
46 attr = { class = "interest" },
|
bsw/jbe@4
|
47 content = _"You have saved this member as contact."
|
bsw/jbe@4
|
48 }
|
bsw@3
|
49 ui.link{
|
bsw/jbe@19
|
50 image = { static = "icons/16/book_delete.png" },
|
bsw/jbe@19
|
51 text = _"Remove from contacts",
|
bsw@3
|
52 module = "contact",
|
bsw@3
|
53 action = "remove_member",
|
bsw/jbe@19
|
54 id = contact.other_member_id,
|
bsw@3
|
55 routing = {
|
bsw@3
|
56 default = {
|
bsw@3
|
57 mode = "redirect",
|
bsw@3
|
58 module = request.get_module(),
|
bsw@3
|
59 view = request.get_view(),
|
bsw@3
|
60 id = param.get_id_cgi(),
|
bsw@3
|
61 params = param.get_all_cgi()
|
bsw@3
|
62 }
|
bsw@3
|
63 }
|
bsw@3
|
64 }
|
bsw@245
|
65 elseif member.activated then
|
bsw@3
|
66 ui.link{
|
bsw/jbe@19
|
67 image = { static = "icons/16/book_add.png" },
|
bsw/jbe@19
|
68 text = _"Add to my contacts",
|
bsw@3
|
69 module = "contact",
|
bsw@3
|
70 action = "add_member",
|
bsw@3
|
71 id = member.id,
|
bsw@3
|
72 routing = {
|
bsw@3
|
73 default = {
|
bsw@3
|
74 mode = "redirect",
|
bsw@3
|
75 module = request.get_module(),
|
bsw@3
|
76 view = request.get_view(),
|
bsw@3
|
77 id = param.get_id_cgi(),
|
bsw@3
|
78 params = param.get_all_cgi()
|
bsw@3
|
79 }
|
bsw@3
|
80 }
|
bsw@3
|
81 }
|
bsw@57
|
82 end
|
bsw@3
|
83 end
|
bsw@426
|
84 local ignored_member = IgnoredMember:by_pk(app.session.member.id, member.id)
|
bsw@426
|
85 if ignored_member then
|
bsw@426
|
86 ui.container{
|
bsw@426
|
87 attr = { class = "interest" },
|
bsw@426
|
88 content = _"You have ignored this member"
|
bsw@426
|
89 }
|
bsw@426
|
90 ui.link{
|
bsw@426
|
91 text = _"Stop ignoring member",
|
bsw@426
|
92 module = "member",
|
bsw@426
|
93 action = "update_ignore_member",
|
bsw@426
|
94 id = member.id,
|
bsw@426
|
95 params = { delete = true },
|
bsw@426
|
96 routing = {
|
bsw@426
|
97 default = {
|
bsw@426
|
98 mode = "redirect",
|
bsw@426
|
99 module = request.get_module(),
|
bsw@426
|
100 view = request.get_view(),
|
bsw@426
|
101 id = param.get_id_cgi(),
|
bsw@426
|
102 params = param.get_all_cgi()
|
bsw@426
|
103 }
|
bsw@426
|
104 }
|
bsw@426
|
105 }
|
bsw@426
|
106 elseif member.activated then
|
bsw@426
|
107 ui.link{
|
bsw@426
|
108 attr = { class = "interest" },
|
bsw@426
|
109 text = _"Ignore member",
|
bsw@426
|
110 module = "member",
|
bsw@426
|
111 action = "update_ignore_member",
|
bsw@426
|
112 id = member.id,
|
bsw@426
|
113 routing = {
|
bsw@426
|
114 default = {
|
bsw@426
|
115 mode = "redirect",
|
bsw@426
|
116 module = request.get_module(),
|
bsw@426
|
117 view = request.get_view(),
|
bsw@426
|
118 id = param.get_id_cgi(),
|
bsw@426
|
119 params = param.get_all_cgi()
|
bsw@426
|
120 }
|
bsw@426
|
121 }
|
bsw@426
|
122 }
|
bsw@426
|
123 end
|
bsw@9
|
124 end)
|
bsw@9
|
125
|
bsw/jbe@4
|
126 util.help("member.show", _"Member page")
|
bsw/jbe@0
|
127
|
bsw/jbe@0
|
128 execute.view{
|
bsw/jbe@0
|
129 module = "member",
|
bsw/jbe@0
|
130 view = "_show",
|
bsw/jbe@0
|
131 params = { member = member }
|
bsw/jbe@0
|
132 }
|
bsw/jbe@0
|
133
|