diff options
| author | Maksim A. Boyko <maksim.a.boyko@gmail.com> | 2012-08-25 16:50:28 -0400 |
|---|---|---|
| committer | Maksim A. Boyko <maksim.a.boyko@gmail.com> | 2012-08-25 16:50:28 -0400 |
| commit | 6105c46a6221afdd2cc1539e2729039a5318d411 (patch) | |
| tree | 77aa004dd0c3e6abc3d3469320acdfcda7bac5ae /backend/views.py | |
| parent | 6d7dc2b1a9075efabdde75874f7a550f48f6fe14 (diff) | |
Backend: Add api_video_like view
Diffstat (limited to 'backend/views.py')
| -rw-r--r-- | backend/views.py | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/backend/views.py b/backend/views.py index 04d556d..0d50287 100644 --- a/backend/views.py +++ b/backend/views.py @@ -869,7 +869,7 @@ def api_video_view(request): @require_POST def api_video_like(request): - """ Private API + """ Like video. Private API """ user = request.user if not user.is_authenticated(): @@ -879,7 +879,21 @@ def api_video_like(request): response = check_form_fields(request, form_fields) if response: return response - return HttpResponse('Not implemented yet!\n') + try: + video = SJContent.objects.get(id=request.POST['video'], content_type='video') + settings = video.settings + if 'likes' not in settings: + settings['likes'] = 0 + settings['likes'] += 1 + video.settings = settings + video.save() + autor_profile = video.user.get_profile() + autor_profile.score += 1 + autor_profile.save() + like = SJLike.objects.create(user=user, datetime=datetime.now(), content=video) + except: + return response_error('NO VIDEO') + return response_success('LIKED\t%s' % request.POST['video']) @require_POST def api_video_unlike(request): |
