X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/a94e848fd865f0a887850e4858dab64c426b10db..eaba19e725b49fdf4efc858604a7b9d70d27f59f:/src/references/views.py diff --git a/src/references/views.py b/src/references/views.py index b98d181f1..a098c1abf 100644 --- a/src/references/views.py +++ b/src/references/views.py @@ -1,9 +1,36 @@ -from django.shortcuts import render +from django.http import Http404 +from django.shortcuts import render, get_object_or_404 +from django.views.decorators.cache import never_cache +from catalogue.models import Book +from catalogue.views import analyse_tags from . import models -def map(request): +def pin_map(request): return render(request, 'references/map.html', { 'entities': models.Entity.objects.exclude(lat=None).exclude(lon=None), + 'funding_no_show_current': True, }) - + +def pin_map_tagged(request, tags): + try: + tags = analyse_tags(request, tags) + except: + raise #Http404() + + books = Book.tagged.with_all(tags) + + return render(request, 'references/map.html', { + 'entities': models.Entity.objects.exclude(lat=None).exclude(lon=None).filter(reference__book__in=books).distinct(), + 'funding_no_show_current': True, + }) + + + +@never_cache +def popup(request, pk): + e = get_object_or_404(models.Entity, pk=pk) + return render(request, 'references/popup.html', { + 'entity': e, + }) +