aboutsummaryrefslogtreecommitdiffstats
path: root/pysite/views/staff/jams/actions.py
diff options
context:
space:
mode:
authorGravatar Momo <[email protected]>2018-06-23 23:13:03 +0000
committerGravatar Momo <[email protected]>2018-06-23 23:13:03 +0000
commit3c1348a959937bb1e6ee3fabe9892136e5b13167 (patch)
treeba9172b2b0a6d3fdbab69d19dc1fa93053c04a93 /pysite/views/staff/jams/actions.py
parent[API] Check for DB-nuking empty data in users POST (diff)
parent[Jams/Teams] Hopefully optimize jam team list (diff)
Merge branch 'momo/optimize-teams-list' into 'master'
Optimize team lists and better relations See merge request python-discord/projects/site!10
Diffstat (limited to 'pysite/views/staff/jams/actions.py')
-rw-r--r--pysite/views/staff/jams/actions.py15
1 files changed, 14 insertions, 1 deletions
diff --git a/pysite/views/staff/jams/actions.py b/pysite/views/staff/jams/actions.py
index 3f8b4c20..c97f0d8c 100644
--- a/pysite/views/staff/jams/actions.py
+++ b/pysite/views/staff/jams/actions.py
@@ -221,7 +221,8 @@ class ActionView(APIView, DBMixin, RMQMixin):
team = {
"name": f"{adjective} {noun}".title(),
- "members": []
+ "members": [],
+ "jam": jam
}
result = self.db.insert(self.teams_table, team)
@@ -538,6 +539,18 @@ class ActionView(APIView, DBMixin, RMQMixin):
ErrorCodes.incorrect_parameters, "Team ID required"
)
+ team_obj = self.db.get(self.teams_table, team)
+
+ if not team_obj:
+ return self.error(
+ ErrorCodes.incorrect_parameters, "Unknown team ID"
+ )
+
+ jam_obj = self.db.get(self.table_name, team_obj["jam"])
+ if jam_obj:
+ jam_obj["teams"].remove(team)
+ self.db.insert(self.table_name, jam_obj, conflict="update")
+
self.db.delete(self.teams_table, team)
return jsonify({"result": True})