Add button to export debug info of a user

This commit is contained in:
Jonas Schäfer
2021-01-21 16:15:28 +01:00
parent f5d0bfdec7
commit b6188ed29f
10 changed files with 158 additions and 47 deletions

View File

@@ -1,4 +1,5 @@
import asyncio
import json
import typing
from datetime import datetime
@@ -69,6 +70,22 @@ async def delete_user(localpart: str) -> typing.Union[str, quart.Response]:
)
@bp.route("/user/<localpart>/debug")
@client.require_admin_session()
async def debug_user(localpart: str) -> typing.Union[str, quart.Response]:
target_user_info = await client.get_user_by_localpart(localpart)
debug_info = json.dumps(
await client.get_user_debug_info(localpart),
indent=2,
sort_keys=True,
)
return await render_template(
"admin_debug_user.html",
target_user=target_user_info,
debug_dump=debug_info,
)
class InvitesListForm(flask_wtf.FlaskForm): # type:ignore
action_revoke = wtforms.StringField()