diff options
| author | rde <rde@odoo.com> | 2017-09-15 12:36:59 +0200 |
|---|---|---|
| committer | Jeremy Kersten <jke@odoo.com> | 2017-09-15 15:29:37 +0200 |
| commit | 4ecbacaf59576a22ff45615a5aa5c67244e4fb93 (patch) | |
| tree | b1d38321d2838579ccb8adc2f3fcdd0765351fcc /addons/website/data/website_data.xml | |
| parent | 13a44d33bda1d7ff21e3de5de8b3c84f6a482a0d (diff) | |
[ADD] website: add new page management
website.page = old ir.ui.view with page=True
website.redirect is a new mechanism to replace in the futur the ir.attachment
mechanism of redirect.
From now, we don't have a specific /page controller to serve 'page'.
We use a new model website.page which is rendered if none route matches the url
and that the field 'url' on website.page matches the request.httprequest.path.
The order to serve a path is:
- Routes defines in controllers (/shop, /blog, ...)
- ir.attachment with name matching the path
- website.page with url matching the path
- website.redirect with url_from matching the path
- 404
To improve:
- allow regexp in website.redirect model
- allow to edit the view_arch from the page.management via redirect backend
(needed when traceback in the page, or when modifying a js/css/less/...)
Diffstat (limited to 'addons/website/data/website_data.xml')
| -rw-r--r-- | addons/website/data/website_data.xml | 145 |
1 files changed, 142 insertions, 3 deletions
diff --git a/addons/website/data/website_data.xml b/addons/website/data/website_data.xml index f9f0c5a9935..61020e3d224 100644 --- a/addons/website/data/website_data.xml +++ b/addons/website/data/website_data.xml @@ -16,7 +16,7 @@ <record id="menu_homepage" model="website.menu"> <field name="name">Home</field> - <field name="url">/page/homepage</field> + <field name="url">/</field> <field name="parent_id" ref="website.main_menu"/> <field name="sequence" type="int">10</field> <field name="website_id" ref="default_website"/> @@ -24,12 +24,151 @@ <record id="menu_contactus" model="website.menu"> <field name="name">Contact us</field> - <field name="url">/page/contactus</field> + <field name="url">/contactus</field> <field name="parent_id" ref="website.main_menu"/> <field name="sequence" type="int">60</field> <field name="website_id" ref="default_website"/> </record> + <!-- + Keep homepage & contactus page split between ir_ui_view & website_page record + So external_id of the ir_ui_view record is still 'website.contactus' and not 'website.contactus_ir_ui_view' (same for homepage) + Indeed Odoo put a suffix on external_id on submodels records (inherits) with the model's name as suffix. + eg: record website_page is 'website.contactus' & ir_ui_view record is 'website.contactus_ir_ui_view' + but since website_crm_template.xml (and surely others) inherit the contactus ir_ui_view record (inherit_id="website.contactus"), + the external_id of the contactus ir_ui_view record still has to be 'website.contactus'. + (Put in another way, external_id 'website.contactus' can't be the external_id of the website_page record or the inherit will ofc fail) + (Or change inherit_id in related files but possibly alot. Safer this way) + --> + <record id="homepage" model="ir.ui.view"> + <field name="name">Home</field> + <field name="type">qweb</field> + <field name="key">website.homepage</field> + <field name="arch" type="xml"> + <t name="Home" priority="29" t-name="website.homepage"> + <t t-call="website.layout"> + <t t-set="pageName" t-value="'homepage'"/> + <div id="wrap" class="oe_structure oe_empty"/> + </t> + </t> + </field> + </record> + <record id="homepage_page" model="website.page"> + <field name="name">Home</field> + <field name="website_published">True</field> + <field name="url">/</field> + <field name="ir_ui_view_id" ref="homepage" /> + </record> + <record id="default_website" model="website"> + <field name="homepage_id" ref="homepage_page" /> + </record> + + <record id="contactus" model="ir.ui.view"> + <field name="name">Contact Us</field> + <field name="type">qweb</field> + <field name="key">website.contactus</field> + <field name="arch" type="xml"> + <t name="Contact Us" t-name="website.contactus"> + <t t-call="website.layout"> + <div id="wrap"> + <div class="oe_structure"/> + <div class="container"> + <h1>Contact us</h1> + <div class="row"> + <div class="col-md-8"> + <div class="oe_structure"> + <div> + <p>Contact us about anything related to our company or services.</p> + <p>We'll do our best to get back to you as soon as possible.</p> + </div> + </div> + <div class="text-center mt64" name="mail_button"> + <a t-attf-href="mailto:{{ res_company.email }}" class="btn btn-primary" id="o_contact_mail">Send us an email</a> + </div> + </div> + <div class="col-md-4 mb32"> + <t t-call="website.company_description"/> + </div> + </div> + </div> + <div class="oe_structure"/> + </div> + </t> + </t> + </field> + </record> + <record id="contactus_page" model="website.page"> + <field name="name">Contact Us</field> + <field name="url">/contactus</field> + <field name="website_published">True</field> + <field name="ir_ui_view_id" ref="contactus" /> + </record> + + <record id="aboutus" model="ir.ui.view"> + <field name="name">About us</field> + <field name="type">qweb</field> + <field name="key">website.aboutus</field> + <field name="arch" type="xml"> + <t name="About us" t-name="website.aboutus"> + <t t-call="website.layout"> + <div id="wrap"> + <div class="oe_structure"> + + <section> + <div class="container"> + <div class="row"> + <div class="col-md-12"> + <h1 class="text-center">About us</h1> + <h3 class="text-muted text-center">Great products for great people</h3> + </div> + </div> + </div> + </section> + + <section> + <div class="container"> + <div class="row"> + <div class="col-md-6 mt32"> + <p> + We are a team of passionate people whose goal is to improve everyone's + life through disruptive products. We build great products to solve your + business problems. + </p> + <p> + Our products are designed for small to medium size companies willing to optimize + their performance. + </p> + </div> + <div class="col-md-4 col-md-offset-2 mt16 mb16"> + <img src="/website/static/src/img/library/business_conference.jpg" class="img img-responsive shadow" alt="Our Team"/> + </div> + </div> + </div> + </section> + + </div> + <div class="oe_structure"></div> + </div> + </t> + </t> + </field> + </record> + + <record id="aboutus_page" model="website.page"> + <field name="name">About us</field> + <field name="website_published">True</field> + <field name="url">/aboutus</field> + <field name="ir_ui_view_id" ref="aboutus" /> + </record> + + <record id="menu_homepage" model="website.menu"> + <field name="page_id" ref="homepage_page" /> + </record> + + <record id="menu_contactus" model="website.menu"> + <field name="page_id" ref="contactus_page" /> + </record> + <record id="action_module_website" model="ir.actions.act_window"> <field name="name">Website Apps</field> <field name="res_model">ir.module.module</field> @@ -61,7 +200,7 @@ </record> <record id="action_website_homepage" model="ir.actions.act_url"> <field name="name">Website Homepage</field> - <field name="url">/page/homepage</field> + <field name="url">/</field> <field name="target">self</field> </record> |
