liquid_feedback_frontend

annotate app/main/member/_show.lua @ 594:487cca534fbe

Fixed broken unit view on member page. close #1257
author bsw
date Sat Jun 23 20:56:52 2012 +0200 (2012-06-23)
parents 18e8de7a2b6a
children ae14bf355868
rev   line source
bsw@525 1 local member = param.get("member", "table")
bsw@525 2
bsw@525 3 local tabs = {
bsw/jbe@19 4 module = "member",
bsw/jbe@19 5 view = "show_tab",
bsw@525 6 static_params = {
bsw@558 7 member_id = member.id
bsw/jbe@19 8 }
bsw@525 9 }
bsw@525 10
bsw@558 11 tabs[#tabs+1] = {
bsw@558 12 name = "profile",
bsw@558 13 label = _"Profile",
bsw@558 14 icon = { static = "icons/16/application_form.png" },
bsw@558 15 module = "member",
bsw@558 16 view = "_profile",
bsw@558 17 params = { member = member },
bsw@558 18 }
bsw@525 19
bsw@525 20 local areas_selector = member:get_reference_selector("areas")
bsw@525 21 tabs[#tabs+1] = {
bsw@525 22 name = "areas",
bsw@525 23 label = _"Units",
bsw@525 24 icon = { static = "icons/16/package.png" },
bsw@594 25 module = "index",
bsw@594 26 view = "_member_home",
bsw@558 27 params = { areas_selector = areas_selector, member = member, for_member = true },
bsw@525 28 }
bsw@525 29
bsw@558 30 tabs[#tabs+1] = {
bsw@558 31 name = "timeline",
bsw@558 32 label = _"Events",
bsw@558 33 module = "event",
bsw@558 34 view = "_list",
bsw@558 35 params = { for_member = member }
bsw@558 36 }
bsw@525 37
bsw@525 38 tabs[#tabs+1] = {
bsw@525 39 name = "open",
bsw@525 40 label = _"Open issues",
bsw@525 41 module = "issue",
bsw@525 42 view = "_list",
bsw@525 43 link_params = {
bsw@558 44 filter_interest = "issue",
bsw@525 45 },
bsw@525 46 params = {
bsw@525 47 for_state = "open",
bsw@558 48 for_member = member,
bsw@525 49 issues_selector = Issue:new_selector()
bsw@525 50 :add_where("issue.closed ISNULL")
bsw@525 51 :add_order_by("coalesce(issue.fully_frozen + issue.voting_time, issue.half_frozen + issue.verification_time, issue.accepted + issue.discussion_time, issue.created + issue.admission_time) - now()")
bsw@525 52 }
bsw@525 53 }
bsw@525 54
bsw@525 55 tabs[#tabs+1] = {
bsw@525 56 name = "closed",
bsw@525 57 label = _"Closed issues",
bsw@525 58 module = "issue",
bsw@525 59 view = "_list",
bsw@525 60 link_params = {
bsw@558 61 filter_interest = "issue",
bsw@525 62 },
bsw@525 63 params = {
bsw@525 64 for_state = "closed",
bsw@558 65 for_member = member,
bsw@525 66 issues_selector = Issue:new_selector()
bsw@525 67 :add_where("issue.closed NOTNULL")
bsw@525 68 :add_order_by("issue.closed DESC")
bsw@525 69
bsw@525 70 }
bsw@525 71 }
bsw@525 72
bsw@525 73
bsw@558 74 local outgoing_delegations_selector = member:get_reference_selector("outgoing_delegations")
bsw@558 75 :left_join("issue", "_member_showtab_issue", "_member_showtab_issue.id = delegation.issue_id")
bsw@558 76 :add_where("_member_showtab_issue.closed ISNULL")
bsw@558 77 tabs[#tabs+1] = {
bsw@558 78 name = "outgoing_delegations",
bsw@558 79 label = _"Outgoing delegations" .. " (" .. tostring(outgoing_delegations_selector:count()) .. ")",
bsw@558 80 icon = { static = "icons/16/table_go.png" },
bsw@558 81 module = "delegation",
bsw@558 82 view = "_list",
bsw@558 83 params = { delegations_selector = outgoing_delegations_selector, outgoing = true },
bsw@558 84 }
bsw@525 85
bsw@558 86 local incoming_delegations_selector = member:get_reference_selector("incoming_delegations")
bsw@558 87 :left_join("issue", "_member_showtab_issue", "_member_showtab_issue.id = delegation.issue_id")
bsw@558 88 :add_where("_member_showtab_issue.closed ISNULL")
bsw@558 89 tabs[#tabs+1] = {
bsw@558 90 name = "incoming_delegations",
bsw@558 91 label = _"Incoming delegations" .. " (" .. tostring(incoming_delegations_selector:count()) .. ")",
bsw@558 92 icon = { static = "icons/16/table_go.png" },
bsw@558 93 module = "delegation",
bsw@558 94 view = "_list",
bsw@558 95 params = { delegations_selector = incoming_delegations_selector, incoming = true },
bsw@558 96 }
bsw@525 97
bsw@558 98 local contacts_selector = member:get_reference_selector("saved_members"):add_where("public")
bsw@558 99 tabs[#tabs+1] = {
bsw@558 100 name = "contacts",
bsw@558 101 label = _"Contacts" .. " (" .. tostring(contacts_selector:count()) .. ")",
bsw@558 102 icon = { static = "icons/16/book_edit.png" },
bsw@558 103 module = "member",
bsw@558 104 view = "_list",
bsw@558 105 params = { members_selector = contacts_selector },
bsw@558 106 }
bsw@525 107
bsw@525 108 ui.tabs(tabs)

Impressum / About Us