Commit a856c87d by Tim Krones

Make sure dropdown excludes all choice fields (not just children of MRQs).

parent 4cc0b2e6
...@@ -189,24 +189,25 @@ class InstructorToolBlock(XBlock): ...@@ -189,24 +189,25 @@ class InstructorToolBlock(XBlock):
block_id = get_block_id(block) block_id = get_block_id(block)
block_name = get_block_name(block) block_name = get_block_name(block)
block_type = get_block_type(block) block_type = get_block_type(block)
eligible = block_type in block_types if not block_type == 'pb-choice':
if eligible: eligible = block_type in block_types
# If this block is a question whose answers we can export, if eligible:
# we mark all of its ancestors as exportable too # If this block is a question whose answers we can export,
if ancestors and not ancestors[-1]["eligible"]: # we mark all of its ancestors as exportable too
for ancestor in ancestors: if ancestors and not ancestors[-1]["eligible"]:
ancestor["eligible"] = True for ancestor in ancestors:
new_entry = { ancestor["eligible"] = True
"depth": len(ancestors),
"id": block_id, new_entry = {
"name": block_name, "depth": len(ancestors),
"eligible": eligible, "id": block_id,
} "name": block_name,
flat_block_tree.append(new_entry) "eligible": eligible,
if block.has_children and not block_type == 'pb-mcq' and not \ }
getattr(block, "has_dynamic_children", lambda: False)(): flat_block_tree.append(new_entry)
for child_id in block.children: if block.has_children and not getattr(block, "has_dynamic_children", lambda: False)():
build_tree(block.runtime.get_block(child_id), ancestors=(ancestors + [new_entry])) for child_id in block.children:
build_tree(block.runtime.get_block(child_id), ancestors=(ancestors + [new_entry]))
root_block = self root_block = self
while root_block.parent: while root_block.parent:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment