tangentlabs/django-oscar — pull request #691 by abbas123456 (2013-05-28 11:19:37+00:00)
Title: Upsell messages are shown even after the offer is applied to the basket

The get_upsell_messages function in oscar.apps.basket.views.BasketView loops through all potential offers and returns a list of upsell messages.

For example, "Spend another £12.50 to get free shipping". However, this function doesn't take into account whether the potential offer has already been applied.

This will therefore give incorrect upsell messages after the offer has been applied and more items added to the basket.

This fix gets a list of applied offers and checks if the potential offer has already been applied before adding the upsell message.