def view_progress(request, course): """ View progress page of current user """ mode = get_mode(request) if mode is not False: if mode == 'S': return render(request, 'progress/student_progress.html', {'courseId': course}) elif mode == 'I': return render(request, 'progress/course_progress.html', {'courseId': course}) return Response("Bad request", status.HTTP_400_BAD_REQUEST)
def mycourselist(request): """ Obselete. Purpose not clear Serves the enrolled course list for a student """ mode = get_mode(request) if mode == 'I': return instructor_courses(request) elif mode == 'C': return content_developer_courses(request) #elif mode == 'S': # return student_courses(request) #return HttpResponse("Forbidden", status.HTTP_403_FORBIDDEN) else: return student_courses(request)
def course(request, pk=None, ref=None): """Serves a course main page""" _course = get_object_or_404(Course, pk=pk) context = {"request": request, "course": _course} if ref is not None and len(ref) > 0: context["ref"] = ref else: context["ref"] = "-1" mode = get_mode(request) history = CourseHistory.objects.filter(user=request.user, course=_course, active='A') if mode == 'I' or mode == 'C': if len(history) > 0: if history[0].is_owner: return render(request, "content_developer/course.html", context) return render(request, "student/course.html", context) #elif mode == 'S': else: if len(history) > 0: return render(request, "student/course.html", context) course_data = CourseSerializer(_course).data if course_data['course_info']['start_time']: s_date = course_data['course_info']['start_time'].strftime( '%d %b,%Y') course_data['course_info']['start_time'] = s_date if course_data['course_info']['end_time']: e_date = course_data['course_info']['end_time'].strftime( '%d %b,%Y') course_data['course_info']['end_time'] = e_date if course_data['course_info']['end_enrollment_date']: end_e_date = course_data['course_info'][ 'end_enrollment_date'].strftime('%d %b,%Y') course_data['course_info']['end_enrollment_date'] = end_e_date context = { "request": request, "title": course_data['title'], "course": json.dumps(course_data), "course_info": json.dumps(course_data['course_info']) } return render(request, "course/public_course_info.html", context) return HttpResponse("Forbidden", status.HTTP_403_FORBIDDEN)
def course(request, pk=None, ref=None): """Serves a course main page""" _course = get_object_or_404(Course, pk=pk) context = {"request": request, "course": _course} if ref is not None and len(ref) > 0: context["ref"] = ref else: context["ref"] = "-1" mode = get_mode(request) history = CourseHistory.objects.filter(user=request.user, course=_course, active='A') if mode == 'I' or mode == 'C': if len(history) > 0: if history[0].is_owner: return render(request, "content_developer/course.html", context) return render(request, "student/course.html", context) #elif mode == 'S': else: if len(history) > 0: return render(request, "student/course.html", context) course_data = CourseSerializer(_course).data if course_data['course_info']['start_time']: s_date = course_data['course_info']['start_time'].strftime('%d %b,%Y') course_data['course_info']['start_time'] = s_date if course_data['course_info']['end_time']: e_date = course_data['course_info']['end_time'].strftime('%d %b,%Y') course_data['course_info']['end_time'] = e_date if course_data['course_info']['end_enrollment_date']: end_e_date = course_data['course_info']['end_enrollment_date'].strftime('%d %b,%Y') course_data['course_info']['end_enrollment_date'] = end_e_date context = { "request": request, "title": course_data['title'], "course": json.dumps(course_data), "course_info": json.dumps(course_data['course_info']) } return render(request, "course/public_course_info.html", context) return HttpResponse("Forbidden", status.HTTP_403_FORBIDDEN)
def list(self, request): """ List all the courses for q queryset """ mode = get_mode(request) queryset = Course.objects.all() category = self.request.QUERY_PARAMS.get('category', None) if category is not None: queryset = queryset.filter(category__id=category) if mode == 'I': queryset = queryset.filter(type='T') elif mode == 'C': queryset = queryset.filter() else: queryset = queryset.filter(type='O', course_info__is_published=True) serializer = CourseSerializer(queryset) response = { "count": len(serializer.data), "next": "null", "previous": "null", "results": serializer.data } return Response(response)
def list(self, request): """ List all the courses for q queryset """ mode = get_mode(request) queryset = Course.objects.all() category = self.request.QUERY_PARAMS.get('category', None) if category is not None: queryset = queryset.filter(category__id=category) if mode == 'I': queryset = queryset.filter(type='T') elif mode == 'C': queryset = queryset.filter() else: queryset = queryset.filter( type='O', course_info__is_published=True) serializer = CourseSerializer(queryset) response = { "count": len(serializer.data), "next": "null", "previous": "null", "results": serializer.data } return Response(response)