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