After this commit, you will be able (in technical mode) to update the url for the python controllers. Eg. You can now rename /shop in /garden and /shop/product/ in /garden/vegetable/ Most of urls will be replaced at fly in the renderd qweb, with the function url_for but all old urls will keep available. So if you access url /shop you will be automatically redirected to /garden (308 Permanent Redirect). As for cdn and other post-process of att, the automatically replacement in the rendered qweb is only done when you will be not website editor. But the new dispatch of URL will be applied in all cases. For developper, since it is Permanent Redirect, don't forget to clear cache or open chrome debug tool (with option 'Disable cache while DevTools is Open) to see your lasts changes. closes odoo/odoo#36555 Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
294 lines
13 KiB
XML
294 lines
13 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<odoo>
|
|
<data>
|
|
<!-- Menu items -->
|
|
<menuitem name="Website"
|
|
id="menu_website_configuration"
|
|
sequence="9"
|
|
groups="base.group_user"
|
|
web_icon="website,static/description/icon.png"/>
|
|
|
|
<record id="action_website_add_features" model="ir.actions.act_window">
|
|
<field name="name">Apps</field>
|
|
<field name="type">ir.actions.act_window</field>
|
|
<field name="res_model">ir.module.module</field>
|
|
<field name="view_mode">kanban,tree,form</field>
|
|
<field name="domain">['!', ('name', '=like', 'theme_%')]</field>
|
|
<field name="context" eval="{'search_default_category_id': ref('base.module_category_website')}"/>
|
|
</record>
|
|
|
|
|
|
<!-- website views -->
|
|
<record id="view_website_form" model="ir.ui.view">
|
|
<field name="name">website.form</field>
|
|
<field name="model">website</field>
|
|
<field name="arch" type="xml">
|
|
<form string="Website Settings">
|
|
<sheet>
|
|
<div name="domain">
|
|
<group name="domain">
|
|
<field name="name"/>
|
|
<field name="domain"/>
|
|
</group>
|
|
</div>
|
|
<div name="logo">
|
|
<group name="logo">
|
|
<field name="logo" widget="image" class="oe_avatar float-left"/>
|
|
</group>
|
|
</div>
|
|
<div name="other">
|
|
<group name="other">
|
|
<field name="company_id" widget="selection" groups="base.group_multi_company"/>
|
|
<field name="default_lang_id" widget="selection" groups="base.group_no_one"/>
|
|
</group>
|
|
</div>
|
|
</sheet>
|
|
</form>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="view_website_tree" model="ir.ui.view">
|
|
<field name="name">website.tree</field>
|
|
<field name="model">website</field>
|
|
<field name="arch" type="xml">
|
|
<tree string="Websites">
|
|
<field name="name"/>
|
|
<field name="domain"/>
|
|
<field name="country_group_ids" widget="many2many_tags"/>
|
|
<field name="company_id" groups="base.group_multi_company"/>
|
|
<field name="default_lang_id"/>
|
|
<field name="theme_id" groups="base.group_no_one"/>
|
|
</tree>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="action_website_list" model="ir.actions.act_window">
|
|
<field name="name">Websites</field>
|
|
<field name="res_model">website</field>
|
|
<field name="view_mode">tree,form</field>
|
|
<field name="view_id" ref="view_website_tree"/>
|
|
<field name="target">current</field>
|
|
</record>
|
|
|
|
|
|
<!-- website.page views -->
|
|
<record id="website_pages_form_view" model="ir.ui.view">
|
|
<field name="name">website.page.form</field>
|
|
<field name="model">website.page</field>
|
|
<field name="arch" type="xml">
|
|
<form string="Website Page Settings">
|
|
<sheet>
|
|
<group>
|
|
<group>
|
|
<field name="name"/>
|
|
<field name="url"/>
|
|
<field name="view_id" context="{'display_website': True}"/>
|
|
<field name="website_id" options="{'no_create': True}" groups="website.group_multi_website"/>
|
|
<field name="track"/>
|
|
</group>
|
|
<group>
|
|
<field name="website_indexed"/>
|
|
<field name="is_published"/>
|
|
<field name="date_publish"/>
|
|
</group>
|
|
</group>
|
|
<label for="menu_ids" string="Related Menu Items"/>
|
|
<field name="menu_ids"/>
|
|
</sheet>
|
|
</form>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="website_pages_tree_view" model="ir.ui.view">
|
|
<field name="name">website.page.list</field>
|
|
<field name="model">website.page</field>
|
|
<field name="arch" type="xml">
|
|
<tree string="Website Pages" default_order="name">
|
|
<field name="name"/>
|
|
<field name="url"/>
|
|
<field name="website_id" groups="website.group_multi_website"/>
|
|
<field name="website_indexed"/>
|
|
<field name="is_published" string="Page Published"/>
|
|
<field name="create_uid" invisible="1"/>
|
|
<field name="write_uid"/>
|
|
<field name="write_date"/>
|
|
<field name="track"/>
|
|
</tree>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="website_pages_view_search" model="ir.ui.view">
|
|
<field name="name">website.page.view.search</field>
|
|
<field name="model">website.page</field>
|
|
<field name="arch" type="xml">
|
|
<search string="Website Pages" >
|
|
<filter string="Published" name="published" domain="[('website_published', '=', True)]"/>
|
|
<filter string="Not published" name="not_published" domain="[('website_published', '=', False)]"/>
|
|
<separator/>
|
|
<filter string="Tracked" name="tracked" domain="[('track', '=', True)]"/>
|
|
<filter string="Not tracked" name="not_tracked" domain="[('track', '=', False)]"/>
|
|
</search>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="action_website_pages_list" model="ir.actions.act_window">
|
|
<field name="name">Website Pages</field>
|
|
<field name="res_model">website.page</field>
|
|
<field name="view_mode">tree,form</field>
|
|
<field name="view_id" ref="website_pages_tree_view"/>
|
|
<field name="target">current</field>
|
|
</record>
|
|
|
|
<!-- website.menu views -->
|
|
<record id="website_menus_form_view" model="ir.ui.view">
|
|
<field name="name">website.menu.form</field>
|
|
<field name="model">website.menu</field>
|
|
<field name="arch" type="xml">
|
|
<form string="Website Menus Settings">
|
|
<sheet>
|
|
<group>
|
|
<group>
|
|
<field name="name"/>
|
|
<field name="url"/>
|
|
<field name="page_id"/>
|
|
<field name="is_mega_menu"/>
|
|
</group>
|
|
<group>
|
|
<field name="new_window"/>
|
|
<field name="sequence"/>
|
|
<field name="website_id" options="{'no_create': True}" groups="website.group_multi_website"/>
|
|
</group>
|
|
<group>
|
|
<field name="parent_id" context="{'display_website': True}"/>
|
|
<field name="group_ids"/>
|
|
</group>
|
|
</group>
|
|
<label for="child_id" string="Child Menus"/>
|
|
<field name="child_id">
|
|
<tree>
|
|
<field name="sequence" widget="handle"/>
|
|
<field name="name"/>
|
|
<field name="url"/>
|
|
</tree>
|
|
</field>
|
|
</sheet>
|
|
</form>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="menu_tree" model="ir.ui.view">
|
|
<field name="name">website.menu.tree</field>
|
|
<field name="model">website.menu</field>
|
|
<field name="field_parent">child_id</field>
|
|
<field name="arch" type="xml">
|
|
<tree string="Website menu" editable="bottom">
|
|
<field name="sequence" widget="handle"/>
|
|
<field name="website_id" options="{'no_create': True}" groups="website.group_multi_website"/>
|
|
<field name="name"/>
|
|
<field name="url"/>
|
|
<field name="is_mega_menu"/>
|
|
<field name="new_window"/>
|
|
<field name="parent_id" context="{'display_website': True}"/>
|
|
<field name="group_ids" widget="many2many_tags"/>
|
|
</tree>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="menu_search" model="ir.ui.view">
|
|
<field name="name">website.menu.search</field>
|
|
<field name="model">website.menu</field>
|
|
<field name="arch" type="xml">
|
|
<search string="Search Menus">
|
|
<field name="name"/>
|
|
<field name="url"/>
|
|
<field name="website_id" groups="website.group_multi_website"/>
|
|
<group string="Group By">
|
|
<filter string="name" name="group_by_name" domain="[]" context="{'group_by':'name'}"/>
|
|
<filter string="url" name="group_by_url" domain="[]" context="{'group_by':'url'}"/>
|
|
<filter string="website" name="my_websites" domain="[]" context="{'group_by':'website_id'}"/>
|
|
</group>
|
|
</search>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="action_website_menu" model="ir.actions.act_window">
|
|
<field name="name">Website Menu</field>
|
|
<field name="res_model">website.menu</field>
|
|
<field name="view_mode">tree,form</field>
|
|
<field name="context">{'search_default_my_websites':1}</field>
|
|
<field name="view_id" ref="menu_tree"/>
|
|
<field name="target">current</field>
|
|
</record>
|
|
|
|
<!-- ir.ui.view views -->
|
|
<record model="ir.ui.view" id="view_view_form_extend">
|
|
<field name="model">ir.ui.view</field>
|
|
|
|
<field name="inherit_id" ref="base.view_view_form"/>
|
|
<field name="arch" type="xml">
|
|
<field name="inherit_id" position="attributes">
|
|
<attribute name="context">{'display_website': True}</attribute>
|
|
</field>
|
|
<field name="name" position="after">
|
|
<field name="website_id" options="{'no_create': True}" groups="website.group_multi_website"/>
|
|
<field name="key"/>
|
|
<field name="page_ids" invisible="1" />
|
|
<field name="first_page_id" attrs="{'invisible': [('page_ids', '=', [])]}" />
|
|
</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>
|
|
<record id="view_view_tree_inherit_website" model="ir.ui.view">
|
|
<field name="model">ir.ui.view</field>
|
|
<field name="inherit_id" ref="base.view_view_tree"/>
|
|
<field name="arch" type="xml">
|
|
<field name="name" position="after">
|
|
<field name="website_id" groups="website.group_multi_website"/>
|
|
</field>
|
|
<field name="xml_id" position="before">
|
|
<field name="key" groups="website.group_multi_website"/>
|
|
</field>
|
|
</field>
|
|
</record>
|
|
|
|
<!-- Dashboard -->
|
|
<record id="backend_dashboard" model="ir.actions.client">
|
|
<field name="name">Analytics</field>
|
|
<field name="tag">backend_dashboard</field>
|
|
</record>
|
|
|
|
<record id="ir_actions_server_website_dashboard" model="ir.actions.server">
|
|
<field name="name">Website: Dashboard</field>
|
|
<field name="model_id" ref="website.model_website"/>
|
|
<field name="state">code</field>
|
|
<field name="code">action = model.action_dashboard_redirect()</field>
|
|
</record>
|
|
|
|
<record id="ir_actions_server_website_google_analytics" model="ir.actions.server">
|
|
<field name="name">Website: Dashboard</field>
|
|
<field name="model_id" ref="website.model_website"/>
|
|
<field name="state">code</field>
|
|
<field name="code">action = model.env.ref('website.backend_dashboard').read()[0]</field>
|
|
</record>
|
|
|
|
<menuitem id="menu_dashboard"
|
|
name="Dashboard"
|
|
sequence="1"
|
|
parent="website.menu_website_configuration"/>
|
|
|
|
<menuitem id="menu_website_dashboard" parent="menu_dashboard"
|
|
sequence="10" name="eCommerce Dashboard"
|
|
action="website.ir_actions_server_website_dashboard" active="0"/>
|
|
|
|
<menuitem id="menu_website_google_analytics" parent="menu_dashboard"
|
|
sequence="20" name="Analytics"
|
|
action="website.ir_actions_server_website_google_analytics"/>
|
|
|
|
</data>
|
|
</odoo>
|