liquid_feedback_frontend
annotate app/main/member/_show.lua @ 9:0ee1e0c42d4c
Version beta5
Minor security fix: Added missing security filter for admin section. Reading of member listing including login names was possible for all users. Write access has not been possible though.
Changing of name and login is possible while a history of these changes is written and accessible by all users.
Statistics shown in area list
Trimming of user input also converts multiple whitespaces to single space character.
Minor security fix: Added missing security filter for admin section. Reading of member listing including login names was possible for all users. Write access has not been possible though.
Changing of name and login is possible while a history of these changes is written and accessible by all users.
Statistics shown in area list
Trimming of user input also converts multiple whitespaces to single space character.
author | bsw |
---|---|
date | Mon Jan 04 12:00:00 2010 +0100 (2010-01-04) |
parents | 80c215dbf076 |
children | 72c5e0ee7c98 |
rev | line source |
---|---|
bsw/jbe@0 | 1 local member = param.get("member", "table") |
bsw/jbe@0 | 2 |
bsw/jbe@4 | 3 ui.tabs{ |
bsw/jbe@4 | 4 { |
bsw/jbe@4 | 5 name = "profile", |
bsw/jbe@4 | 6 label = _"Profile", |
bsw/jbe@4 | 7 content = function() |
bsw/jbe@4 | 8 ui.form{ |
bsw/jbe@4 | 9 attr = { class = "member vertical" }, |
bsw/jbe@4 | 10 record = member, |
bsw/jbe@4 | 11 readonly = true, |
bsw/jbe@4 | 12 content = function() |
bsw/jbe@4 | 13 |
bsw/jbe@4 | 14 ui.container{ |
bsw/jbe@4 | 15 attr = { class = "right" }, |
bsw/jbe@4 | 16 content = function() |
bsw/jbe@4 | 17 |
bsw/jbe@4 | 18 execute.view{ |
bsw/jbe@4 | 19 module = "member_image", |
bsw/jbe@4 | 20 view = "_show", |
bsw/jbe@4 | 21 params = { |
bsw/jbe@4 | 22 member = member, |
bsw/jbe@4 | 23 image_type = "photo" |
bsw/jbe@4 | 24 } |
bsw/jbe@4 | 25 } |
bsw/jbe@4 | 26 |
bsw@9 | 27 ui.container{ |
bsw@9 | 28 attr = { class = "contact_data" }, |
bsw@9 | 29 content = function() |
bsw@9 | 30 end |
bsw@9 | 31 } |
bsw/jbe@4 | 32 |
bsw/jbe@4 | 33 end |
bsw/jbe@4 | 34 } |
bsw/jbe@4 | 35 |
bsw/jbe@4 | 36 if member.admin then |
bsw/jbe@4 | 37 ui.field.boolean{ label = _"Admin?", name = "admin" } |
bsw/jbe@4 | 38 end |
bsw/jbe@4 | 39 if member.locked then |
bsw/jbe@4 | 40 ui.field.boolean{ label = _"Locked?", name = "locked" } |
bsw/jbe@4 | 41 end |
bsw/jbe@4 | 42 if member.ident_number then |
bsw/jbe@4 | 43 ui.field.text{ label = _"Ident number", name = "ident_number" } |
bsw/jbe@4 | 44 end |
bsw/jbe@4 | 45 ui.field.text{ label = _"Name", name = "name" } |
bsw/jbe@4 | 46 |
bsw/jbe@4 | 47 if member.realname and #member.realname > 0 then |
bsw/jbe@4 | 48 ui.field.text{ label = _"Real name", name = "realname" } |
bsw/jbe@4 | 49 end |
bsw/jbe@4 | 50 if member.email and #member.email > 0 then |
bsw/jbe@4 | 51 ui.field.text{ label = _"email", name = "email" } |
bsw/jbe@4 | 52 end |
bsw/jbe@4 | 53 if member.xmpp_address and #member.xmpp_address > 0 then |
bsw/jbe@4 | 54 ui.field.text{ label = _"xmpp", name = "xmpp_address" } |
bsw/jbe@4 | 55 end |
bsw/jbe@4 | 56 if member.website and #member.website > 0 then |
bsw/jbe@4 | 57 ui.field.text{ label = _"Website", name = "website" } |
bsw/jbe@4 | 58 end |
bsw/jbe@4 | 59 if member.phone and #member.phone > 0 then |
bsw/jbe@4 | 60 ui.field.text{ label = _"Phone", name = "phone" } |
bsw/jbe@4 | 61 end |
bsw/jbe@4 | 62 if member.mobile_phone and #member.mobile_phone > 0 then |
bsw/jbe@4 | 63 ui.field.text{ label = _"Mobile phone", name = "mobile_phone" } |
bsw/jbe@4 | 64 end |
bsw/jbe@4 | 65 if member.address and #member.address > 0 then |
bsw/jbe@4 | 66 ui.container{ |
bsw/jbe@4 | 67 content = function() |
bsw/jbe@4 | 68 ui.tag{ |
bsw/jbe@4 | 69 tag = "label", |
bsw/jbe@4 | 70 attr = { class = "ui_field_label" }, |
bsw/jbe@4 | 71 content = _"Address" |
bsw/jbe@4 | 72 } |
bsw/jbe@4 | 73 ui.tag{ |
bsw/jbe@4 | 74 tag = "span", |
bsw/jbe@4 | 75 content = function() |
bsw/jbe@4 | 76 slot.put(encode.html_newlines(member.address)) |
bsw/jbe@4 | 77 end |
bsw/jbe@4 | 78 } |
bsw/jbe@4 | 79 end |
bsw/jbe@4 | 80 } |
bsw/jbe@4 | 81 end |
bsw/jbe@4 | 82 if member.profession and #member.profession > 0 then |
bsw/jbe@4 | 83 ui.field.text{ label = _"Profession", name = "profession" } |
bsw/jbe@4 | 84 end |
bsw/jbe@4 | 85 if member.birthday and #member.birthday > 0 then |
bsw/jbe@4 | 86 ui.field.text{ label = _"Birthday", name = "birthday" } |
bsw/jbe@4 | 87 end |
bsw/jbe@4 | 88 if member.organizational_unit and #member.organizational_unit > 0 then |
bsw/jbe@4 | 89 ui.field.text{ label = _"Organizational unit", name = "organizational_unit" } |
bsw/jbe@4 | 90 end |
bsw/jbe@4 | 91 if member.internal_posts and #member.internal_posts > 0 then |
bsw/jbe@4 | 92 ui.field.text{ label = _"Internal posts", name = "internal_posts" } |
bsw/jbe@4 | 93 end |
bsw/jbe@4 | 94 if member.external_memberships and #member.external_memberships > 0 then |
bsw/jbe@4 | 95 ui.field.text{ label = _"Memberships", name = "external_memberships", multiline = true } |
bsw/jbe@4 | 96 end |
bsw/jbe@4 | 97 if member.external_posts and #member.external_posts > 0 then |
bsw/jbe@4 | 98 ui.field.text{ label = _"Posts", name = "external_posts", multiline = true } |
bsw/jbe@4 | 99 end |
bsw/jbe@4 | 100 slot.put('<br style="clear: right;" />') |
bsw/jbe@4 | 101 |
bsw/jbe@4 | 102 end |
bsw/jbe@4 | 103 } |
bsw/jbe@4 | 104 if member.statement and #member.statement > 0 then |
bsw/jbe@4 | 105 ui.container{ |
bsw/jbe@4 | 106 attr = { class = "member_statement wiki" }, |
bsw/jbe@4 | 107 content = function() |
bsw/jbe@4 | 108 slot.put(format.wiki_text(member.statement)) |
bsw/jbe@4 | 109 end |
bsw/jbe@4 | 110 } |
bsw/jbe@4 | 111 end |
bsw@3 | 112 end |
bsw/jbe@4 | 113 }, |
bsw/jbe@0 | 114 { |
bsw/jbe@0 | 115 name = "areas", |
bsw/jbe@0 | 116 label = _"Areas", |
bsw/jbe@0 | 117 content = function() |
bsw/jbe@0 | 118 execute.view{ |
bsw/jbe@0 | 119 module = "area", |
bsw/jbe@0 | 120 view = "_list", |
bsw/jbe@0 | 121 params = { areas_selector = member:get_reference_selector("areas") } |
bsw/jbe@0 | 122 } |
bsw/jbe@0 | 123 end |
bsw/jbe@0 | 124 }, |
bsw/jbe@0 | 125 { |
bsw/jbe@0 | 126 name = "issues", |
bsw/jbe@0 | 127 label = _"Issues", |
bsw/jbe@0 | 128 content = function() |
bsw/jbe@0 | 129 execute.view{ |
bsw/jbe@0 | 130 module = "issue", |
bsw/jbe@0 | 131 view = "_list", |
bsw/jbe@0 | 132 params = { issues_selector = member:get_reference_selector("issues") } |
bsw/jbe@0 | 133 } |
bsw/jbe@0 | 134 end |
bsw/jbe@0 | 135 }, |
bsw/jbe@0 | 136 { |
bsw/jbe@4 | 137 name = "supported_initiatives", |
bsw/jbe@4 | 138 label = _"Supported initiatives", |
bsw/jbe@0 | 139 content = function() |
bsw/jbe@0 | 140 execute.view{ |
bsw/jbe@0 | 141 module = "initiative", |
bsw/jbe@0 | 142 view = "_list", |
bsw/jbe@0 | 143 params = { initiatives_selector = member:get_reference_selector("supported_initiatives") } |
bsw/jbe@0 | 144 } |
bsw/jbe@0 | 145 end |
bsw/jbe@0 | 146 }, |
bsw/jbe@0 | 147 { |
bsw/jbe@4 | 148 name = "initiatied_initiatives", |
bsw/jbe@4 | 149 label = _"Initiated initiatives", |
bsw/jbe@4 | 150 content = function() |
bsw/jbe@4 | 151 execute.view{ |
bsw/jbe@4 | 152 module = "initiative", |
bsw/jbe@4 | 153 view = "_list", |
bsw/jbe@4 | 154 params = { initiatives_selector = member:get_reference_selector("initiated_initiatives") } |
bsw/jbe@4 | 155 } |
bsw/jbe@4 | 156 end |
bsw/jbe@4 | 157 }, |
bsw/jbe@4 | 158 { |
bsw/jbe@0 | 159 name = "incoming_delegations", |
bsw/jbe@0 | 160 label = _"Incoming delegations", |
bsw/jbe@0 | 161 content = function() |
bsw/jbe@0 | 162 execute.view{ |
bsw/jbe@0 | 163 module = "delegation", |
bsw/jbe@0 | 164 view = "_list", |
bsw@2 | 165 params = { delegations_selector = member:get_reference_selector("incoming_delegations"), incoming = true } |
bsw/jbe@0 | 166 } |
bsw/jbe@0 | 167 end |
bsw/jbe@0 | 168 }, |
bsw/jbe@0 | 169 { |
bsw/jbe@4 | 170 name = "Outgoing delegations", |
bsw/jbe@0 | 171 label = _"Outgoing delegations", |
bsw/jbe@0 | 172 content = function() |
bsw/jbe@0 | 173 execute.view{ |
bsw/jbe@0 | 174 module = "delegation", |
bsw/jbe@0 | 175 view = "_list", |
bsw@2 | 176 params = { delegations_selector = member:get_reference_selector("outgoing_delegations"), outgoing = true } |
bsw/jbe@0 | 177 } |
bsw/jbe@0 | 178 end |
bsw/jbe@0 | 179 }, |
bsw/jbe@0 | 180 { |
bsw/jbe@0 | 181 name = "contacts", |
bsw/jbe@0 | 182 label = _"Published contacts", |
bsw/jbe@0 | 183 content = function() |
bsw/jbe@0 | 184 execute.view{ |
bsw/jbe@0 | 185 module = "member", |
bsw/jbe@0 | 186 view = "_list", |
bsw/jbe@0 | 187 params = { members_selector = member:get_reference_selector("saved_members"):add_where("public") } |
bsw/jbe@0 | 188 } |
bsw/jbe@0 | 189 end |
bsw/jbe@0 | 190 }, |
bsw/jbe@0 | 191 } |