From 178be44333659f4d2c178a6ce9b727ea9effe48d Mon Sep 17 00:00:00 2001 From: Vik Paruchuri Date: Thu, 1 Aug 2013 16:25:21 -0400 Subject: [PATCH] Remove legend, start to edit rubric --- .../css/combinedopenended/display.scss | 14 +++++++++ .../js/src/combinedopenended/display.coffee | 31 ++++++++----------- .../combined_open_ended_rubric.py | 10 ++++++ .../openendedchild.py | 6 ++-- .../combined_open_ended_results.html | 2 +- .../openended/open_ended_combined_rubric.html | 25 ++++++++------- 6 files changed, 54 insertions(+), 34 deletions(-) diff --git a/common/lib/xmodule/xmodule/css/combinedopenended/display.scss b/common/lib/xmodule/xmodule/css/combinedopenended/display.scss index 61b1901866..5e217e5ee0 100644 --- a/common/lib/xmodule/xmodule/css/combinedopenended/display.scss +++ b/common/lib/xmodule/xmodule/css/combinedopenended/display.scss @@ -207,6 +207,20 @@ div.combined-rubric-container { font-size: .9em; font-weight: bold; } + + label.choicegroup_correct { + &:before { + margin-right: 15px; + content: url('../images/correct-icon.png'); + } + } + + label.choicegroup_incorrect { + &:before { + margin-right: 15px; + content: url('../images/incorrect-icon.png'); + } + } } div.result-container { diff --git a/common/lib/xmodule/xmodule/js/src/combinedopenended/display.coffee b/common/lib/xmodule/xmodule/js/src/combinedopenended/display.coffee index 96ad75f088..6022bdd4cc 100644 --- a/common/lib/xmodule/xmodule/js/src/combinedopenended/display.coffee +++ b/common/lib/xmodule/xmodule/js/src/combinedopenended/display.coffee @@ -55,7 +55,6 @@ class @Rubric data = {location: location, selection: target_selection, category: category} Logger.log 'rubric_select', data - # finds the scores for each rubric category @get_score_list: () => # find the number of categories: @@ -97,7 +96,6 @@ class @CombinedOpenEnded submit_evaluation_sel: '.submit-evaluation-button' result_container_sel: 'div.result-container' combined_rubric_sel: '.combined-rubric-container' - legend_sel: '.legend-container' open_ended_child_sel: 'section.open-ended-child' error_sel: '.error' answer_area_sel: 'textarea.answer' @@ -114,6 +112,8 @@ class @CombinedOpenEnded sub_id_sel: 'input.submission_id' grader_id_sel: 'input.grader_id' grader_status_sel: '.grader-status' + info_rubric_elements_sel: '.rubric-elements-info' + rubric_collapse_sel: '.rubric-collapse' constructor: (el) -> @el=el @@ -194,10 +194,6 @@ class @CombinedOpenEnded else if @task_number==1 and @child_state!='initial' @prompt_hide() - if @child_state!="initial" - @show_legend_current() - @legend_container= @$(@legend_sel) - @find_assessment_elements() @find_hint_elements() @@ -240,7 +236,10 @@ class @CombinedOpenEnded $.postWithPrefix "#{@ajax_url}/get_combined_rubric", data, (response) => if response.success @combined_rubric_container.after(response.html).remove() - @combined_rubric_container= $(@combined_rubric_sel) + @combined_rubric_container= @$(@combined_rubric_sel) + @toggle_rubric("") + @rubric_collapse = @$(@rubric_collapse_sel) + @rubric_collapse.click @toggle_rubric show_status_current: () => data = {} @@ -249,13 +248,6 @@ class @CombinedOpenEnded @status_container.after(response.html).remove() @status_container= $(@status_container_sel) - show_legend_current: () => - data = {} - $.postWithPrefix "#{@ajax_url}/get_legend", data, (response) => - if response.success - @legend_container.after(response.html).remove() - @legend_container= $(@legend_sel) - get_last_response: () => data = {} $.postWithPrefix "#{@ajax_url}/get_last_response", data, (response) => @@ -302,7 +294,6 @@ class @CombinedOpenEnded @reset_button.hide() @next_problem_button.hide() @hide_file_upload() - @legend_container.show() @hint_area.attr('disabled', false) if @task_number>1 or @child_state!='initial' @show_status_current() @@ -325,7 +316,6 @@ class @CombinedOpenEnded @submit_button.prop('value', 'Submit') @submit_button.click @save_answer @setup_file_upload() - @legend_container.hide() else if @child_state == 'assessing' @answer_area.attr("disabled", true) @replace_text_inputs() @@ -338,7 +328,6 @@ class @CombinedOpenEnded if @task_number==1 and @task_count==1 @grader_status = @$(@grader_status_sel) @grader_status.html("

Response submitted for scoring.

") - @legend_container.hide() else if @child_state == 'post_assessment' if @child_type=="openended" @skip_button.show() @@ -568,7 +557,7 @@ class @CombinedOpenEnded reload: -> location.reload() - collapse_question: () => + collapse_question: (event) => @prompt_container.slideToggle() @prompt_container.toggleClass('open') if @question_header.text() == "(Hide)" @@ -578,6 +567,7 @@ class @CombinedOpenEnded Logger.log 'oe_show_question', {location: @location} new_text = "(Hide)" @question_header.text(new_text) + return false prompt_show: () => if @prompt_container.is(":hidden")==true @@ -628,3 +618,8 @@ class @CombinedOpenEnded @$(@file_upload_preview_sel)[0].height = height_px/scale_factor @$(@file_upload_preview_sel).show() reader.readAsDataURL(@$(@file_upload_box_sel)[0].files[0]) + + toggle_rubric: (event) => + info_rubric_elements = @$(@info_rubric_elements_sel) + info_rubric_elements.slideToggle() + return false diff --git a/common/lib/xmodule/xmodule/open_ended_grading_classes/combined_open_ended_rubric.py b/common/lib/xmodule/xmodule/open_ended_grading_classes/combined_open_ended_rubric.py index 6245d4d31c..0b2b0fdaec 100644 --- a/common/lib/xmodule/xmodule/open_ended_grading_classes/combined_open_ended_rubric.py +++ b/common/lib/xmodule/xmodule/open_ended_grading_classes/combined_open_ended_rubric.py @@ -208,6 +208,7 @@ class CombinedOpenEndedRubric(object): feedback_types) rubric_categories = self.extract_categories(rubric_xml) max_scores = map((lambda cat: cat['options'][-1]['points']), rubric_categories) + actual_scores = [] max_score = max(max_scores) for i in xrange(0, len(rubric_categories)): category = rubric_categories[i] @@ -217,9 +218,18 @@ class CombinedOpenEndedRubric(object): if tuple[1] == i and tuple[2] == j: for grader_type in tuple[3]: rubric_categories[i]['options'][j]['grader_types'].append(grader_type) + if len(actual_scores)<=i: + actual_scores.append([j]) + else: + actual_scores[i] += [j] + + actual_scores = [sum(i)/len(i) for i in actual_scores] + correct = [int(a>.66) for a in actual_scores] html = self.system.render_template('{0}/open_ended_combined_rubric.html'.format(self.TEMPLATE_DIR), {'categories': rubric_categories, + 'max_scores': max_scores, + 'correct' : correct, 'has_score': True, 'view_only': True, 'max_score': max_score, diff --git a/common/lib/xmodule/xmodule/open_ended_grading_classes/openendedchild.py b/common/lib/xmodule/xmodule/open_ended_grading_classes/openendedchild.py index 10f939b270..555505d611 100644 --- a/common/lib/xmodule/xmodule/open_ended_grading_classes/openendedchild.py +++ b/common/lib/xmodule/xmodule/open_ended_grading_classes/openendedchild.py @@ -58,7 +58,7 @@ class OpenEndedChild(object): 'assessing': 'In progress', 'post_assessment': 'Done', 'done': 'Done', - } + } def __init__(self, system, location, definition, descriptor, static_data, instance_state=None, shared_state=None, **kwargs): @@ -229,7 +229,7 @@ class OpenEndedChild(object): 'max_score': self._max_score, 'child_attempts': self.child_attempts, 'child_created': False, - } + } return json.dumps(state) def _allow_reset(self): @@ -485,4 +485,4 @@ class OpenEndedChild(object): else: eta_string = "" - return eta_string + return eta_string \ No newline at end of file diff --git a/lms/templates/combinedopenended/combined_open_ended_results.html b/lms/templates/combinedopenended/combined_open_ended_results.html index 0a03737b8f..f1e9289221 100644 --- a/lms/templates/combinedopenended/combined_open_ended_results.html +++ b/lms/templates/combinedopenended/combined_open_ended_results.html @@ -1,4 +1,4 @@
-

${task_name}

+

${task_name}

(Show) ${results | n}
diff --git a/lms/templates/combinedopenended/openended/open_ended_combined_rubric.html b/lms/templates/combinedopenended/openended/open_ended_combined_rubric.html index 61393cdc95..9ae148442f 100644 --- a/lms/templates/combinedopenended/openended/open_ended_combined_rubric.html +++ b/lms/templates/combinedopenended/openended/open_ended_combined_rubric.html @@ -7,18 +7,19 @@ <% option = category['options'][j] %>
  • - %for grader_type in category['options'][j]['grader_types']: - % if grader_type in grader_type_image_dict: - <% grader_image = grader_type_image_dict[grader_type] %> - % if grader_type in human_grader_types: - <% human_title = human_grader_types[grader_type] %> - % else: - <% human_title = grader_type %> - % endif - - % endif - %endfor - ${option['points']} points : ${option['text']} + %if len(category['options'][j]['grader_types'])>0: + %if correct[i]==1: +
  • % endfor