diff --git a/django_website/urls/www.py b/django_website/urls/www.py index e095d2b58..4cd464040 100644 --- a/django_website/urls/www.py +++ b/django_website/urls/www.py @@ -26,6 +26,9 @@ 'flatpages': FlatPageSitemap, } +handler500 = 'django_website.views.server_error' + + urlpatterns = patterns('', url(r'^$', 'django.views.generic.simple.direct_to_template', {'template': 'homepage.html'}, name="homepage"), url(r'^accounts/', include('django_website.accounts.urls')), diff --git a/django_website/views.py b/django_website/views.py index 7741fe7c1..dbbed1c90 100644 --- a/django_website/views.py +++ b/django_website/views.py @@ -5,10 +5,12 @@ from django.contrib.comments.models import Comment from django.contrib.sitemaps import views as sitemap_views +from django.shortcuts import render from django.views.decorators.cache import cache_page -from django.views.decorators.csrf import csrf_exempt +from django.views.decorators.csrf import csrf_exempt, requires_csrf_token from django.views.generic import list_detail from django.views.generic.simple import direct_to_template + from .sitemaps import FlatPageSitemap, WeblogSitemap def homepage(request): @@ -30,4 +32,12 @@ def comments(request): @csrf_exempt def donate_thanks(request): - return direct_to_template(request, 'donate_thanks.html') \ No newline at end of file + return direct_to_template(request, 'donate_thanks.html') + + +@requires_csrf_token +def server_error(request, template_name='500.html'): + """ + Custom 500 error handler for static stuff. + """ + return render(request, template_name)