def _serve_student(self, request, student): """ This part of the student view is separate to allow us to render any student with this shows styling This is used for student page previews """ return render(request, self.student_template, { 'self': self, 'school': rca_utils.get_school_for_programme(student.programme, year=self.year), 'programme': student.programme, 'student': student, })
def serve_programme(self, request, programme, school=None): # Check that the programme exists if not self.contains_programme(programme): raise Http404("Programme doesn't exist") # Get programme intro try: intro = self.programme_intros.get(programme=programme).intro except ShowIndexProgrammeIntro.DoesNotExist: intro = '' # Render response return render(request, self.programme_template, { 'self': self, 'school': rca_utils.get_school_for_programme(programme, year=self.year), 'programme': programme, 'intro': intro, })
def serve_programme(self, request, programme, school=None): # Check that the programme exists if not self.contains_programme(programme): raise Http404("Programme doesn't exist") # Get programme intro try: intro = self.programme_intros.get(programme=programme).intro except ShowIndexProgrammeIntro.DoesNotExist: intro = '' # Pagination page = request.GET.get('page') paginator = Paginator(self.get_students( programme=programme ), 6) try: students = paginator.page(page) except PageNotAnInteger: students = paginator.page(1) except EmptyPage: students = paginator.page(paginator.num_pages) # Get template if request.is_ajax() and 'pjax' not in request.GET: template = 'rca_show/includes/modules/gallery.html' else: template = self.programme_template # Render response return render(request, template, { 'self': self, 'school': rca_utils.get_school_for_programme(programme, year=self.year), 'programme': programme, 'intro': intro, 'students': students })
def school(self): return rca_utils.get_school_for_programme(self.programme)
def get_school_for_programme(programme): return rca_utils.get_school_for_programme(programme)