rev |
line source |
bsw/jbe@19
|
1 local member = param.get("member", "table")
|
bsw/jbe@19
|
2
|
bsw@286
|
3 local include_private_data = param.get("include_private_data", atom.boolean)
|
bsw@286
|
4
|
bsw/jbe@19
|
5 if not member then
|
bsw/jbe@19
|
6 local member_id = param.get("member_id", atom.integer)
|
bsw/jbe@19
|
7 if member_id then
|
bsw/jbe@19
|
8 member = Member:by_id(member_id)
|
bsw/jbe@19
|
9 end
|
bsw/jbe@19
|
10 end
|
bsw/jbe@19
|
11
|
bsw/jbe@19
|
12 ui.form{
|
bsw@418
|
13 attr = { class = "box member vertical" },
|
bsw/jbe@19
|
14 record = member,
|
bsw/jbe@19
|
15 readonly = true,
|
bsw/jbe@19
|
16 content = function()
|
bsw/jbe@19
|
17
|
bsw/jbe@19
|
18 ui.container{
|
bsw/jbe@19
|
19 attr = { class = "right" },
|
bsw/jbe@19
|
20 content = function()
|
bsw/jbe@19
|
21
|
bsw/jbe@19
|
22 execute.view{
|
bsw/jbe@19
|
23 module = "member_image",
|
bsw/jbe@19
|
24 view = "_show",
|
bsw/jbe@19
|
25 params = {
|
bsw/jbe@19
|
26 member = member,
|
bsw/jbe@19
|
27 image_type = "photo"
|
bsw/jbe@19
|
28 }
|
bsw/jbe@19
|
29 }
|
bsw/jbe@19
|
30
|
bsw/jbe@19
|
31 ui.container{
|
bsw/jbe@19
|
32 attr = { class = "contact_data" },
|
bsw/jbe@19
|
33 content = function()
|
bsw/jbe@19
|
34 end
|
bsw/jbe@19
|
35 }
|
bsw/jbe@19
|
36
|
bsw/jbe@19
|
37 end
|
bsw/jbe@19
|
38 }
|
bsw@286
|
39
|
bsw@254
|
40 if member.identification then
|
bsw@254
|
41 ui.field.text{ label = _"Identification", name = "identification" }
|
bsw/jbe@19
|
42 end
|
bsw@286
|
43 if member.name then
|
bsw@286
|
44 ui.field.text{ label = _"Screen name", name = "name" }
|
bsw@286
|
45 end
|
bsw@286
|
46 if include_private_data and member.login then
|
bsw@286
|
47 ui.field.text{ label = _"Login name", name = "login" }
|
bsw@286
|
48 ui.field.text{ label = _"Notification email", name = "notify_email" }
|
bsw@286
|
49 end
|
bsw@286
|
50
|
bsw/jbe@19
|
51 if member.realname and #member.realname > 0 then
|
bsw/jbe@19
|
52 ui.field.text{ label = _"Real name", name = "realname" }
|
bsw/jbe@19
|
53 end
|
bsw/jbe@19
|
54 if member.email and #member.email > 0 then
|
bsw/jbe@19
|
55 ui.field.text{ label = _"email", name = "email" }
|
bsw/jbe@19
|
56 end
|
bsw/jbe@19
|
57 if member.xmpp_address and #member.xmpp_address > 0 then
|
bsw/jbe@19
|
58 ui.field.text{ label = _"xmpp", name = "xmpp_address" }
|
bsw/jbe@19
|
59 end
|
bsw/jbe@19
|
60 if member.website and #member.website > 0 then
|
bsw/jbe@19
|
61 ui.field.text{ label = _"Website", name = "website" }
|
bsw/jbe@19
|
62 end
|
bsw/jbe@19
|
63 if member.phone and #member.phone > 0 then
|
bsw/jbe@19
|
64 ui.field.text{ label = _"Phone", name = "phone" }
|
bsw/jbe@19
|
65 end
|
bsw/jbe@19
|
66 if member.mobile_phone and #member.mobile_phone > 0 then
|
bsw/jbe@19
|
67 ui.field.text{ label = _"Mobile phone", name = "mobile_phone" }
|
bsw/jbe@19
|
68 end
|
bsw/jbe@19
|
69 if member.address and #member.address > 0 then
|
bsw/jbe@19
|
70 ui.container{
|
bsw/jbe@19
|
71 content = function()
|
bsw/jbe@19
|
72 ui.tag{
|
bsw/jbe@19
|
73 tag = "label",
|
bsw/jbe@19
|
74 attr = { class = "ui_field_label" },
|
bsw/jbe@19
|
75 content = _"Address"
|
bsw/jbe@19
|
76 }
|
bsw/jbe@19
|
77 ui.tag{
|
bsw/jbe@19
|
78 tag = "span",
|
bsw/jbe@19
|
79 content = function()
|
bsw/jbe@19
|
80 slot.put(encode.html_newlines(encode.html(member.address)))
|
bsw/jbe@19
|
81 end
|
bsw/jbe@19
|
82 }
|
bsw/jbe@19
|
83 end
|
bsw/jbe@19
|
84 }
|
bsw/jbe@19
|
85 end
|
bsw/jbe@19
|
86 if member.profession and #member.profession > 0 then
|
bsw/jbe@19
|
87 ui.field.text{ label = _"Profession", name = "profession" }
|
bsw/jbe@19
|
88 end
|
bsw/jbe@19
|
89 if member.birthday and #member.birthday > 0 then
|
bsw/jbe@19
|
90 ui.field.text{ label = _"Birthday", name = "birthday" }
|
bsw/jbe@19
|
91 end
|
bsw/jbe@19
|
92 if member.organizational_unit and #member.organizational_unit > 0 then
|
bsw/jbe@19
|
93 ui.field.text{ label = _"Organizational unit", name = "organizational_unit" }
|
bsw/jbe@19
|
94 end
|
bsw/jbe@19
|
95 if member.internal_posts and #member.internal_posts > 0 then
|
bsw/jbe@19
|
96 ui.field.text{ label = _"Internal posts", name = "internal_posts" }
|
bsw/jbe@19
|
97 end
|
bsw/jbe@19
|
98 if member.external_memberships and #member.external_memberships > 0 then
|
bsw/jbe@19
|
99 ui.field.text{ label = _"Memberships", name = "external_memberships", multiline = true }
|
bsw/jbe@19
|
100 end
|
bsw/jbe@19
|
101 if member.external_posts and #member.external_posts > 0 then
|
bsw/jbe@19
|
102 ui.field.text{ label = _"Posts", name = "external_posts", multiline = true }
|
bsw@286
|
103 end
|
bsw@286
|
104 if member.admin then
|
bsw@286
|
105 ui.field.boolean{ label = _"Admin?", name = "admin" }
|
bsw/jbe@19
|
106 end
|
bsw@286
|
107 if member.locked then
|
bsw@286
|
108 ui.field.boolean{ label = _"Locked?", name = "locked" }
|
bsw@286
|
109 end
|
bsw@286
|
110 if member.last_activity then
|
bsw@286
|
111 ui.field.text{ label = _"Last activity (updated daily)", value = format.date(member.last_activity) or _"not yet" }
|
bsw@286
|
112 end
|
bsw/jbe@19
|
113
|
bsw@205
|
114 if member.statement and #member.statement > 0 then
|
bsw@205
|
115 ui.container{
|
bsw@205
|
116 attr = { class = "member_statement wiki" },
|
bsw@205
|
117 content = function()
|
bsw@279
|
118 slot.put(member:get_content("html"))
|
bsw@205
|
119 end
|
bsw@205
|
120 }
|
bsw@205
|
121 end
|
bsw@418
|
122 slot.put("<br style=\"clear: both;\" />")
|
bsw/jbe@19
|
123 end
|
bsw/jbe@19
|
124 }
|
bsw@455
|
125
|
bsw@455
|
126 slot.put("<br />") |