Coverage for rfpy/auth/actions.py: 100%
7 statements
« prev ^ index » next coverage.py v7.0.1, created at 2022-12-31 16:00 +0000
« prev ^ index » next coverage.py v7.0.1, created at 2022-12-31 16:00 +0000
1from rfpy.auth import perms
3ADMIN_ACTIONS = {
4 perms.MANAGE_ORGANISATION,
5 perms.MANAGE_PRIVATE_ADDRESS_BOOK,
6 perms.MANAGE_ROLES,
7 perms.MANAGE_USERS
8}
10PROJECT_ACTIONS = {
11 perms.ISSUE_SAVE_AGREED_SCORES,
12 perms.ISSUE_SAVE_SCORES,
13 perms.ISSUE_VIEW_AGREED_SCORES,
14 perms.ISSUE_VIEW_ANSWERS,
15 perms.ISSUE_VIEW_SCORES,
16 perms.ISSUE_CREATE,
17 perms.PROJECT_ACCESS,
18 perms.PROJECT_ADD_NOTE,
19 perms.PROJECT_CLOSE,
20 perms.PROJECT_CREATE,
21 perms.PROJECT_CREATE_ON_BEHALF,
22 perms.PROJECT_DELETE,
23 perms.PROJECT_EDIT,
24 perms.PROJECT_EDIT_COSMETIC,
25 perms.PROJECT_EXPORT_COMPLETE,
26 perms.PROJECT_IMPORT_COMPLETE,
27 perms.PROJECT_MANAGE_ROLES,
28 perms.PROJECT_PUBLISH,
29 perms.PROJECT_REVERT_TO_DRAFT,
30 perms.PROJECT_SAVE_QUESTIONNAIRE,
31 perms.PROJECT_VIEW_QUESTIONNAIRE,
32 perms.PROJECT_VIEW_WEIGHTING
33}
35PROJECT_STATUS_ACTIONS = {
36 'Draft': {
37 perms.ISSUE_CREATE,
38 perms.PROJECT_ACCESS,
39 perms.PROJECT_ADD_NOTE,
40 perms.PROJECT_CLOSE,
41 perms.PROJECT_DELETE,
42 perms.PROJECT_EDIT,
43 perms.PROJECT_EDIT_COSMETIC,
44 perms.PROJECT_EXPORT_COMPLETE,
45 perms.PROJECT_MANAGE_ROLES,
46 perms.PROJECT_PUBLISH,
47 perms.PROJECT_SAVE_QUESTIONNAIRE,
48 perms.PROJECT_VIEW_QUESTIONNAIRE,
49 perms.PROJECT_VIEW_WEIGHTING
50 },
51 'Live': {
52 perms.ISSUE_CREATE,
53 perms.ISSUE_SAVE_AGREED_SCORES,
54 perms.ISSUE_SAVE_SCORES,
55 perms.ISSUE_VIEW_AGREED_SCORES,
56 perms.ISSUE_VIEW_ANSWERS,
57 perms.ISSUE_VIEW_SCORES,
58 perms.PROJECT_ACCESS,
59 perms.PROJECT_ADD_NOTE,
60 perms.PROJECT_CLOSE,
61 perms.PROJECT_EDIT_COSMETIC,
62 perms.PROJECT_EDIT,
63 perms.PROJECT_EXPORT_COMPLETE,
64 perms.PROJECT_MANAGE_ROLES,
65 perms.PROJECT_SAVE_QUESTIONNAIRE,
66 perms.PROJECT_VIEW_QUESTIONNAIRE,
67 perms.PROJECT_VIEW_WEIGHTING,
68 },
69 'Closed': {
70 perms.ISSUE_VIEW_AGREED_SCORES,
71 perms.ISSUE_VIEW_ANSWERS,
72 perms.ISSUE_VIEW_SCORES,
73 perms.PROJECT_ACCESS,
74 perms.PROJECT_DELETE,
75 perms.PROJECT_EXPORT_COMPLETE,
76 perms.PROJECT_VIEW_QUESTIONNAIRE,
77 perms.PROJECT_VIEW_WEIGHTING
78 }
79}
81ISSUE_ACTIONS = {
82 perms.ISSUE_CREATE,
83 perms.ISSUE_DELETE,
84 perms.ISSUE_PUBLISH,
85 perms.ISSUE_RETRACT,
86 perms.ISSUE_SAVE_AGREED_SCORES,
87 perms.ISSUE_SAVE_SCORES,
88 perms.ISSUE_UPDATE,
89 perms.ISSUE_UPDATE_WORKFLOW,
90 perms.ISSUE_VIEW_AGREED_SCORES,
91 perms.ISSUE_VIEW_ANSWERS,
92 perms.ISSUE_VIEW_SCORES,
93 perms.ISSUE_VIEW_WINLOSS,
94}
96ISSUE_STATUS_ACTIONS = {
98 '__new__': {
99 perms.ISSUE_CREATE
100 },
102 'Not Sent': {
103 perms.ISSUE_DELETE,
104 perms.ISSUE_PUBLISH,
105 perms.ISSUE_UPDATE,
106 },
107 'Accepted': {
108 perms.ISSUE_DECLINE,
109 perms.ISSUE_RETRACT,
110 perms.ISSUE_SUBMIT,
111 perms.ISSUE_UPDATE
112 },
113 'Opportunity': {
114 perms.ISSUE_RETRACT,
115 perms.ISSUE_UPDATE
116 },
117 'Submitted': {
118 perms.ISSUE_SAVE_AGREED_SCORES,
119 perms.ISSUE_SAVE_SCORES,
120 perms.ISSUE_UPDATE,
121 perms.ISSUE_VIEW_AGREED_SCORES,
122 perms.ISSUE_VIEW_ANSWERS,
123 perms.ISSUE_VIEW_SCORES
124 },
125 'Updateable': {
126 perms.ISSUE_RETRACT,
127 perms.ISSUE_SAVE_AGREED_SCORES,
128 perms.ISSUE_SAVE_SCORES,
129 perms.ISSUE_UPDATE,
130 perms.ISSUE_VIEW_AGREED_SCORES,
131 perms.ISSUE_VIEW_ANSWERS,
132 perms.ISSUE_VIEW_SCORES,
133 },
134 'Declined': {
135 perms.ISSUE_DELETE,
136 },
137 'Retracted': {
138 perms.ISSUE_DELETE
139 }
140}
142QUESTIONNAIRE_ACTIONS = {
143 perms.ISSUE_SAVE_AGREED_SCORES,
144 perms.ISSUE_SAVE_SCORES,
145 perms.ISSUE_VIEW_AGREED_SCORES,
146 perms.ISSUE_VIEW_ANSWERS,
147 perms.ISSUE_VIEW_SCORES,
148 perms.ISSUE_VIEW_AGREED_SCORES,
149 perms.PROJECT_EDIT,
150 perms.PROJECT_EDIT_COSMETIC,
151 perms.PROJECT_EDIT_WEIGHTING,
152 perms.PROJECT_VIEW_QUESTIONNAIRE
153}