permission form
This commit is contained in:
parent
04e66dd918
commit
68efdc131b
8 changed files with 273 additions and 3 deletions
|
@ -15,7 +15,31 @@ export const useAbilityStore = defineStore("ability", {
|
|||
if (type == "admin") return permissions.admin ?? false;
|
||||
if (permissions.admin) return true;
|
||||
if (
|
||||
(!module && permissions[section] != undefined) ||
|
||||
(!module &&
|
||||
permissions[section] != undefined &&
|
||||
(permissions[section]?.all == "*" || permissions[section]?.all?.includes(type))) ||
|
||||
permissions[section]?.all == "*" ||
|
||||
permissions[section]?.all?.includes(type)
|
||||
)
|
||||
return true;
|
||||
if (module && (permissions[section]?.[module] == "*" || permissions[section]?.[module]?.includes(type)))
|
||||
return true;
|
||||
return false;
|
||||
},
|
||||
_can:
|
||||
() =>
|
||||
(
|
||||
permissions: PermissionObject,
|
||||
type: PermissionType | "admin",
|
||||
section: PermissionSection,
|
||||
module?: PermissionModule
|
||||
): boolean => {
|
||||
if (type == "admin") return permissions.admin ?? false;
|
||||
if (permissions.admin) return true;
|
||||
if (
|
||||
(!module &&
|
||||
permissions[section] != undefined &&
|
||||
(permissions[section]?.all == "*" || permissions[section]?.all?.includes(type))) ||
|
||||
permissions[section]?.all == "*" ||
|
||||
permissions[section]?.all?.includes(type)
|
||||
)
|
||||
|
|
|
@ -205,7 +205,7 @@ export const useNavigationStore = defineStore("navigation", {
|
|||
{
|
||||
key: "#user",
|
||||
title: "Benutzer",
|
||||
component: shallowRef(defineAsyncComponent(() => import("@/views/admin/members/Overview.vue"))),
|
||||
component: shallowRef(defineAsyncComponent(() => import("@/views/admin/user/User.vue"))),
|
||||
},
|
||||
]
|
||||
: []),
|
||||
|
|
12
src/stores/admin/permission.ts
Normal file
12
src/stores/admin/permission.ts
Normal file
|
@ -0,0 +1,12 @@
|
|||
import { defineStore } from "pinia";
|
||||
|
||||
export const usePermissionStore = defineStore("permission", {
|
||||
state: () => {
|
||||
return {
|
||||
sections: [],
|
||||
};
|
||||
},
|
||||
actions: {
|
||||
logoutAccount() {},
|
||||
},
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue