mirror of
https://github.com/zulip/zulip.git
synced 2025-11-05 06:23:38 +00:00
refactor: Use set of ids for altered users.
This commit is contained in:
@@ -3023,15 +3023,14 @@ def send_peer_add_events(
|
|||||||
def send_peer_remove_events(
|
def send_peer_remove_events(
|
||||||
realm: Realm,
|
realm: Realm,
|
||||||
streams: List[Stream],
|
streams: List[Stream],
|
||||||
altered_user_dict: Dict[int, List[UserProfile]],
|
altered_user_dict: Dict[int, Set[int]],
|
||||||
all_subscribers_by_stream: Dict[int, Set[int]],
|
all_subscribers_by_stream: Dict[int, Set[int]],
|
||||||
) -> None:
|
) -> None:
|
||||||
for stream in streams:
|
for stream in streams:
|
||||||
if stream.is_in_zephyr_realm and not stream.invite_only:
|
if stream.is_in_zephyr_realm and not stream.invite_only:
|
||||||
continue
|
continue
|
||||||
|
|
||||||
altered_users = altered_user_dict[stream.id]
|
altered_user_ids = altered_user_dict[stream.id]
|
||||||
altered_user_ids = [u.id for u in altered_users]
|
|
||||||
|
|
||||||
subscribed_user_ids = all_subscribers_by_stream[stream.id]
|
subscribed_user_ids = all_subscribers_by_stream[stream.id]
|
||||||
|
|
||||||
@@ -3042,12 +3041,12 @@ def send_peer_remove_events(
|
|||||||
)
|
)
|
||||||
|
|
||||||
if peer_user_ids:
|
if peer_user_ids:
|
||||||
for removed_user in altered_users:
|
for removed_user_id in altered_user_ids:
|
||||||
event = dict(
|
event = dict(
|
||||||
type="subscription",
|
type="subscription",
|
||||||
op="peer_remove",
|
op="peer_remove",
|
||||||
stream_id=stream.id,
|
stream_id=stream.id,
|
||||||
user_id=removed_user.id,
|
user_id=removed_user_id,
|
||||||
)
|
)
|
||||||
send_event(realm, event, peer_user_ids)
|
send_event(realm, event, peer_user_ids)
|
||||||
|
|
||||||
@@ -3144,11 +3143,11 @@ def bulk_remove_subscriptions(users: Iterable[UserProfile],
|
|||||||
# Now since we have all log objects generated we can do a bulk insert
|
# Now since we have all log objects generated we can do a bulk insert
|
||||||
RealmAuditLog.objects.bulk_create(all_subscription_logs)
|
RealmAuditLog.objects.bulk_create(all_subscription_logs)
|
||||||
|
|
||||||
altered_user_dict: Dict[int, List[UserProfile]] = defaultdict(list)
|
altered_user_dict: Dict[int, Set[int]] = defaultdict(set)
|
||||||
streams_by_user: Dict[int, List[Stream]] = defaultdict(list)
|
streams_by_user: Dict[int, List[Stream]] = defaultdict(list)
|
||||||
for (sub, stream) in subs_to_deactivate:
|
for (sub, stream) in subs_to_deactivate:
|
||||||
streams_by_user[sub.user_profile_id].append(stream)
|
streams_by_user[sub.user_profile_id].append(stream)
|
||||||
altered_user_dict[stream.id].append(sub.user_profile)
|
altered_user_dict[stream.id].add(sub.user_profile_id)
|
||||||
|
|
||||||
for user_profile in users:
|
for user_profile in users:
|
||||||
if len(streams_by_user[user_profile.id]) == 0:
|
if len(streams_by_user[user_profile.id]) == 0:
|
||||||
|
|||||||
Reference in New Issue
Block a user