示例#1
0
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
示例#2
0
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
示例#3
0
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
示例#4
0
def class_listing(request):
    
    students = users_in_course(request.course).order_by('username')
    
    return {
        'students': students
        }
示例#5
0
文件: views.py 项目: 6C1/mediathread
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
示例#6
0
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
示例#7
0
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"}
示例#8
0
文件: views.py 项目: 6C1/mediathread
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', }
示例#9
0
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',
    }
示例#10
0
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',
    }
示例#11
0
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',
        }
示例#12
0
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
示例#13
0
    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
示例#14
0
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
示例#15
0
 def test_users_in_course(self):
     self.assertIn(self.student, users_in_course(self.c))
示例#16
0
 def test_users_in_course(self):
     assert self.student in users_in_course(self.c)
示例#17
0
def class_listing(request):

    students = users_in_course(request.course).order_by('username')

    return {'students': students}