role and user management

This commit is contained in:
Julian Krauser 2024-09-02 15:57:03 +02:00
parent 6247c385c3
commit 5ffdfcd6f2
22 changed files with 798 additions and 92 deletions

View file

@ -60,26 +60,36 @@ const router = createRouter({
path: "",
name: "admin-club-default",
component: () => import("../views/admin/ViewSelect.vue"),
meta: { type: "read", section: "club" },
beforeEnter: [abilityAndNavUpdate],
},
{
path: "members",
name: "admin-club-members",
component: () => import("../views/admin/members/Overview.vue"),
meta: { type: "read", section: "club", module: "members" },
beforeEnter: [abilityAndNavUpdate],
},
{
path: "calendar",
name: "admin-club-calendar",
component: () => import("../views/admin/members/Overview.vue"),
meta: { type: "read", section: "club", module: "calendar" },
beforeEnter: [abilityAndNavUpdate],
},
{
path: "newsletter",
name: "admin-club-newsletter",
component: () => import("../views/admin/members/Overview.vue"),
meta: { type: "read", section: "club", module: "newsletter" },
beforeEnter: [abilityAndNavUpdate],
},
{
path: "protocol",
name: "admin-club-protocol",
component: () => import("../views/admin/members/Overview.vue"),
meta: { type: "read", section: "club", module: "protocoll" },
beforeEnter: [abilityAndNavUpdate],
},
],
},
@ -94,26 +104,36 @@ const router = createRouter({
path: "",
name: "admin-settings-default",
component: () => import("../views/admin/ViewSelect.vue"),
meta: { type: "read", section: "settings" },
beforeEnter: [abilityAndNavUpdate],
},
{
path: "qualification",
name: "admin-settings-qualification",
component: () => import("../views/admin/members/Overview.vue"),
meta: { type: "read", section: "settings", module: "qualification" },
beforeEnter: [abilityAndNavUpdate],
},
{
path: "award",
name: "admin-settings-award",
component: () => import("../views/admin/members/Overview.vue"),
meta: { type: "read", section: "settings", module: "award" },
beforeEnter: [abilityAndNavUpdate],
},
{
path: "executive-position",
name: "admin-settings-executive_position",
component: () => import("../views/admin/members/Overview.vue"),
meta: { type: "read", section: "settings", module: "executive_position" },
beforeEnter: [abilityAndNavUpdate],
},
{
path: "communication",
name: "admin-settings-communication",
component: () => import("../views/admin/members/Overview.vue"),
meta: { type: "read", section: "settings", module: "communication" },
beforeEnter: [abilityAndNavUpdate],
},
],
},
@ -128,16 +148,76 @@ const router = createRouter({
path: "",
name: "admin-user-default",
component: () => import("../views/admin/ViewSelect.vue"),
meta: { type: "read", section: "user" },
beforeEnter: [abilityAndNavUpdate],
},
{
path: "user",
name: "admin-user-user",
component: () => import("../views/admin/user/User.vue"),
name: "admin-user-user-route",
component: () => import("../views/RouterView.vue"),
meta: { type: "read", section: "user", module: "user" },
beforeEnter: [abilityAndNavUpdate],
children: [
{
path: "",
name: "admin-user-user",
component: () => import("../views/admin/user/User.vue"),
},
{
path: ":id/edit",
name: "admin-user-user-edit",
component: () => import("../views/admin/user/UserEdit.vue"),
meta: { type: "update", section: "user", module: "user" },
beforeEnter: [abilityAndNavUpdate],
props: true,
},
{
path: ":id/permission",
name: "admin-user-user-permission",
component: () => import("../views/admin/user/UserEditPermission.vue"),
meta: { type: "update", section: "user", module: "user" },
beforeEnter: [abilityAndNavUpdate],
props: true,
},
{
path: ":id/roles",
name: "admin-user-user-roles",
component: () => import("../views/admin/user/UserEditRoles.vue"),
meta: { type: "update", section: "user", module: "user" },
beforeEnter: [abilityAndNavUpdate],
props: true,
},
],
},
{
path: "role",
name: "admin-user-role",
component: () => import("../views/admin/user/Role.vue"),
name: "admin-user-role-route",
component: () => import("../views/RouterView.vue"),
meta: { type: "read", section: "user", module: "role" },
beforeEnter: [abilityAndNavUpdate],
children: [
{
path: "",
name: "admin-user-role",
component: () => import("../views/admin/user/Role.vue"),
},
{
path: ":id/edit",
name: "admin-user-role-edit",
component: () => import("../views/admin/user/RoleEdit.vue"),
meta: { type: "update", section: "user", module: "role" },
beforeEnter: [abilityAndNavUpdate],
props: true,
},
{
path: ":id/permission",
name: "admin-user-role-permission",
component: () => import("../views/admin/user/RoleEditPermission.vue"),
meta: { type: "update", section: "user", module: "role" },
beforeEnter: [abilityAndNavUpdate],
props: true,
},
],
},
],
},