Skip to Content
Menu
Dette spørgsmål er blevet anmeldt
340 Visninger

Bonjour,
J'ai installé le module Lyra sur mon site pour pouvoir gérer les paiements. Lorsque je passe par le site web pour payer une commande et que j'utilise Lyra, ça fonctionne pas de problème.

Je suis sur Odoo 17

Mon site sera destiné uniquement à une utilisation du back-office par nos agents en interne. Ce que je veux faire c'est pouvoir payer des devis avec Lyra directement depuis le back-office. Je me suis inspiré fichier payment_form.js dans le module payment. 
J'ai donc crée un fichier javascript dans mon module : 

/** @odoo-module */

import publicWidget from '@web/legacy/js/public/public_widget';


publicWidget.registry.InitiatePaymentLyra = publicWidget.Widget.extend({

selector: '.o_form_view', // S'applique à toutes les vues formulaire

events: Object.assign({}, publicWidget.Widget.prototype.events, {

'click [name="action_payment_lyra"]': '_initiatePaymentLyra',

}),


init() {

this._super(...arguments);

this.rpc = this.bindService("rpc");

this.orm = this.bindService("orm");

},


start() {

console.log()

// Vérifier si on est sur un devis

if (this.el.dataset.model !== 'sale.order') {

return Promise.resolve();

}

return this._super(...arguments);

},


async _initiatePaymentLyra(ev) {

ev.preventDefault();

console.log("j'ai cliqué sur un bouton dans un devis");

},

});


export default publicWidget.registry.InitiatePaymentLyra;

J'ai ajouté le fichier dans mon manifest.py : 

"assets": {

"web.assets_backend": [

"web/static/src/legacy/js/core/dom.js",

"web/static/src/legacy/js/core/class.js",

"web/static/src/legacy/js/core/mixins.js",

"web/static/src/legacy/js/core/service_mixins.js",

"web/static/src/legacy/js/core/minimal_dom.js",

"web/static/src/legacy/js/public/public_widget.js",

"payment_lyra/static/src/js/form_renderer.js",

]

},

Mais lorsque je me rend sur ma page devis et que je clique sur le bouton avec le name "action_payment_lyra" rien ne se passe...

Avatar
Kassér