feat: Add permission checks, fix search, fix document upload, fix linked documents always being loaded all at once instead of paged

This commit is contained in:
Anton Stubenbord
2023-05-27 18:14:35 +02:00
parent 4f13146dbc
commit b30ede6661
19 changed files with 280 additions and 182 deletions

View File

@@ -11,4 +11,20 @@ extension UserPermissionExtension on UserModel {
v2: (_) => true,
);
}
bool hasPermissions(List<PermissionAction> actions, List<PermissionTarget> targets) {
return map(
v3: (user) {
final permissions = [
for (var action in actions)
for (var target in targets) [action, target].join("_")
];
return permissions.every((requestedPermission) =>
user.userPermissions.contains(requestedPermission) ||
user.inheritedPermissions
.any((element) => element.split(".").last == requestedPermission));
},
v2: (_) => true,
);
}
}