summaryrefslogtreecommitdiff
path: root/addons/website
diff options
context:
space:
mode:
authorChristophe Simonis <chs@odoo.com>2018-01-10 11:41:35 +0100
committerChristophe Simonis <chs@odoo.com>2018-01-10 11:41:35 +0100
commit228ecdbe28246b0031a9cf7e63b90f4ae11131df (patch)
tree33a3c3807c98ee79352abce486decd365e33b1b9 /addons/website
parent8270b212909de5cb26e958c023a4f0a27947eeef (diff)
parentff0abd214c89dce19984ed0f3c72ea556e23da01 (diff)
[MERGE] forward port branch 11.0 up to ff0abd214c8
Diffstat (limited to 'addons/website')
-rw-r--r--addons/website/models/__init__.py1
-rw-r--r--addons/website/models/ir_model.py15
-rw-r--r--addons/website/models/res_config_settings.py1
-rw-r--r--addons/website/security/website_security.xml4
4 files changed, 21 insertions, 0 deletions
diff --git a/addons/website/models/__init__.py b/addons/website/models/__init__.py
index e9e790cc0ca..750744ce7d1 100644
--- a/addons/website/models/__init__.py
+++ b/addons/website/models/__init__.py
@@ -11,3 +11,4 @@ from . import res_company
from . import res_partner
from . import res_config_settings
from . import ir_model_fields
+from . import ir_model
diff --git a/addons/website/models/ir_model.py b/addons/website/models/ir_model.py
new file mode 100644
index 00000000000..6d254374c38
--- /dev/null
+++ b/addons/website/models/ir_model.py
@@ -0,0 +1,15 @@
+# -*- coding: utf-8 -*-
+# Part of Odoo. See LICENSE file for full copyright and licensing details
+
+from odoo import api, models
+
+
+# This is a nasty hack, targeted for V11 only
+class IrModel(models.Model):
+ _inherit = 'ir.model'
+
+ @api.multi
+ def unlink(self):
+ self.env.cr.execute(
+ "DELETE FROM ir_model_fields WHERE name='website_id'")
+ return super(IrModel, self).unlink()
diff --git a/addons/website/models/res_config_settings.py b/addons/website/models/res_config_settings.py
index 60332d9e1a4..2cef7af3dce 100644
--- a/addons/website/models/res_config_settings.py
+++ b/addons/website/models/res_config_settings.py
@@ -13,6 +13,7 @@ class ResConfigSettings(models.TransientModel):
def _default_website(self):
return self.env['website'].search([], limit=1)
+ # FIXME: Set website_id to ondelete='cascade' in master
website_id = fields.Many2one('website', string="website", default=_default_website, required=True)
website_name = fields.Char('Website Name', related='website_id.name')
language_ids = fields.Many2many(related='website_id.language_ids', relation='res.lang')
diff --git a/addons/website/security/website_security.xml b/addons/website/security/website_security.xml
index 99264d4e460..6702d0878f1 100644
--- a/addons/website/security/website_security.xml
+++ b/addons/website/security/website_security.xml
@@ -15,6 +15,10 @@
<field name="groups_id" eval="[(4, ref('group_website_designer'))]"/>
</record>
+ <record id="base.group_system" model="res.groups">
+ <field name="implied_ids" eval="[(4, ref('website.group_website_designer'))]"/>
+ </record>
+
<record id="website_designer_edit_qweb" model="ir.rule">
<field name="name">website_designer: Manage Website and qWeb view</field>
<field name="model_id" ref="base.model_ir_ui_view"/>