rev |
line source |
bsw/jbe@19
|
1 local member
|
bsw/jbe@19
|
2
|
bsw/jbe@19
|
3 if request.get_json_request_slots() then
|
bsw/jbe@19
|
4 member = Member:by_id(param.get("member_id"))
|
bsw/jbe@19
|
5 else
|
bsw/jbe@19
|
6 member = param.get("member", "table")
|
bsw/jbe@19
|
7 end
|
bsw/jbe@19
|
8
|
bsw/jbe@19
|
9 local areas_selector = member:get_reference_selector("areas")
|
bsw/jbe@19
|
10 local issues_selector = member:get_reference_selector("issues")
|
bsw/jbe@19
|
11 local supported_initiatives_selector = member:get_reference_selector("supported_initiatives")
|
bsw/jbe@19
|
12 local initiated_initiatives_selector = member:get_reference_selector("initiated_initiatives"):add_where("initiator.accepted = true")
|
bsw/jbe@19
|
13 local incoming_delegations_selector = member:get_reference_selector("incoming_delegations")
|
bsw/jbe@19
|
14 :left_join("issue", "_member_showtab_issue", "_member_showtab_issue.id = delegation.issue_id")
|
bsw/jbe@19
|
15 :add_where("_member_showtab_issue.closed ISNULL")
|
bsw/jbe@19
|
16 local outgoing_delegations_selector = member:get_reference_selector("outgoing_delegations")
|
bsw/jbe@19
|
17 :left_join("issue", "_member_showtab_issue", "_member_showtab_issue.id = delegation.issue_id")
|
bsw/jbe@19
|
18 :add_where("_member_showtab_issue.closed ISNULL")
|
bsw/jbe@19
|
19 local contacts_selector = member:get_reference_selector("saved_members"):add_where("public")
|
bsw/jbe@19
|
20
|
bsw/jbe@19
|
21 ui.tabs{
|
bsw/jbe@19
|
22 module = "member",
|
bsw/jbe@19
|
23 view = "show_tab",
|
bsw/jbe@19
|
24 static_params = { member_id = member.id },
|
bsw/jbe@19
|
25 {
|
bsw/jbe@19
|
26 name = "profile",
|
bsw/jbe@19
|
27 label = _"Profile",
|
bsw/jbe@19
|
28 icon = { static = "icons/16/application_form.png" },
|
bsw/jbe@19
|
29 module = "member",
|
bsw/jbe@19
|
30 view = "_profile",
|
bsw/jbe@19
|
31 params = { member = member },
|
bsw/jbe@19
|
32 },
|
bsw/jbe@19
|
33 {
|
bsw/jbe@19
|
34 name = "areas",
|
bsw/jbe@19
|
35 label = _"Areas" .. " (" .. tostring(areas_selector:count()) .. ")",
|
bsw/jbe@19
|
36 icon = { static = "icons/16/package.png" },
|
bsw/jbe@19
|
37 module = "area",
|
bsw/jbe@19
|
38 view = "_list",
|
bsw/jbe@19
|
39 params = { areas_selector = areas_selector },
|
bsw/jbe@19
|
40 },
|
bsw/jbe@19
|
41 {
|
bsw/jbe@19
|
42 name = "issues",
|
bsw/jbe@19
|
43 label = _"Issues" .. " (" .. tostring(issues_selector:count()) .. ")",
|
bsw/jbe@19
|
44 icon = { static = "icons/16/folder.png" },
|
bsw/jbe@19
|
45 module = "issue",
|
bsw/jbe@19
|
46 view = "_list",
|
bsw/jbe@19
|
47 params = { issues_selector = issues_selector },
|
bsw/jbe@19
|
48 },
|
bsw/jbe@19
|
49 {
|
bsw/jbe@19
|
50 name = "supported_initiatives",
|
bsw/jbe@19
|
51 label = _"Supported initiatives" .. " (" .. tostring(supported_initiatives_selector:count()) .. ")",
|
bsw/jbe@19
|
52 icon = { static = "icons/16/thumb_up_green.png" },
|
bsw/jbe@19
|
53 module = "initiative",
|
bsw/jbe@19
|
54 view = "_list",
|
bsw/jbe@19
|
55 params = { initiatives_selector = supported_initiatives_selector },
|
bsw/jbe@19
|
56 },
|
bsw/jbe@19
|
57 {
|
bsw/jbe@19
|
58 name = "initiatied_initiatives",
|
bsw/jbe@19
|
59 label = _"Initiated initiatives" .. " (" .. tostring(initiated_initiatives_selector:count()) .. ")",
|
bsw/jbe@19
|
60 icon = { static = "icons/16/user_edit.png" },
|
bsw/jbe@19
|
61 module = "initiative",
|
bsw/jbe@19
|
62 view = "_list",
|
bsw/jbe@19
|
63 params = { initiatives_selector = initiated_initiatives_selector },
|
bsw/jbe@19
|
64 },
|
bsw/jbe@19
|
65 {
|
bsw/jbe@19
|
66 name = "incoming_delegations",
|
bsw/jbe@19
|
67 label = _"Incoming delegations" .. " (" .. tostring(incoming_delegations_selector:count()) .. ")",
|
bsw/jbe@19
|
68 icon = { static = "icons/16/table_go.png" },
|
bsw/jbe@19
|
69 module = "delegation",
|
bsw/jbe@19
|
70 view = "_list",
|
bsw/jbe@19
|
71 params = { delegations_selector = incoming_delegations_selector, incoming = true },
|
bsw/jbe@19
|
72 },
|
bsw/jbe@19
|
73 {
|
bsw/jbe@19
|
74 name = "outgoing_delegations",
|
bsw/jbe@19
|
75 label = _"Outgoing delegations" .. " (" .. tostring(outgoing_delegations_selector:count()) .. ")",
|
bsw/jbe@19
|
76 icon = { static = "icons/16/table_go.png" },
|
bsw/jbe@19
|
77 module = "delegation",
|
bsw/jbe@19
|
78 view = "_list",
|
bsw@24
|
79 params = { delegations_selector = outgoing_delegations_selector, outgoing = true },
|
bsw/jbe@19
|
80 },
|
bsw/jbe@19
|
81 {
|
bsw/jbe@19
|
82 name = "contacts",
|
bsw/jbe@19
|
83 label = _"Contacts" .. " (" .. tostring(contacts_selector:count()) .. ")",
|
bsw/jbe@19
|
84 icon = { static = "icons/16/book_edit.png" },
|
bsw/jbe@19
|
85 module = "member",
|
bsw/jbe@19
|
86 view = "_list",
|
bsw/jbe@19
|
87 params = { members_selector = contacts_selector },
|
bsw/jbe@19
|
88 }
|
bsw/jbe@19
|
89 }
|