annotate app/main/initiative/remove_initiator.lua @ 969:c23a25f38c44
Added missing share lock on issue to initiative creation action
author |
bsw |
date |
Sat Mar 09 19:05:56 2013 +0100 (2013-03-09) |
parents |
72c5e0ee7c98 |
children |
701a5cf6b067 |
rev |
line source |
bsw@10
|
1 local initiative = Initiative:by_id(param.get("initiative_id"))
|
bsw@10
|
2
|
bsw@10
|
3 local initiator = Initiator:by_pk(initiative.id, app.session.member.id)
|
bsw@10
|
4 if not initiator or initiator.accepted ~= true then
|
bsw@10
|
5 error("access denied")
|
bsw@10
|
6 end
|
bsw@10
|
7
|
bsw@10
|
8 slot.put_into("title", _"Remove initiator from initiative")
|
bsw@10
|
9
|
bsw@10
|
10 slot.select("actions", function()
|
bsw@10
|
11 ui.link{
|
bsw@10
|
12 content = function()
|
bsw@10
|
13 ui.image{ static = "icons/16/cancel.png" }
|
bsw@10
|
14 slot.put(_"Cancel")
|
bsw@10
|
15 end,
|
bsw@10
|
16 module = "initiative",
|
bsw@10
|
17 view = "show",
|
bsw@10
|
18 id = initiative.id,
|
bsw@10
|
19 params = {
|
bsw@10
|
20 tab = "initiators"
|
bsw@10
|
21 }
|
bsw@10
|
22 }
|
bsw@10
|
23 end)
|
bsw@10
|
24
|
bsw@10
|
25 util.help("initiative.remove_initiator", _"Remove initiator from initiative")
|
bsw@10
|
26
|
bsw@10
|
27 ui.form{
|
bsw@10
|
28 attr = { class = "vertical" },
|
bsw@10
|
29 module = "initiative",
|
bsw@10
|
30 action = "remove_initiator",
|
bsw@10
|
31 params = {
|
bsw@10
|
32 initiative_id = initiative.id,
|
bsw@10
|
33 },
|
bsw@10
|
34 routing = {
|
bsw@10
|
35 ok = {
|
bsw@10
|
36 mode = "redirect",
|
bsw@10
|
37 module = "initiative",
|
bsw@10
|
38 view = "show",
|
bsw@10
|
39 id = initiative.id,
|
bsw@10
|
40 params = {
|
bsw@10
|
41 tab = "initiators",
|
bsw@10
|
42 }
|
bsw@10
|
43 }
|
bsw@10
|
44 },
|
bsw@10
|
45 content = function()
|
bsw@10
|
46 local records = {
|
bsw@10
|
47 {
|
bsw@10
|
48 id = "-1",
|
bsw@10
|
49 name = _"Choose initiator"
|
bsw@10
|
50 }
|
bsw@10
|
51 }
|
bsw@10
|
52 local members = initiative:get_reference_selector("initiating_members"):add_where("accepted OR accepted ISNULL"):exec()
|
bsw@10
|
53 for i, record in ipairs(members) do
|
bsw@10
|
54 records[#records+1] = record
|
bsw@10
|
55 end
|
bsw@10
|
56 ui.field.select{
|
bsw@10
|
57 label = _"Member",
|
bsw@10
|
58 name = "member_id",
|
bsw@10
|
59 foreign_records = records,
|
bsw@10
|
60 foreign_id = "id",
|
bsw@10
|
61 foreign_name = "name"
|
bsw@10
|
62 }
|
bsw@10
|
63 ui.submit{ text = _"Save" }
|
bsw@10
|
64 end
|
bsw@10
|
65 } |