|
|
@@ -27,3 +27,22 @@ class BasketOwnerCalledBarry(models.Condition):
|
|
27
|
27
|
|
|
28
|
28
|
def consume_items(self, basket, affected_lines):
|
|
29
|
29
|
return
|
|
|
30
|
+
|
|
|
31
|
+
|
|
|
32
|
+class ChangesOwnerName(models.Benefit):
|
|
|
33
|
+
|
|
|
34
|
+ class Meta:
|
|
|
35
|
+ proxy = True
|
|
|
36
|
+
|
|
|
37
|
+ def apply(self, basket, condition, offer=None):
|
|
|
38
|
+ condition.consume_items(basket, ())
|
|
|
39
|
+ return models.PostOrderAction(
|
|
|
40
|
+ "You will have your name changed to Barry!")
|
|
|
41
|
+
|
|
|
42
|
+ def apply_deferred(self, basket):
|
|
|
43
|
+ basket.owner.first_name = "Barry"
|
|
|
44
|
+ basket.owner.save()
|
|
|
45
|
+
|
|
|
46
|
+ @property
|
|
|
47
|
+ def description(self):
|
|
|
48
|
+ return "Changes owners name"
|