.. _signals: Signals in Satchmo ================== Signals are a very powerful tool available in Django that allows you to decouple aspects of your application. The `Django Signals Documentation`_, has this summary: "In a nutshell, signals allow certain senders to notify a set of receivers that some signals: action has taken place." In addition to the built in Django signals, Satchmo has a number of signals. By using these signals, you can add very unique customizations to your store without modifying the Satchmo code. Signal Descriptions -------------------- satchmo.configuration.signals +++++++++++++++++++++++++++++ * configuration_value_changed Sent after a value from the configuration application has been updated. satchmo.shop.signals ++++++++++++++++++++ * satchmo_cart_add_complete Sent after an item has been successfully added to the cart. * order_success Sent when an order is complete and the balance goes to zero during a save. * satchmo_cart_changed Sent whenever the status of the cart has changed. * satchmo_cart_item_price_query Sent by the pricing system to allow price overrides when displaying line item prices. * satchmo_search Sent by search_view to ask all listeners to add search results. satchmo.contact.signals +++++++++++++++++++++++ * satchmo_contact_view * satchmo_contact_location_changed * form_save satchmo.newsletter.signals ++++++++++++++++++++++++++ * newsletter_subscription_updated satchmo.payment.signals +++++++++++++++++++++++ * confirm_sanity_check * payment_form_init * payment_methods_query * form_save satchmo.product.signals +++++++++++++++++++++++ * index_prerender * satchmo_price_query * subtype_order_success Example Usage ------------- Usage:: from satchmo.shop.signals import satchmo_cart_add_complete import myviews satchmo_cart_add_complete.connect(myviews.cart_add_listener, sender=None) .. _Django Signals Documentation: http://docs.djangoproject.com/en/dev/topics/signals/