Merge branch 'master' into independent-login

This commit is contained in:
Tulir Asokan
2018-02-21 23:36:09 +02:00
4 changed files with 13 additions and 4 deletions
+6
View File
@@ -65,6 +65,12 @@ class Bot(AbstractUser):
except (ChannelPrivateError, ChannelInvalidError):
self.remove_chat(id.channel_id)
def register_portal(self, portal):
self.add_chat(portal.tgid, portal.peer_type)
def unregister_portal(self, portal):
self.remove_chat(portal.tgid)
def add_chat(self, id, type):
if id not in self.chats:
self.chats[id] = type
+1 -1
View File
@@ -112,7 +112,7 @@ class TelegramFile(Base):
mxc = Column(String)
mime_type = Column(String)
was_converted = Column(Boolean)
timestamp = Column(BigInteger, primary_key=True)
timestamp = Column(BigInteger)
def init(db_session):
+5 -2
View File
@@ -491,8 +491,11 @@ class Portal:
if self.peer_type == "user":
await self.main_intent.leave_room(self.mxid)
self.delete()
del self.by_tgid[self.tgid_full]
del self.by_mxid[self.mxid]
try:
del self.by_tgid[self.tgid_full]
del self.by_mxid[self.mxid]
except KeyError:
pass
elif source and source.tgid != user.tgid:
if self.peer_type == "chat":
await source.client(DeleteChatUserRequest(chat_id=self.tgid, user_id=user.tgid))
+1 -1
View File
@@ -44,7 +44,7 @@ def _convert_webp(file, to="png"):
async def transfer_file_to_matrix(db, client, intent, location):
if isinstance(location, (Document, InputDocumentFileLocation)):
id = f"{location.id}-{location.version}"
elif not isinstance(location, (FileLocation, InputFileLocation)):
elif isinstance(location, (FileLocation, InputFileLocation)):
id = f"{location.volume_id}-{location.local_id}"
else:
return None