diff --git a/src/c3nav/editor/templates/editor/map.html b/src/c3nav/editor/templates/editor/map.html
index 295eaed3..02d5121b 100644
--- a/src/c3nav/editor/templates/editor/map.html
+++ b/src/c3nav/editor/templates/editor/map.html
@@ -8,9 +8,7 @@
{% endblock %}
diff --git a/src/c3nav/editor/urls.py b/src/c3nav/editor/urls.py
index 27290af7..8de80ab9 100644
--- a/src/c3nav/editor/urls.py
+++ b/src/c3nav/editor/urls.py
@@ -1,8 +1,7 @@
from django.conf.urls import url
+from django.views.generic import TemplateView
-from . import views
urlpatterns = [
- url(r'^$', views.index, name='editor.index'),
- url(r'^sources/image/(?P[^/]+)$', views.source, name='editor.sources.image'),
+ url(r'^$', TemplateView.as_view(template_name='editor/map.html'), name='editor.index')
]
diff --git a/src/c3nav/editor/views.py b/src/c3nav/editor/views.py
deleted file mode 100644
index 1f6acbcc..00000000
--- a/src/c3nav/editor/views.py
+++ /dev/null
@@ -1,27 +0,0 @@
-import json
-import mimetypes
-import os
-
-from django.conf import settings
-from django.core.files import File
-from django.http import HttpResponse
-from django.shortcuts import get_object_or_404, render
-
-from ..mapdata.models import Level, Package, Source
-
-
-def index(request):
- return render(request, 'editor/map.html', {
- 'bounds': json.dumps(Source.max_bounds()),
- 'sources': [p.sources.all().order_by('name') for p in Package.objects.all()],
- 'levels': Level.objects.order_by('altitude'),
- })
-
-
-def source(request, source):
- source = get_object_or_404(Source, name=source)
- response = HttpResponse(content_type=mimetypes.guess_type(source.name)[0])
- image_path = os.path.join(settings.MAP_ROOT, source.package.directory, 'sources', source.name)
- for chunk in File(open(image_path, 'rb')).chunks():
- response.write(chunk)
- return response