Example #1
0
def edit(request, name):
    """
    Edit view for a ContentBlock object, creates the block if it doesn't exist
    """
    block, __unused__ = ContentBlock.objects.get_or_create(name=name)

    if request.is_ajax():
        if request.method == "POST":
            form = ContentBlockForm(request.POST, instance=block)

            if form.is_valid():
                block = form.save()

                return simple.direct_to_template(request, "content_blocks/block.html", extra_context={
                    "block": block,
                    "editable": True,
                    "markup": True,
                    "DEBUG": settings.DEBUG,
                })
        elif request.GET.has_key("cancel"):
            return simple.direct_to_template(request, "content_blocks/block.html", extra_context={
                "block": block,
                "editable": True,
                "markup": True,
                "DEBUG": settings.DEBUG,
            })
        else:
            form = ContentBlockForm(instance=block)

        return simple.direct_to_template(request, "content_blocks/edit.html", extra_context={
            "form": form,
            "block": block,
        })
    else:
        return simple.redirect_to(request, get_admin_edit_page(block))
Example #2
0
def _block_edit(request, model_name, name, model_class, form_class):
    block, __unused__ = model_class.objects.get_or_create(name=name)

    markup = request.GET.get("markup", "True") == "True"
    if request.is_ajax():
        if request.method == "POST":
            form = form_class(request.POST, instance=block)

            if form.is_valid():
                block = form.save()

                return DirectTemplateView.as_view(
                    template_name="content_blocks/%s.html" % model_name,
                    extra_context={
                        "%s" % model_name: block,
                        "wrapper": False,
                        "editable": True,
                        "markup": markup,
                        "DEBUG": settings.DEBUG,
                    })
        elif request.GET.has_key("cancel"):
            return DirectTemplateView.as_view(
                template_name="content_blocks/%s.html" % model_name,
                extra_context={
                    "%s" % model_name: block,
                    "wrapper": False,
                    "editable": True,
                    "markup": markup,
                    "DEBUG": settings.DEBUG,
                })
        else:
            form = form_class(instance=block)

        return DirectTemplateView.as_view(
            template_name="content_blocks/%s.html" % model_name,
            extra_context={
                "form": form,
                "%s" % model_name: block,
                "markup": markup,
            })
    else:
        return RedirectView.as_view(url=get_admin_edit_page(block))
Example #3
0
def _block_edit(request, model_name, name, model_class, form_class):
    block, __unused__ = model_class.objects.get_or_create(name=name)

    markup = request.GET.get("markup", "True") == "True"
    if request.is_ajax():
        if request.method == "POST":
            form = form_class(request.POST, instance=block)

            if form.is_valid():
                block = form.save()

                return DirectTemplateView.as_view(template_name="content_blocks/%s.html" % model_name, extra_context={
                    "%s" % model_name: block,
                    "wrapper": False,
                    "editable": True,
                    "markup": markup,
                    "DEBUG": settings.DEBUG,
                })
        elif request.GET.has_key("cancel"):
            return DirectTemplateView.as_view(template_name="content_blocks/%s.html" % model_name, extra_context={
                "%s" % model_name: block,
                "wrapper": False,
                "editable": True,
                "markup": markup,
                "DEBUG": settings.DEBUG,
            })
        else:
            form = form_class(instance=block)

        return DirectTemplateView.as_view(template_name="content_blocks/%s.html" % model_name, extra_context={
            "form": form,
            "%s" % model_name: block,
            "markup": markup,
        })
    else:
        return RedirectView.as_view(url=get_admin_edit_page(block))