41 lines
1,002 B
Python
41 lines
1,002 B
Python
# Create your views here.
|
|
from django.shortcuts import render_to_response
|
|
from django.shortcuts import get_object_or_404
|
|
from oxdjango.shortcuts import render_to_json_response
|
|
from models import *
|
|
|
|
def geojson(request):
|
|
features = []
|
|
for f in Flyover.objects.all():
|
|
features.append(f.geojson_as_dict())
|
|
d = {
|
|
"type": "FeatureCollection",
|
|
"features": features
|
|
}
|
|
return render_to_json_response(d)
|
|
|
|
def index(request):
|
|
return render_to_response('flyovers.html', {})
|
|
|
|
def flyover(request):
|
|
i = request.GET['id']
|
|
f = get_object_or_404(Flyover, pk=i)
|
|
d = {
|
|
'name': f.name,
|
|
'media': f.get_media()
|
|
}
|
|
return render_to_json_response(d)
|
|
|
|
def category(request):
|
|
cat_id = request.GET['id']
|
|
cat_type = request.GET['type']
|
|
cat_map = {
|
|
'image': ImageCategory,
|
|
'video': VideoCategory,
|
|
'audio': AudioCategory,
|
|
'text': TextCategory
|
|
}
|
|
klass = cat_map[cat_type]
|
|
cat = klass.objects.get(pk=cat_id)
|
|
return render_to_json_response(cat.get_dict())
|
|
|