2020-12-06 14:04:52 +01:00
|
|
|
from flask import session, jsonify
|
2022-10-17 01:08:31 +02:00
|
|
|
from pony.orm import select
|
2020-12-06 14:04:52 +01:00
|
|
|
|
2025-07-16 10:34:28 -05:00
|
|
|
from WebHostLib import to_url
|
2022-10-17 01:08:31 +02:00
|
|
|
from WebHostLib.models import Room, Seed
|
2022-01-19 18:51:26 +01:00
|
|
|
from . import api_endpoints, get_players
|
2020-12-06 14:04:52 +01:00
|
|
|
|
|
|
|
|
|
|
|
@api_endpoints.route('/get_rooms')
|
|
|
|
def get_rooms():
|
|
|
|
response = []
|
|
|
|
for room in select(room for room in Room if room.owner == session["_id"]):
|
|
|
|
response.append({
|
2025-07-16 10:34:28 -05:00
|
|
|
"room_id": to_url(room.id),
|
|
|
|
"seed_id": to_url(room.seed.id),
|
2020-12-06 14:04:52 +01:00
|
|
|
"creation_time": room.creation_time,
|
|
|
|
"last_activity": room.last_activity,
|
|
|
|
"last_port": room.last_port,
|
|
|
|
"timeout": room.timeout,
|
2025-07-16 10:34:28 -05:00
|
|
|
"tracker": to_url(room.tracker),
|
2020-12-06 14:04:52 +01:00
|
|
|
})
|
|
|
|
return jsonify(response)
|
|
|
|
|
|
|
|
|
|
|
|
@api_endpoints.route('/get_seeds')
|
|
|
|
def get_seeds():
|
|
|
|
response = []
|
|
|
|
for seed in select(seed for seed in Seed if seed.owner == session["_id"]):
|
|
|
|
response.append({
|
2025-07-16 10:34:28 -05:00
|
|
|
"seed_id": to_url(seed.id),
|
2020-12-06 14:04:52 +01:00
|
|
|
"creation_time": seed.creation_time,
|
2025-04-18 11:15:59 -05:00
|
|
|
"players": get_players(seed),
|
2020-12-06 14:04:52 +01:00
|
|
|
})
|
2025-01-20 02:05:07 +01:00
|
|
|
return jsonify(response)
|