diff --git a/app/javascript/dashboard/components/layout/Sidebar.vue b/app/javascript/dashboard/components/layout/Sidebar.vue index 1e1dfac25..9a2f5b028 100644 --- a/app/javascript/dashboard/components/layout/Sidebar.vue +++ b/app/javascript/dashboard/components/layout/Sidebar.vue @@ -8,7 +8,10 @@ import { useRoute, useRouter } from 'dashboard/composables/route'; import PrimarySidebar from './sidebarComponents/Primary.vue'; import SecondarySidebar from './sidebarComponents/Secondary.vue'; import { routesWithPermissions } from '../../routes'; -import { hasPermissions } from '../../helper/permissionsHelper'; +import { + getUserPermissions, + hasPermissions, +} from '../../helper/permissionsHelper'; export default { components: { @@ -113,7 +116,10 @@ export default { return getSidebarItems(this.accountId); }, primaryMenuItems() { - const userPermissions = this.currentUser.permissions; + const userPermissions = getUserPermissions( + this.currentUser, + this.accountId + ); const menuItems = this.sideMenuConfig.primaryMenu; return menuItems.filter(menuItem => { const isAvailableForTheUser = hasPermissions( diff --git a/app/javascript/dashboard/components/layout/sidebarComponents/Secondary.vue b/app/javascript/dashboard/components/layout/sidebarComponents/Secondary.vue index 6de03af53..0f12b48c3 100644 --- a/app/javascript/dashboard/components/layout/sidebarComponents/Secondary.vue +++ b/app/javascript/dashboard/components/layout/sidebarComponents/Secondary.vue @@ -4,7 +4,10 @@ import SecondaryNavItem from './SecondaryNavItem.vue'; import AccountContext from './AccountContext.vue'; import { mapGetters } from 'vuex'; import { FEATURE_FLAGS } from '../../../featureFlags'; -import { hasPermissions } from '../../../helper/permissionsHelper'; +import { + getUserPermissions, + hasPermissions, +} from '../../../helper/permissionsHelper'; import { routesWithPermissions } from '../../../routes'; export default { @@ -59,7 +62,10 @@ export default { accessibleMenuItems() { const menuItemsFilteredByPermissions = this.menuConfig.menuItems.filter( menuItem => { - const { permissions: userPermissions = [] } = this.currentUser; + const userPermissions = getUserPermissions( + this.currentUser, + this.accountId + ); return hasPermissions( routesWithPermissions[menuItem.toStateName], userPermissions diff --git a/app/javascript/dashboard/components/policy.vue b/app/javascript/dashboard/components/policy.vue index f888de5a2..e9ad2de1f 100644 --- a/app/javascript/dashboard/components/policy.vue +++ b/app/javascript/dashboard/components/policy.vue @@ -1,7 +1,11 @@ +