Use app access value for reset system permissions

Fixes #904
This commit is contained in:
rijkvanzanten
2020-11-06 15:18:49 -05:00
parent 6251d8b159
commit b5440a2152
2 changed files with 28 additions and 12 deletions

View File

@@ -34,6 +34,10 @@
/>
</div>
</transition-expand>
<button v-if="systemVisible" class="reset-toggle" @click="resetActive = true">
{{ $t('reset_system_permissions') }}
</button>
</div>
<router-view
@@ -43,10 +47,6 @@
@refresh="refreshPermission"
/>
<button v-if="systemVisible" class="reset-toggle" @click="resetActive = true">
{{ $t('reset_system_permissions') }}
</button>
<v-dialog v-model="resetActive" @esc="resetActive = false">
<v-card>
<v-card-title>{{ $t('reset_system_permissions') }}</v-card-title>
@@ -82,6 +82,10 @@ export default defineComponent({
type: String,
default: null,
},
appAccess: {
type: Boolean,
default: false,
},
},
setup(props) {
const collectionsStore = useCollectionsStore();
@@ -191,13 +195,15 @@ export default defineComponent({
await api.delete(`/permissions/${toBeDeleted.join(',')}`);
}
await api.post(
'/permissions',
appRequiredPermissions.map((permission) => ({
...permission,
role: props.role,
}))
);
if (props.role !== null && props.appAccess === true) {
await api.post(
'/permissions',
appRequiredPermissions.map((permission) => ({
...permission,
role: props.role,
}))
);
}
await fetchPermissions();

View File

@@ -71,7 +71,7 @@
<v-notice v-if="adminEnabled" type="info">
{{ $t('admins_have_all_permissions') }}
</v-notice>
<permissions-overview v-else :role="primaryKey" :permission="permissionKey" />
<permissions-overview v-else :role="primaryKey" :permission="permissionKey" :app-access="appAccess" />
<v-form
collection="directus_roles"
@@ -143,6 +143,15 @@ export default defineComponent({
return !!values.admin_access;
});
const appAccess = computed(() => {
const values = {
...item.value,
...edits.value,
} as Record<string, any>;
return !!values.app_access;
});
return {
item,
loading,
@@ -157,6 +166,7 @@ export default defineComponent({
isBatch,
adminEnabled,
userInviteModalActive,
appAccess,
};
/**