Allow logout even if session isn't authorized

This commit is contained in:
Tulir Asokan
2021-10-20 20:55:11 +03:00
parent 4e8c373d1b
commit 6b8831872c
2 changed files with 4 additions and 2 deletions
+3 -1
View File
@@ -349,10 +349,12 @@ async def _finish_sign_in(evt: CommandEvent, user: User, login_as: 'u.User' = No
return await evt.reply(msg)
@command_handler(needs_auth=True,
@command_handler(needs_auth=False,
help_section=SECTION_AUTH,
help_text="Log out from Telegram.")
async def logout(evt: CommandEvent) -> EventID:
if not evt.sender.tgid:
return await evt.reply("You're not logged in")
if await evt.sender.log_out():
return await evt.reply("Logged out successfully.")
return await evt.reply("Failed to log out.")
@@ -355,7 +355,7 @@ class ProvisioningAPI(AuthAPI):
return await self.post_login_password(user, data.get("password", ""))
async def logout(self, request: web.Request) -> web.Response:
_, user, err = await self.get_user_request_info(request, expect_logged_in=True,
_, user, err = await self.get_user_request_info(request, expect_logged_in=None,
require_puppeting=False,
want_data=False)
if err is not None: