Browse Source

Enable to redirect when accessing pages that is not allowed to access according to the user role

pull/341/head
Hironsan 5 years ago
parent
commit
3fd8a1d6bb
6 changed files with 11 additions and 5 deletions
  1. 6
      frontend/middleware/check-admin.js
  2. 2
      frontend/pages/projects/_id/dataset/index.vue
  3. 2
      frontend/pages/projects/_id/guideline/index.vue
  4. 2
      frontend/pages/projects/_id/labels/index.vue
  5. 2
      frontend/pages/projects/_id/members/index.vue
  6. 2
      frontend/pages/projects/_id/statistics/index.vue

6
frontend/middleware/check-admin.js

@ -0,0 +1,6 @@
export default function ({ store, route, redirect }) {
const role = store.getters['projects/getCurrentUserRole']
if (!role.is_project_admin) {
redirect('/projects/' + route.params.id)
}
}

2
frontend/pages/projects/_id/dataset/index.vue

@ -16,7 +16,7 @@ import DocumentDeletionButton from '@/components/containers/documents/DocumentDe
export default {
layout: 'project',
middleware: ['check-auth', 'auth'],
middleware: ['check-auth', 'auth', 'check-admin'],
components: {
DocumentList,

2
frontend/pages/projects/_id/guideline/index.vue

@ -17,7 +17,7 @@ import { mapState, mapActions } from 'vuex'
export default {
layout: 'project',
middleware: ['check-auth', 'auth'],
middleware: ['check-auth', 'auth', 'check-admin'],
components: {
Editor

2
frontend/pages/projects/_id/labels/index.vue

@ -16,7 +16,7 @@ import LabelDeletionButton from '@/components/containers/labels/LabelDeletionBut
export default {
layout: 'project',
middleware: ['check-auth', 'auth'],
middleware: ['check-auth', 'auth', 'check-admin'],
components: {
LabelList,

2
frontend/pages/projects/_id/members/index.vue

@ -16,7 +16,7 @@ import MemberDeletionButton from '@/components/containers/members/MemberDeletion
export default {
layout: 'project',
middleware: ['check-auth', 'auth'],
middleware: ['check-auth', 'auth', 'check-admin'],
components: {
MemberList,

2
frontend/pages/projects/_id/statistics/index.vue

@ -41,7 +41,7 @@ import BarChart from '@/components/molecules/BarChart'
export default {
layout: 'project',
middleware: ['check-auth', 'auth'],
middleware: ['check-auth', 'auth', 'check-admin'],
components: {
DoughnutChart,

Loading…
Cancel
Save