Skip to Content
Меню
Вам необхідно зареєструватися, щоб взаємодіяти зі спільнотою.
Це запитання позначене
14 Відповіді
4366 Переглядів

Hi, I'm trying to inherit website_sign.thank_you_dialog but this has no id. I would like to delete the advertisement that appears in the pop up when completing the signatures.

i try this

static/src/xml/remove_ad.xml


  1 <?xml version="1.0" encoding="UTF-8"?>

  2 <template id="remove_ad_sign" t-extend="website_sign.thank_you_dialog">
  3         <t t-jquery=".o_promote_esign" t-operation="replace">
  4             <div>AAAAAAAAAAAAAAA</div>
  5         </t>
  6 </template>


my __manifest__.py:

...
  'qweb': ['static/src/xml/*.xml'],

...

It doesn't work, it doesn't even return an error, what am I doing wrong?


UPDATE (Very thanks to \Sylvain Michel RATSARAFAHATRA):

/static/src/js/remove_ad_signature.js

 1 odoo.define('agreements_esign.signature_request_template', function(require) { 
    2     'use strict'
    3     
    4     var ajax = require("web.ajax");
    5     var core = require("web.core");
    6     var qweb = core.qweb;
    7     var document_signing = require("website_sign.document_signing");
    8     
    9     ajax.loadXML("/agreements_esign/static/src/xml/remove_ad_signature.xml", qweb).then(function () {                                                                                                                                                                       
   10 
   11     document_signing.initDocumentToSign();
   12        });
   13   })
~

/static/src/xml/remove_ad_signature.xml

  1 <?xml version="1.0" encoding="UTF-8"?>
  2 <templates id="remove_ad_signature" xml:space="preserve">
  3     <t t-extend="website_sign.thank_you_dialog">
  4         <t t-jquery="div.o_promote_esign" t-operation="replace">
  5             <div class="o_promote_esign">                                                                                                                                                                                                                                     
  6                 <div>AAAAAAAAAAAAA</div>                 
  7             </div>                                       
  8         </t>                                             
  9     </t>                                                 
 10   
 11 </templates>
~

Get this error


BUT i see AAAAAA on the modal

Аватар
Відмінити
Автор Найкраща відповідь

Solved by myself add in static/src/js/remove_signature_ad.js

thanks to Sylvain Michel RATSARAFAHATRA

odoo.define("agreements_esign.remove_signature_ad_button", function (require) {
  "use strict"

  var core = require("web.core")
  var document_signing = require("website_sign.document_signing")
  var _t = core._t

  var NoPubThankYouDialog = document_signing.ThankYouDialog.extend({
    template: "website_sign.no_pub_thank_you_dialog",

    init: function (parent, options) {
      options = options || {}
      if (!options.buttons) {
        options.buttons = [{ text: _t("Close"), close: true }]
      }

      this._super(parent, options)
    }
    })

  document_signing.SignableDocument.include({
    get_thankyoudialog_class: function () {
      return NoPubThankYouDialog
    },
  })
})
Аватар
Відмінити

var NoPubThankYouDialog = document_signing.ThankYouDialog.extend({
template: "website_sign.no_pub_thank_you_dialog",

Which Template need to use here?

Найкраща відповідь

Hi,

To inherit this, you can do like the following code, adapt it as you need:

<?xml version="1.0" encoding="UTF-8"?>
<templates id="template" xml:space="preserve">

<t t-extend="sign.thank_you_dialog">
<t t-jquery="div.o_promote_esign" t-operation="replace">
<div class="o_promote_esign">
Your code here
</div>
</t>
</t>

</templates>

Best regards

Аватар
Відмінити
Автор

Thanks for the reply but it doesn't work.

I added the remove_ad.xml file inside the / static / src / xml directory, slightly fixing the code you put but nothing to do

Please verify if you have a dependence on the "sign" module in your __manifest__.py file?

Автор

"module_x" that depends on the module: sign.\nBut this module is not available in your system.'

I had tried with website_sign

What is your Odoo version? the module "sign" is only available in enterprise addons (Odoo 12, 13) and in Odoo 11 it's website_sign. The code that I've sent is for Odoo 12

Автор

Odoo 11, I made a mistake with the tag when writing the question

Автор

i change with this

1 <?xml version="1.0" encoding="UTF-8"?>

2 <templates id="template" xml:space="preserve">

3

4 <t t-extend="website_sign.thank_you_dialog">

5 <t t-jquery="div.o_promote_esign" t-operation="replace">

6 <div class="o_promote_esign">

7 <div>AAAAAAAAAAAAA</div>

8 </div>

9 </t>

10 </t>

11

12 </templates>

But still don't working

Автор

Please Sylvain can you help me? I'm not an odoo expert and I need help, thanks

Can you contact me on Skype?

Автор

No I'm sorry, thanks anyway. But tell me if the code is correct or if you need more info than post it here.

You must add a JS function to render the custom file after customization.

var ajax = require("web.ajax");

var core = require("web.core");

var document_signing = require("website_sign.document_signing");

ajax.loadXML("/your_module/static/src/xml/your_file.xml", core.qweb).then(function () {

document_signing.initDocumentToSign();

});

Автор

views/assets.xml:

1 <?xml version="1.0" encoding="utf-8"?>

2 <odoo>

3 <data>

4 <template id="remove_ad_sign" inherit_id="web.assets_frontend" name="Remove signature ad">

5 <xpath expr="//script[last()]" position="replace">

6 <script type="text/javascript"

7 src="/my_model/static/src/js/remove_ad_signature.js"></script>

8 </xpath>

9 </template>

10 </data>

11 </odoo>

~

static/src/js/remove_ad_signature.js

1 odoo.define('website_esign.remove_ad_signature', function(require) {

2 'use strict'

3

4

5 var ajax = require("web.ajax");

6 var core = require("web.core");

7 var document_signing = require("website_sign.document_signing");

8

9 ajax.loadXML("/my_model/static/src/xml/remove_ad_signature.xml", core.qweb).then(function () {

10

11 document_signing.initDocumentToSign();

12

13 });

14 })

~

__manifest__.xml

...

'data':[

...

'views/assets.xml',

...

+ 29 'qweb': ['static/src/xml/*.xml',

+ 30 'static/src/js/*.js'],

Again don't working, it is very frustrating

Автор

Little update on main question.