diff --git a/src/pages/Account/Card/AccountDescriptorMenu.vue b/src/pages/Account/Card/AccountDescriptorMenu.vue index 9bb6a7c520e..c1df2115652 100644 --- a/src/pages/Account/Card/AccountDescriptorMenu.vue +++ b/src/pages/Account/Card/AccountDescriptorMenu.vue @@ -1,6 +1,6 @@ <script setup> import axios from 'axios'; -import { computed, ref, toRefs } from 'vue'; +import { computed, onMounted, ref, toRefs } from 'vue'; import { useI18n } from 'vue-i18n'; import { useVnConfirm } from 'composables/useVnConfirm'; import { useRoute } from 'vue-router'; @@ -30,6 +30,8 @@ const { notify } = useQuasar(); const account = computed(() => useArrayData('AccountId').store.data[0]); account.value.hasAccount = hasAccount.value; const entityId = computed(() => +route.params.id); +const hasitManagementAccess = ref(); +const hasSysadminAccess = ref(); async function updateStatusAccount(active) { if (active) { await axios.post(`Accounts`, { id: entityId.value }); @@ -85,6 +87,15 @@ const onChangePass = (oldPass) => { askOldPass.value = oldPass; changePassRef.value.show(); }; + +onMounted(() => { + hasitManagementAccess.value = useAcl().hasAny([ + { model: 'VnUser', props: 'higherPrivileges', accessType: 'WRITE' }, + ]); + hasSysadminAccess.value = useAcl().hasAny([ + { model: 'VnUser', props: 'adminUser', accessType: 'WRITE' }, + ]); +}); </script> <template> <VnChangePassword @@ -131,11 +142,7 @@ const onChangePass = (oldPass) => { </template> </VnConfirm> <QItem - v-if=" - useAcl().hasAny([ - { model: 'VnUser', props: 'higherPrivileges', accessType: 'WRITE' }, - ]) - " + v-if="hasitManagementAccess" v-ripple clickable @click=" @@ -149,9 +156,7 @@ const onChangePass = (oldPass) => { <QItemSection>{{ t('globals.delete') }}</QItemSection> </QItem> <QItem - v-if=" - useAcl().hasAny([{ model: 'AccountConfig', props: '*', accessType: 'WRITE' }]) - " + v-if="hasSysadminAccess" v-ripple clickable @click="user.id === account.id ? onChangePass(true) : onChangePass(false)" @@ -162,10 +167,7 @@ const onChangePass = (oldPass) => { <QItemSection v-else>{{ t('globals.setPass') }}</QItemSection> </QItem> <QItem - v-if=" - !account.hasAccount && - useAcl().hasAny([{ model: 'AccountConfig', props: '*', accessType: 'WRITE' }]) - " + v-if="!account.hasAccount && hasSysadminAccess" v-ripple clickable @click=" @@ -179,10 +181,7 @@ const onChangePass = (oldPass) => { <QItemSection>{{ t('account.card.actions.enableAccount.name') }}</QItemSection> </QItem> <QItem - v-if=" - account.hasAccount && - useAcl().hasAny([{ model: 'AccountConfig', props: '*', accessType: 'WRITE' }]) - " + v-if="account.hasAccount && hasSysadminAccess" v-ripple clickable @click=" @@ -197,12 +196,7 @@ const onChangePass = (oldPass) => { </QItem> <QItem - v-if=" - !account.active && - useAcl().hasAny([ - { model: 'VnUser', props: 'higherPrivileges', accessType: 'WRITE' }, - ]) - " + v-if="!account.active && hasitManagementAccess" v-ripple clickable @click=" @@ -216,12 +210,7 @@ const onChangePass = (oldPass) => { <QItemSection>{{ t('account.card.actions.activateUser.name') }}</QItemSection> </QItem> <QItem - v-if=" - account.active && - useAcl().hasAny([ - { model: 'VnUser', props: 'higherPrivileges', accessType: 'WRITE' }, - ]) - " + v-if="account.active && hasitManagementAccess" v-ripple clickable @click="