doc/book/en/devrepo/repo/notifications.rst
author Julien Cristau <julien.cristau@logilab.fr>
Thu, 12 Dec 2013 14:25:24 +0100
changeset 9360 eda5071e30a1
parent 8928 f5b40b66d36e
permissions -rw-r--r--
[migration] fix handling of default value for boolean attributes We can't assert that the old value is 'True' or 'False', because False used to be stored as an empty string in pre-3.18 versions.

.. -*- coding: utf-8 -*-

Notifications management
========================

CubicWeb provides a machinery to ease notifications handling. To use it for a
notification:

* write a view inheriting from
  :class:`~cubicweb.sobjects.notification.NotificationView`.  The usual view api
  is used to generated the email (plain text) content, and additional
  :meth:`~cubicweb.sobjects.notification.NotificationView.subject` and
  :meth:`~cubicweb.sobjects.notification.NotificationView.recipients` methods
  are used to build the email's subject and
  recipients. :class:`NotificationView` provides default implementation for both
  methods.

* write a hook for event that should trigger this notification, select the view
  (without rendering it), and give it to
  :func:`cubicweb.hooks.notification.notify_on_commit` so that the notification
  will be sent if the transaction succeed.


.. XXX explain recipient finder and provide example

API details
~~~~~~~~~~~
.. autoclass:: cubicweb.sobjects.notification.NotificationView
.. autofunction:: cubicweb.hooks.notification.notify_on_commit