Hi I am experiencing difficulty in extending the JavaScript model responsible for handling click events(that contains the different functions of buttons in the chatter topbar like the send message button)of the Chatter topbar buttons.i did add a button to the chatter topbar and i want to make it able to open a wizard that i have created, but i couldn't do that and i don't know even why?
odoo.define('attach_photo_mobile.WizRequest', function (require) {
'use strict';
const Chatter = require('mail.chatter');
const Registries = require('mail.registerNewModel');
Chatter.include({ init() {
this._super(...arguments);
// Bind your custom function
this.onClickSendRequest = this.onClickSendRequest.bind(this); },
// Add your custom function to handle the button click
onClickSendRequest(ev) {
ev.preventDefault();
// Define your wizard model name
const wizardModel = 'attach_photo_mobile.attach_request_wiz';
this.do_action({
name: 'Send a request',
type: 'ir.actions.act_window',
res_model: wizardModel,
view_mode: 'form',
views: [[false, 'form']],
target: 'new', }); }, });
Registries.Component.add(Chatter);
return Chatter;});
Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:
- CRM
- e-Commerce
- Účtovníctvo
- Sklady
- PoS
- Project
- MRP
This question has been flagged
you need your xml file like this :
js file like this :
/** @odoo-module **/ import { registerPatch } from '@mail/model/model_core'; import core from 'web.core'; import utils from 'web.utils'; registerPatch({ name: 'Chatter', recordMethods: { async onClickbutton(event) { this.env.services['action'].doAction('modual.action_xml_id') }, }, });
Hey Reda,
I hope you are doing well.
I'd like to provide you with some reference screenshots:
Feel free to contact us for further assistance
Hope this answer helps you.
Thanks & Regards,
Email: odoo@aktivsoftware.com
Skype: kalpeshmaheshwari
Hi,
In this case, we can inherit the ChatterTopbar ie
<templates xml:space="preserve">
<t t-name="chatter_camera.camera" t-inherit="mail.ChatterTopbar" t-inherit-mode="extension" owl="1">
<xpath expr="//div[hasclass('o_ChatterTopbar_controllers')]" position="inside">
<button id="camera_button" type="button" t-on-click="chatterTopbar.chatter.onClickButton" style="color:white;background-color:white;border:none;">
<i class="fa fa-camera-retro"/>
</button>
// you can add your own id and details
</xpath>
</t>
</templates>
Based on this method you can add the button in the Chatter sider
under the js function you need to create on the click function - the
name denoted as onClickButton.
onClickButton: function(){ |
For more reference, you can use the reference app used for the Chatter Camera in the ChatterTop
https://apps.odoo.com/apps/modules/16.0/chatter_camera/
Hope it helps
I didn't quite get your question.
You want add new functionality in the chatter where it specify but did you try to locate & understanding of "Send Message".
Ref-> https://www.odoo.com/forum/help-1/how-can-i-add-a-button-in-chatter-in-odoo-13-166874
for js you extend the class "Chatter" from mail module & by following send message procedure can create your own event onclick function and use rpc for triggering python function
Ref-> https://stackoverflow.com/questions/65195438/trying-to-send-data-from-javascript-to-python-pos-odoo-using-rpc-query
I am also looking for the similar solution.
i hope someone can help with this bec i really need it
Enjoying the discussion? Don't just read, join in!
Create an account today to enjoy exclusive features and engage with our awesome community!
Registrácia
I have successfully added a new button to the Chatter top bar using XML. This button should be able to open a popup window.However, I am encountering challenges when attempting to extend the JavaScript model and also i am unsure if I am extending the correct one.
Hi,
Please refer to the below forum to get a solution about your query
https://www.odoo.com/fr_FR/forum/aide-1/how-can-i-add-a-button-in-chatter-in-odoo-13-166874