diff --git a/common/lib/capa/capa/responsetypes.py b/common/lib/capa/capa/responsetypes.py index b69119cf6d..e4a4469d03 100644 --- a/common/lib/capa/capa/responsetypes.py +++ b/common/lib/capa/capa/responsetypes.py @@ -2017,6 +2017,10 @@ class OpenEndedResponse(LoncapaResponse): String """ + #Tags that need to be shown at the end of the feedback block (in this order) + tags_displayed_last=['markup-text', 'markup_text'] + tags_displayed_first=['spelling', 'grammar'] + feedback_item_start='
' feedback_item_end='
' @@ -2032,12 +2036,21 @@ class OpenEndedResponse(LoncapaResponse): success=response_items['success'] + if success: feedback_long="" + #Add in feedback that needs to be shown first for k,v in feedback_items.items(): - feedback_long+=feedback_item_start.format(feedback_key=k) - feedback_long+=str(v) - feedback_long+=feedback_item_end + if k in tags_displayed_first: + feedback_long+= feedback_item_start.format(feedback_key=k) +str(v) + feedback_item_end + #Add in feedback whose order does not matter + for k,v in feedback_items.items(): + if k not in tags_displayed_last and k not in tags_displayed_first: + feedback_long+= feedback_item_start.format(feedback_key=k) +str(v) + feedback_item_end + #Add in feedback that needs to be displayed last + for k,v in feedback_items.items(): + if k in tags_displayed_last: + feedback_long+= feedback_item_start.format(feedback_key=k) +str(v) + feedback_item_end if len(feedback_items)==0: feedback_long=feedback_item_start.format(feedback_key="feedback") + "No feedback available." + feedback_item_end