Commit c2ce66a7 by Stephen Sanchez Committed by Brian Talbot

Adding self evaluations to the grading UI

parent fdb76dbf
...@@ -347,7 +347,7 @@ def get_assessments(submission_id): ...@@ -347,7 +347,7 @@ def get_assessments(submission_id):
""" """
try: try:
submission = Submission.objects.get(uuid=submission_id) submission = Submission.objects.get(uuid=submission_id)
return get_assessment_review(submission, "PE") return get_assessment_review(submission)
except DatabaseError: except DatabaseError:
error_message = _( error_message = _(
u"Error getting assessments for submission {}".format(submission_id) u"Error getting assessments for submission {}".format(submission_id)
......
...@@ -134,7 +134,7 @@ class AssessmentSerializer(serializers.ModelSerializer): ...@@ -134,7 +134,7 @@ class AssessmentSerializer(serializers.ModelSerializer):
) )
def get_assessment_review(submission, score_type): def get_assessment_review(submission):
"""Get all information pertaining to an assessment for review. """Get all information pertaining to an assessment for review.
Given an assessment serializer, return a serializable formatted model of Given an assessment serializer, return a serializable formatted model of
...@@ -144,8 +144,6 @@ def get_assessment_review(submission, score_type): ...@@ -144,8 +144,6 @@ def get_assessment_review(submission, score_type):
Args: Args:
submission (Submission): The Submission Model object to get submission (Submission): The Submission Model object to get
assessment reviews for. assessment reviews for.
score_type (str): The score type we want to get assessments back for
to review.
Returns: Returns:
(list): A list of assessment reviews, combining assessments with (list): A list of assessment reviews, combining assessments with
...@@ -188,9 +186,7 @@ def get_assessment_review(submission, score_type): ...@@ -188,9 +186,7 @@ def get_assessment_review(submission, score_type):
""" """
return [ return [
full_assessment_dict(assessment) full_assessment_dict(assessment)
for assessment in Assessment.objects.filter( for assessment in Assessment.objects.filter(submission=submission)
submission=submission, score_type=score_type
)
] ]
......
...@@ -69,6 +69,8 @@ ...@@ -69,6 +69,8 @@
{% endwith %} {% endwith %}
{% endfor %} {% endfor %}
{% for part in self_assessment.parts %}
{% if part.option.criterion.name == criterion.name %}
<li class="answer self-assessment" <li class="answer self-assessment"
id="question--{{ criterion_num }}__answer--self"> id="question--{{ criterion_num }}__answer--self">
<h5 class="answer__title"> <h5 class="answer__title">
...@@ -84,6 +86,8 @@ ...@@ -84,6 +86,8 @@
{{ part.option.explanation }} {{ part.option.explanation }}
</span> </span>
</li> </li>
{% endif %}
{% endfor %}
</ul> </ul>
</li> </li>
{% endwith %} {% endwith %}
......
...@@ -27,12 +27,20 @@ class GradeMixin(object): ...@@ -27,12 +27,20 @@ class GradeMixin(object):
) )
student_score = workflow["score"] student_score = workflow["score"]
assessments = peer_api.get_assessments(student_submission["uuid"]) assessments = peer_api.get_assessments(student_submission["uuid"])
peer_assessments = []
self_assessment = None
for assessment in assessments:
if assessment["score_type"] == "PE":
peer_assessments.append(assessment)
else:
self_assessment = assessment
median_scores = peer_api.get_assessment_median_scores( median_scores = peer_api.get_assessment_median_scores(
student_submission["uuid"], student_submission["uuid"],
assessment_ui_model["must_be_graded_by"] assessment_ui_model["must_be_graded_by"]
) )
context["student_submission"] = student_submission context["student_submission"] = student_submission
context["peer_assessments"] = assessments context["peer_assessments"] = peer_assessments
context["self_assessment"] = self_assessment
context["rubric_criteria"] = self.rubric_criteria context["rubric_criteria"] = self.rubric_criteria
context["score"] = student_score context["score"] = student_score
for criterion in context["rubric_criteria"]: for criterion in context["rubric_criteria"]:
......
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