diff options
Diffstat (limited to 'pysite/views/staff/jams/actions.py')
-rw-r--r-- | pysite/views/staff/jams/actions.py | 15 |
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}) |