summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRomain Derie <rde@odoo.com>2018-12-21 13:47:58 +0000
committerRomain Derie <rde@odoo.com>2018-12-21 13:47:58 +0000
commitd73c4e583afbb3fbe2c236c718c04ded7a5e127d (patch)
tree198644674c35213e44f240ebc4b26d7103912fee
parent8d6bb22298ed2980124831118a805d3a6a9622f9 (diff)
[FIX] website_*: prevent record to be unpublished on website change
Before this commit, when changing the website field in a record form view, the is_published field would be force to false, ending unpublishing the record if it was published. That behavior was coming from the fact that is_published field is missing from the form view. Thus, onchange on website is triggering a recompute server side without is_published as the JS framework is not sending the field. The ORM is then fallbacking on default Boolean value (False) for is_published when sending back the onchange result. This would only appear on object with 'website.published.multi.mixin' and with website_id in the form view. task-1919689 closes odoo/odoo#29707
-rw-r--r--addons/website_event/views/event_views.xml1
-rw-r--r--addons/website_hr/views/hr_employee_views.xml1
-rw-r--r--addons/website_hr_recruitment/views/hr_recruitment_views.xml1
-rw-r--r--addons/website_sale/views/product_views.xml1
-rw-r--r--addons/website_slides/views/website_slides_backend.xml1
5 files changed, 5 insertions, 0 deletions
diff --git a/addons/website_event/views/event_views.xml b/addons/website_event/views/event_views.xml
index 7e4df97c36a..37391294ebc 100644
--- a/addons/website_event/views/event_views.xml
+++ b/addons/website_event/views/event_views.xml
@@ -40,6 +40,7 @@
class="oe_stat_button"
icon="fa-globe">
<field name="website_published" widget="website_button"/>
+ <field name="is_published" invisible="1"/>
</button>
</button>
<label for="is_online" position="after">
diff --git a/addons/website_hr/views/hr_employee_views.xml b/addons/website_hr/views/hr_employee_views.xml
index e48c6e6b38d..85dc0039676 100644
--- a/addons/website_hr/views/hr_employee_views.xml
+++ b/addons/website_hr/views/hr_employee_views.xml
@@ -10,6 +10,7 @@
<button class="oe_stat_button" name="website_publish_button"
type="object" icon="fa-globe" groups="hr.group_hr_user">
<field name="website_published" widget="website_button"/>
+ <field name="is_published" invisible="1"/>
</button>
</button>
<xpath expr="//page[@name='public']/group" position="inside">
diff --git a/addons/website_hr_recruitment/views/hr_recruitment_views.xml b/addons/website_hr_recruitment/views/hr_recruitment_views.xml
index b74351b389a..059041a31b5 100644
--- a/addons/website_hr_recruitment/views/hr_recruitment_views.xml
+++ b/addons/website_hr_recruitment/views/hr_recruitment_views.xml
@@ -20,6 +20,7 @@
<button class="oe_stat_button" name="website_publish_button"
type="object" icon="fa-globe">
<field name="website_published" widget="website_button"/>
+ <field name="is_published" invisible="1"/>
</button>
</div>
</field>
diff --git a/addons/website_sale/views/product_views.xml b/addons/website_sale/views/product_views.xml
index d3f3fbd2a81..52b57be8deb 100644
--- a/addons/website_sale/views/product_views.xml
+++ b/addons/website_sale/views/product_views.xml
@@ -88,6 +88,7 @@
<button class="oe_stat_button" name="website_publish_button"
type="object" icon="fa-globe" attrs="{'invisible': [('sale_ok','=',False)]}">
<field name="website_published" widget="website_button"/>
+ <field name="is_published" invisible="1"/>
</button>
</xpath>
<xpath expr="//page[@name='sales']" position="after">
diff --git a/addons/website_slides/views/website_slides_backend.xml b/addons/website_slides/views/website_slides_backend.xml
index cf496a3d24b..ff0049de680 100644
--- a/addons/website_slides/views/website_slides_backend.xml
+++ b/addons/website_slides/views/website_slides_backend.xml
@@ -212,6 +212,7 @@
<button class="oe_stat_button" name="website_publish_button"
type="object" icon="fa-globe">
<field name="website_published" widget="website_button"/>
+ <field name="is_published" invisible="1"/>
</button>
<button name="toggle_active" type="object" confirm="(Un)archiving a channel automatically (un)archives its slides. Do you want to proceed?" class="oe_stat_button" icon="fa-archive">
<field name="active" widget="boolean_button" options='{"terminology": "archive"}'/>