def private_video(request, videoid, template='video_detail_private.html'): video = get_object_or_404(Video, pk=videoid, user_id=request.user.id) latest_videos = Video.latest(5) # latest_videos = Video.objects.filter(user=video.user) return render(request, template, {'video': video, 'latest_videos': latest_videos, 'page_name': 'activity'})
def details(request, pk): video = get_object_or_404(Video, pk=pk) latest_videos = Video.latest(5) # latest_videos = Video.objects.filter(user=video.user) video.visits = video.visits + 1 video.save() return render(request, 'video_detail.html', {'video': video, 'latest_videos': latest_videos, 'page_name': 'explore'})
def uploader(request): """ Uploader API To be used via HTTPS only POST Params: - username: string - password: string - title: string optional - video: FILE: video data - data: FILE: xml data Returns: STATUS 200 - success 403 - authentication failed 400 - Bad parameters """ if request.method != 'POST': return HttpResponse('request must be POST', status=400) # Create form instance and validate it form = UploadFileForm(request.POST, request.FILES) if not form.is_valid(): return HttpResponse('invalid parameters', status=400) # Authenticate the user user = authenticate( username=request.POST['username'], password=request.POST['password']) if not user: return HttpResponse("Unauthorized", status=403) title = request.POST.get('title') or 'No Title' # Read data in from FILES request object file_data = request.FILES['data'].read() # Convert the file data from JSON string to python object video_data = simplejson.loads(file_data) # Extract video data from decoded JSON string sports = video_data["video_files"]["sport"] shared = not video_data["video_files"]["isPrivate"] # Check if category exists category = VideoCategory.objects.filter(title=sports) if category.exists(): category = category[0] else: # If category doesn't exist, create one category = VideoCategory(title=sports) category.save() # Create and save the video database entry video = Video(title=title, user=user, video=request.FILES['video'], data=file_data, shared=shared, category=category) video.save() # Process the uploaded file (generate thumbnail, etc) process.process_upload(video) user.video_category = category user.save() return HttpResponse('ok')