mirror of https://github.com/zulip/zulip.git
31 lines
1.0 KiB
Python
31 lines
1.0 KiB
Python
|
from django.db import migrations
|
||
|
from django.db.backends.postgresql.schema import BaseDatabaseSchemaEditor
|
||
|
from django.db.migrations.state import StateApps
|
||
|
|
||
|
|
||
|
def update_deprecated_emoji_style(apps: StateApps, schema_editor: BaseDatabaseSchemaEditor) -> None:
|
||
|
"""
|
||
|
This migration updates the emoji style for users who are using the
|
||
|
deprecated Google blob style. Unless they are part of an organization
|
||
|
which has Google blob as an organization default, these users will
|
||
|
now use the modern Google emoji style.
|
||
|
"""
|
||
|
|
||
|
UserProfile = apps.get_model("zerver", "UserProfile")
|
||
|
RealmUserDefault = apps.get_model("zerver", "RealmUserDefault")
|
||
|
|
||
|
UserProfile.objects.filter(emojiset="google-blob").exclude(
|
||
|
realm__in=RealmUserDefault.objects.filter(emojiset="google-blob").values("realm")
|
||
|
).update(emojiset="google")
|
||
|
|
||
|
|
||
|
class Migration(migrations.Migration):
|
||
|
|
||
|
dependencies = [
|
||
|
("zerver", "0415_delete_scimclient"),
|
||
|
]
|
||
|
|
||
|
operations = [
|
||
|
migrations.RunPython(update_deprecated_emoji_style, elidable=True),
|
||
|
]
|