+ # Inform the puzzle channel about the edit
+ edit_message = "Puzzle edited by <@{}>".format(user_id)
+ blocks = ([section_block(text_block(edit_message+":\n"))] +
+ puzzle_blocks(puzzle, include_rounds=True))
+ slack_send_message(
+ turb.slack_client, puzzle['channel_id'],
+ edit_message, blocks=blocks)
+
+ # Also inform the hunt if the puzzle's solved status changed
+ if puzzle['status'] != old_puzzle['status']:
+ hunt = find_hunt_for_hunt_id(turb, puzzle['hunt_id'])
+ if puzzle['status'] == 'solved':
+ message = "Puzzle <{}|{}> has been solved!".format(
+ puzzle['channel_url'],
+ puzzle['name'])
+ else:
+ message = "Oops. Puzzle <{}|{}> has been marked unsolved!".format(
+ puzzle['channel_url'],
+ puzzle['name'])
+ slack_send_message(turb.slack_client, hunt['channel_id'], message)
+