Fix validate_payment_event for payment events with no lines specified
Currently, handle_payment_event defaults lines and line_quantities to None,
however, calling it with these defaults will result in an exception being
raised in validate_payment_event because it expects iterables.
This commit also adds tests to cover validate_payment_event.
Add fix for OrderDiscount model when offer deleted
The OrderDiscount did not store (a copy) of the offer
name within a separate field which causes an issue when the
offer is deleted. E.g. it breaks the order history view for
the customer because no offer data is available.
I have added a new field to OrderDiscount that is automatically
populated from the offer.name field. This works in the same way
as voucher_code does in the same model.
I also found two issues with the voucher implementation within
the same model that are fixed now.
Fixes #330
makes Oscar work with aware AND naive datetimes based on USE_TZ
* replaces all occurences of ``datetime.now()`` with
``django.utils.timezone.now()`` which returns aware or naive
datetimes based on ``USE_TZ``
* increases ``South`` version to 0.7.6 in dependencies to make
aware datetimes work in migrations.
* Oscar's sandbox is now configured to use aware timezones by
default