From 9cca3072c3211e34233be599feb17244c096115d Mon Sep 17 00:00:00 2001 From: Vik Paruchuri Date: Tue, 9 Apr 2013 13:53:51 -0400 Subject: [PATCH] Fix skip behavior for staff --- .../open_ended_grading/staff_grading_service.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/lms/djangoapps/open_ended_grading/staff_grading_service.py b/lms/djangoapps/open_ended_grading/staff_grading_service.py index 57bfd7df42..885f6bbfa1 100644 --- a/lms/djangoapps/open_ended_grading/staff_grading_service.py +++ b/lms/djangoapps/open_ended_grading/staff_grading_service.py @@ -310,19 +310,22 @@ def save_grade(request, course_id): if request.method != 'POST': raise Http404 - - required = set(['score', 'feedback', 'submission_id', 'location', 'submission_flagged', 'rubric_scores[]']) - actual = set(request.POST.keys()) + p = request.POST + required = set(['score', 'feedback', 'submission_id', 'location', 'submission_flagged']) + skipped = 'skipped' in p + if not skipped: + required|=set(['rubric_scores[]']) + actual = set(p.keys()) missing = required - actual if len(missing) > 0: return _err_response('Missing required keys {0}'.format( ', '.join(missing))) grader_id = unique_id_for_user(request.user) - p = request.POST + location = p['location'] - skipped = 'skipped' in p + try: result_json = staff_grading_service().save_grade(course_id,