liquid_feedback_frontend

annotate app/main/contact/_list.lua @ 2:5c601807d397

Version alpha3

Dark green part of issue supporter bargraph represents all satisfied supporters, regardless of having seen the latest draft

Wiki formatting for drafts

Showing differences between two drafts of the same initiative

Display of outgoing delegation chains

Many other improvements
author bsw
date Mon Nov 23 12:00:00 2009 +0100 (2009-11-23)
parents 3bfb2fcf7ab9
children 80c215dbf076
rev   line source
bsw/jbe@0 1
bsw/jbe@0 2 local contacts_selector = Contact:new_selector()
bsw/jbe@0 3 :add_where{ "member_id = ?", app.session.member.id }
bsw/jbe@0 4 :join("member", nil, "member.id = contact.other_member_id")
bsw/jbe@0 5 :add_order_by("member.login")
bsw/jbe@0 6
bsw/jbe@0 7 ui.paginate{
bsw/jbe@0 8 selector = contacts_selector,
bsw/jbe@0 9 content = function()
bsw/jbe@0 10 local contacts = contacts_selector:exec()
bsw/jbe@0 11 if #contacts == 0 then
bsw/jbe@0 12 ui.field.text{ value = _"You didn't saved any member as contact yet." }
bsw/jbe@0 13 else
bsw/jbe@0 14 ui.list{
bsw/jbe@0 15 records = contacts,
bsw/jbe@0 16 columns = {
bsw/jbe@0 17 {
bsw/jbe@0 18 label = _"Login",
bsw/jbe@0 19 content = function(record)
bsw/jbe@0 20 ui.link{
bsw/jbe@0 21 text = record.other_member.login,
bsw/jbe@0 22 module = "member",
bsw/jbe@0 23 view = "show",
bsw/jbe@0 24 id = record.other_member_id
bsw/jbe@0 25 }
bsw/jbe@0 26 end
bsw/jbe@0 27 },
bsw/jbe@0 28 {
bsw/jbe@0 29 label = _"Name",
bsw/jbe@0 30 content = function(record)
bsw/jbe@0 31 ui.link{
bsw/jbe@0 32 text = record.other_member.name,
bsw/jbe@0 33 module = "member",
bsw/jbe@0 34 view = "show",
bsw/jbe@0 35 id = record.other_member_id
bsw/jbe@0 36 }
bsw/jbe@0 37 end
bsw/jbe@0 38 },
bsw/jbe@0 39 {
bsw/jbe@0 40 label = _"Published",
bsw/jbe@0 41 content = function(record)
bsw/jbe@0 42 ui.field.boolean{ value = record.public }
bsw/jbe@0 43 end
bsw/jbe@0 44 },
bsw/jbe@0 45 {
bsw/jbe@0 46 content = function(record)
bsw/jbe@0 47 if record.public then
bsw/jbe@0 48 ui.link{
bsw/jbe@0 49 attr = { class = "action" },
bsw/jbe@0 50 text = _"Hide",
bsw/jbe@0 51 module = "contact",
bsw/jbe@0 52 action = "add_member",
bsw/jbe@0 53 id = record.other_member_id,
bsw/jbe@0 54 params = { public = false },
bsw/jbe@0 55 routing = {
bsw/jbe@0 56 default = {
bsw/jbe@0 57 mode = "redirect",
bsw/jbe@0 58 module = request.get_module(),
bsw/jbe@0 59 view = request.get_view(),
bsw/jbe@0 60 id = param.get_id_cgi(),
bsw/jbe@0 61 params = param.get_all_cgi()
bsw/jbe@0 62 }
bsw/jbe@0 63 }
bsw/jbe@0 64 }
bsw/jbe@0 65 else
bsw/jbe@0 66 ui.link{
bsw/jbe@0 67 attr = { class = "action" },
bsw/jbe@0 68 text = _"Publish",
bsw/jbe@0 69 module = "contact",
bsw/jbe@0 70 action = "add_member",
bsw/jbe@0 71 id = record.other_member_id,
bsw/jbe@0 72 params = { public = true },
bsw/jbe@0 73 routing = {
bsw/jbe@0 74 default = {
bsw/jbe@0 75 mode = "redirect",
bsw/jbe@0 76 module = request.get_module(),
bsw/jbe@0 77 view = request.get_view(),
bsw/jbe@0 78 id = param.get_id_cgi(),
bsw/jbe@0 79 params = param.get_all_cgi()
bsw/jbe@0 80 }
bsw/jbe@0 81 }
bsw/jbe@0 82 }
bsw/jbe@0 83 end
bsw/jbe@0 84 end
bsw/jbe@0 85 },
bsw/jbe@0 86 {
bsw/jbe@0 87 content = function(record)
bsw/jbe@0 88 ui.link{
bsw/jbe@0 89 attr = { class = "action" },
bsw/jbe@0 90 text = _"Remove",
bsw/jbe@0 91 module = "contact",
bsw/jbe@0 92 action = "remove_member",
bsw/jbe@0 93 id = record.other_member_id,
bsw/jbe@0 94 routing = {
bsw/jbe@0 95 default = {
bsw/jbe@0 96 mode = "redirect",
bsw/jbe@0 97 module = request.get_module(),
bsw/jbe@0 98 view = request.get_view(),
bsw/jbe@0 99 id = param.get_id_cgi(),
bsw/jbe@0 100 params = param.get_all_cgi()
bsw/jbe@0 101 }
bsw/jbe@0 102 }
bsw/jbe@0 103 }
bsw/jbe@0 104 end
bsw/jbe@0 105 },
bsw/jbe@0 106 {
bsw/jbe@0 107 content = function(record)
bsw/jbe@0 108 ui.link{
bsw/jbe@0 109 attr = { class = "action" },
bsw/jbe@0 110 text = _"Global delegation",
bsw/jbe@0 111 module = "delegation",
bsw/jbe@0 112 action = "update",
bsw/jbe@0 113 params = {
bsw/jbe@0 114 trustee_id = record.other_member_id,
bsw/jbe@0 115 },
bsw/jbe@0 116 routing = {
bsw/jbe@0 117 default = {
bsw/jbe@0 118 mode = "redirect",
bsw/jbe@0 119 module = request.get_module(),
bsw/jbe@0 120 view = request.get_view(),
bsw/jbe@0 121 id = param.get_id_cgi(),
bsw/jbe@0 122 params = param.get_all_cgi()
bsw/jbe@0 123 }
bsw/jbe@0 124 }
bsw/jbe@0 125 }
bsw/jbe@0 126 end
bsw/jbe@0 127 }
bsw/jbe@0 128 }
bsw/jbe@0 129 }
bsw/jbe@0 130 end
bsw/jbe@0 131 end
bsw/jbe@0 132 }

Impressum / About Us