From b83f37e7caa3299501ecbb8d6ef007361497c05e Mon Sep 17 00:00:00 2001 From: John Cardinal Date: Sat, 6 Jun 2020 23:08:43 +0000 Subject: [PATCH] --- ayanova/devdocs/todo.txt | 2 +- ayanova/src/views/ops-backup.vue | 14 ++++++++++++-- ayanova/src/views/ops-jobs.vue | 19 ++++++++++++------- ayanova/src/views/ops-server-state.vue | 5 ++++- 4 files changed, 29 insertions(+), 11 deletions(-) diff --git a/ayanova/devdocs/todo.txt b/ayanova/devdocs/todo.txt index e80fa3d9..4b9924fc 100644 --- a/ayanova/devdocs/todo.txt +++ b/ayanova/devdocs/todo.txt @@ -7,7 +7,7 @@ WIFI change 5g channel to 52,56,60 and 2g channel to 8 -todo: bug - rights for ops limited in backup page not being checked so when adjust backup settings get not authorized error +todo: readonly not enough, sb disabled as well, check widget and anywhere readonly is set and examine to see if that's a good change todo: Administration - License - view diff --git a/ayanova/src/views/ops-backup.vue b/ayanova/src/views/ops-backup.vue index c937baf8..2f647512 100644 --- a/ayanova/src/views/ops-backup.vue +++ b/ayanova/src/views/ops-backup.vue @@ -14,6 +14,7 @@ :error-messages="form().serverErrors(this, 'backupTime')" v-model="obj.backupTime" :readonly="formState.readOnly" + :disabled="formState.readOnly" ref="backupTime" @input="fieldValueChanged('backupTime')" > @@ -23,6 +24,7 @@ - {{ item.name }} + + {{ item.created }} {{ item.length }} @@ -223,7 +231,9 @@ export default { this.languageName, this.hour12 ), - url: window.$gz.api.backupDownloadUrl(o.name), + url: vm.formState.readOnly + ? null + : window.$gz.api.backupDownloadUrl(o.name), name: o.name, length: o.length }); diff --git a/ayanova/src/views/ops-jobs.vue b/ayanova/src/views/ops-jobs.vue index 8c71e2f5..0dda83f9 100644 --- a/ayanova/src/views/ops-jobs.vue +++ b/ayanova/src/views/ops-jobs.vue @@ -40,6 +40,8 @@ export default { let vm = this; initForm(vm) .then(() => { + vm.rights = window.$gz.role.getRights(window.$gz.type.ServerJob); + vm.formState.readOnly = !vm.rights.change; vm.formState.ready = true; window.$gz.eventBus.$on("menu-click", clickHandler); vm.getDataFromApi(); @@ -188,17 +190,20 @@ function generateMenu(vm) { surface: false, key: FORM_KEY + ":copylog", vm: vm - }, - { - title: vm.$ay.t("OpsTestJob"), - icon: "fa-robot", - surface: false, - key: FORM_KEY + ":TEST_JOB", - vm: vm } ] }; + if (vm.rights.change) { + menuOptions.menuItems.push({ + title: vm.$ay.t("OpsTestJob"), + icon: "fa-robot", + surface: false, + key: FORM_KEY + ":TEST_JOB", + vm: vm + }); + } + window.$gz.eventBus.$emit("menu-change", menuOptions); } diff --git a/ayanova/src/views/ops-server-state.vue b/ayanova/src/views/ops-server-state.vue index 96ccf700..b343c36c 100644 --- a/ayanova/src/views/ops-server-state.vue +++ b/ayanova/src/views/ops-server-state.vue @@ -4,11 +4,13 @@ + { vm.rights = window.$gz.role.getRights(window.$gz.type.ServerState); - // vm.formState.ready = true; + vm.formState.readOnly = !vm.rights.change; window.$gz.eventBus.$on("menu-click", clickHandler); vm.getDataFromApi(); })