diff --git a/frontend/public/config.json b/frontend/public/config.json index 9f365f3c8..0737bd120 100644 --- a/frontend/public/config.json +++ b/frontend/public/config.json @@ -88,6 +88,7 @@ "filter": ["CREATE"] }, "startProcess": { + "application": ["ALL"], "processDefinition": ["READ", "CREATE_INSTANCE"], "processInstance": ["CREATE"] }, diff --git a/frontend/src/components/CibSeven.vue b/frontend/src/components/CibSeven.vue index e4ffe2d5c..a715b202c 100644 --- a/frontend/src/components/CibSeven.vue +++ b/frontend/src/components/CibSeven.vue @@ -31,7 +31,7 @@ - + {{ $t('start.startProcess.title') }} @@ -111,7 +111,7 @@ - + @@ -147,15 +147,22 @@ export default { }, computed: { menuItems: function() { - return [{ - show: this.permissionsTaskList && this.startableProcesses, - groupTitle: 'start.taskList.title', + return [ + { + show: this.canStartProcesses, + groupTitle: 'start.startProcess.title', items: [{ to: '/seven/auth/start-process', active: ['seven/auth/start-process'], tooltip: 'start.startProcess.tooltip', title: 'start.startProcess.title' - }, { + } + ] + }, + { + show: this.permissionsTaskList, + groupTitle: 'start.taskList.title', + items: [{ to: '/seven/auth/tasks', active: ['seven/auth/tasks'], tooltip: 'start.taskList.tooltip', @@ -296,6 +303,9 @@ export default { }) return title }, + canStartProcesses: function() { + return this.$root.user && this.applicationPermissions(this.$root.config.permissions.startProcess, 'startProcess') + }, permissionsTaskList: function() { return this.$root.user && this.applicationPermissions(this.$root.config.permissions.tasklist, 'tasklist') }, diff --git a/frontend/src/components/start/StartView.vue b/frontend/src/components/start/StartView.vue index 7ca959ceb..b0b85e3a7 100644 --- a/frontend/src/components/start/StartView.vue +++ b/frontend/src/components/start/StartView.vue @@ -177,7 +177,7 @@ export default { computed: { tiles() { const tiles = [] - if (this.applicationPermissions(this.$root.config.permissions.tasklist, 'tasklist') && this.startableProcesses) { + if (this.applicationPermissions(this.$root.config.permissions.startProcess, 'startProcess')) { tiles.push('startProcess') } if (this.applicationPermissions(this.$root.config.permissions.tasklist, 'tasklist')) { diff --git a/frontend/src/router.js b/frontend/src/router.js index 980a4a5af..f0b75c684 100644 --- a/frontend/src/router.js +++ b/frontend/src/router.js @@ -100,7 +100,7 @@ const appRoutes = [ }, // Start new process (end-user) - { path: 'start-process', name: 'start-process', beforeEnter: permissionsGuard('tasklist'), + { path: 'start-process', name: 'start-process', beforeEnter: permissionsGuard('startProcess'), component: StartProcessView },