from datetime import datetime from django.core.paginator import Paginator, InvalidPage, EmptyPage from django.template.context import RequestContext from django.views.generic import list_detail from django.shortcuts import render_to_response, get_object_or_404 from directory.models import * def index(request): towns = Town.objects.filter(in_coverage=True) places = Place.objects.all()[:5] return render_to_response( "directory/index.html", locals(), context_instance=RequestContext(request) ) def people(request): people = Person.objects.all()[:10] return render_to_response( "directory/people.html", locals(), context_instance=RequestContext(request) ) def person_detail(request, slug): person = get_object_or_404(Person, slug=slug) return render_to_response( "directory/person_detail.html", locals(), context_instance=RequestContext(request), ) def place_detail(request, slug): place = get_object_or_404(Place, slug=slug) return render_to_response( "directory/place_detail.html", locals(), context_instance=RequestContext(request), ) def town_index(request): towns = Town.objects.filter(in_coverage=True) return render_to_response( "directory/town_index.html", locals(), context_instance=RequestContext(request) ) def town_detail(request, slug): town = get_object_or_404(Town, slug=slug) return render_to_response( "directory/town_detail.html", locals(), context_instance=RequestContext(request) ) def town_info(request, slug): tinfo = get_object_or_404(TownInfo, town__slug=slug) area_miles = round((tinfo.total_area * 0.0015625), 2) return render_to_response( "directory/town_info.html", locals(), context_instance=RequestContext(request) ) def school_index(request): schools = School.objects.all() return render_to_response( "directory/school_index.html", locals(), context_instance=RequestContext(request), ) def school_detail(request, slug): school = get_object_or_404(School, slug=slug) return render_to_response( "directory/school_detail.html", locals(), context_instance=RequestContext(request), ) def phonebook_index(request): towns = Town.objects.filter(in_coverage=True) entry_list = PhoneBookEntry.objects.all().order_by("entry") paginator = Paginator(entry_list, 100) try: page = int(request.GET.get("page", "1")) except ValueError: page = 1 try: entries = paginator.page(page) except (EmptyPage, InvalidPage): entries = paginator.page(paginator.num_pages) return render_to_response( "directory/phonebook_index.html", locals(), context_instance=RequestContext(request), ) def phonebook_town(request, town_slug): towns = Town.objects.filter(in_coverage=True) town = get_object_or_404(Town, slug=town_slug) entries = PhoneBookEntry.objects.filter(town=town).order_by("entry") return render_to_response( "directory/phonebook_town.html", locals(), context_instance=RequestContext(request), )