diff options
| author | Maksim A. Boyko <maksim.a.boyko@gmail.com> | 2012-08-25 17:42:10 -0400 |
|---|---|---|
| committer | Maksim A. Boyko <maksim.a.boyko@gmail.com> | 2012-08-25 17:42:10 -0400 |
| commit | 8b07b7578f4d75da972ac69705a84a298f0b4f85 (patch) | |
| tree | 0b675c4289587eacb28c5f2821ca16f895b92d16 /backend/views.py | |
| parent | 14427a86c0cd838c53f65c11f81733c89838602e (diff) | |
Backend: Add api_video_remove view
Diffstat (limited to 'backend/views.py')
| -rw-r--r-- | backend/views.py | 24 |
1 files changed, 19 insertions, 5 deletions
diff --git a/backend/views.py b/backend/views.py index 89140fb..2feb8c4 100644 --- a/backend/views.py +++ b/backend/views.py @@ -864,7 +864,7 @@ def api_video_view(request): video.settings = settings video.save() except: - return response_error('NO VIDEO') + return response_error('NO SUCH VIDEO') return response_success('VIEWED\t%s' % request.POST['video']) @require_POST @@ -893,7 +893,7 @@ def api_video_like(request): autor_profile.save() like = SJLike.objects.create(user=user, datetime=datetime.now(), content=video) except: - return response_error('NO VIDEO') + return response_error('NO SUCH VIDEO') return response_success('LIKED\t%s' % request.POST['video']) @require_POST @@ -924,22 +924,36 @@ def api_video_unlike(request): video.save() autor_profile.save() except: - return response_error('NO VIDEO') + return response_error('NO SUCH VIDEO') return response_success('UNLIKED\t%s' % request.POST['video']) @require_POST def api_video_remove(request): - """ Private API + """ Remove video. Private API """ user = request.user if not user.is_authenticated(): return response_error('NO LOGGED IN') user_profile = user.get_profile() + if user_profile.access < ACCESS_MODERATOR: + return response_error('INSUFFICIENT ACCESS') form_fields = ['video', 'room'] response = check_form_fields(request, form_fields) if response: return response - return HttpResponse('Not implemented yet!\n') + try: + room = SJRoom.objects.get(name=request.POST['room']) + except: + return response_error('NO ROOM') + try: + video = SJContent.objects.get(id=request.POST['video'], content_type='video', room=room) + settings = video.settings + settings['removed'] = 1 + video.settings = settings + video.save() + except: + return response_error('NO SUCH VIDEO') + return response_success('%s\tREMOVED' % request.POST['video']) @require_POST def api_video_search(request): |
