Availability |
Odoo Online
Odoo.sh
On Premise
|
Odoo Apps Dependencies |
Discuss (mail)
|
Lines of code | 97 |
Technical Name |
d_mail_chatter_html_link_domain |
License | OPL-1 |
Website | https://duong-odoo-apps.odoo.com |
Versions | 16.0 17.0 18.0 |
Availability |
Odoo Online
Odoo.sh
On Premise
|
Odoo Apps Dependencies |
Discuss (mail)
|
Lines of code | 97 |
Technical Name |
d_mail_chatter_html_link_domain |
License | OPL-1 |
Website | https://duong-odoo-apps.odoo.com |
Versions | 16.0 17.0 18.0 |
Mail Chatter HTML Link with Domain
Enhance your chatter notifications with smart links

Overview
This module extends the standard mail chatter HTML links to support domain filters. It allows creating links in chatter that open views with specific domain filters applied.
When users click on these links, they are taken directly to a specific view with pre-filtered data, making navigation more efficient and user-friendly.
Key Features

- Create links in chatter that open filtered views
- Specify both domain filters and view IDs
- Seamless integration with existing Odoo functionality
- Improve user navigation and workflow efficiency
- Easy to implement in your custom modules
How to Use

Example 1: Link to all invoices for a specific customer
customer = self.env['res.partner'].browse(customer_id) domain = [('partner_id', '=', customer_id)] view_id = self.env.ref('account.view_move_tree').id view_type = 'list' expression = (domain, view_id, view_type) html_link = self.env['account.move']._get_html_link_with_domain( title="View Customer Invoices", expression=expression ) # Use in a message post customer.message_post( body=f"<p>Please check all invoices for this customer: {html_link}</p>", message_type='notification' )
Use Cases
Link directly to all tickets from a specific customer in a notification
Create links to all opportunities in a specific stage for a sales team
Link to all products below minimum stock level in a warehouse
Link to all social media posts with specific attributes (e.g., TikTok videos with comments)
Technical Details
How it works:
- The module adds a new method
_get_html_link_with_domain
to the base model - This method generates HTML links with a
data-oe-expression
attribute containing the domain filter and view ID - The JS component intercepts clicks on these links
- When clicked, the JS opens the specified view with the domain filter applied
Expression Format: The expression parameter is a tuple containing (domain, view_id, view_type)
Need Support?
Email: duongodooapps@gmail.com
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module