liquid_feedback_frontend
annotate app/main/member/_show_thumb.lua @ 145:90520c9fca44
implement area filter in timeline
allows the user to ignore any area in the timeline filter.
better display in javascript off
allows the user to ignore any area in the timeline filter.
better display in javascript off
author | Daniel Poelzleithner <poelzi@poelzi.org> |
---|---|
date | Thu Oct 07 00:35:48 2010 +0200 (2010-10-07) |
parents | 733f65c0c0a0 |
children | b9c8503feff7 |
rev | line source |
---|---|
bsw@10 | 1 local initiator = param.get("initiator", "table") |
bsw@2 | 2 local member = param.get("member", "table") |
bsw@2 | 3 |
bsw@3 | 4 local issue = param.get("issue", "table") |
bsw@3 | 5 local initiative = param.get("initiative", "table") |
bsw@3 | 6 local trustee = param.get("trustee", "table") |
bsw@3 | 7 |
bsw@2 | 8 local name |
bsw@2 | 9 if member.name_highlighted then |
bsw@2 | 10 name = encode.highlight(member.name_highlighted) |
bsw@2 | 11 else |
bsw@2 | 12 name = encode.html(member.name) |
bsw@2 | 13 end |
bsw@2 | 14 |
bsw@10 | 15 local container_class = "member_thumb" |
bsw@10 | 16 if initiator and member.accepted ~= true then |
bsw@10 | 17 container_class = container_class .. " not_accepted" |
bsw@10 | 18 end |
bsw@10 | 19 |
bsw/jbe@19 | 20 if member.is_informed == false then |
bsw/jbe@19 | 21 container_class = container_class .. " not_informed" |
bsw/jbe@19 | 22 end |
bsw/jbe@19 | 23 |
bsw@3 | 24 ui.container{ |
bsw@10 | 25 attr = { class = container_class }, |
bsw@2 | 26 content = function() |
bsw@3 | 27 ui.container{ |
bsw@3 | 28 attr = { class = "flags" }, |
bsw@3 | 29 content = function() |
bsw/jbe@19 | 30 |
bsw@75 | 31 if not member.active then |
bsw@75 | 32 local text = _"Member is deactivated" |
bsw@75 | 33 ui.image{ |
bsw@75 | 34 attr = { alt = text, title = text }, |
bsw@75 | 35 static = "icons/16/cross.png" |
bsw@75 | 36 } |
bsw@75 | 37 end |
bsw@75 | 38 |
bsw/jbe@19 | 39 if member.grade then |
bsw/jbe@19 | 40 ui.link{ |
bsw/jbe@19 | 41 module = "vote", |
bsw/jbe@19 | 42 view = "list", |
bsw/jbe@19 | 43 params = { |
bsw/jbe@19 | 44 issue_id = initiative.issue.id, |
bsw/jbe@19 | 45 member_id = member.id, |
bsw/jbe@19 | 46 }, |
bsw/jbe@19 | 47 content = function() |
bsw/jbe@19 | 48 if member.grade > 0 then |
bsw/jbe@19 | 49 ui.image{ |
bsw/jbe@19 | 50 attr = { |
bsw/jbe@19 | 51 alt = _"Voted yes", |
bsw/jbe@19 | 52 title = _"Voted yes" |
bsw/jbe@19 | 53 }, |
bsw/jbe@19 | 54 static = "icons/16/thumb_up_green.png" |
bsw/jbe@19 | 55 } |
bsw/jbe@19 | 56 elseif member.grade < 0 then |
bsw/jbe@19 | 57 ui.image{ |
bsw/jbe@19 | 58 attr = { |
bsw/jbe@19 | 59 alt = _"Voted no", |
bsw/jbe@19 | 60 title = _"Voted no" |
bsw/jbe@19 | 61 }, |
bsw/jbe@19 | 62 static = "icons/16/thumb_down_red.png" |
bsw/jbe@19 | 63 } |
bsw/jbe@19 | 64 else |
bsw/jbe@19 | 65 ui.image{ |
bsw/jbe@19 | 66 attr = { |
bsw/jbe@19 | 67 alt = _"Abstention", |
bsw/jbe@19 | 68 title = _"Abstention" |
bsw/jbe@19 | 69 }, |
bsw/jbe@19 | 70 static = "icons/16/bullet_yellow.png" |
bsw/jbe@19 | 71 } |
bsw/jbe@19 | 72 end |
bsw/jbe@19 | 73 end |
bsw/jbe@19 | 74 } |
bsw/jbe@19 | 75 end |
bsw/jbe@19 | 76 |
bsw/jbe@6 | 77 local weight = 0 |
bsw/jbe@6 | 78 if member.weight then |
bsw/jbe@6 | 79 weight = member.weight |
bsw/jbe@6 | 80 end |
bsw/jbe@6 | 81 if member.voter_weight then |
bsw/jbe@6 | 82 weight = member.voter_weight |
bsw/jbe@6 | 83 end |
bsw/jbe@6 | 84 if (issue or initiative) and weight > 1 then |
bsw@3 | 85 local module |
bsw@3 | 86 if issue then |
bsw@3 | 87 module = "interest" |
bsw@3 | 88 elseif initiative then |
bsw/jbe@6 | 89 if member.voter_weight then |
bsw/jbe@6 | 90 module = "vote" |
bsw/jbe@6 | 91 else |
bsw/jbe@6 | 92 module = "supporter" |
bsw/jbe@6 | 93 end |
bsw@3 | 94 end |
bsw@3 | 95 ui.link{ |
bsw@3 | 96 attr = { title = _"Number of incoming delegations, follow link to see more details" }, |
bsw/jbe@6 | 97 content = _("+ #{weight}", { weight = weight - 1 }), |
bsw@3 | 98 module = module, |
bsw@3 | 99 view = "show_incoming", |
bsw@3 | 100 params = { |
bsw@3 | 101 member_id = member.id, |
bsw@3 | 102 initiative_id = initiative and initiative.id or nil, |
bsw@3 | 103 issue_id = issue and issue.id or nil |
bsw@3 | 104 } |
bsw@3 | 105 } |
bsw/jbe@6 | 106 end |
bsw/jbe@19 | 107 |
bsw@10 | 108 if initiator and initiator.accepted then |
bsw@10 | 109 if member.accepted == nil then |
bsw@10 | 110 slot.put(_"Invited") |
bsw@10 | 111 elseif member.accepted == false then |
bsw@10 | 112 slot.put(_"Rejected") |
bsw@10 | 113 end |
bsw@10 | 114 end |
bsw/jbe@19 | 115 |
bsw/jbe@19 | 116 if member.is_informed == false then |
bsw/jbe@19 | 117 local text = _"Member has not approved latest draft" |
bsw/jbe@19 | 118 ui.image{ |
bsw/jbe@19 | 119 attr = { alt = text, title = text }, |
bsw/jbe@19 | 120 static = "icons/16/help_yellow.png" |
bsw/jbe@6 | 121 } |
bsw@3 | 122 end |
bsw/jbe@19 | 123 |
bsw@3 | 124 if member.admin then |
bsw@3 | 125 ui.image{ |
bsw@3 | 126 attr = { |
bsw@3 | 127 alt = _"Member is administrator", |
bsw@3 | 128 title = _"Member is administrator" |
bsw@3 | 129 }, |
bsw@3 | 130 static = "icons/16/cog.png" |
bsw@3 | 131 } |
bsw@3 | 132 end |
bsw/jbe@19 | 133 |
bsw@3 | 134 -- TODO performance |
bsw@51 | 135 if app.session.member_id then |
bsw@51 | 136 local contact = Contact:by_pk(app.session.member.id, member.id) |
bsw@51 | 137 if contact then |
bsw@51 | 138 ui.image{ |
bsw@51 | 139 attr = { |
bsw@51 | 140 alt = _"You have saved this member as contact", |
bsw@51 | 141 title = _"You have saved this member as contact" |
bsw@51 | 142 }, |
bsw@51 | 143 static = "icons/16/bullet_disk.png" |
bsw@51 | 144 } |
bsw@51 | 145 end |
bsw@3 | 146 end |
bsw@3 | 147 end |
bsw@2 | 148 } |
bsw/jbe@4 | 149 |
bsw@3 | 150 ui.link{ |
bsw@3 | 151 attr = { title = _"Show member" }, |
bsw@3 | 152 module = "member", |
bsw@3 | 153 view = "show", |
bsw@3 | 154 id = member.id, |
bsw@3 | 155 content = function() |
bsw/jbe@4 | 156 execute.view{ |
bsw/jbe@4 | 157 module = "member_image", |
bsw/jbe@4 | 158 view = "_show", |
bsw/jbe@4 | 159 params = { |
bsw/jbe@4 | 160 member = member, |
bsw/jbe@4 | 161 image_type = "avatar", |
bsw/jbe@4 | 162 show_dummy = true |
bsw/jbe@4 | 163 } |
bsw@3 | 164 } |
bsw@3 | 165 ui.container{ |
bsw@3 | 166 attr = { class = "member_name" }, |
bsw@3 | 167 content = function() |
bsw@3 | 168 slot.put(name) |
bsw@3 | 169 end |
bsw@3 | 170 } |
bsw@3 | 171 end |
bsw@3 | 172 } |
bsw@2 | 173 end |
bsw@3 | 174 } |