diff options
| -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): |
