Initial commit with Email Import Wizard and Task Processor updates
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
export const Permission = {
|
||||
MANAGE_ALL: 'MANAGE_ALL',
|
||||
PROCESS_MANUALLY: 'PROCESS_MANUALLY',
|
||||
VIEW_MAIL: 'VIEW_MAIL',
|
||||
VIEW_INBOX: 'VIEW_INBOX',
|
||||
VIEW_SCANNER: 'VIEW_SCANNER',
|
||||
MANAGE_SETTINGS: 'MANAGE_SETTINGS',
|
||||
} as const;
|
||||
|
||||
export type Permission = typeof Permission[keyof typeof Permission];
|
||||
|
||||
export function mapGroupsToPermissions(groups: string[] | undefined | null): Permission[] {
|
||||
const permissions = new Set<Permission>();
|
||||
|
||||
if (!groups || !Array.isArray(groups)) {
|
||||
return [];
|
||||
}
|
||||
|
||||
if (groups.includes('PM_Admin')) {
|
||||
permissions.add(Permission.MANAGE_ALL);
|
||||
permissions.add(Permission.PROCESS_MANUALLY);
|
||||
permissions.add(Permission.VIEW_MAIL);
|
||||
permissions.add(Permission.VIEW_INBOX);
|
||||
permissions.add(Permission.VIEW_SCANNER);
|
||||
permissions.add(Permission.MANAGE_SETTINGS);
|
||||
return Array.from(permissions);
|
||||
}
|
||||
|
||||
if (groups.includes('PM_Belege')) permissions.add(Permission.PROCESS_MANUALLY);
|
||||
if (groups.includes('PM_Maileingang')) permissions.add(Permission.VIEW_MAIL);
|
||||
if (groups.includes('PM_Posteingang')) permissions.add(Permission.VIEW_INBOX);
|
||||
if (groups.includes('PM_Scanner')) permissions.add(Permission.VIEW_SCANNER);
|
||||
|
||||
return Array.from(permissions);
|
||||
}
|
||||
Reference in New Issue
Block a user