def _get_readonly_review_1_4(handler, unit, review_content): return create_readonly_assessment_params( courses.Course(handler).get_review_content(unit), student_work.StudentWorkUtils.get_answer_list(review_content))
def get_edit_assignment(self): """Shows interface for selecting and viewing a student assignment.""" if not AssignmentsRights.can_view(self): self.error(401) return course = courses.Course(self) peer_reviewed_units = course.get_peer_reviewed_units() template_values = {} template_values['page_title'] = self.format_title('Peer Review') template_values['page_description'] = ( messages.ASSIGNMENTS_MENU_DESCRIPTION) unit_id = self.request.get('unit_id') if not unit_id: # No unit has been set yet, so display an empty form. template_values['main_content'] = self.get_assignment_html( peer_reviewed_units) self.render_page(template_values) return reviewee_id = self.request.get('reviewee_id') # This field may be populated due to a redirect from a POST method. post_error_msg = self.request.get('post_error_msg') request_params, error_msg = self.parse_request( course, unit_id, reviewee_id) unit = request_params.get('unit') reviewee = request_params.get('reviewee') if error_msg: template_values['main_content'] = self.get_assignment_html( peer_reviewed_units, unit_id=unit_id, reviewee_id=reviewee_id, error_msg=error_msg) self.render_page(template_values) return # Render content. assessment_content = course.get_assessment_content(unit) rp = course.get_reviews_processor() submission_and_review_steps = rp.get_submission_and_review_steps( unit.unit_id, reviewee.get_key()) if not submission_and_review_steps: template_values['main_content'] = self.get_assignment_html( peer_reviewed_units, unit_id=unit_id, reviewee_id=reviewee_id, error_msg='412: This student hasn\'t submitted the assignment.' ) self.render_page(template_values) return submission_contents = submission_and_review_steps[0] answer_list = student_work.StudentWorkUtils.get_answer_list( submission_contents) readonly_assessment = create_readonly_assessment_params( assessment_content, answer_list ) review_form = course.get_review_form_content(unit) review_steps = submission_and_review_steps[1] reviews = rp.get_reviews_by_keys( unit.unit_id, [review_step.review_key for review_step in review_steps], handle_empty_keys=True) reviews_params = [] reviewers = [] for idx, review_step in enumerate(review_steps): params = create_readonly_assessment_params( review_form, student_work.StudentWorkUtils.get_answer_list(reviews[idx]) ) reviews_params.append(params) reviewer = models.Student.get_student_by_user_id( review_step.reviewer_key.name()).key().name() reviewers.append(reviewer) assert len(reviewers) == len(review_steps) assert len(reviews_params) == len(review_steps) template_values['main_content'] = self.get_assignment_html( peer_reviewed_units, unit_id=unit_id, reviewee_id=reviewee_id, readonly_assessment=readonly_assessment, review_steps=review_steps, error_msg=post_error_msg, reviewers=reviewers, reviews_params=reviews_params) self.render_page(template_values)
def get_readonly_review_1_4(self, unit, review_content): return create_readonly_assessment_params( courses.Course(self).get_review_form_content(unit), student_work.StudentWorkUtils.get_answer_list(review_content))
def get_readonly_assessment_1_4(self, unit, submission_content): return create_readonly_assessment_params( courses.Course(self).get_assessment_content(unit), student_work.StudentWorkUtils.get_answer_list(submission_content))