liquid_feedback_frontend
annotate app/main/supporter/_show_box.lua @ 159:5d797c6706d5
implement quorum display
show the initiative quorum as a small 1px line in bargraph
allow to update your support on the diff page
better linked title in diff page
show absolute quorum numbers in detail pages of issue and initiative
show the initiative quorum as a small 1px line in bargraph
allow to update your support on the diff page
better linked title in diff page
show absolute quorum numbers in detail pages of issue and initiative
author | Daniel Poelzleithner <poelzi@poelzi.org> |
---|---|
date | Sat Oct 09 03:42:48 2010 +0200 (2010-10-09) |
parents | 034f96181e59 |
children | 1783a0c61734 |
rev | line source |
---|---|
bsw/jbe@0 | 1 |
bsw/jbe@19 | 2 local initiative = param.get("initiative", "table") |
bsw/jbe@19 | 3 local supporter = Supporter:by_pk(initiative.id, app.session.member.id) |
bsw/jbe@19 | 4 |
bsw/jbe@19 | 5 local unique_string = multirand.string(16, '0123456789abcdef') |
bsw/jbe@19 | 6 |
bsw/jbe@19 | 7 |
bsw/jbe@19 | 8 local partial = { |
bsw/jbe@19 | 9 routing = { |
bsw/jbe@19 | 10 default = { |
bsw/jbe@19 | 11 mode = "redirect", |
bsw/jbe@19 | 12 module = "initiative", |
bsw/jbe@19 | 13 view = "show_support", |
bsw/jbe@19 | 14 id = initiative.id |
bsw/jbe@19 | 15 } |
bsw/jbe@19 | 16 } |
bsw/jbe@19 | 17 } |
bsw/jbe@0 | 18 |
bsw/jbe@19 | 19 local routing = { |
bsw/jbe@19 | 20 default = { |
bsw/jbe@19 | 21 mode = "redirect", |
bsw/jbe@19 | 22 module = request.get_module(), |
bsw/jbe@19 | 23 view = request.get_view(), |
bsw/jbe@19 | 24 id = param.get_id_cgi(), |
bsw/jbe@19 | 25 params = param.get_all_cgi() |
bsw/jbe@19 | 26 } |
bsw/jbe@19 | 27 } |
bsw/jbe@19 | 28 |
bsw/jbe@19 | 29 if not initiative.issue.fully_frozen and not initiative.issue.closed then |
bsw/jbe@19 | 30 if supporter then |
bsw/jbe@19 | 31 if not supporter:has_critical_opinion() then |
bsw@10 | 32 ui.container{ |
bsw/jbe@19 | 33 attr = { |
bsw/jbe@19 | 34 class = "head head_supporter", |
bsw/jbe@19 | 35 style = "cursor: pointer;", |
bsw/jbe@19 | 36 onclick = "document.getElementById('support_content_" .. unique_string .. "').style.display = 'block';" |
bsw/jbe@19 | 37 }, |
bsw@10 | 38 content = function() |
bsw/jbe@19 | 39 ui.image{ |
bsw/jbe@19 | 40 static = "icons/16/thumb_up_green.png" |
bsw/jbe@0 | 41 } |
poelzi@148 | 42 if supporter.auto_support then |
poelzi@148 | 43 slot.put(_"Your are supporter (Autosupport enabled)") |
poelzi@148 | 44 else |
poelzi@148 | 45 slot.put(_"Your are supporter") |
poelzi@148 | 46 end |
bsw/jbe@19 | 47 ui.image{ |
bsw/jbe@19 | 48 static = "icons/16/dropdown.png" |
bsw/jbe@19 | 49 } |
bsw@10 | 50 end |
bsw@10 | 51 } |
bsw@10 | 52 else |
bsw/jbe@19 | 53 ui.container{ |
bsw/jbe@19 | 54 attr = { |
bsw/jbe@19 | 55 class = "head head_potential_supporter", |
bsw/jbe@19 | 56 style = "cursor: pointer;", |
bsw/jbe@19 | 57 onclick = "document.getElementById('support_content_" .. unique_string .. "').style.display = 'block';" |
bsw/jbe@19 | 58 }, |
bsw/jbe@19 | 59 content = function() |
bsw/jbe@19 | 60 ui.image{ |
bsw/jbe@19 | 61 static = "icons/16/thumb_up.png" |
bsw/jbe@19 | 62 } |
poelzi@148 | 63 if supporter.auto_support then |
poelzi@148 | 64 slot.put(_"Your are potential supporter (WARNING: Autosupport enabled)") |
poelzi@148 | 65 else |
poelzi@148 | 66 slot.put(_"Your are potential supporter") |
poelzi@148 | 67 end |
bsw/jbe@19 | 68 ui.image{ |
bsw/jbe@19 | 69 static = "icons/16/dropdown.png" |
bsw/jbe@19 | 70 } |
bsw/jbe@19 | 71 end |
bsw/jbe@19 | 72 } |
bsw/jbe@19 | 73 end |
bsw/jbe@19 | 74 ui.container{ |
bsw/jbe@19 | 75 attr = { class = "content", id = "support_content_" .. unique_string .. "" }, |
bsw/jbe@19 | 76 content = function() |
bsw/jbe@19 | 77 ui.container{ |
bsw/jbe@19 | 78 attr = { |
bsw/jbe@19 | 79 class = "close", |
bsw/jbe@19 | 80 style = "cursor: pointer;", |
bsw/jbe@19 | 81 onclick = "document.getElementById('support_content_" .. unique_string .. "').style.display = 'none';" |
bsw/jbe@19 | 82 }, |
bsw@10 | 83 content = function() |
bsw/jbe@19 | 84 ui.image{ static = "icons/16/cross.png" } |
bsw/jbe@19 | 85 end |
bsw/jbe@19 | 86 } |
bsw/jbe@19 | 87 if supporter then |
poelzi@148 | 88 if config.auto_support then |
poelzi@148 | 89 if supporter.auto_support then |
poelzi@148 | 90 ui.link{ |
poelzi@148 | 91 image = { static = "icons/16/cancel.png" }, |
poelzi@148 | 92 text = _"Disable autosupport for this initiative", |
poelzi@148 | 93 module = "initiative", |
poelzi@148 | 94 action = "add_support", |
poelzi@148 | 95 id = initiative.id, |
poelzi@148 | 96 routing = routing, |
poelzi@148 | 97 partial = partial, |
poelzi@148 | 98 params = { auto_support = false } |
poelzi@148 | 99 } |
poelzi@148 | 100 else |
poelzi@148 | 101 ui.link{ |
poelzi@148 | 102 image = { static = "icons/16/tick.png" }, |
poelzi@148 | 103 text = _"Enable autosupport for this initiative", |
poelzi@148 | 104 module = "initiative", |
poelzi@148 | 105 action = "add_support", |
poelzi@148 | 106 id = initiative.id, |
poelzi@148 | 107 routing = routing, |
poelzi@148 | 108 partial = partial, |
poelzi@148 | 109 params = { auto_support = true } |
poelzi@148 | 110 } |
poelzi@148 | 111 end |
poelzi@148 | 112 end |
bsw/jbe@19 | 113 ui.link{ |
bsw/jbe@19 | 114 image = { static = "icons/16/thumb_down_red.png" }, |
bsw/jbe@19 | 115 text = _"Remove my support from this initiative", |
bsw/jbe@19 | 116 module = "initiative", |
bsw/jbe@19 | 117 action = "remove_support", |
bsw/jbe@19 | 118 id = initiative.id, |
bsw/jbe@19 | 119 routing = routing, |
bsw/jbe@19 | 120 partial = partial |
bsw/jbe@0 | 121 } |
bsw/jbe@19 | 122 else |
bsw/jbe@19 | 123 end |
bsw/jbe@0 | 124 end |
bsw/jbe@19 | 125 } |
bsw/jbe@19 | 126 else |
bsw/jbe@19 | 127 if not initiative.revoked then |
bsw/jbe@19 | 128 local params = param.get_all_cgi() |
bsw/jbe@19 | 129 params.dyn = nil |
bsw/jbe@19 | 130 ui.link{ |
bsw/jbe@19 | 131 image = { static = "icons/16/thumb_up_green.png" }, |
bsw/jbe@19 | 132 text = _"Support this initiative", |
bsw/jbe@19 | 133 module = "initiative", |
bsw/jbe@19 | 134 action = "add_support", |
bsw/jbe@19 | 135 id = initiative.id, |
bsw/jbe@19 | 136 routing = routing, |
bsw/jbe@19 | 137 partial = partial |
bsw/jbe@19 | 138 } |
bsw/jbe@4 | 139 end |
bsw@10 | 140 end |
bsw/jbe@19 | 141 end |
bsw@10 | 142 |