diff --git a/RIGS/rigboard.py b/RIGS/rigboard.py index 8b4ca10f..9285f7a3 100644 --- a/RIGS/rigboard.py +++ b/RIGS/rigboard.py @@ -10,10 +10,12 @@ from django.template import Context, RequestContext from django.template.loader import get_template from django.conf import settings from django.http import HttpResponse +from django.db.models import Q from z3c.rml import rml2pdf from PyPDF2 import PdfFileMerger, PdfFileReader from RIGS import models, forms +import datetime __author__ = 'ghost' @@ -113,4 +115,28 @@ class EventDuplicate(generic.RedirectView): item.event = new item.save() - return reverse_lazy('event_update', kwargs={'pk': new.pk}) \ No newline at end of file + return reverse_lazy('event_update', kwargs={'pk': new.pk}) + +class EventArchive(generic.ArchiveIndexView): + model = models.Event + date_field = "start_date" + paginate_by = 25 + + def get_queryset(self): + start = self.request.GET.get('start', None) + end = self.request.GET.get('end', datetime.date.today()) + filter = False + if end != "": + filter = Q(start_date__lte=end) + if start: + if filter: + filter = filter & Q(start_date__gte=start) + else: + filter = Q(start_date__gte=start) + + if filter: + qs = self.model.objects.filter(filter) + else: + qs = self.model.objects.all() + + return qs.select_related('person','organisation','venue','mic') \ No newline at end of file diff --git a/RIGS/templates/RIGS/event_archive.html b/RIGS/templates/RIGS/event_archive.html new file mode 100644 index 00000000..00baaad6 --- /dev/null +++ b/RIGS/templates/RIGS/event_archive.html @@ -0,0 +1,45 @@ +{% extends 'base.html' %} +{% load paginator from filters %} + +{% block title %}Event Archive{% endblock %} + +{% block content %} +