[WEB-4307] fix: remove teamspace membership when user is assigned guest role (#3394)

* [WEB-4307] fix: remove teamspace membership when user is assigned guest role

* chore: update comments

* chore: minor logic improvement

* chore: update comments
This commit is contained in:
Prateek Shourya
2025-06-12 16:25:17 +05:30
committed by GitHub
parent b8e9c88b14
commit e762065634

View File

@@ -77,12 +77,16 @@ class WorkSpaceMemberViewSet(BaseViewSet):
status=status.HTTP_400_BAD_REQUEST,
)
# If a user is moved to a guest role he can't have any other role in projects
if "role" in request.data and int(request.data.get("role")) == 5:
# If a user is moved to a guest role he can't have any other role in projects
ProjectMember.objects.filter(
workspace__slug=slug, member_id=workspace_member.member_id
).update(role=5)
# When a user is moved to a guest role, they must be removed from all teamspaces
TeamspaceMember.objects.filter(
workspace__slug=slug, member_id=workspace_member.member_id
).delete()
if "role" in request.data:
allowed, _, _ = workspace_member_check(
slug=slug,