def check_video_availability(request, video_id): """ Controls the availability of the video. Newly uploaded videos are in processing stage. And others might be rejected. Returns: json response """ # Check video availability # Available states are: processing api = Api() api.authenticate() availability = api.check_upload_status(video_id) if availability is not True: data = {'success': False} else: data = {'success': True} return HttpResponse(json.dumps(data), content_type="application/json")
def video(request, video_id): """ Displays a video in an embed player """ # Check video availability # Available states are: processing api = Api() api.authenticate() availability = api.check_upload_status(video_id) if availability is not True: # Video is not available video = Video.objects.filter(video_id=video_id).get() state = availability["upload_state"] # Add additional states here. I'm not sure what states are available if state == "failed" or state == "rejected": return render_to_response("django_youtube/video_failed.html", { "video": video, "video_id": video_id, "message": _("Invalid video."), "availability": availability }, context_instance=RequestContext(request)) else: return render_to_response( "django_youtube/video_unavailable.html", { "video": video, "video_id": video_id, "message": _("This video is currently being processed"), "availability": availability }, context_instance=RequestContext(request)) video_params = _video_params(request, video_id) return render_to_response("django_youtube/video.html", video_params, context_instance=RequestContext(request))
def video(request, video_id): """ Displays a video in an embed player """ # Check video availability # Available states are: processing api = Api() api.authenticate() availability = api.check_upload_status(video_id) if availability is not True: # Video is not available video = Video.objects.filter(video_id=video_id).get() state = availability["upload_state"] # Add additional states here. I'm not sure what states are available if state == "failed" or state == "rejected": return render_to_response( "django_youtube/video_failed.html", {"video": video, "video_id": video_id, "message": _("Invalid video."), "availability": availability}, context_instance=RequestContext(request) ) else: return render_to_response( "django_youtube/video_unavailable.html", {"video": video, "video_id": video_id, "message": _("This video is currently being processed"), "availability": availability}, context_instance=RequestContext(request) ) video_params = _video_params(request, video_id) return render_to_response( "django_youtube/video.html", video_params, context_instance=RequestContext(request) )
def MeguzEdit(request, meguz_id): from django.core.urlresolvers import reverse from django.contrib import messages from django_youtube.api import Api, AccessControl, ApiError from main.models import User user = User.objects.get(token=request.COOKIES.get("fbmgz_234778956683382")) if user is None: HttpResponseRedirect("/") else: # Check meguz existence meguz = Meguz.objects.get(pk=meguz_id) if meguz is None: HttpResponseRedirect("/") else: # Check is user's meguz if meguz.user.token != user.token: HttpResponseRedirect("/") else: # Load MeguzForm, MeguzMultimediaForm formData = MeguzForm(initial={"title": meguz.title, "description": meguz.description}) # Check video status title = meguz.title + " | Meguz.com" keywords = meguz.prize.category.name + "," + meguz.prize.prize_name + "," + meguz.prize.company.name description = meguz.description + "... Visita www.meguz.com para mas informacion" try: api = Api() api.authenticate() # if meguz.video_id is not None: # status = api.check_upload_status(meguz.video_id) # Get actual video status availability = api.check_upload_status(meguz.video_id) if availability is not True: video_state = availability["upload_state"] video_msg = availability["detailed_message"] else: video_state = False video_msg = "" # Generate video data for new upload data = api.upload( title, description=description, keywords=keywords, access_control=AccessControl.Unlisted ) except: messages.add_message(request, messages.ERROR, _("Ha ocurrido un error, por favor intenta de nuevo")) return HttpResponseRedirect("/") formVideo = MeguzMultimediaForm(initial={"token": data["youtube_token"]}) import os from django.contrib.sites.models import Site current_site = Site.objects.get_current() domain = current_site.domain protocol = "https" if request.is_secure() else "http" next_url = "".join( [ protocol, ":", os.sep, os.sep, domain, "/meguz/update/multimedia/{0}/{1}".format( meguz.prize.id, request.COOKIES.get("fbmgz_234778956683382") ), os.sep, ] ) context = { "meguz": meguz, "form_data": formData, "form_video": formVideo, "post_url": data["post_url"], "next_url": next_url, "video_state": video_state, "video_msg": video_msg, } return render_to_response("meguz/edit.html", context, context_instance=RequestContext(request))