def save_model(self, request, order, form, change): instance = Order.objects.get(pk=order.pk) super(OrderAdmin, self).save_model(request, order, form, change) if instance.status != order.status: if order.status == Order.COMPLETED: completed.send(sender=self, order=order) elif order.status == Order.SHIPPED: shipped.send(sender=self, order=order) elif order.status == Order.CANCELLED: cancelled.send(sender=self, order=order)
def cancel(self, request): shop = self.shop order = shop.get_order(request) order_name = shop.get_order_short_name(order) order.status = Order.CANCELED order.save() # Empty the cart. try: cart = Cart.objects.get(pk=order.cart_pk) cart.empty() except Cart.DoesNotExist: pass cancelled.send(sender=self, order=order) return render(request, 'shop_wspay/cancel.html', { 'order': order, 'order_name': order_name, })
def cancel_payment(self, order, amount, payment_method, save=True): if save: order.status= Order.CANCELLED order.save() cancelled.send(sender=self, order=order)