from turbot.blocks import section_block, text_block, divider_block
from turbot.round import round_blocks
-from turbot.puzzle import puzzle_block, puzzle_matches_all
+from turbot.puzzle import puzzle_blocks, puzzle_matches_all
from turbot.channel import channel_url
from boto3.dynamodb.conditions import Key
else:
return None
-def quote_if_has_space(term):
- if ' ' in term:
- return '"{}"'.format(term)
- else:
- return term
-
def hunt_blocks(turb, hunt, puzzle_status='unsolved', search_terms=[]):
"""Generate Slack blocks for a hunt
for round in puzzle['rounds']:
rounds.add(round)
- hunt_text = "*{}* puzzles in hunt <{}|{}>".format(
+ hunt_text = "*{} puzzles in hunt <{}|{}>*".format(
puzzle_status.capitalize(),
channel_url(channel_id),
name
)
if search_terms:
- quoted_terms = [quote_if_has_space(term) for term in search_terms]
+ quoted_terms = ['`{}`'.format(term) for term in search_terms]
hunt_text += " matching {}".format(" AND ".join(quoted_terms))
blocks = [
stray_text = "*Puzzles with no assigned round*"
blocks.append(section_block(text_block(stray_text)))
for puzzle in stray_puzzles:
- blocks.append(puzzle_block(puzzle))
+ blocks += puzzle_blocks(puzzle)
blocks.append(divider_block())