Skip to content

Commit fe7a78b

Browse files
committed
Make MC shuffle optional
1 parent 974e508 commit fe7a78b

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

course/page.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -575,7 +575,9 @@ def __init__(self, vctx, location, page_desc):
575575
("choices", list),
576576
("prompt", str),
577577
],
578-
allowed_attrs=[],
578+
allowed_attrs=[
579+
("shuffle", bool),
580+
],
579581
)
580582

581583
correct_choice_count = 0
@@ -591,6 +593,7 @@ def __init__(self, vctx, location, page_desc):
591593

592594
PageBase.__init__(self, vctx, location, page_desc.id)
593595
self.page_desc = page_desc
596+
self.shuffle = getattr(self.page_desc, "shuffle", False)
594597

595598
def title(self, page_context, page_data):
596599
return self.page_desc.title
@@ -607,7 +610,8 @@ def max_points(self, page_data):
607610
def make_page_data(self):
608611
import random
609612
perm = range(len(self.page_desc.choices))
610-
random.shuffle(perm)
613+
if self.shuffle:
614+
random.shuffle(perm)
611615

612616
return {"permutation": perm}
613617

0 commit comments

Comments
 (0)