liquid_feedback_frontend

view app/main/member/_show.lua @ 774:a3eb6ca34484

Completed membership/privilege tab in member page
author bsw
date Thu Jun 28 23:57:02 2012 +0200 (2012-06-28)
parents ea4c1b3a443c
children
line source
1 local member = param.get("member", "table")
3 local tabs = {
4 module = "member",
5 view = "show_tab",
6 static_params = {
7 member_id = member.id
8 }
9 }
11 tabs[#tabs+1] = {
12 name = "profile",
13 label = _"Profile",
14 icon = { static = "icons/16/application_form.png" },
15 module = "member",
16 view = "_profile",
17 params = { member = member },
18 }
20 local areas_selector = member:get_reference_selector("areas")
21 tabs[#tabs+1] = {
22 name = "areas",
23 label = _"Units and areas",
24 icon = { static = "icons/16/package.png" },
25 module = "index",
26 view = "_member_home",
27 params = { areas_selector = areas_selector, member = member, for_member = true },
28 }
30 tabs[#tabs+1] = {
31 name = "timeline",
32 label = _"Latest events",
33 module = "event",
34 view = "_list",
35 params = { for_member = member }
36 }
38 tabs[#tabs+1] = {
39 name = "open",
40 label = _"Open issues",
41 module = "issue",
42 view = "_list",
43 link_params = {
44 filter_interest = "issue",
45 },
46 params = {
47 for_state = "open",
48 for_member = member,
49 issues_selector = Issue:new_selector()
50 :add_where("issue.closed ISNULL")
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()")
52 }
53 }
55 tabs[#tabs+1] = {
56 name = "closed",
57 label = _"Closed issues",
58 module = "issue",
59 view = "_list",
60 link_params = {
61 filter_interest = "issue",
62 },
63 params = {
64 for_state = "closed",
65 for_member = member,
66 issues_selector = Issue:new_selector()
67 :add_where("issue.closed NOTNULL")
68 :add_order_by("issue.closed DESC")
70 }
71 }
74 local outgoing_delegations_selector = member:get_reference_selector("outgoing_delegations")
75 :left_join("issue", "_member_showtab_issue", "_member_showtab_issue.id = delegation.issue_id")
76 :add_where("_member_showtab_issue.closed ISNULL")
77 tabs[#tabs+1] = {
78 name = "outgoing_delegations",
79 label = _"Outgoing delegations" .. " (" .. tostring(outgoing_delegations_selector:count()) .. ")",
80 icon = { static = "icons/16/table_go.png" },
81 module = "delegation",
82 view = "_list",
83 params = { delegations_selector = outgoing_delegations_selector, outgoing = true },
84 }
86 local incoming_delegations_selector = member:get_reference_selector("incoming_delegations")
87 :left_join("issue", "_member_showtab_issue", "_member_showtab_issue.id = delegation.issue_id")
88 :add_where("_member_showtab_issue.closed ISNULL")
89 tabs[#tabs+1] = {
90 name = "incoming_delegations",
91 label = _"Incoming delegations" .. " (" .. tostring(incoming_delegations_selector:count()) .. ")",
92 icon = { static = "icons/16/table_go.png" },
93 module = "delegation",
94 view = "_list",
95 params = { delegations_selector = incoming_delegations_selector, incoming = true },
96 }
98 local contacts_selector = member:get_reference_selector("saved_members"):add_where("public")
99 tabs[#tabs+1] = {
100 name = "contacts",
101 label = _"Contacts" .. " (" .. tostring(contacts_selector:count()) .. ")",
102 icon = { static = "icons/16/book_edit.png" },
103 module = "member",
104 view = "_list",
105 params = { members_selector = contacts_selector },
106 }
108 ui.tabs(tabs)

Impressum / About Us