From 01f916742c763d81401f78537af3f2b65c9de83a Mon Sep 17 00:00:00 2001 From: stef Date: Wed, 19 Oct 2011 21:51:23 +0200 Subject: [PATCH] [enh] added filters for list by country + operator --- bt/views.py | 11 ++++++++++- urls.py | 1 + 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/bt/views.py b/bt/views.py index 9971949..b3e416a 100644 --- a/bt/views.py +++ b/bt/views.py @@ -9,7 +9,7 @@ from django.core.exceptions import ObjectDoesNotExist from django.contrib import messages from django.contrib.auth.models import User from django.utils.translation import ugettext_lazy as _ -from models import Violation, Attachment, Comment, Confirmation +from models import Violation, Attachment, Comment, Confirmation, COUNTRIES from tempfile import mkstemp from datetime import datetime import hashlib, os, re, json, smtplib @@ -198,6 +198,15 @@ def index(request): 'violations': v_list }, context_instance=RequestContext(request)) +def filter_violations(request, country, operator=None): + if country not in map(itemgetter(0),COUNTRIES): + raise Http404 + if not operator: + violations = Violation.objects.filter(activationid='', country=country) + else: + violations = Violation.objects.filter(activationid='', country=country, operator=operator) + return render_to_response('list.html', {"violations": violations},context_instance=RequestContext(request)) + def list_violations(request): violations = Violation.objects.filter(activationid='') return render_to_response('list.html', {"violations": violations},context_instance=RequestContext(request)) diff --git a/urls.py b/urls.py index 0e994e0..18e28b8 100644 --- a/urls.py +++ b/urls.py @@ -11,6 +11,7 @@ admin.autodiscover() urlpatterns = patterns('', (r'^$', bt.index), (r'^list/$', bt.list_violations), + (r'^list/(?P[^/]*)(/(?P[^/]*))?$', bt.filter_violations), (r'^ajax/(?P[^/]*)(/(?P[^/]*))?$', bt.ajax), (r'^add/$', bt.add), (r'^view/(?P[0-9]*)$', bt.view), -- GitLab