X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=turbot%2Fhunt.py;h=c2e59e2be937c4577e7696f80b01fce51356e05d;hb=29c36d3057c5602c5a4b6fb0e48f454db01ddd9d;hp=1c2ee0e1120c579d8462e65cb721e29c95c122dc;hpb=32698832814a2c60498a1fc1f8ed1d28b69dd41a;p=turbot diff --git a/turbot/hunt.py b/turbot/hunt.py index 1c2ee0e..c2e59e2 100644 --- a/turbot/hunt.py +++ b/turbot/hunt.py @@ -23,6 +23,18 @@ def find_hunt_for_hunt_id(turb, hunt_id): else: return None +def hunt_puzzles_for_hunt_id(turb, hunt_id): + """Return all puzzles that belong to the given hunt_id""" + + response = turb.table.query( + KeyConditionExpression=( + Key('hunt_id').eq(hunt_id) & + Key('SK').begins_with('puzzle-') + ) + ) + + return response['Items'] + def hunt_blocks(turb, hunt, puzzle_status='unsolved', search_terms=[], limit_to_rounds=None): """Generate Slack blocks for a hunt @@ -62,13 +74,7 @@ def hunt_blocks(turb, hunt, puzzle_status='unsolved', search_terms=[], hunt_id = hunt['hunt_id'] channel_id = hunt['channel_id'] - response = turb.table.query( - KeyConditionExpression=( - Key('hunt_id').eq(hunt_id) & - Key('SK').begins_with('puzzle-') - ) - ) - puzzles = response['Items'] + puzzles = hunt_puzzles_for_hunt_id(turb, hunt_id) # Filter the set of puzzles according the the requested puzzle_status if puzzle_status in ('solved', 'unsolved'):