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 slot.put(encode.html(_"Show member history"))
|
bsw@426
|
27 end,
|
bsw@426
|
28 module = "member",
|
bsw@426
|
29 view = "history",
|
bsw@426
|
30 id = member.id
|
bsw@426
|
31 }
|
bsw@426
|
32 if not member.activated then
|
bsw@426
|
33 ui.tag{
|
bsw@426
|
34 tag = "div",
|
bsw@426
|
35 attr = { class = "interest deactivated_member_info" },
|
bsw@426
|
36 content = _"This member is deactivated."
|
bsw@426
|
37 }
|
bsw@426
|
38 slot.put(" ")
|
bsw@426
|
39 end
|
bsw@75
|
40 if not (member.id == app.session.member.id) then
|
bsw@525
|
41 slot.put(" · ")
|
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 text = _"Remove from contacts",
|
bsw@3
|
51 module = "contact",
|
bsw@3
|
52 action = "remove_member",
|
bsw/jbe@19
|
53 id = contact.other_member_id,
|
bsw@3
|
54 routing = {
|
bsw@3
|
55 default = {
|
bsw@3
|
56 mode = "redirect",
|
bsw@3
|
57 module = request.get_module(),
|
bsw@3
|
58 view = request.get_view(),
|
bsw@3
|
59 id = param.get_id_cgi(),
|
bsw@3
|
60 params = param.get_all_cgi()
|
bsw@3
|
61 }
|
bsw@3
|
62 }
|
bsw@3
|
63 }
|
bsw@245
|
64 elseif member.activated then
|
bsw@3
|
65 ui.link{
|
bsw/jbe@19
|
66 text = _"Add to my contacts",
|
bsw@3
|
67 module = "contact",
|
bsw@3
|
68 action = "add_member",
|
bsw@3
|
69 id = member.id,
|
bsw@3
|
70 routing = {
|
bsw@3
|
71 default = {
|
bsw@3
|
72 mode = "redirect",
|
bsw@3
|
73 module = request.get_module(),
|
bsw@3
|
74 view = request.get_view(),
|
bsw@3
|
75 id = param.get_id_cgi(),
|
bsw@3
|
76 params = param.get_all_cgi()
|
bsw@3
|
77 }
|
bsw@3
|
78 }
|
bsw@3
|
79 }
|
bsw@57
|
80 end
|
bsw@3
|
81 end
|
bsw@426
|
82 local ignored_member = IgnoredMember:by_pk(app.session.member.id, member.id)
|
bsw@525
|
83 slot.put(" · ")
|
bsw@426
|
84 if ignored_member then
|
bsw@426
|
85 ui.container{
|
bsw@426
|
86 attr = { class = "interest" },
|
bsw@426
|
87 content = _"You have ignored this member"
|
bsw@426
|
88 }
|
bsw@525
|
89 slot.put(" · ")
|
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
|