]> git.cworth.org Git - turbot/blobdiff - turbot/interaction.py
Fix puzzle edit form in the case of no existing rounds in the hunt yet
[turbot] / turbot / interaction.py
index d87d27ac1a6827a9da4f6392245e96328440de6e..cbb8befe2bcb3eb4ebf3df0d7f3165fcf1f5e128 100644 (file)
@@ -267,10 +267,11 @@ def edit_puzzle_submission(turb, payload, metadata):
         puzzle['type'] = 'meta'
     else:
         puzzle['type'] = 'plain'
-    rounds = [option['value'] for option in
-              state['rounds']['rounds']['selected_options']]
-    if rounds:
-        puzzle['rounds'] = rounds
+    if 'rounds' in state:
+        rounds = [option['value'] for option in
+                  state['rounds']['rounds']['selected_options']]
+        if rounds:
+            puzzle['rounds'] = rounds
     new_rounds = state['new_rounds']['new_rounds']['value']
     puzzle_state = state['state']['state']['value']
     if puzzle_state:
@@ -534,7 +535,7 @@ def new_hunt(turb, trigger_id):
 
     return lambda_ok
 
-actions['button']['new_hunt'] = new_hunt
+actions['button']['new_hunt'] = new_hunt_button
 
 def new_hunt_submission(turb, payload, metadata):
     """Handler for the user submitting the new hunt modal
@@ -1269,10 +1270,13 @@ def hunt(turb, body, args):
 
     blocks = hunt_blocks(turb, hunt, puzzle_status=status, search_terms=terms)
 
-    requests.post(response_url,
-                  json = { 'blocks': blocks },
-                  headers = {'Content-type': 'application/json'}
-                  )
+    for block in blocks:
+        if len(block) > 100:
+            block = block[:100]
+        requests.post(response_url,
+                      json = { 'blocks': block },
+                      headers = {'Content-type': 'application/json'}
+                      )
 
     return lambda_ok
 
@@ -1343,10 +1347,13 @@ def round(turb, body, args):
                          limit_to_rounds=puzzle.get('rounds', [])
                          )
 
-    requests.post(response_url,
-                  json = { 'blocks': blocks },
-                  headers = {'Content-type': 'application/json'}
-                  )
+    for block in blocks:
+        if len(block) > 100:
+            block = block[:100]
+        requests.post(response_url,
+                      json = { 'blocks': block },
+                      headers = {'Content-type': 'application/json'}
+                      )
 
     return lambda_ok