Commit 757ff604 by Vik Paruchuri

Start to abstract away rendering of feedback from the open ended module into the combined module

parent 4dc0859f
...@@ -573,9 +573,10 @@ class CombinedOpenEndedV1Module(): ...@@ -573,9 +573,10 @@ class CombinedOpenEndedV1Module():
Input: AJAX get dictionary Input: AJAX get dictionary
Output: Dictionary to be rendered via ajax that contains the result html. Output: Dictionary to be rendered via ajax that contains the result html.
""" """
task_number = int(get['task_number'])
self.update_task_states() self.update_task_states()
response_dict = self.get_last_response(task_number) loop_up_to_task = self.current_task_number+1
for i in xrange(0,loop_up_to_task):
all_responses.append(self.get_last_response(i))
context = { context = {
'results': response_dict['post_assessment'], 'results': response_dict['post_assessment'],
'task_number': task_number + 1, 'task_number': task_number + 1,
......
...@@ -429,7 +429,17 @@ class OpenEndedModule(openendedchild.OpenEndedChild): ...@@ -429,7 +429,17 @@ class OpenEndedModule(openendedchild.OpenEndedChild):
correct: Correctness of submission (Boolean) correct: Correctness of submission (Boolean)
score: Points to be assigned (numeric, can be float) score: Points to be assigned (numeric, can be float)
""" """
fail = {'valid': False, 'score': 0, 'feedback': '', 'rubric_scores' : [[0]], 'grader_types' : [''], 'feedback_items' : ['']} fail = {
'valid': False,
'score': 0,
'feedback': '',
'rubric_scores' : [[0]],
'grader_types' : [''],
'feedback_items' : [''],
'feedback_dicts' : [{}],
'grader_ids' : [0],
'submission_ids' : [0],
}
try: try:
score_result = json.loads(score_msg) score_result = json.loads(score_msg)
except (TypeError, ValueError): except (TypeError, ValueError):
...@@ -458,6 +468,9 @@ class OpenEndedModule(openendedchild.OpenEndedChild): ...@@ -458,6 +468,9 @@ class OpenEndedModule(openendedchild.OpenEndedChild):
feedback_items = [] feedback_items = []
rubric_scores = [] rubric_scores = []
grader_types = [] grader_types = []
feedback_dicts = []
grader_ids = []
submission_ids = []
for i in xrange(0, len(score_result['score'])): for i in xrange(0, len(score_result['score'])):
new_score_result = { new_score_result = {
'score': score_result['score'][i], 'score': score_result['score'][i],
...@@ -473,6 +486,9 @@ class OpenEndedModule(openendedchild.OpenEndedChild): ...@@ -473,6 +486,9 @@ class OpenEndedModule(openendedchild.OpenEndedChild):
feedback_items.append(feedback_template) feedback_items.append(feedback_template)
rubric_scores.append(rubric_score) rubric_scores.append(rubric_score)
grader_types.append(score_result['grader_type']) grader_types.append(score_result['grader_type'])
feedback_dicts.append(score_result['feedback'][i])
grader_ids.append(score_result['grader_id'][i])
submission_ids.append(score_result['submission_id'])
if join_feedback: if join_feedback:
feedback = "".join(feedback_items) feedback = "".join(feedback_items)
else: else:
...@@ -485,6 +501,9 @@ class OpenEndedModule(openendedchild.OpenEndedChild): ...@@ -485,6 +501,9 @@ class OpenEndedModule(openendedchild.OpenEndedChild):
rubric_scores = [rubric_score] rubric_scores = [rubric_score]
grader_types = [score_result['grader_type']] grader_types = [score_result['grader_type']]
feedback_items = [feedback] feedback_items = [feedback]
feedback_dicts = [score_result['feedback']]
grader_ids = [score_result['grader_id']]
submission_ids = [score_result['submission_id']]
self.submission_id = score_result['submission_id'] self.submission_id = score_result['submission_id']
self.grader_id = score_result['grader_id'] self.grader_id = score_result['grader_id']
...@@ -495,7 +514,10 @@ class OpenEndedModule(openendedchild.OpenEndedChild): ...@@ -495,7 +514,10 @@ class OpenEndedModule(openendedchild.OpenEndedChild):
'feedback': feedback, 'feedback': feedback,
'rubric_scores' : rubric_scores, 'rubric_scores' : rubric_scores,
'grader_types' : grader_types, 'grader_types' : grader_types,
'feedback_items' : feedback_items 'feedback_items' : feedback_items,
'feedback_dicts' : feedback_dicts,
'grader_ids' : grader_ids,
'submission_ids' : submission_ids,
} }
def latest_post_assessment(self, system, short_feedback=False, join_feedback=True): def latest_post_assessment(self, system, short_feedback=False, join_feedback=True):
......
<section> <section>
<div class="shortform-custom" data-open-text='Show detailed results' data-close-text='Hide detailed results'> <div class="grader-feedback">
${rubric_feedback | n} ${rubric_feedback | n}
% if grader_type=="PE": % if grader_type=="PE":
<div class="result-output"> <div class="result-output">
...@@ -7,9 +7,4 @@ ...@@ -7,9 +7,4 @@
</div> </div>
% endif % endif
</div> </div>
<div class="longform">
<div class="result-output">
${ feedback | n}
</div>
</div>
</section> </section>
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