aboutsummaryrefslogtreecommitdiffstats
path: root/piccast/feeds/views.py
diff options
context:
space:
mode:
Diffstat (limited to 'piccast/feeds/views.py')
-rw-r--r--piccast/feeds/views.py35
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")
+