diff options
Diffstat (limited to 'piccast/feeds/views.py')
-rw-r--r-- | piccast/feeds/views.py | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/piccast/feeds/views.py b/piccast/feeds/views.py new file mode 100644 index 0000000..4a80144 --- /dev/null +++ b/piccast/feeds/views.py @@ -0,0 +1,35 @@ +from django.http import HttpResponse +from django.core import serializers +from models import * + +JSONSerializer = serializers.get_serializer("json") + +def newest_feeds(request): + feeds = PicFeed.objects.order_by('-created')[:20] + json_serializer = JSONSerializer() + json_serializer.serialize(feeds) + return HttpResponse(json_serializer.getvalue(), mimetype="application/json") + +def sets_by_feed(request, req_feed): + # TODO: validate req_feed + sets = PicSet.objects.filter(feed=req_feed) + json_serializer = JSONSerializer() + json_serializer.serialize(sets) + return HttpResponse(json_serializer.getvalue(), mimetype="application/json") + +def sets_by_feedslug(request, req_feedslug): + # TODO: validate req_feedslug + feed = PicFeed.objects.filter(shortname=req_feedslug) + sets = PicSet.objects.filter(feed=feed) + json_serializer = JSONSerializer() + json_serializer.serialize(sets) + return HttpResponse(json_serializer.getvalue(), mimetype="application/json") + + +def pics_by_set(request, req_picset): + # TODO: validate req_picset + pics = Pic.objects.filter(set=req_picset) + json_serializer = JSONSerializer() + json_serializer.serialize(pics) + return HttpResponse(json_serializer.getvalue(), mimetype="application/json") + |