mirror of
https://github.com/zulip/zulip.git
synced 2025-11-03 21:43:21 +00:00
refactor: Break up build_subscriptions.
Having two smaller functions should make it easier to customize the behavior for each specific use case. The only reason they were ever coupled was to keep ids in sequence, but the recent NEXT_ID changes make that a non-issue now.
This commit is contained in:
@@ -29,7 +29,8 @@ from zerver.data_import.import_util import (
|
||||
build_realm_emoji,
|
||||
build_recipients,
|
||||
build_stream,
|
||||
build_subscriptions,
|
||||
build_personal_subscriptions,
|
||||
build_public_stream_subscriptions,
|
||||
build_user_message,
|
||||
build_user_profile,
|
||||
build_zerver_realm,
|
||||
@@ -672,11 +673,17 @@ def do_convert_data(input_tar_file: str, output_dir: str) -> None:
|
||||
)
|
||||
realm['zerver_recipient'] = zerver_recipient
|
||||
|
||||
zerver_subscription = build_subscriptions(
|
||||
public_stream_subscriptions = build_public_stream_subscriptions(
|
||||
zerver_userprofile=normal_users,
|
||||
zerver_recipient=zerver_recipient,
|
||||
zerver_stream=zerver_stream,
|
||||
)
|
||||
|
||||
personal_subscriptions = build_personal_subscriptions(
|
||||
zerver_recipient=zerver_recipient,
|
||||
)
|
||||
|
||||
zerver_subscription = public_stream_subscriptions + personal_subscriptions
|
||||
realm['zerver_subscription'] = zerver_subscription
|
||||
|
||||
zerver_realmemoji = write_emoticon_data(
|
||||
|
||||
@@ -98,7 +98,7 @@ def build_subscription(recipient_id: int, user_id: int,
|
||||
subscription_dict['recipient'] = recipient_id
|
||||
return subscription_dict
|
||||
|
||||
def build_subscriptions(
|
||||
def build_public_stream_subscriptions(
|
||||
zerver_userprofile: List[ZerverFieldsT],
|
||||
zerver_recipient: List[ZerverFieldsT],
|
||||
zerver_stream: List[ZerverFieldsT]) -> List[ZerverFieldsT]:
|
||||
@@ -108,11 +108,6 @@ def build_subscriptions(
|
||||
the Hipchat export, so this function just autosubscribes all
|
||||
users to every public stream. This returns a list of Subscription
|
||||
dicts.
|
||||
|
||||
This function also creates personal subscriptions.
|
||||
|
||||
If you need more fine tuning on how to subscribe folks, look
|
||||
at the code in slack.py.
|
||||
'''
|
||||
subscriptions = [] # type: List[ZerverFieldsT]
|
||||
|
||||
@@ -143,6 +138,12 @@ def build_subscriptions(
|
||||
)
|
||||
subscriptions.append(subscription)
|
||||
|
||||
return subscriptions
|
||||
|
||||
def build_personal_subscriptions(zerver_recipient: List[ZerverFieldsT]) -> List[ZerverFieldsT]:
|
||||
|
||||
subscriptions = [] # type: List[ZerverFieldsT]
|
||||
|
||||
personal_recipients = [
|
||||
recipient
|
||||
for recipient in zerver_recipient
|
||||
|
||||
Reference in New Issue
Block a user