def student_endpoint(self): if not is_subjectroom_student_relationship(self.focusroom.subjectRoom, self.user): raise Http404 return render(self.request, self.template, AuthenticatedVM(self.user, StudentFocusIdBody(self.user, self.focusroom)) .as_context())
def parent_focus_id_get(request, focus_id, child_id): statsd.increment('core.hits.get.parent_focus_id') focusroom = get_object_or_404(FocusRoom, pk=focus_id) child = get_object_or_404(User, pk=child_id) if not is_subjectroom_student_relationship(focusroom.subjectRoom, child): raise Http404 return ParentFocusIdGet(request, focusroom, child).handle()
def parent_subject_id_get(request, subject_id, child_id): statsd.increment('core.hits.get.parent_subject_id') subjectroom = get_object_or_404(SubjectRoom, pk=subject_id) child = get_object_or_404(User, pk=child_id) if not is_subjectroom_student_relationship(subjectroom, child): raise Http404 return ParentSubjectIdGet(request, subjectroom, child).handle()
def open_student_endpoint(self): if not is_subjectroom_student_relationship(self.subjectroom, self.user): raise Http404 return render( self.request, self.template, AuthenticatedVM( self.user, OpenStudentSubjectIdBody(self.user, self.subjectroom)).as_context())
def student_id_get(request, student_id, subjectroom_id): statsd.increment('edge.hits.get.student_id') try: student = get_object_or_404(User, pk=student_id) if student.userinfo.group != HWCentralGroup.refs.STUDENT and student.userinfo.group != HWCentralGroup.refs.OPEN_STUDENT: raise Http404 subjectroom = get_object_or_404(SubjectRoom, pk=subjectroom_id) if not is_subjectroom_student_relationship(subjectroom, student): raise Http404 except Http404, e: return Json404Response(e)
@login_required @statsd.timed('core.chart.single_subject_student') def single_subject_student_chart_get(request, student_id, subjectroom_id): statsd.increment('core.hits.chart.single_subject_student') try: student = get_object_or_404(User, pk=student_id) except Http404, e: return Json404Response(e) try: subjectroom = get_object_or_404(SubjectRoom, pk=subjectroom_id) except Http404, e: return Json404Response(e) # check if provided student belongs to the provided subjectroom if not is_subjectroom_student_relationship(subjectroom, student): return Json404Response() return SingleSubjectStudentChartGet(request, subjectroom, student).handle() @login_required @statsd.timed('core.chart.subjectroom') def subjectroom_chart_get(request, subjectroom_id): statsd.increment('core.hits.chart.subjectroom') try: subjectroom = get_object_or_404(SubjectRoom, pk=subjectroom_id) except Http404, e: return Json404Response(e) return SubjectroomChartGet(request, subjectroom).handle()