[IMP] theme_real_estate: update the theme

This commit updates the theme to improve the design with new colors, new
pictures and new snippet customizations.

task-2551125

X-original-commit: 42638dcf22
Part-of: odoo/design-themes#501
This commit is contained in:
xlu-odoo
2021-06-24 14:55:03 +00:00
committed by qsm-odoo
parent 08e5a8a968
commit b10cfcc82b
48 changed files with 659 additions and 340 deletions
+17
View File
@@ -14,13 +14,30 @@
'views/snippets/s_banner.xml', 'views/snippets/s_banner.xml',
'views/snippets/s_picture.xml', 'views/snippets/s_picture.xml',
'views/snippets/s_image_text.xml', 'views/snippets/s_image_text.xml',
'views/snippets/s_text_image.xml',
'views/snippets/s_three_columns.xml', 'views/snippets/s_three_columns.xml',
'views/snippets/s_quotes_carousel.xml', 'views/snippets/s_quotes_carousel.xml',
'views/snippets/s_text_block.xml',
'views/snippets/s_masonry_block.xml',
'views/snippets/s_numbers.xml',
'views/snippets/s_title.xml',
'views/snippets/s_image_gallery.xml',
'views/snippets/s_call_to_action.xml',
], ],
'images': [ 'images': [
'static/description/real_estate_description.png', 'static/description/real_estate_description.png',
'static/description/real_estate_screenshot.jpg', 'static/description/real_estate_screenshot.jpg',
], ],
'images_preview_theme': {
'website.s_banner_default_image': '/theme_real_estate/static/src/img/snippets/s_banner.jpg',
'website.s_text_image_default_image': '/theme_real_estate/static/src/img/snippets/s_text_image.jpg',
'website.s_image_text_default_image': '/theme_real_estate/static/src/img/snippets/s_image_text.jpg',
'website.s_three_columns_default_image_1': '/theme_real_estate/static/src/img/snippets/library_image_11.jpg',
'website.s_three_columns_default_image_2': '/theme_real_estate/static/src/img/snippets/library_image_13.jpg',
'website.s_three_columns_default_image_3': '/theme_real_estate/static/src/img/snippets/library_image_07.jpg',
'website.s_masonry_block_default_image_1': '/theme_real_estate/static/src/img/snippets/s_masonry_block.jpg',
'website.s_quotes_carousel_demo_image_1': '/theme_real_estate/static/src/img/snippets/s_quotes_carousel_1.jpg',
},
'license': 'LGPL-3', 'license': 'LGPL-3',
'live_test_url': 'https://theme-real-estate.odoo.com', 'live_test_url': 'https://theme-real-estate.odoo.com',
'assets': { 'assets': {
-2
View File
@@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<odoo> <odoo>
<data>
<record id="theme_real_estate.primary_variables_scss" model="theme.ir.asset"> <record id="theme_real_estate.primary_variables_scss" model="theme.ir.asset">
<field name="key">theme_real_estate.primary_variables_scss</field> <field name="key">theme_real_estate.primary_variables_scss</field>
@@ -17,5 +16,4 @@
<field name="active" eval="False"/> <field name="active" eval="False"/>
</record> </record>
</data>
</odoo> </odoo>
@@ -8,12 +8,5 @@ class ThemeRealEstate(models.AbstractModel):
# For compatibility # For compatibility
# self.enable_asset('theme_common.compatibility_saas_10_2') # self.enable_asset('theme_common.compatibility_saas_10_2')
self.disable_view('website.template_header_default')
self.enable_view('website.template_header_hamburger')
self.enable_header_off_canvas()
self.disable_view('website.footer_custom')
self.enable_view('website.template_footer_descriptive')
self.enable_asset('website.ripple_effect_scss') self.enable_asset('website.ripple_effect_scss')
self.enable_asset('website.ripple_effect_js') self.enable_asset('website.ripple_effect_js')
Binary file not shown.

Before

Width:  |  Height:  |  Size: 186 KiB

After

Width:  |  Height:  |  Size: 81 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 74 KiB

After

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 118 KiB

After

Width:  |  Height:  |  Size: 90 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 101 KiB

After

Width:  |  Height:  |  Size: 105 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 157 KiB

After

Width:  |  Height:  |  Size: 110 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 194 KiB

After

Width:  |  Height:  |  Size: 249 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 196 KiB

After

Width:  |  Height:  |  Size: 145 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 114 KiB

After

Width:  |  Height:  |  Size: 79 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 335 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 230 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 357 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 150 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 211 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 98 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 449 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 166 KiB

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 100 KiB

After

Width:  |  Height:  |  Size: 310 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 156 KiB

After

Width:  |  Height:  |  Size: 235 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 117 KiB

After

Width:  |  Height:  |  Size: 247 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 196 KiB

After

Width:  |  Height:  |  Size: 217 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 63 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 75 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 62 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

After

Width:  |  Height:  |  Size: 83 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 190 KiB

After

Width:  |  Height:  |  Size: 313 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 167 KiB

After

Width:  |  Height:  |  Size: 319 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 153 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 83 KiB

After

Width:  |  Height:  |  Size: 105 KiB

+29 -4
View File
@@ -10,17 +10,37 @@ const snippets = [
name: 'Banner', name: 'Banner',
}, },
{ {
id: 's_picture', id: 's_text_block',
name: 'Picture', name: 'Text',
},
{
id: 's_text_image',
name: 'Text - Image',
}, },
{ {
id: 's_image_text', id: 's_image_text',
name: 'Image - Text', name: 'Image - Text',
}, },
{
id: 's_title',
name: 'Title',
},
{ {
id: 's_three_columns', id: 's_three_columns',
name: 'Columns', name: 'Columns',
}, },
{
id: 's_title:last-child',
name: 'Title',
},
{
id: 's_masonry_block',
name: 'Masonry',
},
{
id: 's_numbers',
name: 'Numbers',
},
{ {
id: 's_quotes_carousel', id: 's_quotes_carousel',
name: 'Quotes', name: 'Quotes',
@@ -34,10 +54,15 @@ wTourUtils.registerThemeHomepageTour("real_estate_tour", [
wTourUtils.dragNDrop(snippets[1]), wTourUtils.dragNDrop(snippets[1]),
wTourUtils.dragNDrop(snippets[2]), wTourUtils.dragNDrop(snippets[2]),
wTourUtils.dragNDrop(snippets[3]), wTourUtils.dragNDrop(snippets[3]),
wTourUtils.clickOnSnippet(snippets[3]), wTourUtils.dragNDrop(snippets[4]),
wTourUtils.clickOnSnippet(snippets[4]),
wTourUtils.changeBackgroundColor(), wTourUtils.changeBackgroundColor(),
wTourUtils.selectColorPalette(), wTourUtils.selectColorPalette(),
wTourUtils.goBackToBlocks(), wTourUtils.goBackToBlocks(),
wTourUtils.dragNDrop(snippets[4]), wTourUtils.dragNDrop(snippets[5]),
wTourUtils.dragNDrop(snippets[6]),
wTourUtils.dragNDrop(snippets[7]),
wTourUtils.dragNDrop(snippets[8]),
wTourUtils.dragNDrop(snippets[9]),
]); ]);
}); });
@@ -68,23 +68,36 @@ $o-theme-font-configs: (
), ),
); );
$o-theme-h1-font-size-multiplier: (62 / 16);
$o-theme-h2-font-size-multiplier: (36 / 16);
$o-theme-h3-font-size-multiplier: (24 / 16);
$o-theme-h4-font-size-multiplier: (20 / 16);
$o-theme-h5-font-size-multiplier: (18 / 16);
$o-theme-h6-font-size-multiplier: (16 / 16);
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
// Website customizations // Website customizations
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
$btn-font-weight: 500;
$o-website-values-palettes: ( $o-website-values-palettes: (
( (
'color-palettes-name': 'real-estate-1', 'color-palettes-name': 'real-estate-4',
'header-font-size': (18 / 16) * 1rem, // Header
'font': 'Nunito', 'header-template': 'default',
'headings-font': 'Nunito',
'navbar-font': 'Nunito', // Font
'buttons-font': 'Nunito', 'font': 'Roboto',
'btn-ripple': true, 'headings-font': 'Roboto',
'header-template': 'hamburger', 'navbar-font': 'Roboto',
'hamburger-type': 'off-canvas', 'buttons-font': 'Roboto',
'hamburger-position': 'left',
'footer-template': 'descriptive', // Buttons
'btn-border-radius': 0px,
'btn-border-radius-sm': 0px,
'btn-border-radius-lg': 0px,
), ),
); );
@@ -118,7 +131,7 @@ $o-color-palettes-compatibility-indexes: (
// Shapes // Shapes
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
$o-bg-shapes: change-shape-colors-mapping('web_editor', 'Origins/18', (1: 3));
/* Keep for compatibility */
$o-bg-shapes: change-shape-colors-mapping('web_editor', 'Origins/14', (4: 4)); $o-bg-shapes: change-shape-colors-mapping('web_editor', 'Origins/14', (4: 4));
$o-bg-shapes: change-shape-colors-mapping('web_editor', 'Origins/14_001', (4: rgba(255, 255, 255, 0), 3: 4));
$o-bg-shapes: add-extra-shape-colors-mapping('web_editor', 'Origins/14', 'second', (4: 2));
$o-bg-shapes: add-extra-shape-colors-mapping('web_editor', 'Origins/14_001', 'second', (4: rgba(255, 255, 255, 0), 3: 2));
+43
View File
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<odoo> <odoo>
<!-- Not used anymore by the editor: files and records kept for back-compatibility. <!-- Not used anymore by the editor: files and records kept for back-compatibility.
Check in theme_monglia's primary_variables.scss, theme.scss and theme_common's mixins.scss --> Check in theme_monglia's primary_variables.scss, theme.scss and theme_common's mixins.scss -->
<record id="image_content_02" model="theme.ir.attachment"> <record id="image_content_02" model="theme.ir.attachment">
@@ -84,6 +85,42 @@
<field name="name">website.library_image_07</field> <field name="name">website.library_image_07</field>
<field name="url">/theme_real_estate/static/src/img/snippets/library_image_07.jpg</field> <field name="url">/theme_real_estate/static/src/img/snippets/library_image_07.jpg</field>
</record> </record>
<!-- Gallery Wall -->
<record id="library_image_03" model="theme.ir.attachment">
<field name="key">website.library_image_03</field>
<field name="name">website.library_image_03</field>
<field name="url">/theme_real_estate/static/src/img/snippets/s_images_wall_01.jpg</field>
</record>
<record id="library_image_10" model="theme.ir.attachment">
<field name="key">website.library_image_10</field>
<field name="name">website.library_image_10</field>
<field name="url">/theme_real_estate/static/src/img/snippets/s_images_wall_02.jpg</field>
</record>
<record id="library_image_19" model="theme.ir.attachment">
<field name="key">website.library_image_19</field>
<field name="name">website.library_image_19</field>
<field name="url">/theme_real_estate/static/src/img/snippets/s_images_wall_03.jpg</field>
</record>
<record id="library_image_21" model="theme.ir.attachment">
<field name="key">website.library_image_21</field>
<field name="name">website.library_image_21</field>
<field name="url">/theme_real_estate/static/src/img/snippets/s_images_wall_07.jpg</field>
</record>
<record id="library_image_05" model="theme.ir.attachment">
<field name="key">website.library_image_05</field>
<field name="name">website.library_image_05</field>
<field name="url">/theme_real_estate/static/src/img/snippets/s_images_wall_04.jpg</field>
</record>
<record id="library_image_14" model="theme.ir.attachment">
<field name="key">website.library_image_14</field>
<field name="name">website.library_image_14</field>
<field name="url">/theme_real_estate/static/src/img/snippets/s_images_wall_06.jpg</field>
</record>
<record id="library_image_16" model="theme.ir.attachment">
<field name="key">website.library_image_16</field>
<field name="name">website.library_image_16</field>
<field name="url">/theme_real_estate/static/src/img/snippets/s_images_wall_05.jpg</field>
</record>
<record id="s_masonry_block_default_image_1" model="theme.ir.attachment"> <record id="s_masonry_block_default_image_1" model="theme.ir.attachment">
<field name="key">website.s_masonry_block_default_image_1</field> <field name="key">website.s_masonry_block_default_image_1</field>
<field name="name">website.s_masonry_block_default_image_1</field> <field name="name">website.s_masonry_block_default_image_1</field>
@@ -154,6 +191,11 @@
<field name="name">website.s_product_list_default_image_6</field> <field name="name">website.s_product_list_default_image_6</field>
<field name="url">/theme_real_estate/static/src/img/snippets/s_product_6.jpg</field> <field name="url">/theme_real_estate/static/src/img/snippets/s_product_6.jpg</field>
</record> </record>
<record id="s_quotes_carousel_demo_image_0" model="theme.ir.attachment">
<field name="key">website.s_quotes_carousel_demo_image_0</field>
<field name="name">website.s_quotes_carousel_demo_image_0</field>
<field name="url">/theme_real_estate/static/src/img/snippets/s_quotes_carousel_3.jpg</field>
</record>
<record id="s_quotes_carousel_demo_image_1" model="theme.ir.attachment"> <record id="s_quotes_carousel_demo_image_1" model="theme.ir.attachment">
<field name="key">website.s_quotes_carousel_demo_image_1</field> <field name="key">website.s_quotes_carousel_demo_image_1</field>
<field name="name">website.s_quotes_carousel_demo_image_1</field> <field name="name">website.s_quotes_carousel_demo_image_1</field>
@@ -169,4 +211,5 @@
<field name="name">website.library_image_17</field> <field name="name">website.library_image_17</field>
<field name="url">/theme_real_estate/static/src/img/snippets/s_newsletter.jpg</field> <field name="url">/theme_real_estate/static/src/img/snippets/s_newsletter.jpg</field>
</record> </record>
</odoo> </odoo>
+17 -12
View File
@@ -1,28 +1,33 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<odoo> <odoo>
<template id="s_banner" inherit_id="website.s_banner"> <template id="s_banner" inherit_id="website.s_banner">
<!-- Section --> <!-- Section -->
<xpath expr="//section" position="attributes"> <xpath expr="//section" position="attributes">
<attribute name="data-oe-shape-data">{"shape":"web_editor/Origins/14_001","flip":[]}</attribute> <attribute name="class" add="o_cc o_cc3" remove="pt96 pb96" separator=" "/>
<attribute name="data-oe-shape-data">{"shape":"web_editor/Origins/18","flip":["x"]}</attribute>
</xpath> </xpath>
<!-- Shape -->
<xpath expr="//section//*[last()]" position="after"> <xpath expr="//span[hasclass('s_parallax_bg')]" position="after">
<div class="o_we_shape o_web_editor_Origins_14_001"/> <div class="o_we_bg_filter bg-black-50"></div>
<div class="o_we_shape o_web_editor_Origins_18 o_we_flip_x"/>
</xpath> </xpath>
<!-- Title --> <!-- Title -->
<xpath expr="//h1" position="replace"> <xpath expr="//div[hasclass('s_nb_column_fixed')]/div" position="attributes">
<h1> <attribute name="class" add="col-lg-7 h-100 pt160 pb160" remove="col-lg-6 jumbotron rounded o_cc o_cc1 pt32 pb32" separator=" "/>
<font style="font-size: 48px;">Real Estate Agencies.<br/> </xpath>
Near You.</font> <xpath expr="//h1" position="replace" mode="inner">
</h1> <b>Real Estate Agency.<br/>Near You.</b>
</xpath> </xpath>
<!-- Paragraph --> <!-- Paragraph -->
<xpath expr="//p" position="replace"> <xpath expr="//p" position="replace">
<p class="lead">We are specialist in the sale and rental of residential real estate.</p> <p class="lead">Now you can find more than 5,000+ property choices with our professional agents!<br/></p>
</xpath> </xpath>
<!-- Button --> <!-- Button -->
<xpath expr="//t[@t-esc='cta_btn_text']" position="replace"> <xpath expr="//t[@t-esc='cta_btn_text']" position="replace" mode="inner">
<t t-esc="cta_btn_text">Properties</t> See properties
</xpath> </xpath>
</template> </template>
</odoo> </odoo>
@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<template id="s_call_to_action" inherit_id="website.s_call_to_action">
<xpath expr="//h3" position="replace" mode="inner">
Want To Become A Real Estate Agent?
</xpath>
<xpath expr="//p" position="replace" mode="inner">
We'll help you to grow your career and growth.
</xpath>
</template>
</odoo>
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<template id="s_images_wall" inherit_id="website.s_images_wall">
<!-- Section -->
<xpath expr="//section" position="attributes">
<attribute name="class" add="pt96 pb96" remove="pt24 pb24" separator=" "/>
</xpath>
<xpath expr="//div[hasclass('o_masonry_col')][2]//img" position="replace">
<img class="img img-fluid d-block" src="/web/image/website.library_image_21" data-index="4" data-name="Image"/>
</xpath>
</template>
</odoo>
@@ -1,22 +1,36 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<odoo> <odoo>
<template id="s_image_text" inherit_id="website.s_image_text"> <template id="s_image_text" inherit_id="website.s_image_text">
<!-- Section --> <!-- Section -->
<xpath expr="//section" position="attributes"> <xpath expr="//section" position="attributes">
<attribute name="class" add="o_cc o_cc4 pb128" remove="pb32" separator=" "/> <attribute name="class" add="o_cc o_cc1 pb48 pt48" remove="pb32 pb32" separator=" "/>
<attribute name="data-oe-shape-data">{"shape":"web_editor/Origins/14_001","flip":[]}</attribute>
</xpath> </xpath>
<!-- Shape -->
<xpath expr="//div[hasclass('container')]" position="before"> <!-- Title -->
<div class="o_we_shape o_web_editor_Origins_14_001 o_second_extra_shape_mapping"/> <xpath expr="//h2" position="replace" mode="inner">
Bored with your interior?
</xpath> </xpath>
<!-- Paragraph --> <!-- Paragraph -->
<xpath expr="(//div[hasclass('col-lg-6')])[2]" position="replace"> <xpath expr="//p[1]" position="replace" mode="inner">
<div class="col-lg-6 pt16 pb16"> Our decoration experts are at your disposal to guide you step by step in the design of your interior and will give you the best advice for your interior design.
<h2>Bored with your interior?</h2> </xpath>
<p>Our decoration experts are at your disposal to guide you step by step in the design of your interior and will give you the best advice for your interior design.</p> <xpath expr="//p[2]" position="replace" mode="inner">
<p>Discover our tailor-made services to embellish the decoration of your home.</p> Discover our tailor-made services to embellish the decoration of your home.
</div> </xpath>
<xpath expr="//p[3]" position="replace">
<p><a href="#" class="btn btn-primary">Explore our services</a></p>
</xpath>
<!-- Image -->
<xpath expr="//img" position="attributes">
<attribute name="src">/web_editor/image_shape/website.s_image_text_default_image/web_editor/solid/sld_square_2.svg?c1=o-color-3</attribute>
<attribute name="data-shape">web_editor/solid/sld_square_2</attribute>
<attribute name="data-original-mimetype">image/jpeg</attribute>
<attribute name="data-file-name">s_image_text.svg</attribute>
<attribute name="data-shape-colors">o-color-3;;;;</attribute>
</xpath> </xpath>
</template> </template>
</odoo> </odoo>
@@ -0,0 +1,80 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<template id="s_masonry_block" inherit_id="website.s_masonry_block" name="Masonry">
<xpath expr="//section/div" position="attributes">
<attribute name="class" add="container" remove="container-fluid" />
</xpath>
</template>
<template id="s_masonry_block_default_template" inherit_id="website.s_masonry_block_default_template">
<!-- Little block #1 -->
<!-- Main div -->
<xpath expr="//div[hasclass('col-lg-6')][2]//div[hasclass('col-lg-6')]" position="attributes">
<attribute name="class" add="o_cc1" remove="o_cc2" />
</xpath>
<xpath expr="//div[hasclass('col-lg-6')][2]//div[hasclass('col-lg-6')]/h3" position="before">
<span class="fa fa-star fa-2x mb-4"></span>
</xpath>
<!-- Title -->
<xpath expr="//div[hasclass('col-lg-6')][2]//div[hasclass('col-lg-6')]/h3" position="replace" mode="inner">
Increased Visibility
</xpath>
<!-- Paragraph -->
<xpath expr="//div[hasclass('col-lg-6')][2]//div[hasclass('col-lg-6')]/p" position="replace" mode="inner">
Increase Visitor retention. Customer engagement on a website with virtual tour is 5 times longer compared to a site without it.
</xpath>
<!-- Little block #2 -->
<!-- Main div -->
<xpath expr="//div[hasclass('col-lg-6')][2]//div[hasclass('col-lg-6')][2]" position="attributes">
<attribute name="class" add="o_cc1" remove="o_cc3" />
</xpath>
<xpath expr="//div[hasclass('col-lg-6')][2]//div[hasclass('col-lg-6')][2]/h3" position="before">
<span class="fa fa-tag fa-2x mb-4"></span>
</xpath>
<!-- Title -->
<xpath expr="//div[hasclass('col-lg-6')][2]//div[hasclass('col-lg-6')][2]/h3" position="replace" mode="inner">
No fixed fees
</xpath>
<!-- Paragraph -->
<xpath expr="//div[hasclass('col-lg-6')][2]//div[hasclass('col-lg-6')][2]/p" position="replace" mode="inner">
At Real Estate Agency we have fixed price fees. This means we only charge when your home sale is confirmed.
</xpath>
<!-- Little block #3 -->
<!-- Main div -->
<xpath expr="//div[hasclass('col-lg-6')][2]//div[hasclass('col-lg-6')][3]" position="attributes">
<attribute name="class" add="o_cc1" remove="o_cc4" />
</xpath>
<xpath expr="//div[hasclass('col-lg-6')][2]//div[hasclass('col-lg-6')][3]/h3" position="before">
<span class="fa fa-camera fa-2x mb-4"></span>
</xpath>
<!-- Title -->
<xpath expr="//div[hasclass('col-lg-6')][2]//div[hasclass('col-lg-6')][3]/h3" position="replace" mode="inner">
Pro Photo Shoot
</xpath>
<!-- Paragraph -->
<xpath expr="//div[hasclass('col-lg-6')][2]//div[hasclass('col-lg-6')][3]/p" position="replace" mode="inner">
They say an image is worth a thousand words and we know you know how important it is to have the best photography.
</xpath>
<!-- Little block #4 -->
<!-- Main div -->
<xpath expr="//div[hasclass('col-lg-6')][2]//div[hasclass('col-lg-6')][4]" position="attributes">
<attribute name="class" add="o_cc1" remove="o_cc2" />
</xpath>
<xpath expr="//div[hasclass('col-lg-6')][2]//div[hasclass('col-lg-6')][4]/h3" position="before">
<span class="fa fa-check fa-2x mb-4"></span>
</xpath>
<!-- Title -->
<xpath expr="//div[hasclass('col-lg-6')][2]//div[hasclass('col-lg-6')][4]/h3" position="replace" mode="inner">
Premium Quality
</xpath>
<!-- Paragraph -->
<xpath expr="//div[hasclass('col-lg-6')][2]//div[hasclass('col-lg-6')][4]/p" position="replace" mode="inner">
We are committed to delivering high quality services that enhance your brand by allowing visitors to interact virtually.
</xpath>
</template>
</odoo>
@@ -0,0 +1,39 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<template id="s_numbers" inherit_id="website.s_numbers">
<!-- Section -->
<xpath expr="//section" position="attributes">
<attribute name="class" add="o_cc1 pt32 pb56" remove="o_cc2 pt24 pb24" separator=" "/>
</xpath>
<!-- Column #01 -->
<xpath expr="//div[hasclass('col-lg-3')][1]/h6" position="replace" mode="inner">
properties already sold
</xpath>
<xpath expr="//div[hasclass('col-lg-3')][1]/span" position="replace" mode="inner">
14,000
</xpath>
<!-- Column #02 -->
<xpath expr="//div[hasclass('col-lg-3')][2]/span" position="replace" mode="inner">
97%
</xpath>
<xpath expr="//div[hasclass('col-lg-3')][2]/h6" position="replace" mode="inner">
happy customers
</xpath>
<!-- Column #03 -->
<xpath expr="//div[hasclass('col-lg-3')][3]/span" position="replace" mode="inner">
142
</xpath>
<xpath expr="//div[hasclass('col-lg-3')][3]/h6" position="replace" mode="inner">
amazing agents
</xpath>
<!-- Column #04 -->
<xpath expr="//div[hasclass('col-lg-3')][4]/span" position="replace" mode="inner">
100+
</xpath>
<xpath expr="//div[hasclass('col-lg-3')][4]/h6" position="replace" mode="inner">
offices
</xpath>
</template>
</odoo>
@@ -1,24 +1,24 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<odoo> <odoo>
<template id="s_picture" inherit_id="website.s_picture"> <template id="s_picture" inherit_id="website.s_picture">
<!-- Section --> <!-- Section -->
<xpath expr="//section" position="attributes"> <xpath expr="//section" position="attributes">
<attribute name="class" add="o_cc4" remove="o_cc2" separator=" "/> <attribute name="class" add="o_cc4" remove="o_cc2" separator=" "/>
</xpath> </xpath>
<!-- Title --> <!-- Title -->
<xpath expr="//h2" position="replace"> <xpath expr="//h2" position="replace" mode="inner">
<h2 style="text-align: center;"> Open your horizons
<font style="font-size: 62px;">Open your horizons</font>
</h2>
</xpath> </xpath>
<!-- Paragraphs --> <!-- Paragraphs -->
<xpath expr="//p[1]" position="replace"> <xpath expr="//p[1]" position="replace" mode="inner">
<p class="text-center">Weve selected properties from all types and all areas.<br/> Weve selected properties from all types and all areas.<br/>
The house of your dreams is around the corner.</p> The house of your dreams is around the corner.
</xpath> </xpath>
<!-- Caption --> <!-- Caption -->
<xpath expr="//figcaption" position="replace"> <xpath expr="//figcaption" position="replace">
<figcaption class="figure-caption text-muted py-3">Property on the coasts of the Mediterranean.</figcaption> <figcaption class="figure-caption text-muted py-3">Property on the coasts of the Mediterranean.</figcaption>
</xpath> </xpath>
</template> </template>
</odoo> </odoo>
@@ -1,47 +1,28 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<odoo> <odoo>
<template id="s_quotes_carousel" inherit_id="website.s_quotes_carousel"> <template id="s_quotes_carousel" inherit_id="website.s_quotes_carousel">
<!-- Shape 1 -->
<xpath expr="(//div[hasclass('carousel-item')])[1]" position="attributes">
<attribute name="data-oe-shape-data">{"shape":"web_editor/Origins/14_001","flip":["y"]}</attribute>
</xpath>
<xpath expr="(//div[hasclass('carousel-item')])[1]/div" position="before">
<div class="o_we_shape o_web_editor_Origins_14_001 o_we_flip_y o_second_extra_shape_mapping"/>
</xpath>
<!-- Shape 2 -->
<xpath expr="(//div[hasclass('carousel-item')])[2]" position="attributes">
<attribute name="data-oe-shape-data">{"shape":"web_editor/Origins/14_001","flip":["y"]}</attribute>
</xpath>
<xpath expr="(//div[hasclass('carousel-item')])[2]/div" position="before">
<div class="o_we_shape o_web_editor_Origins_14_001 o_we_flip_y o_second_extra_shape_mapping"/>
</xpath>
<!-- Shape 3 -->
<xpath expr="(//div[hasclass('carousel-item')])[3]" position="attributes">
<attribute name="data-oe-shape-data">{"shape":"web_editor/Origins/14_001","flip":["y"]}</attribute>
</xpath>
<xpath expr="(//div[hasclass('carousel-item')])[3]/div" position="before">
<div class="o_we_shape o_web_editor_Origins_14_001 o_we_flip_y o_second_extra_shape_mapping"/>
</xpath>
<!-- Quote 1 --> <!-- Quote 1 -->
<xpath expr="(//div[hasclass('s_blockquote_content')])[1]/p" position="replace"> <xpath expr="(//div[hasclass('s_blockquote_content')])[1]/p" position="replace" mode="inner">
<p>Amazing team! smiling, always nice to talk with, they always have the best advices for you, adapted to your needs!</p> Amazing team! smiling, always nice to talk with, they always have the best advices for you, adapted to your needs!
</xpath> </xpath>
<xpath expr="(//span[hasclass('s_blockquote_author')])[1]" position="replace"> <xpath expr="(//span[hasclass('s_blockquote_author')])[1]" position="replace" mode="inner">
<span class="s_blockquote_author"><b>Jane Doe</b> • Customer, bought a house</span> <b>Jane Doe</b> • Customer, bought a house
</xpath> </xpath>
<!-- Quote 2 --> <!-- Quote 2 -->
<xpath expr="(//div[hasclass('s_blockquote_content')])[2]/p" position="replace"> <xpath expr="(//div[hasclass('s_blockquote_content')])[2]/p" position="replace" mode="inner">
<p>From start to finish, they were extremely professional, friendly, helpful and easy to do business with. Very happy with the experience and the company.</p> From start to finish, they were extremely professional, friendly, helpful and easy to do business with. Very happy with the experience and the company.
</xpath> </xpath>
<xpath expr="(//span[hasclass('s_blockquote_author')])[2]" position="replace"> <xpath expr="(//span[hasclass('s_blockquote_author')])[2]" position="replace" mode="inner">
<span class="s_blockquote_author"><b>John Doe</b> • Customer, bought an appartement</span> <b>John Doe</b> • Customer, bought an appartement
</xpath> </xpath>
<!-- Quote 3 --> <!-- Quote 3 -->
<xpath expr="(//div[hasclass('s_blockquote_content')])[3]/p" position="replace"> <xpath expr="(//div[hasclass('s_blockquote_content')])[3]/p" position="replace" mode="inner">
<p>Positive energy, great team spirit, hard workers and awesome people! I warmly recommend them!</p> Positive energy, great team spirit, hard workers and awesome people! I warmly recommend them!
</xpath> </xpath>
<xpath expr="(//span[hasclass('s_blockquote_author')])[3]" position="replace"> <xpath expr="(//span[hasclass('s_blockquote_author')])[3]" position="replace" mode="inner">
<span class="s_blockquote_author"><b>Iris Doe</b> • Customer, sold an appartement</span> <b>Iris Doe</b> • Customer, sold an appartement
</xpath> </xpath>
</template> </template>
</odoo> </odoo>
@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<template id="s_text_block" inherit_id="website.s_text_block">
<!-- Section/span -->
<xpath expr="//section" position="attributes">
<attribute name="class" add="o_cc o_cc4 pb56 pt56" remove="pt96 pb96" separator=" "/>
</xpath>
<xpath expr="//p" position="replace" mode="inner">
We are <b>Odoo Travel Agency</b>, dedicated to making your vacation dreams come true! Overwhelmed with too many choices on the internet? We offer you answers, support, advice, and itineraries that will amaze you with their <b>thoroughness and thoughtfulness</b>.
</xpath>
<xpath expr="//p[2]" position="replace" mode="inner">
At <b>Odoo Travel Agency</b> our agents are more than a consultant, they are fellow <b>travelers with a passion</b> to help you explore the world. With more than 75 years combined experience you can be sure we are devoted to finding the best solutions for your travel plans.
</xpath>
</template>
</odoo>
@@ -0,0 +1,30 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<template id="s_text_image" inherit_id="website.s_text_image">
<!-- Section -->
<xpath expr="//section" position="attributes">
<attribute name="class" add="pt48 pb0" remove="pt32 pb32" separator=" "/>
</xpath>
<!-- Title -->
<xpath expr="//h2" position="replace" mode="inner">
Are you thinking of selling?
</xpath>
<!-- Paragraph -->
<xpath expr="//p[1]" position="replace" mode="inner">
Make an appointment for a free valuation of your property. We visit the property, advise you on a realistic asking price and we explain our way of working. <br/>
You can decide in all freedom whether or not you would like to work with us for the sale of your property.
</xpath>
<!-- Paragraph 2 -->
<xpath expr="//p[2]" position="replace" />
<!-- Image -->
<xpath expr="//img" position="attributes">
<attribute name="src">/web_editor/image_shape/website.s_text_image_default_image/web_editor/solid/sld_square_1.svg?c2=o-color-3</attribute>
<attribute name="data-shape">web_editor/solid/sld_square_1</attribute>
<attribute name="data-original-mimetype">image/jpeg</attribute>
<attribute name="data-file-name">s_text_image.svg</attribute>
<attribute name="data-shape-colors">;o-color-3;;;</attribute>
</xpath>
</template>
</odoo>
@@ -1,26 +1,52 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<odoo> <odoo>
<template id="s_three_columns" inherit_id="website.s_three_columns"> <template id="s_three_columns" inherit_id="website.s_three_columns">
<!-- Column 1 --> <!-- Section -->
<xpath expr="//div[hasclass('card-body')]" position="replace"> <xpath expr="//section" position="attributes">
<div class="card-body"> <attribute name="class" add="o_cc3 pt0 pb72" remove="o_cc2 pt32 pb32" separator=" "/>
<h3 class="card-title">I sell. What should I do?</h3>
<p class="card-text">Discover tips and tricks when you sell a property. Whether it's appointments with the notary, fees, etc...</p>
</div>
</xpath> </xpath>
<!-- Column #1 -->
<xpath expr="//h3" position="before">
<span class="text-600 font-weight-bold">$295,000</span>
</xpath>
<xpath expr="//h3" position="replace" mode="inner">
House On The Hill
</xpath>
<xpath expr="//p[hasclass('card-text')]" position="replace" mode="inner">
Waste no time in viewing this truly stunning property. The property's surroundings really set it apart, offering idyllic sea views overlooking a park.
</xpath>
<xpath expr="//p[hasclass('card-text')]" position="after" >
<a href="#" class="btn btn-primary mb-0">View details</a>
</xpath>
<!-- Column 2 --> <!-- Column 2 -->
<xpath expr="(//div[hasclass('card-body')])[2]" position="replace"> <xpath expr="(//h3)[2]" position="before">
<div class="card-body"> <span class="text-600 font-weight-bold">$1,295,000,000</span>
<h3 class="card-title">Whats the value of my property?</h3>
<p class="card-text">Our online estimation tool, 100% free of charge, will guide you through the different steps to have a rigorous evaluation.</p>
</div>
</xpath> </xpath>
<xpath expr="(//h3)[2]" position="replace" mode="inner">
Moutain View
</xpath>
<xpath expr="(//p[hasclass('card-text')])[2]" position="replace" mode="inner">
The house is surrounded by garden terraces that create unique spaces and an intimate ambience. With no overlooking neighbours, the garden offers real privacy.
</xpath>
<xpath expr="(//p[hasclass('card-text')])[2]" position="after" >
<a href="#" class="btn btn-primary mb-0">View details</a>
</xpath>
<!-- Column 3 --> <!-- Column 3 -->
<xpath expr="(//div[hasclass('card-body')])[3]" position="replace"> <xpath expr="(//h3)[3]" position="before">
<div class="card-body"> <span class="text-600 font-weight-bold">$455,000</span>
<h3 class="card-title">Building and renovating</h3> </xpath>
<p class="card-text">Here are some tips to get you started on a new construction or renovation project. Because it can't be improvised. </p> <xpath expr="(//h3)[3]" position="replace" mode="inner">
</div> Paradise Residence
</xpath>
<xpath expr="(//p[hasclass('card-text')])[3]" position="replace" mode="inner">
Elegant, modern sophisticated architecture with an impressive in large scale home designed with the finest imported finishes. Pyrgon, marble and wood floors...
</xpath>
<xpath expr="(//p[hasclass('card-text')])[3]" position="after" >
<a href="#" class="btn btn-primary mb-0">View details</a>
</xpath> </xpath>
</template> </template>
</odoo> </odoo>
@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<template id="s_title" inherit_id="website.s_title">
<!-- Section -->
<xpath expr="//section" position="attributes">
<attribute name="class" add="pt72" remove="pt40" separator=" "/>
</xpath>
</template>
</odoo>