from club.models import Club
from annoy.models import DynamicTextInsert
from pdcounter import views as pdcounter_views
-from picture.models import Picture, PictureArea
from wolnelektury.utils import is_ajax
from catalogue import constants
from catalogue import forms
def catalogue(request):
return render(request, 'catalogue/catalogue.html', {
'books': Book.objects.filter(findable=True, parent=None),
- 'pictures': Picture.objects.all(),
'collections': Collection.objects.filter(listed=True),
'active_menu_item': 'all_works',
})
return qs
-class ArtList(ObjectListView):
- template_name = 'catalogue/book_list.html'
- dynamic_template_name = 'catalogue/dynamic_book_list.html'
- title = gettext_lazy('Sztuka')
- list_type = 'gallery'
-
- def get_queryset(self):
- return Picture.objects.all()
-
- def search(self, qs):
- term = self.request.GET.get('search')
- if term:
- qs = qs.filter(Q(title__icontains=term) | Q(tag_relations__tag__name_pl__icontains=term)).distinct()
- return qs
-
-
class LiteratureView(BookList):
def get_suggested_tags(self, queryset):
tags = list(get_top_level_related_tags([]))
return Book.objects.filter(findable=True, media__type='mp3').distinct()
-class GalleryView(ArtList):
- def get_suggested_tags(self, queryset):
- return Tag.objects.usage_for_queryset(
- queryset,
- counts=True
- ).exclude(pk__in=[t.id for t in self.ctx['tags']]).order_by('-count')
-
-
class TaggedObjectList(BookList):
def analyse(self):
super().analyse()
'book': book,
'extra_info': book.get_extra_info_json(),
'book_text': book_text,
- 'inserts': DynamicTextInsert.get_all(request)
+ 'inserts': DynamicTextInsert.get_all(request),
+
+ 'club': Club.objects.first(),
+ 'donation_form': DonationStep1Form(),
})