[FIX] web: not possible to show a notification via client action
Before this commit, it was not possible to show a message using a client action. (e.g. show a success message only with core in Python) Now, it's possible using a client action. This client action call displayNotification and so we can use the same options also. A test is added to be sure that this action do not change the current action Note: in the future a custom registry may be created in a refactoring to specific function action registry. X-original-commit: 8775fd670b6b3ec19a77fc0eab72d2223baa36c8
This commit is contained in:
@@ -1213,6 +1213,10 @@ The notification system in Odoo is designed with the following components:
|
||||
destroy notifications whenever a request is done (with a custom_event). Note
|
||||
that the web client is a service provider.
|
||||
|
||||
- a client action *display_notification*: this allows to trigger the display
|
||||
of a notification from python (e.g. in the method called when the user
|
||||
clicked on a button of type object).
|
||||
|
||||
- two helper functions in *ServiceMixin*: *do_notify* and *do_warn*
|
||||
|
||||
|
||||
@@ -1260,6 +1264,21 @@ Here are two examples on how to use these methods:
|
||||
|
||||
this.do_warn(_t("Error"), _t("Filter name is required."));
|
||||
|
||||
Here an example in python:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
# note that we call _(string) on the text to make sure it is properly translated.
|
||||
def show_notification(self):
|
||||
return {
|
||||
'type': 'ir.actions.client',
|
||||
'tag': 'display_notification',
|
||||
'params': {
|
||||
'title': _('Success'),
|
||||
'message': _('Your signature request has been sent.'),
|
||||
'sticky': False,
|
||||
}
|
||||
}
|
||||
|
||||
Systray
|
||||
=======
|
||||
|
||||
Reference in New Issue
Block a user