diff --git a/.github/workflows/lock.yml b/.github/workflows/lock.yml index c42909856..5420e829b 100644 --- a/.github/workflows/lock.yml +++ b/.github/workflows/lock.yml @@ -25,13 +25,5 @@ jobs: with: issue-inactive-days: '30' issue-lock-reason: 'resolved' - issue-comment: > - This issue has been automatically locked since there - has not been any recent activity after it was closed. - Please open a new issue for related bugs. pr-inactive-days: '30' pr-lock-reason: 'resolved' - pr-comment: > - This pull request has been automatically locked since there - has not been any recent activity after it was closed. - Please open a new issue for related bugs. diff --git a/Gemfile.lock b/Gemfile.lock index ce49339e8..de348a2b5 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -169,7 +169,7 @@ GEM climate_control (1.2.0) coderay (1.1.3) commonmarker (0.23.10) - concurrent-ruby (1.3.3) + concurrent-ruby (1.3.4) connection_pool (2.4.1) crack (1.0.0) bigdecimal @@ -230,7 +230,7 @@ GEM ruby2_keywords email_reply_trimmer (0.1.13) erubi (1.13.0) - et-orbi (1.2.7) + et-orbi (1.2.11) tzinfo execjs (2.8.1) facebook-messenger (2.0.1) @@ -268,8 +268,8 @@ GEM rake flag_shih_tzu (0.3.23) foreman (0.87.2) - fugit (1.9.0) - et-orbi (~> 1, >= 1.2.7) + fugit (1.11.1) + et-orbi (~> 1, >= 1.2.11) raabro (~> 1.4) gapic-common (0.18.0) faraday (>= 1.9, < 3.a) 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 @@ +