summaryrefslogtreecommitdiffstats
path: root/hyperkitty/api.py
diff options
context:
space:
mode:
authorAurélien Bompard <aurelien@bompard.org>2013-08-14 18:11:22 +0200
committerAurélien Bompard <aurelien@bompard.org>2013-08-15 11:11:22 +0000
commit4c1c013620909a0f3490d1a6582924a567dea455 (patch)
tree1581980de0ed6e9ae238e4580bab3cd035b7ef23 /hyperkitty/api.py
parent6103bcf05feeddace63fcc5857665d3762e25c8b (diff)
downloadhyperkitty-4c1c013620909a0f3490d1a6582924a567dea455.tar.gz
hyperkitty-4c1c013620909a0f3490d1a6582924a567dea455.tar.xz
hyperkitty-4c1c013620909a0f3490d1a6582924a567dea455.zip
Add likes and dislikes to the REST API
Diffstat (limited to 'hyperkitty/api.py')
-rw-r--r--hyperkitty/api.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/hyperkitty/api.py b/hyperkitty/api.py
index 9481340..c53ff15 100644
--- a/hyperkitty/api.py
+++ b/hyperkitty/api.py
@@ -24,6 +24,7 @@ from rest_framework.exceptions import ParseError
from hyperkitty.models import Tag
from hyperkitty.lib import get_store
+from hyperkitty.lib.voting import get_votes
class ListSerializer(serializers.Serializer):
@@ -40,6 +41,8 @@ class EmailSerializer(serializers.Serializer):
subject = serializers.CharField()
in_reply_to = serializers.CharField()
date = serializers.DateTimeField()
+ likes = serializers.IntegerField()
+ dislikes = serializers.IntegerField()
class EmailLinkSerializer(serializers.Serializer):
list_name = serializers.EmailField()
@@ -83,10 +86,11 @@ class EmailResource(APIView):
def get(self, request, mlist_fqdn, messageid):
store = get_store(request)
- email = store.get_message_by_id_from_list(mlist_fqdn, messageid)
+ email = store.get_message_by_hash_from_list(mlist_fqdn, messageid)
if not email:
return Response(status=404)
else:
+ email.likes, email.dislikes, _ignore = get_votes(email.message_id_hash)
return Response(EmailSerializer(email).data)