liquid_feedback_frontend

annotate app/main/supporter/_show_box.lua @ 1030:42edba78d946

Better error/success messages for admin cancel issue
author bsw
date Sun Aug 11 23:04:17 2013 +0200 (2013-08-11)
parents 2cfa41e89c15
children
rev   line source
bsw@278 1 local initiative = param.get("initiative", "table") or Initiative:by_id(param.get_id())
bsw/jbe@0 2
bsw/jbe@19 3
bsw@525 4 local initiative = param.get("initiative", "table")
bsw@525 5 local supporter = Supporter:by_pk(initiative.id, app.session.member.id)
bsw@278 6
bsw@525 7 local partial = {
bsw@525 8 routing = {
bsw@525 9 default = {
bsw@525 10 mode = "redirect",
bsw@525 11 module = "initiative",
bsw@525 12 view = "show_support",
bsw@525 13 id = initiative.id
bsw@525 14 }
bsw@525 15 }
bsw@525 16 }
bsw/jbe@0 17
bsw@525 18 local routing = {
bsw@525 19 default = {
bsw@525 20 mode = "redirect",
bsw@525 21 module = request.get_module(),
bsw@525 22 view = request.get_view(),
bsw@525 23 id = param.get_id_cgi(),
bsw@525 24 params = param.get_all_cgi()
bsw@525 25 }
bsw@525 26 }
bsw/jbe@19 27
bsw@525 28 if not initiative.issue.fully_frozen and not initiative.issue.closed then
bsw@525 29 if supporter then
bsw@525 30 if not supporter:has_critical_opinion() then
bsw@525 31 ui.tag{ content = function()
bsw@525 32 ui.image{
bsw@525 33 static = "icons/16/thumb_up_green.png"
bsw@525 34 }
bsw@529 35 if initiative.issue.closed then
bsw@529 36 slot.put(_"You were supporter")
bsw@529 37 else
bsw@529 38 slot.put(_"You are supporter")
bsw@529 39 end
bsw@525 40 end }
bsw@525 41 else
bsw@525 42 ui.tag{ attr = { class = "potential_supporter" }, content = function()
bsw@525 43 ui.image{
bsw@525 44 static = "icons/16/thumb_up.png"
bsw@525 45 }
bsw@529 46 if initiative.issue.closed then
bsw@529 47 slot.put(_"You were potential supporter")
bsw@529 48 else
bsw@529 49 slot.put(_"You are potential supporter")
bsw@529 50 end
bsw@525 51 end }
bsw@525 52 end
bsw@525 53 slot.put(" (")
bsw@525 54 ui.link{
bsw@525 55 text = _"Withdraw",
bsw@525 56 module = "initiative",
bsw@525 57 action = "remove_support",
bsw@525 58 id = initiative.id,
bsw@525 59 routing = routing,
bsw@525 60 partial = partial
bsw@525 61 }
bsw@525 62 slot.put(") ")
bsw@525 63 elseif not initiative.revoked and app.session.member:has_voting_right_for_unit_id(initiative.issue.area.unit_id) then
bsw@525 64 local params = param.get_all_cgi()
bsw@525 65 params.dyn = nil
bsw@525 66 ui.link{
bsw@525 67 text = _"Support this initiative",
bsw@525 68 module = "initiative",
bsw@525 69 action = "add_support",
bsw@525 70 id = initiative.id,
bsw@525 71 routing = routing,
bsw@525 72 partial = partial
bsw@525 73 }
bsw@525 74 slot.put(" ")
bsw@525 75 end
bsw@525 76 end
bsw@278 77
bsw@280 78
bsw@525 79
bsw@525 80 if not initiative.issue.closed then
bsw@887 81 if not initiative.issue.fully_frozen and app.session.member:has_voting_right_for_unit_id(initiative.issue.area.unit_id) then
bsw@887 82 slot.put(" · ")
bsw@887 83 end
bsw@525 84 local ignored_initiative = IgnoredInitiative:by_pk(app.session.member.id, initiative.id)
bsw@525 85 if ignored_initiative then
bsw@525 86 ui.tag{
bsw@887 87 content = _"Ignore initiative"
bsw/jbe@19 88 }
bsw@887 89 slot.put(" (")
bsw@525 90 ui.link{
bsw@887 91 text = _"Cancel [nullify]",
bsw@525 92 module = "initiative",
bsw@525 93 action = "update_ignore",
bsw@525 94 id = initiative.id,
bsw@525 95 params = { delete = true },
bsw@525 96 routing = {
bsw@525 97 default = {
bsw@525 98 mode = "redirect",
bsw@525 99 module = request.get_module(),
bsw@525 100 view = request.get_view(),
bsw@525 101 id = param.get_id_cgi(),
bsw@525 102 params = param.get_all_cgi()
bsw@525 103 }
bsw@525 104 }
bsw@525 105 }
bsw@887 106 slot.put(")")
bsw@525 107 else
bsw@525 108 ui.link{
bsw@525 109 text = _"Ignore initiative",
bsw@525 110 module = "initiative",
bsw@525 111 action = "update_ignore",
bsw@525 112 id = initiative.id,
bsw@525 113 routing = {
bsw@525 114 default = {
bsw@525 115 mode = "redirect",
bsw@525 116 module = request.get_module(),
bsw@525 117 view = request.get_view(),
bsw@525 118 id = param.get_id_cgi(),
bsw@525 119 params = param.get_all_cgi()
bsw@525 120 }
bsw@525 121 }
bsw@525 122 }
bsw@10 123 end
bsw@525 124 end

Impressum / About Us