Beispiel #1
0
    def post(self, request, *args, **kwargs):
        form = PageForm(request.POST)

        if form.is_valid():
            page = form.save()
            picture_formset = PictureFormset(
                request.POST, request.FILES, instance=page
            )

            if form.is_valid() and picture_formset.is_valid():
                form.save()
                picture_formset.save()

                messages.success(request, mark_safe(
                    "Page {} has been created".format(page.name)
                    )
                )
                ActivityLog.objects.create(
                    log="Page {} (id {}) has been created by admin "
                        "user {}".format(
                        page.name, page.id, request.user.username
                    )
                    )
            else:
                if not picture_formset.is_valid():
                    for error in picture_formset.errors:
                        for k, v in error.items():
                            messages.error(
                                request, mark_safe("{}: {}".format(k.title(), v))
                            )

                context = {
                    'form': form,
                    'picture_formset': picture_formset,
                    'sidenav_selection': 'page_list'
                }

                return TemplateResponse(request, self.template_name, context)
        else:
            messages.error(request, "Please correct the errors below")
            picture_formset = PictureFormset(request.POST, request.FILES)
            return TemplateResponse(
                    request, self.template_name,
                    {'form': form, 'picture_formset': picture_formset,
                     'sidenav_selection': 'add_page'}
                    )

        return HttpResponseRedirect(self.get_success_url())
Beispiel #2
0
    def post(self, request, *args, **kwargs):
        form = PageForm(request.POST)

        if form.is_valid():
            page = form.save()
            picture_formset = PictureFormset(request.POST,
                                             request.FILES,
                                             instance=page)

            if form.is_valid() and picture_formset.is_valid():
                form.save()
                picture_formset.save()

                messages.success(
                    request,
                    mark_safe("Page {} has been created".format(page.name)))
                ActivityLog.objects.create(
                    log="Page {} (id {}) has been created by admin "
                    "user {}".format(page.name, page.id,
                                     request.user.username))
            else:
                if not picture_formset.is_valid():
                    for error in picture_formset.errors:
                        for k, v in error.items():
                            messages.error(
                                request,
                                mark_safe("{}: {}".format(k.title(), v)))

                context = {
                    'form': form,
                    'picture_formset': picture_formset,
                    'sidenav_selection': 'page_list'
                }

                return TemplateResponse(request, self.template_name, context)
        else:
            messages.error(request, "Please correct the errors below")
            picture_formset = PictureFormset(request.POST, request.FILES)
            return TemplateResponse(
                request, self.template_name, {
                    'form': form,
                    'picture_formset': picture_formset,
                    'sidenav_selection': 'add_page'
                })

        return HttpResponseRedirect(self.get_success_url())