This is an automated email from the ASF dual-hosted git repository.
rohit pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cloudstack-primate.git
The following commit(s) were added to refs/heads/master by this push:
new 55736c3 project: Restrict project related operations to admins/
domain admins and project owners (#529)
55736c3 is described below
commit 55736c3a1c0936c48e6e807284e80b6ab522f8a6
Author: Pearl Dsilva <[email protected]>
AuthorDate: Fri Jul 10 15:17:49 2020 +0530
project: Restrict project related operations to admins/ domain admins and
project owners (#529)
Fixes #485
---
src/config/section/project.js | 16 ++++++++++++----
1 file changed, 12 insertions(+), 4 deletions(-)
diff --git a/src/config/section/project.js b/src/config/section/project.js
index 56e0d46..ed9d0cf 100644
--- a/src/config/section/project.js
+++ b/src/config/section/project.js
@@ -82,7 +82,10 @@ export default {
icon: 'edit',
label: 'label.edit.project.details',
dataView: true,
- args: ['displaytext']
+ args: ['displaytext'],
+ show: (record, store) => {
+ return record.account === store.userInfo.account || ['Admin',
'DomainAdmin'].includes(store.userInfo.roletype)
+ }
},
{
api: 'activateProject',
@@ -90,7 +93,9 @@ export default {
label: 'label.activate.project',
message: 'message.activate.project',
dataView: true,
- show: (record) => { return record.state === 'Suspended' }
+ show: (record, store) => {
+ return (record.account === store.userInfo.account || ['Admin',
'DomainAdmin'].includes(store.userInfo.roletype)) && record.state ===
'Suspended'
+ }
},
{
api: 'suspendProject',
@@ -99,7 +104,9 @@ export default {
message: 'message.suspend.project',
docHelp: 'adminguide/projects.html#suspending-or-deleting-a-project',
dataView: true,
- show: (record) => { return record.state !== 'Suspended' }
+ show: (record, store) => {
+ return (record.account === store.userInfo.account || ['Admin',
'DomainAdmin'].includes(store.userInfo.roletype)) && record.state !==
'Suspended'
+ }
},
{
api: 'addAccountToProject',
@@ -121,7 +128,8 @@ export default {
label: 'label.delete.project',
message: 'message.delete.project',
docHelp: 'adminguide/projects.html#suspending-or-deleting-a-project',
- dataView: true
+ dataView: true,
+ show: (record, store) => { return record.account ===
store.userInfo.account || ['Admin',
'DomainAdmin'].includes(store.userInfo.roletype) }
}
]
}