Add phone number field for puppets

This commit is contained in:
Tulir Asokan
2022-04-06 12:47:35 +03:00
parent 261f99ac82
commit da5b8556f2
6 changed files with 48 additions and 12 deletions
+8
View File
@@ -73,6 +73,7 @@ class Puppet(DBPuppet, BasePuppet):
displayname_quality: int = 0,
disable_updates: bool = False,
username: str | None = None,
phone: str | None = None,
photo_id: str | None = None,
avatar_url: ContentURI | None = None,
name_set: bool = False,
@@ -93,6 +94,7 @@ class Puppet(DBPuppet, BasePuppet):
displayname_quality=displayname_quality,
disable_updates=disable_updates,
username=username,
phone=phone,
photo_id=photo_id,
avatar_url=avatar_url,
name_set=name_set,
@@ -134,7 +136,9 @@ class Puppet(DBPuppet, BasePuppet):
return {
"name": self.displayname,
"username": self.username,
"phone": f"+{self.phone.lstrip('+')}" if self.phone else None,
"is_bot": self.is_bot,
"avatar_url": self.avatar_url,
}
@property
@@ -261,6 +265,10 @@ class Puppet(DBPuppet, BasePuppet):
self.username = info.username
changed = True
if getattr(info, "phone", None) and self.phone != info.phone:
self.phone = info.phone
changed = True
if not self.disable_updates:
try:
changed = await self.update_displayname(source, info) or changed