This allows updating code in both places, if necessary. Getting Django
1.5 support would be painful otherwise. This also removes the circular
dependency of django-oscar-testsupport on Oscar.
The requirements were merged. The imports were updated
accordingly. Unused imports in the touched files were removed. No
further changes.
OSCAR_REQUIRED_ADDRESS_FIELDS allows setting which fields are required.
The use case is that post codes are expected to be required, but many
countries don't actually use them.
Required several schema changes:
* Add num_applications to offer model to track number of times an offer
has been applied within an order.
* Add max_global_applications to offer model to set a limit on how many times an offer
can be used.
* Add frequency to order discount to provide insight into how many times
an offer was applied for a particular order.
Structure of dashboard changes to talk about offer 'availability'
instead of assuming a start- and end-date.
Stopped treating checkout:index as a special case.
This view has a form that assumes anon checkout is allowed, which it
isn't always. Treating it as a special case was causing it to be
displayed when it shouldn't.
Updated checkout to use a 'action' parameter for placing orders.
This allows the preview to accept two types of POST:
1) POSTing from payment-details to submit sensitive data, which gets
re-rendered in the preview template
2) POSTing from preview to submit the orderk
* The views check that the guest email address has been entered.
* The email address is written out against the order.
* An email confirmation is sent to the guest user email address.
Added ability to customise decoration of view functions.
This uses a few new methods in oscar.core.application.Application which
enable custom decorators to be set for given view fns.
The main use case at the moment is to make it easy to ensure that
checkout is not available to non-logged-in users when
OSCAR_ALLOW_ANON_CHECKOUT is set to False.