33 lines
941 B
Python
33 lines
941 B
Python
"""Staff-only routing adapters; default-deny authentication and CSRF run first."""
|
|
|
|
from flask import Blueprint, g, request
|
|
|
|
from .. import routing_service, staff_service
|
|
|
|
bp = Blueprint('routing', __name__)
|
|
|
|
|
|
@bp.get('/api/admin/routing')
|
|
def snapshot():
|
|
return routing_service.routing_snapshot(g.staff['username'], staff_service.token_hash())
|
|
|
|
|
|
@bp.post('/api/admin/routing/presence')
|
|
def presence():
|
|
return routing_service.update_presence(g.staff['username'], staff_service.token_hash(), request.get_json(silent=True))
|
|
|
|
|
|
@bp.post('/api/admin/routing/groups')
|
|
def create_group():
|
|
return routing_service.create_group(request.get_json(silent=True))
|
|
|
|
|
|
@bp.post('/api/admin/routing/members')
|
|
def move_member():
|
|
return routing_service.move_member(request.get_json(silent=True))
|
|
|
|
|
|
@bp.post('/api/admin/routing/assign')
|
|
def assign():
|
|
return routing_service.reassign_session(request.get_json(silent=True), g.staff['username'])
|