======= Signals ======= Oscar implements a number of custom signals that provide useful hook-points for adding functionality. product_viewed -------------- .. class:: oscar.apps.catalogue.signals.product_viewed Raised when a product detail page is viewed. Arguments sent with this signal: .. attribute:: product The product being viewed .. attribute:: user The user in question .. attribute:: request The request instance .. attribute:: response The response instance product_search -------------- .. class:: oscar.apps.catalogue.signals.product_search Raised when a search is performed. Arguments sent with this signal: .. attribute:: query The search term .. attribute:: user The user in question basket_addition --------------- .. class:: oscar.apps.basket.signals.basket_addition Raised when a product is added to a basket Arguments sent with this signal: .. attribute:: product The product being added .. attribute:: user The user in question voucher_addition ---------------- .. class:: oscar.apps.basket.signals.voucher_addition Raised when a valid voucher is added to a basket Arguments sent with this signal: .. attribute:: basket The basket in question .. attribute:: voucher The voucher in question pre_payment ----------- .. class:: oscar.apps.checkout.signals.pre_payment Raised immediately before attempting to take payment in the checkout. Arguments sent with this signal: .. attribute:: view The view class instance post_payment ------------ .. class:: oscar.apps.checkout.signals.post_payment Raised immediately after payment has been taken. Arguments sent with this signal: .. attribute:: view The view class instance order_placed ------------ .. class:: oscar.apps.order.signals.order_placed Raised by the :class:`oscar.apps.order.utils.OrderCreator` class when creating an order. Arguments sent with this signal: .. attribute:: order The order created .. attribute:: user The user creating the order (not necessarily the user linked to the order instance!) post_checkout ------------- .. class:: oscar.apps.checkout.signals.post_checkout Raised by the :class:`oscar.apps.checkout.mixins.OrderPlacementMixin` class when a customer completes the checkout process .. attribute:: order The order created .. attribute:: user The user who completed the checkout .. attribute:: request The request instance .. attribute:: response The response instance review_created -------------- .. class:: oscar.apps.catalogue.reviews.signals.review_added Raised when a review is added. Arguments sent with this signal: .. attribute:: review The review that was created .. attribute:: user The user performing the action .. attribute:: request The request instance .. attribute:: response The response instance