summaryrefslogtreecommitdiff
path: root/addons/website_theme_install/models/theme_models.py
diff options
context:
space:
mode:
Diffstat (limited to 'addons/website_theme_install/models/theme_models.py')
-rw-r--r--addons/website_theme_install/models/theme_models.py17
1 files changed, 16 insertions, 1 deletions
diff --git a/addons/website_theme_install/models/theme_models.py b/addons/website_theme_install/models/theme_models.py
index 808af1e091e..f073fb5efbe 100644
--- a/addons/website_theme_install/models/theme_models.py
+++ b/addons/website_theme_install/models/theme_models.py
@@ -2,7 +2,7 @@
# Part of Odoo. See LICENSE file for full copyright and licensing details.
import logging
-from odoo import fields, models
+from odoo import api, fields, models
from odoo.modules.module import get_resource_from_path
_logger = logging.getLogger(__name__)
@@ -70,6 +70,21 @@ class Theme(models.AbstractModel):
method = getattr(self.with_context(website_id=website.id), theme_post_copy)
return method(mod)
+ @api.model
+ def _toggle_view(self, xml_id, active):
+ obj = self.env.ref(xml_id)
+ if obj._name == 'theme.ir.ui.view':
+ website = self.env['website'].get_current_website()
+ obj = obj.copy_ids.filtered(lambda x: x.website_id == website)
+ obj.write({'active': active})
+
+ @api.model
+ def enable_view(self, xml_id):
+ self._toggle_view(xml_id, True)
+
+ @api.model
+ def disable_view(self, xml_id):
+ self._toggle_view(xml_id, False)
class IrUiView(models.Model):
_inherit = 'ir.ui.view'