X-Git-Url: https://git.mdrn.pl/edumed.git/blobdiff_plain/e76fdcf2a2488b1787c74fe8dccfa38d7ac04c84..ef2f28d99a6ed2eb8960adde703cfb5d4cf689d8:/catalogue/views.py?ds=sidebyside diff --git a/catalogue/views.py b/catalogue/views.py index 60f00ef..4f9d78c 100644 --- a/catalogue/views.py +++ b/catalogue/views.py @@ -1 +1,35 @@ -# Create your views here. +# -*- coding: utf-8 -*- +from django.views.generic import DetailView, ListView + +from curriculum.models import Level +from publishers.models import Publisher +from .models import Lesson + + +class LessonListView(ListView): + queryset = Level.objects.exclude(lesson=None) + template_name = "catalogue/lesson_list.html" + + def get_context_data(self, **kwargs): + context = super(LessonListView, self).get_context_data(**kwargs) + context['appendix'] = Lesson.objects.filter(type='appendix') + return context + + +class LessonView(DetailView): + model = Lesson + + def get_template_names(self): + return [ + 'catalogue/lesson/%s/lesson_detail.html' % self.object.type, + 'catalogue/lesson/lesson_detail.html', + ] + + def get_context_data(self, **kwargs): + context = super(LessonView, self).get_context_data(**kwargs) + try: + context['publisher'] = Publisher.objects.get( + name=context['object'].dc.get('publisher', '').strip()) + except (Publisher.DoesNotExist, Publisher.MultipleObjectsReturned): + pass + return context