def add_constituency(request): my_constituencies = request.user.current_constituencies.all() if len(my_constituencies) > 0: neighbours = Constituency.neighbours(my_constituencies[0]) neighbours = neighbours.exclude(pk__in=my_constituencies) else: neighbours = [] context = { 'my_constituencies': my_constituencies, 'constituencies': list(neighbours) } # searching for a constituency by postcode or placename if request.method == "GET": if request.GET.has_key("q"): place = request.GET["q"] context['constituencies'] = Constituency.objects.filter( name__icontains=place) const = geo.constituency(place) if const != None: context['constituencies'] = Constituency.objects.filter( name=const) | context['constituencies'] if context['constituencies'].count() == 0: context['search_fail'] = "Alas, we can't find '%s'" % place # adding another constituency if request.method == "POST": if request.POST.has_key('add') and request.POST.has_key('add_c'): add_c = request.POST.getlist('add_c') if type(add_c) != types.ListType: add_c = [add_c] constituencies = Constituency.objects.all().filter(slug__in=add_c) constituencies = constituencies.exclude(pk__in=my_constituencies) request.user.constituencies.add(*constituencies.all()) request.user.save() return HttpResponseRedirect("/add_constituency/") return render_with_context(request, 'add_constituency.html', context)
def add_constituency(request): my_constituencies = request.user.current_constituencies.all() if len(my_constituencies) > 0: neighbours = Constituency.neighbours(my_constituencies[0]) neighbours = neighbours.exclude(pk__in=my_constituencies) else: neighbours = [] context = {'my_constituencies': my_constituencies, 'constituencies': list(neighbours)} # searching for a constituency by postcode or placename if request.method == "GET": if request.GET.has_key("q"): place = request.GET["q"] context['constituencies'] = Constituency.objects.filter(name__icontains=place) const = geo.constituency(place) if const != None: context['constituencies'] = Constituency.objects.filter(name=const) | context['constituencies'] if context['constituencies'].count() == 0: context['search_fail'] = "Alas, we can't find '%s'" % place # adding another constituency if request.method == "POST": if request.POST.has_key('add') and request.POST.has_key('add_c'): add_c = request.POST.getlist('add_c') if type(add_c) != types.ListType: add_c = [add_c] constituencies = Constituency.objects.all().filter(slug__in=add_c) constituencies = constituencies.exclude(pk__in=my_constituencies) request.user.constituencies.add(*constituencies.all()) request.user.save() return HttpResponseRedirect("/add_constituency/") return render_with_context(request, 'add_constituency.html', context)