zulip/zerver/lib/realm_icon.py

20 lines
628 B
Python

from django.conf import settings
from zerver.lib.avatar_hash import gravatar_hash
from zerver.lib.upload import upload_backend
from zerver.models import Realm
def realm_icon_url(realm: Realm) -> str:
return get_realm_icon_url(realm)
def get_realm_icon_url(realm: Realm) -> str:
if realm.icon_source == "U":
return upload_backend.get_realm_icon_url(realm.id, realm.icon_version)
elif settings.ENABLE_GRAVATAR:
hash_key = gravatar_hash(realm.string_id)
return f"https://secure.gravatar.com/avatar/{hash_key}?d=identicon"
else:
return settings.DEFAULT_AVATAR_URI + "?version=0"