Exemplo n.º 1
0
    def form_valid(self, form):
        for key, value in form.cleaned_data.items():
            self.storage[key] = value
        self.process()
        order = self.create_order()
        self.checkout_process.complete(
        )  # Inform the checkout process it's completed

        # make sure to set marketing permission asked once
        if "marketing" in form.fields and order.customer:
            if not order.customer.options or not order.customer.options.get(
                    "marketing_permission_asked"):
                order.customer.options = order.customer.options or {}
                order.customer.options["marketing_permission_asked"] = True
                order.customer.save(update_fields=["options"])

        if order.require_verification:
            response = redirect("shuup:order_requires_verification",
                                pk=order.pk,
                                key=order.key)
        else:
            response = redirect("shuup:order_process_payment",
                                pk=order.pk,
                                key=order.key)

        checkout_complete.send(sender=type(self),
                               request=self.request,
                               user=self.request.user,
                               order=order)

        return response
Exemplo n.º 2
0
    def form_valid(self, form):
        for key, value in form.cleaned_data.items():
            self.storage[key] = value
        self.process()
        order = self.create_order()
        self.checkout_process.complete(
        )  # Inform the checkout process it's completed

        if order.require_verification:
            response = redirect("shuup:order_requires_verification",
                                pk=order.pk,
                                key=order.key)
        else:
            response = redirect("shuup:order_process_payment",
                                pk=order.pk,
                                key=order.key)

        checkout_complete.send(sender=type(self),
                               request=self.request,
                               user=self.request.user,
                               order=order)

        return response