display feedback in status box
This commit is contained in:
@@ -213,11 +213,13 @@ class CombinedOpenEndedModule(XModule):
|
||||
last_response=task.latest_answer()
|
||||
last_score = task.latest_score()
|
||||
last_post_assessment = task.latest_post_assessment()
|
||||
if task_type=="openended":
|
||||
last_post_assessment = task.latest_post_assessment(short_feedback=True)
|
||||
max_score = task.max_score()
|
||||
state = task.state
|
||||
last_response_dict={'response' : last_response, 'score' : last_score,
|
||||
'post_assessment' : last_post_assessment,
|
||||
'type' : task_type, 'max_score' : max_score, 'state' : state}
|
||||
'type' : task_type, 'max_score' : max_score, 'state' : state, 'human_state' : task.HUMAN_NAMES[state]}
|
||||
|
||||
return last_response_dict
|
||||
|
||||
|
||||
@@ -381,12 +381,17 @@ class OpenEndedModule(openendedchild.OpenEndedChild):
|
||||
|
||||
return {'valid' : True, 'score' : score_result['score'], 'feedback' : feedback}
|
||||
|
||||
def latest_post_assessment(self):
|
||||
def latest_post_assessment(self, short_feedback=False):
|
||||
"""None if not available"""
|
||||
if not self.history:
|
||||
return ""
|
||||
|
||||
feedback_dict = self._parse_score_msg(self.history[-1].get('post_assessment', ""))
|
||||
return feedback_dict['feedback'] if feedback_dict['valid'] else ''
|
||||
if not short_feedback:
|
||||
return feedback_dict['feedback'] if feedback_dict['valid'] else ''
|
||||
|
||||
short_feedback = self._convert_longform_feedback_to_html(json.loads(self.history[-1].get('post_assessment', "")))
|
||||
return short_feedback if feedback_dict['valid'] else ''
|
||||
|
||||
def is_submission_correct(self, score):
|
||||
correct=False
|
||||
|
||||
@@ -69,6 +69,13 @@ class OpenEndedChild():
|
||||
POST_ASSESSMENT = 'post_assessment'
|
||||
DONE = 'done'
|
||||
|
||||
HUMAN_NAMES={
|
||||
'initial' : 'Started',
|
||||
'assessing' : 'Being scored',
|
||||
'post_assessment' : 'Scoring finished',
|
||||
'done' : 'Problem complete',
|
||||
}
|
||||
|
||||
def __init__(self, system, location, definition, descriptor, static_data,
|
||||
instance_state=None, shared_state=None, **kwargs):
|
||||
"""
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
<section id="combined-open-ended-status" class="combined-open-ended-status">
|
||||
%for status in status_list:
|
||||
<div class="statusitem">
|
||||
Step ${status['task_number']} (${status['state']}) : ${status['score']} / ${status['max_score']}
|
||||
Step ${status['task_number']} (${status['human_state']}) : ${status['score']} / ${status['max_score']}
|
||||
%if status['type']=="openended":
|
||||
${status['post_assessment']}
|
||||
<div class="collapsible open-ended-short-feedback">
|
||||
${status['post_assessment']}
|
||||
</div>
|
||||
%endif
|
||||
</div>
|
||||
%endfor
|
||||
|
||||
Reference in New Issue
Block a user