Esempio n. 1
0
def viewer_shell(request, viewer, objid, template='viewers_shell.html'):

    viewer_cls = get_viewer_by_name(viewer)
    if not viewer_cls:
        raise Http404()
    viewer = viewer_cls(None, request, objid=objid)
    if not viewer:
        if not request.user.is_authenticated():
            url = 'login'
            if getattr(settings, 'SHIB_ENABLED', False):
                url = 'shib_login'
            return redirect(reverse(url) + '?next=' + request.get_full_path())
        raise Http404()

    response = viewer.view(request)
    if response:
        return response

    options_form_cls = viewer.get_options_form()
    if options_form_cls:
        options_form = options_form_cls(request.GET)
        options = options_form.cleaned_data \
            if options_form.is_valid() else viewer.default_options
    else:
        options_form = None
        options = viewer.default_options

    return render_to_response(template, {
        'viewer': viewer,
        'next': request.GET.get('next'),
        'embed_code': viewer.embed_code(request, options),
        'options_form': options_form,
    },
                              context_instance=RequestContext(request))
Esempio n. 2
0
def viewer_shell(request, viewer, objid, template='viewers_shell.html'):

    viewer_cls = get_viewer_by_name(viewer)
    if not viewer_cls:
        raise Http404()
    viewer = viewer_cls(None, request, objid=objid)
    if not viewer:
        if not request.user.is_authenticated():
            return redirect(reverse('login') +
                            '?next=' + request.get_full_path())
        raise Http404()

    response = viewer.view(request)
    if response:
        return response

    options_form_cls = viewer.get_options_form()
    if options_form_cls:
        options_form = options_form_cls(request.GET)
        options = options_form.cleaned_data if options_form.is_valid() else viewer.default_options
    else:
        options_form = None
        options = viewer.default_options

    return render_to_response(
        template,
        {
            'viewer': viewer,
            'next': request.GET.get('next'),
            'embed_code': viewer.embed_code(request, options),
            'options_form': options_form,
        },
        context_instance=RequestContext(request))
Esempio n. 3
0
def viewer_script(request, viewer, objid):

    viewer_cls = get_viewer_by_name(viewer)
    if not viewer_cls:
        raise Http404()
    viewer = viewer_cls(None, request, objid=objid)
    if not viewer:
        if not request.user.is_authenticated():
            return HttpResponseForbidden()
        else:
            raise Http404()

    try:
        return viewer.embed_script(request)
    except Http404:
        if not request.user.is_authenticated():
            return HttpResponseForbidden()
        raise
Esempio n. 4
0
def viewer_script(request, viewer, objid):

    viewer_cls = get_viewer_by_name(viewer)
    if not viewer_cls:
        raise Http404()
    viewer = viewer_cls(None, request, objid=objid)
    if not viewer:
        if not request.user.is_authenticated():
            return HttpResponseForbidden()
        else:
            raise Http404()

    try:
        return viewer.embed_script(request)
    except Http404:
        if not request.user.is_authenticated():
            return HttpResponseForbidden()
        raise