Added all community endpoints

This commit is contained in:
hannathkadher
2024-10-17 10:55:26 +04:00
parent b8d4a080ef
commit d6777c8ec1
17 changed files with 333 additions and 126 deletions
+14 -4
View File
@@ -1,5 +1,5 @@
import { SpaceType } from '@app/common/constants/space-type.enum';
import { SpacePermissionService } from '@app/common/helper/services/space.permission.service';
import { RoleType } from '@app/common/constants/role.type.enum';
import { CommunityPermissionService } from '@app/common/helper/services/community.permission.service';
import {
BadRequestException,
CanActivate,
@@ -9,7 +9,7 @@ import {
@Injectable()
export class CommunityPermissionGuard implements CanActivate {
constructor(private readonly permissionService: SpacePermissionService) {}
constructor(private readonly permissionService: CommunityPermissionService) {}
async canActivate(context: ExecutionContext): Promise<boolean> {
const req = context.switchToHttp().getRequest();
@@ -18,6 +18,17 @@ export class CommunityPermissionGuard implements CanActivate {
const { communityUuid } = req.params;
const { user } = req;
if (
user &&
user.roles &&
user.roles.some(
(role) =>
role.type === RoleType.ADMIN || role.type === RoleType.SUPER_ADMIN,
)
) {
return true;
}
if (!communityUuid) {
throw new BadRequestException('communityUuid is required');
}
@@ -25,7 +36,6 @@ export class CommunityPermissionGuard implements CanActivate {
await this.permissionService.checkUserPermission(
communityUuid,
user.uuid,
SpaceType.COMMUNITY,
);
return true;