From da3f1f49da03adddc8c6a7ff945d6e996304d718 Mon Sep 17 00:00:00 2001 From: Max Erenberg Date: Wed, 8 Sep 2021 13:20:45 +0000 Subject: [PATCH] remove falsy values from body --- ceod/api/positions.py | 8 +++++++- .../members/UpdateMemberPositionsTransaction.py | 3 +-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/ceod/api/positions.py b/ceod/api/positions.py index 93b757f..a194565 100644 --- a/ceod/api/positions.py +++ b/ceod/api/positions.py @@ -29,6 +29,12 @@ def update_positions(): required = cfg.get('positions_required') available = cfg.get('positions_available') + # remove falsy values + body = { + positions: username for positions, username in body.items() + if username + } + for position in body.keys(): if position not in available: return { @@ -36,7 +42,7 @@ def update_positions(): }, 400 for position in required: - if not body.get(position): + if position not in body: return { 'error': f'missing required position: {position}' }, 400 diff --git a/ceod/transactions/members/UpdateMemberPositionsTransaction.py b/ceod/transactions/members/UpdateMemberPositionsTransaction.py index d38400f..32ac77e 100644 --- a/ceod/transactions/members/UpdateMemberPositionsTransaction.py +++ b/ceod/transactions/members/UpdateMemberPositionsTransaction.py @@ -28,8 +28,7 @@ class UpdateMemberPositionsTransaction(AbstractTransaction): # Reverse the dict so it's easier to use (username -> positions) self.positions = defaultdict(list) for position, username in positions_reversed.items(): - if username is not None: - self.positions[username].append(position) + self.positions[username].append(position) # a cached Dict of the Users who need to be modified (username -> User) self.users: Dict[str, IUser] = {}