liquid_feedback_frontend

annotate app/main/member/show.lua @ 898:ae9ab3edff89

Added polling support
author bsw
date Mon Aug 20 03:54:20 2012 +0200 (2012-08-20)
parents ea2449916c12
children 701a5cf6b067
rev   line source
bsw/jbe@0 1 local member = Member:by_id(param.get_id())
bsw/jbe@0 2
bsw@286 3 if not member or not member.activated then
bsw@286 4 error("access denied")
bsw@286 5 end
bsw@286 6
jorges@103 7 app.html_title.title = member.name
jorges@103 8 app.html_title.subtitle = _("Member")
jorges@103 9
bsw@564 10 slot.select("head", function()
bsw@564 11 ui.container{
bsw@564 12 attr = { class = "title" },
bsw@564 13 content = _("Member '#{member}'", { member = member.name })
bsw@426 14 }
bsw@564 15
bsw@564 16 ui.container{ attr = { class = "actions" }, content = function()
bsw@564 17
bsw@564 18 if member.id == app.session.member_id then
bsw@564 19 ui.link{
bsw@564 20 content = function()
bsw@564 21 slot.put(encode.html(_"Edit profile"))
bsw@564 22 end,
bsw@564 23 module = "member",
bsw@564 24 view = "edit"
bsw@564 25 }
bsw@564 26 slot.put(" · ")
bsw@564 27 ui.link{
bsw@564 28 content = function()
bsw@564 29 slot.put(encode.html(_"Upload avatar/photo"))
bsw@564 30 end,
bsw@564 31 module = "member",
bsw@564 32 view = "edit_images"
bsw@564 33 }
bsw@564 34 slot.put(" · ")
bsw@564 35 end
bsw@564 36 ui.link{
bsw@564 37 content = function()
bsw@564 38 slot.put(encode.html(_"Show member history"))
bsw@564 39 end,
bsw@564 40 module = "member",
bsw@564 41 view = "history",
bsw@564 42 id = member.id
bsw@426 43 }
bsw@564 44 if not member.active then
bsw@564 45 slot.put(" · ")
bsw@564 46 ui.tag{
bsw@564 47 attr = { class = "interest deactivated_member_info" },
bsw@609 48 content = _"This member is inactive"
bsw@609 49 }
bsw@609 50 end
bsw@609 51 if member.locked then
bsw@609 52 slot.put(" · ")
bsw@609 53 ui.tag{
bsw@609 54 attr = { class = "interest deactivated_member_info" },
bsw@609 55 content = _"This member is locked"
bsw@564 56 }
bsw@564 57 end
bsw@813 58 if app.session.member_id and not (member.id == app.session.member.id) then
bsw@564 59 slot.put(" · ")
bsw@564 60 --TODO performance
bsw@564 61 local contact = Contact:by_pk(app.session.member.id, member.id)
bsw@564 62 if contact then
bsw@564 63 ui.link{
bsw@564 64 text = _"Remove from contacts",
bsw@564 65 module = "contact",
bsw@564 66 action = "remove_member",
bsw@564 67 id = contact.other_member_id,
bsw@564 68 routing = {
bsw@564 69 default = {
bsw@564 70 mode = "redirect",
bsw@564 71 module = request.get_module(),
bsw@564 72 view = request.get_view(),
bsw@564 73 id = param.get_id_cgi(),
bsw@564 74 params = param.get_all_cgi()
bsw@564 75 }
bsw@564 76 }
bsw@564 77 }
bsw@564 78 elseif member.activated then
bsw@564 79 ui.link{
bsw@564 80 text = _"Add to my contacts",
bsw@564 81 module = "contact",
bsw@564 82 action = "add_member",
bsw@564 83 id = member.id,
bsw@564 84 routing = {
bsw@564 85 default = {
bsw@564 86 mode = "redirect",
bsw@564 87 module = request.get_module(),
bsw@564 88 view = request.get_view(),
bsw@564 89 id = param.get_id_cgi(),
bsw@564 90 params = param.get_all_cgi()
bsw@564 91 }
bsw@564 92 }
bsw@564 93 }
bsw@564 94 end
bsw@564 95 end
bsw@813 96 if app.session.member_id then
bsw@813 97 local ignored_member = IgnoredMember:by_pk(app.session.member.id, member.id)
bsw@564 98 slot.put(" · ")
bsw@813 99 if ignored_member then
bsw@813 100 ui.tag{
bsw@813 101 attr = { class = "interest" },
bsw@813 102 content = _"You have ignored this member"
bsw@813 103 }
bsw@813 104 slot.put(" · ")
bsw@813 105 ui.link{
bsw@813 106 text = _"Stop ignoring member",
bsw@813 107 module = "member",
bsw@813 108 action = "update_ignore_member",
bsw@813 109 id = member.id,
bsw@813 110 params = { delete = true },
bsw@813 111 routing = {
bsw@813 112 default = {
bsw@813 113 mode = "redirect",
bsw@813 114 module = request.get_module(),
bsw@813 115 view = request.get_view(),
bsw@813 116 id = param.get_id_cgi(),
bsw@813 117 params = param.get_all_cgi()
bsw@813 118 }
bsw@3 119 }
bsw@3 120 }
bsw@813 121 elseif member.activated then
bsw@813 122 ui.link{
bsw@813 123 attr = { class = "interest" },
bsw@813 124 text = _"Ignore member",
bsw@813 125 module = "member",
bsw@813 126 action = "update_ignore_member",
bsw@813 127 id = member.id,
bsw@813 128 routing = {
bsw@813 129 default = {
bsw@813 130 mode = "redirect",
bsw@813 131 module = request.get_module(),
bsw@813 132 view = request.get_view(),
bsw@813 133 id = param.get_id_cgi(),
bsw@813 134 params = param.get_all_cgi()
bsw@813 135 }
bsw@3 136 }
bsw@3 137 }
bsw@813 138 end
bsw@57 139 end
bsw@564 140 end }
bsw@9 141 end)
bsw@9 142
bsw/jbe@4 143 util.help("member.show", _"Member page")
bsw/jbe@0 144
bsw/jbe@0 145 execute.view{
bsw/jbe@0 146 module = "member",
bsw/jbe@0 147 view = "_show",
bsw/jbe@0 148 params = { member = member }
bsw/jbe@0 149 }
bsw/jbe@0 150

Impressum / About Us