liquid_feedback_frontend

annotate app/main/member/_show_thumb.lua @ 233:72d8f5faa2e5

Fixed orthography
author jbe
date Thu Oct 06 16:48:30 2011 +0200 (2011-10-06)
parents b363a2407d8d
children dac08fce1ab7
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@178 24 local in_delegation_chain = false
bsw@177 25 if member.delegate_member_ids then
bsw@177 26 for member_id in member.delegate_member_ids:gmatch("(%w+)") do
bsw@177 27 if tonumber(member_id) == member.id then
bsw@177 28 in_delegation_chain = true
bsw@177 29 end
bsw@177 30 end
bsw@177 31 end
bsw@177 32
bsw@179 33 if in_delegation_chain or ((issue or initiative) and member.id == app.session.member_id) then
bsw@177 34 container_class = container_class .. " in_delegation_chain"
bsw@177 35 end
bsw@177 36
bsw@3 37 ui.container{
bsw@10 38 attr = { class = container_class },
bsw@2 39 content = function()
bsw@3 40 ui.container{
bsw@3 41 attr = { class = "flags" },
bsw@3 42 content = function()
bsw/jbe@19 43
bsw@75 44 if not member.active then
bsw@75 45 local text = _"Member is deactivated"
bsw@75 46 ui.image{
bsw@75 47 attr = { alt = text, title = text },
bsw@75 48 static = "icons/16/cross.png"
bsw@75 49 }
bsw@75 50 end
bsw@75 51
bsw/jbe@19 52 if member.grade then
bsw/jbe@19 53 ui.link{
bsw/jbe@19 54 module = "vote",
bsw/jbe@19 55 view = "list",
bsw/jbe@19 56 params = {
bsw/jbe@19 57 issue_id = initiative.issue.id,
bsw/jbe@19 58 member_id = member.id,
bsw/jbe@19 59 },
bsw/jbe@19 60 content = function()
bsw/jbe@19 61 if member.grade > 0 then
bsw/jbe@19 62 ui.image{
bsw/jbe@19 63 attr = {
bsw/jbe@19 64 alt = _"Voted yes",
bsw/jbe@19 65 title = _"Voted yes"
bsw/jbe@19 66 },
bsw/jbe@19 67 static = "icons/16/thumb_up_green.png"
bsw/jbe@19 68 }
bsw/jbe@19 69 elseif member.grade < 0 then
bsw/jbe@19 70 ui.image{
bsw/jbe@19 71 attr = {
bsw/jbe@19 72 alt = _"Voted no",
bsw/jbe@19 73 title = _"Voted no"
bsw/jbe@19 74 },
bsw/jbe@19 75 static = "icons/16/thumb_down_red.png"
bsw/jbe@19 76 }
bsw/jbe@19 77 else
bsw/jbe@19 78 ui.image{
bsw/jbe@19 79 attr = {
bsw/jbe@19 80 alt = _"Abstention",
bsw/jbe@19 81 title = _"Abstention"
bsw/jbe@19 82 },
bsw/jbe@19 83 static = "icons/16/bullet_yellow.png"
bsw/jbe@19 84 }
bsw/jbe@19 85 end
bsw/jbe@19 86 end
bsw/jbe@19 87 }
bsw/jbe@19 88 end
bsw/jbe@19 89
bsw/jbe@6 90 local weight = 0
bsw/jbe@6 91 if member.weight then
bsw/jbe@6 92 weight = member.weight
bsw/jbe@6 93 end
bsw/jbe@6 94 if member.voter_weight then
bsw/jbe@6 95 weight = member.voter_weight
bsw/jbe@6 96 end
bsw/jbe@6 97 if (issue or initiative) and weight > 1 then
bsw@3 98 local module
bsw@3 99 if issue then
bsw@3 100 module = "interest"
bsw@3 101 elseif initiative then
bsw/jbe@6 102 if member.voter_weight then
bsw/jbe@6 103 module = "vote"
bsw/jbe@6 104 else
bsw/jbe@6 105 module = "supporter"
bsw/jbe@6 106 end
bsw@3 107 end
bsw@3 108 ui.link{
bsw@177 109 attr = {
bsw@177 110 class = in_delegation_chain and "in_delegation_chain" or nil,
bsw@177 111 title = _"Number of incoming delegations, follow link to see more details"
bsw@177 112 },
bsw/jbe@6 113 content = _("+ #{weight}", { weight = weight - 1 }),
bsw@3 114 module = module,
bsw@3 115 view = "show_incoming",
bsw@3 116 params = {
bsw@3 117 member_id = member.id,
bsw@3 118 initiative_id = initiative and initiative.id or nil,
bsw@3 119 issue_id = issue and issue.id or nil
bsw@3 120 }
bsw@3 121 }
bsw/jbe@6 122 end
bsw/jbe@19 123
bsw@10 124 if initiator and initiator.accepted then
bsw@10 125 if member.accepted == nil then
bsw@10 126 slot.put(_"Invited")
bsw@10 127 elseif member.accepted == false then
bsw@10 128 slot.put(_"Rejected")
bsw@10 129 end
bsw@10 130 end
bsw/jbe@19 131
bsw/jbe@19 132 if member.is_informed == false then
bsw/jbe@19 133 local text = _"Member has not approved latest draft"
bsw/jbe@19 134 ui.image{
bsw/jbe@19 135 attr = { alt = text, title = text },
bsw/jbe@19 136 static = "icons/16/help_yellow.png"
bsw/jbe@6 137 }
bsw@3 138 end
bsw/jbe@19 139
bsw@3 140 if member.admin then
bsw@3 141 ui.image{
bsw@3 142 attr = {
bsw@3 143 alt = _"Member is administrator",
bsw@3 144 title = _"Member is administrator"
bsw@3 145 },
bsw@3 146 static = "icons/16/cog.png"
bsw@3 147 }
bsw@3 148 end
bsw/jbe@19 149
bsw@3 150 -- TODO performance
bsw@51 151 if app.session.member_id then
bsw@51 152 local contact = Contact:by_pk(app.session.member.id, member.id)
bsw@51 153 if contact then
bsw@51 154 ui.image{
bsw@51 155 attr = {
bsw@51 156 alt = _"You have saved this member as contact",
bsw@51 157 title = _"You have saved this member as contact"
bsw@51 158 },
bsw@51 159 static = "icons/16/bullet_disk.png"
bsw@51 160 }
bsw@51 161 end
bsw@3 162 end
bsw@3 163 end
bsw@2 164 }
bsw/jbe@4 165
bsw@3 166 ui.link{
bsw@3 167 attr = { title = _"Show member" },
bsw@3 168 module = "member",
bsw@3 169 view = "show",
bsw@3 170 id = member.id,
bsw@3 171 content = function()
bsw/jbe@4 172 execute.view{
bsw/jbe@4 173 module = "member_image",
bsw/jbe@4 174 view = "_show",
bsw/jbe@4 175 params = {
bsw/jbe@4 176 member = member,
bsw/jbe@4 177 image_type = "avatar",
bsw/jbe@4 178 show_dummy = true
bsw/jbe@4 179 }
bsw@3 180 }
bsw@3 181 ui.container{
bsw@3 182 attr = { class = "member_name" },
bsw@3 183 content = function()
bsw@3 184 slot.put(name)
bsw@3 185 end
bsw@3 186 }
bsw@3 187 end
bsw@3 188 }
bsw@2 189 end
bsw@3 190 }

Impressum / About Us