X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/907aba88951334676a259dccc8f7edd8934d5e00..edf01dc493de62acf2abf93acfcc023a0877439f:/src/wolnelektury/views.py?ds=sidebyside diff --git a/src/wolnelektury/views.py b/src/wolnelektury/views.py index 1c0f40cd3..5e56f5906 100644 --- a/src/wolnelektury/views.py +++ b/src/wolnelektury/views.py @@ -46,20 +46,21 @@ def main_page(request): break break - # Choose a collection for main. - try: - ctx['collection'] = Collection.objects.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 - for recommended in Collection.objects.filter(role='recommend').order_by('?'): + 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(