From 8218a4a220bbdaae1eaddafdca08557166be11c6 Mon Sep 17 00:00:00 2001 From: Vik Paruchuri Date: Thu, 15 Aug 2013 19:09:09 -0400 Subject: [PATCH] Show the right rubric, be more explicit about "next step" --- .../js/src/combinedopenended/display.coffee | 2 + .../combined_open_ended_modulev1.py | 44 +++++++------------ 2 files changed, 18 insertions(+), 28 deletions(-) diff --git a/common/lib/xmodule/xmodule/js/src/combinedopenended/display.coffee b/common/lib/xmodule/xmodule/js/src/combinedopenended/display.coffee index ec9ddb1329..2fe8979652 100644 --- a/common/lib/xmodule/xmodule/js/src/combinedopenended/display.coffee +++ b/common/lib/xmodule/xmodule/js/src/combinedopenended/display.coffee @@ -286,6 +286,8 @@ class @CombinedOpenEnded @answer_area.attr("disabled", true) @replace_text_inputs() @hint_area.attr('disabled', true) + if @task_number<@task_count + @gentle_alert "Your score did not meet the criteria to move to the next step." else if @child_state == 'initial' @answer_area.attr("disabled", false) @submit_button.prop('value', 'Submit') diff --git a/common/lib/xmodule/xmodule/open_ended_grading_classes/combined_open_ended_modulev1.py b/common/lib/xmodule/xmodule/open_ended_grading_classes/combined_open_ended_modulev1.py index 7e95e27089..bdcbc7054c 100644 --- a/common/lib/xmodule/xmodule/open_ended_grading_classes/combined_open_ended_modulev1.py +++ b/common/lib/xmodule/xmodule/open_ended_grading_classes/combined_open_ended_modulev1.py @@ -556,25 +556,23 @@ class CombinedOpenEndedV1Module(): if not can_see_rubric: return {'html' : self.system.render_template('{0}/combined_open_ended_hidden_results.html'.format(self.TEMPLATE_DIR), {'error' : error}), 'success' : True, 'hide_reset' : True} - loop_up_to_task = self.current_task_number + 1 contexts = [] - for i in xrange(0, loop_up_to_task): - response = self.get_last_response(i) - score_length = len(response['grader_types']) - for z in xrange(0,score_length): - feedback = response['feedback_dicts'][z].get('feedback', '') - if response['grader_types'][z] in HUMAN_GRADER_TYPE.keys(): - rubric_scores = [[response['rubric_scores'][z]]] - grader_types = [[response['grader_types'][z]]] - feedback_items = [[response['feedback_items'][z]]] - rubric_html = self.rubric_renderer.render_combined_rubric(stringify_children(self.static_data['rubric']), - rubric_scores, - grader_types, feedback_items) - contexts.append({ - 'result': rubric_html, - 'task_name': 'Scored rubric', - 'feedback' : feedback - }) + response = self.get_last_response(self.current_task_number + 1) + score_length = len(response['grader_types']) + for z in xrange(0,score_length): + feedback = response['feedback_dicts'][z].get('feedback', '') + if response['grader_types'][z] in HUMAN_GRADER_TYPE.keys(): + rubric_scores = [[response['rubric_scores'][z]]] + grader_types = [[response['grader_types'][z]]] + feedback_items = [[response['feedback_items'][z]]] + rubric_html = self.rubric_renderer.render_combined_rubric(stringify_children(self.static_data['rubric']), + rubric_scores, + grader_types, feedback_items) + contexts.append({ + 'result': rubric_html, + 'task_name': 'Scored rubric', + 'feedback' : feedback + }) context = { 'results': contexts, @@ -594,15 +592,6 @@ class CombinedOpenEndedV1Module(): html = self.system.render_template('{0}/combined_open_ended_legend.html'.format(self.TEMPLATE_DIR), context) return {'html': html, 'success': True} - def get_status_ajax(self, _data): - """ - Gets the results of a given grader via ajax. - Input: AJAX data dictionary - Output: Dictionary to be rendered via ajax that contains the result html. - """ - html = self.get_status(True) - return {'html': html, 'success': True} - def handle_ajax(self, dispatch, data): """ This is called by courseware.module_render, to handle an AJAX call. @@ -618,7 +607,6 @@ class CombinedOpenEndedV1Module(): 'next_problem': self.next_problem, 'reset': self.reset, 'get_combined_rubric': self.get_rubric, - 'get_status': self.get_status_ajax, 'get_legend': self.get_legend, 'get_last_response': self.get_last_response_ajax, 'get_current_state': self.get_current_state,