diff --git a/addons/website/models/ir_ui_view.py b/addons/website/models/ir_ui_view.py index 55c2d2f4fd4a8b672f19c24e1cde72bc90a6d8c6..5a8cdb4e27e4a24f901b189f394de259b4b2d50e 100644 --- a/addons/website/models/ir_ui_view.py +++ b/addons/website/models/ir_ui_view.py @@ -20,6 +20,13 @@ class View(models.Model): customize_show = fields.Boolean("Show As Optional Inherit", default=False) website_id = fields.Many2one('website', ondelete='cascade', string="Website") + page_ids = fields.One2many('website.page', compute='_compute_page_ids', store=False) + + @api.one + def _compute_page_ids(self): + self.page_ids = self.env['website.page'].search( + [('view_id', '=', self.id)] + ) @api.multi def unlink(self): @@ -142,3 +149,11 @@ class View(models.Model): return lang_code else: return super(View, self).get_default_lang_code() + + @api.multi + def redirect_to_page_manager(self): + return { + 'type': 'ir.actions.act_url', + 'url': '/website/pages', + 'target': 'self', + } diff --git a/addons/website/views/website_views.xml b/addons/website/views/website_views.xml index b1ba7a96382ff01bd396f134b0cda516afbb1a64..97fe532e74552d833d0b4e985c1ce07e47be7e79 100644 --- a/addons/website/views/website_views.xml +++ b/addons/website/views/website_views.xml @@ -209,12 +209,17 @@ <field name="inherit_id" ref="base.view_view_form"/> <field name="arch" type="xml"> - <field name="name" position="after"> <field name="website_id" readonly="1"/> <field name="key" readonly="1"/> + <field name="page_ids" invisible="1" /> </field> - + <sheet position="before"> + <header> + <button name="redirect_to_page_manager" string="Go to Page Manager" + type="object" attrs="{'invisible': [('page_ids', '=', [])]}"/> + </header> + </sheet> </field> </record>