diff --git a/src/pretix/base/models/discount.py b/src/pretix/base/models/discount.py index cf97700f4..7943df450 100644 --- a/src/pretix/base/models/discount.py +++ b/src/pretix/base/models/discount.py @@ -306,6 +306,13 @@ class Discount(LoggedModel): if possible_applications_cond * self.benefit_only_apply_to_cheapest_n_matches > len(benefit_idx_group): # unused discount ("for each 1 ticket you buy, get 50% on 2 t-shirts", cart content: 1 ticket # but 0 t-shirts) -> 2 shirt maybe potential discount (if the 1 ticket is not consumed by a later discount) + + # + # TODO BUG: + # cross-selling schlägt zu viele potential discounts vor ("consume" side of rule: sobald mindestens + # ein voller block übrig ist zählt auch ein letzter, angebrochener block als voll mit) + # + for i, idx in enumerate(condition_idx_group[n_groups * self.condition_min_count:]): collect_potential_discounts[idx] += [ (self, self.benefit_only_apply_to_cheapest_n_matches, i // self.condition_min_count)