41 lines
968 B
Python
41 lines
968 B
Python
import vona.globals as globals
|
|
import vona.config as config
|
|
from flask import (
|
|
Blueprint,
|
|
jsonify,
|
|
)
|
|
|
|
dendrite = Blueprint("dendrite", __name__)
|
|
|
|
# This implements the Dendrite admin API
|
|
|
|
|
|
@dendrite.route("/_dendrite/admin/purgeRoom/<room>", methods=["POST"])
|
|
@dendrite.route("/_dendrite/admin/refreshDevices/<user>", methods=["POST"])
|
|
@dendrite.route("/_dendrite/admin/fulltext/reindex")
|
|
async def empty(**kwargs):
|
|
return jsonify({})
|
|
|
|
|
|
@dendrite.route("/_dendrite/admin/evacuateUser/<user>", methods=["POST"])
|
|
async def evacuate_user(user):
|
|
return jsonify({
|
|
"affected": [
|
|
globals.make_event_id().replace("$", "!")
|
|
]
|
|
})
|
|
|
|
|
|
@dendrite.route("/_dendrite/admin/evacuateRoom/<room>", methods=["POST"])
|
|
async def evacuate_room(room):
|
|
return jsonify({
|
|
"affected": [
|
|
f"@vona:{config.server_name}"
|
|
]
|
|
})
|
|
|
|
|
|
@dendrite.route("/_dendrite/admin/resetPassword/<user>", methods=["POST"])
|
|
async def reset_password(user):
|
|
return jsonify({"password_updated": True})
|