def class_summary(request): """FACULTY ONLY reporting of entire class activity """ if not request.course.is_faculty(request.user): return HttpResponseForbidden("forbidden") students = [] for stud in users_in_course(request.course).order_by('last_name','first_name','username'): stud.__dict__.update({ 'annotations':SherdNote.objects.filter(asset__course=request.course, author=stud).count(), 'all_projects':Project.get_user_projects(stud,request.course).count(), #'project_adds':stud_work.get(stud.id,[0,0])[0], #'project_deletes':stud_work.get(stud.id,[0,0])[1], 'comments':DiscussionIndex.objects.filter(participant=stud,collaboration__context=request.collaboration_context).count() }) students.append(stud) rv = { 'students': students, 'submenu':'summary', } if request.user.is_staff: rv['courses'] = Course.objects.all() return rv
def class_summary(request): collab_context = request.collaboration_context students = [] for stud in users_in_course(request.course).order_by( 'last_name', 'first_name', 'username'): stud.__dict__.update({ 'annotations': SherdNote.objects.filter(asset__course=request.course, author=stud).count(), 'all_projects': len( Project.objects.visible_by_course_and_user( request, request.course, stud, False)), # 'project_adds':stud_work.get(stud.id,[0,0])[0], # 'project_deletes':stud_work.get(stud.id,[0,0])[1], 'comments': DiscussionIndex.objects.filter( participant=stud, collaboration__context=collab_context).count() }) students.append(stud) context = { 'students': students, 'submenu': 'summary', } if request.user.is_staff: context['courses'] = Course.objects.all() return context
def class_summary(request): """FACULTY ONLY reporting of entire class activity """ if not request.course.is_faculty(request.user): return HttpResponseForbidden("forbidden") # stud_work = {} # for p in Project.objects.filter(course=request.course): # for stud_id, contribs in p.content_metrics().items(): # stud_work.setdefault(stud_id,[0,0]) # stud_work[stud_id][0] += contribs[0] # stud_work[stud_id][1] += contribs[1] students = [] for stud in users_in_course(request.course).order_by("last_name", "first_name", "username"): stud.__dict__.update( { "annotations": SherdNote.objects.filter(asset__course=request.course, author=stud).count(), "all_projects": Project.get_user_projects(stud, request.course).count(), #'project_adds':stud_work.get(stud.id,[0,0])[0], #'project_deletes':stud_work.get(stud.id,[0,0])[1], "comments": DiscussionIndex.objects.filter( participant=stud, collaboration__context=request.collaboration_context ).count(), } ) students.append(stud) rv = {"students": students, "submenu": "summary"} if request.user.is_staff: rv["courses"] = Course.objects.all() return rv
def class_listing(request): students = users_in_course(request.course).order_by('username') return { 'students': students }
def class_summary(request): collab_context = request.collaboration_context students = [] for stud in users_in_course(request.course).order_by('last_name', 'first_name', 'username'): stud.__dict__.update({ 'annotations': SherdNote.objects.filter(asset__course=request.course, author=stud).count(), 'all_projects': len(Project.objects.visible_by_course_and_user( request, request.course, stud)), # 'project_adds':stud_work.get(stud.id,[0,0])[0], # 'project_deletes':stud_work.get(stud.id,[0,0])[1], 'comments': DiscussionIndex.objects.filter( participant=stud, collaboration__context=collab_context).count() }) students.append(stud) rv = {'students': students, 'submenu': 'summary', } if request.user.is_staff: rv['courses'] = Course.objects.all() return rv
def class_summary(request): """FACULTY ONLY reporting of entire class activity """ if not request.course.is_faculty(request.user): return HttpResponseForbidden("forbidden") students = [] for stud in users_in_course(request.course).order_by( 'last_name', 'first_name', 'username'): stud.__dict__.update({ 'annotations': SherdNote.objects.filter(asset__course=request.course, author=stud).count(), 'all_projects': Project.get_user_projects(stud, request.course).count(), #'project_adds':stud_work.get(stud.id,[0,0])[0], #'project_deletes':stud_work.get(stud.id,[0,0])[1], 'comments': DiscussionIndex.objects.filter( participant=stud, collaboration__context=request.collaboration_context).count() }) students.append(stud) rv = { 'students': students, 'submenu': 'summary', } if request.user.is_staff: rv['courses'] = Course.objects.all() return rv
def class_assignments(request): if not request.course.is_faculty(request.user): return HttpResponseForbidden("forbidden") project_type = ContentType.objects.get_for_model(Project) assignments = [] maybe_assignments = Project.objects.filter(request.course.faculty_filter) for assignment in maybe_assignments: if is_assignment(assignment, request): assignments.append(assignment) num_students = users_in_course(request.course).count() return {"assignments": assignments, "num_students": num_students, "submenu": "assignments"}
def class_assignments(request): assignments = [] maybe_assignments = Project.objects.filter( request.course.faculty_filter) for assignment in maybe_assignments: if assignment.is_assignment(request): assignments.append(assignment) num_students = users_in_course(request.course).count() return {'assignments': sorted(assignments, key=lambda assignment: assignment.title), 'num_students': num_students, 'submenu': 'assignments', }
def class_assignments(request): assignments = [] maybe_assignments = Project.objects.filter(request.course.faculty_filter) for assignment in maybe_assignments: if assignment.is_assignment(request): assignments.append(assignment) num_students = users_in_course(request.course).count() return { 'assignments': sorted(assignments, key=lambda assignment: assignment.title), 'num_students': num_students, 'submenu': 'assignments', }
def class_assignments(request): if not request.course.is_faculty(request.user): return HttpResponseForbidden("forbidden") project_type = ContentType.objects.get_for_model(Project) assignments = [] maybe_assignments = Project.objects.filter(request.course.faculty_filter) for assignment in maybe_assignments: if is_assignment(assignment, request): assignments.append(assignment) num_students = users_in_course(request.course).count() return { 'assignments': assignments, 'num_students': num_students, 'submenu': 'assignments', }
def class_assignments(request): if not request.course.is_faculty(request.user): return HttpResponseForbidden("forbidden") project_type = ContentType.objects.get_for_model(Project) assignments = [] maybe_assignments = Project.objects.filter( request.course.faculty_filter) for assignment in maybe_assignments: if is_assignment(assignment, request): assignments.append(assignment) num_students = users_in_course(request.course).count() return { 'assignments': sorted(assignments, key=lambda assignment: assignment.title), 'num_students': num_students, 'submenu':'assignments', }
def class_summary(request): collab_context = request.collaboration_context students = [] for student in users_in_course(request.course).order_by( 'last_name', 'first_name', 'username'): student.__dict__.update({ 'annotations': SherdNote.objects.filter(asset__course=request.course, author=student).count(), 'all_projects': len( Project.objects.visible_by_course_and_user( request.course, request.user, student, False)), 'comments': DiscussionIndex.objects.filter( participant=student, collaboration__context=collab_context).count() }) students.append(student) context = {'students': students} return context
def get_context_data(self, **kwargs): collab = Collaboration.objects.get_for_object(self.request.course) students = [] qs = users_in_course(self.request.course).order_by( 'last_name', 'first_name', 'username') for student in qs: student.__dict__.update({ 'annotations': SherdNote.objects.filter(asset__course=self.request.course, author=student).count(), 'all_projects': len( Project.objects.visible_by_course_and_user( self.request.course, self.request.user, student, False)), 'comments': DiscussionIndex.objects.filter( participant=student, collaboration__context=collab).count() }) students.append(student) context = {'students': students} return context
def class_summary(request): collab_context = request.collaboration_context students = [] for student in users_in_course(request.course).order_by('last_name', 'first_name', 'username'): student.__dict__.update({ 'annotations': SherdNote.objects.filter(asset__course=request.course, author=student).count(), 'all_projects': len(Project.objects.visible_by_course_and_user( request.course, request.user, student, False)), 'comments': DiscussionIndex.objects.filter( participant=student, collaboration__context=collab_context).count() }) students.append(student) context = {'students': students} return context
def test_users_in_course(self): self.assertIn(self.student, users_in_course(self.c))
def test_users_in_course(self): assert self.student in users_in_course(self.c)
def class_listing(request): students = users_in_course(request.course).order_by('username') return {'students': students}