X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/251b72488d27f769ed0574f39a91f5d2da3d27a6..ba83b8311a93602de7f733c9a9e183e3ebbb006c:/src/wolnelektury/views.py diff --git a/src/wolnelektury/views.py b/src/wolnelektury/views.py index 48063d29b..61c55c40e 100644 --- a/src/wolnelektury/views.py +++ b/src/wolnelektury/views.py @@ -13,7 +13,7 @@ from django.core.cache import cache from django.http import HttpResponse, HttpResponseRedirect from django.shortcuts import render from django.utils.http import urlquote_plus -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ from django.views.decorators.cache import never_cache from ajaxable.utils import AjaxableFormView @@ -46,20 +46,21 @@ def main_page(request): break break - # Choose a collection for main. - try: - ctx['collection'] = Collection.objects.filter(listed=True).order_by('?')[:1][0] - except IndexError: - pass + # Choose collections for main. + ctx['collections'] = Collection.objects.filter(listed=True).order_by('?')[:4] best = [] best_places = 5 + recommended_collection = None for recommended in Collection.objects.filter(listed=True, role='recommend').order_by('?'): + if recommended_collection is None: + recommended_collection = recommended books = list(recommended.get_books().exclude(id__in=[b.id for b in best]).order_by('?')[:best_places]) best.extend(books) best_places -= len(books) if not best_places: break + ctx['recommended_collection'] = recommended_collection if best_places: best.extend( list(