Beispiel #1
0
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")
Beispiel #2
0
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")
Beispiel #3
0
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))
Beispiel #4
0
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)
    )
Beispiel #5
0
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))