from flask import Blueprint, jsonify, abort from flask_login import current_user from db.queries import user_get, domsubusers_list, orders_pool_list api = Blueprint('api', __name__) @api.route('/subs') def subs(): return jsonify( [ {"sub_username": dsu.sub.telegram_username} for dsu in domsubusers_list(current_user.db_user) ] ) @api.route('/subs//orders') def sub_orders(username): try: sub = user_get(username) except: abort(500) return if sub.telegram_username not in [dsu.sub.telegram_username for dsu in domsubusers_list(current_user.db_user)]: abort(500) return return jsonify([ { 'id': op.id, 'name': op.name, 'orders': [{ 'id': order.id, 'name': order.name, 'weight': order.weight, 'repeat': order.repeat } for order in op.orders] } for op in orders_pool_list(sub.id) ])