Skip to content

Commit d412513

Browse files
committed
add feature check to get_attrs
1 parent 4a5f3d7 commit d412513

File tree

1 file changed

+17
-15
lines changed

1 file changed

+17
-15
lines changed

src/sentry/api/serializers/models/organization.py

Lines changed: 17 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -577,23 +577,25 @@ def get_attrs(
577577
) -> MutableMapping[Organization, MutableMapping[str, Any]]:
578578
attrs = super().get_attrs(item_list, user)
579579

580-
replay_permissions = {
581-
opt.organization_id: opt.value
582-
for opt in OrganizationOption.objects.filter(
583-
organization__in=item_list, key="sentry:granular-replay-permissions"
584-
)
585-
}
580+
replay_permissions = {}
581+
if features.has("organizations:granular-replay-permissions", actor=user):
582+
replay_permissions = {
583+
opt.organization_id: opt.value
584+
for opt in OrganizationOption.objects.filter(
585+
organization__in=item_list, key="sentry:granular-replay-permissions"
586+
)
587+
}
586588

587-
replay_access_by_org: dict[int, list[int]] = {}
588-
for org_id, user_id in OrganizationMemberReplayAccess.objects.filter(
589-
organizationmember__organization__in=item_list
590-
).values_list("organizationmember__organization_id", "organizationmember__user_id"):
591-
if user_id is not None:
592-
replay_access_by_org.setdefault(org_id, []).append(user_id)
589+
replay_access_by_org: dict[int, list[int]] = {}
590+
for org_id, user_id in OrganizationMemberReplayAccess.objects.filter(
591+
organizationmember__organization__in=item_list
592+
).values_list("organizationmember__organization_id", "organizationmember__user_id"):
593+
if user_id is not None:
594+
replay_access_by_org.setdefault(org_id, []).append(user_id)
593595

594-
for item in item_list:
595-
attrs[item]["replay_permissions_enabled"] = replay_permissions.get(item.id, False)
596-
attrs[item]["replay_access_members"] = replay_access_by_org.get(item.id, [])
596+
for item in item_list:
597+
attrs[item]["replay_permissions_enabled"] = replay_permissions.get(item.id, False)
598+
attrs[item]["replay_access_members"] = replay_access_by_org.get(item.id, [])
597599

598600
return attrs
599601

0 commit comments

Comments
 (0)