liquid_feedback_frontend

annotate app/main/member/show.lua @ 75:733f65c0c0a0

Bugfixes, feature enhancements, code-cleanup, and major work on API

Details:
- API
-- Allow relation name to be passed to helper function util.autoapi{...}
-- Added area API
-- Bugfixes in API
--- Correctly return initiatives (bug #162)
--- Correctly process "id" parameter for initiative API
--- Bugfix related to "state" parameter (bug #165)
--- Changed constant "discussion" to "accepted" (in model/issue.lua, used by API)
--- Fixed JSON encoding in auto_api (bug #181)
--- Ignore list filter "voted" in case of public access
--- Enable access to API without session
- Work on RSS feed (incomplete yet)
- Other bugfixes
-- Handle empty browser identification string
-- Handle invalid date in member/update.lua (bugs #24 #109 #115 #136)
-- Better handle errors while converting uploaded images. (bug #79 +5 duplicates)
-- Don't display revoked initiatives in list of new drafts (bug #134)
-- Fixed syntax error in app/main/member/_action/update_name.lua throwing unexpected error, when new name was too short
-- Do not display refresh support button for revoked initiatives
-- Repaired issue search (bug #150)
-- Fixed typos in german translation files
--- "initi(i)erte"
--- "Er(g)eignisse" (bug #161)
- Code cleanup
-- Removed deprecated motd files locale/motd/de.txt and locale/motd/de_public.txt
-- Removed redundant code in app/main/index/_updated_drafts.lua
- New features and (optical) enhancements
-- Support change of notify email; notification of not approved address added to start page
-- Settings dialog splitted into single pages
-- Mark deactivated members
-- Calendar for birthday selection in profile
-- Policy list public readable when public access is enabled
author bsw
date Thu Jul 08 18:44:02 2010 +0200 (2010-07-08)
parents 4f39f0a0d5b5
children 7d0f4721d2f3
rev   line source
bsw/jbe@0 1 local member = Member:by_id(param.get_id())
bsw/jbe@0 2
bsw/jbe@0 3 slot.select("title", function()
bsw/jbe@4 4 execute.view{
bsw/jbe@4 5 module = "member_image",
bsw/jbe@4 6 view = "_show",
bsw/jbe@4 7 params = {
bsw/jbe@4 8 member = member,
bsw/jbe@4 9 image_type = "avatar"
bsw/jbe@4 10 }
bsw/jbe@0 11 }
bsw/jbe@0 12 end)
bsw/jbe@0 13
bsw/jbe@0 14 slot.put_into("title", encode.html(_"Member '#{member}'":gsub("#{member}", member.name)))
bsw/jbe@0 15
bsw@57 16 slot.select("actions", function()
bsw@75 17 if not (member.id == app.session.member.id) then
bsw@75 18 if not member.active then
bsw@75 19 ui.tag{
bsw@75 20 tag = "div",
bsw@75 21 attr = { class = "interest deactivated_member_info" },
bsw@75 22 content = _"This member is deactivated."
bsw@75 23 }
bsw@75 24 slot.put(" ")
bsw@75 25 end
bsw@57 26 --TODO performance
bsw@57 27 local contact = Contact:by_pk(app.session.member.id, member.id)
bsw@57 28 if contact then
bsw/jbe@4 29 ui.container{
bsw/jbe@4 30 attr = { class = "interest" },
bsw/jbe@4 31 content = _"You have saved this member as contact."
bsw/jbe@4 32 }
bsw@3 33 ui.link{
bsw/jbe@19 34 image = { static = "icons/16/book_delete.png" },
bsw/jbe@19 35 text = _"Remove from contacts",
bsw@3 36 module = "contact",
bsw@3 37 action = "remove_member",
bsw/jbe@19 38 id = contact.other_member_id,
bsw@3 39 routing = {
bsw@3 40 default = {
bsw@3 41 mode = "redirect",
bsw@3 42 module = request.get_module(),
bsw@3 43 view = request.get_view(),
bsw@3 44 id = param.get_id_cgi(),
bsw@3 45 params = param.get_all_cgi()
bsw@3 46 }
bsw@3 47 }
bsw@3 48 }
bsw@75 49 elseif member.active then
bsw@3 50 ui.link{
bsw/jbe@19 51 image = { static = "icons/16/book_add.png" },
bsw/jbe@19 52 text = _"Add to my contacts",
bsw@3 53 module = "contact",
bsw@3 54 action = "add_member",
bsw@3 55 id = member.id,
bsw@3 56 routing = {
bsw@3 57 default = {
bsw@3 58 mode = "redirect",
bsw@3 59 module = request.get_module(),
bsw@3 60 view = request.get_view(),
bsw@3 61 id = param.get_id_cgi(),
bsw@3 62 params = param.get_all_cgi()
bsw@3 63 }
bsw@3 64 }
bsw@3 65 }
bsw@57 66 end
bsw@3 67 end
bsw@57 68 end)
bsw/jbe@0 69
bsw@9 70 slot.select("actions", function()
bsw@9 71 ui.link{
bsw@9 72 content = function()
bsw@9 73 ui.image{ static = "icons/16/clock_edit.png" }
bsw@9 74 slot.put(encode.html(_"Show name history"))
bsw@9 75 end,
bsw@9 76 module = "member",
bsw@9 77 view = "history",
bsw@9 78 id = member.id
bsw@9 79 }
bsw@9 80 end)
bsw@9 81
bsw/jbe@4 82 util.help("member.show", _"Member page")
bsw/jbe@0 83
bsw/jbe@0 84 execute.view{
bsw/jbe@0 85 module = "member",
bsw/jbe@0 86 view = "_show",
bsw/jbe@0 87 params = { member = member }
bsw/jbe@0 88 }
bsw/jbe@0 89

Impressum / About Us