Skip to content
Permalink
9eb2875498
Switch branches/tags
Go to file
 
 
Cannot retrieve contributors at this time
1236 lines (1152 sloc) 63.8 KB
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<!-- Assets -->
<template id="_assets_primary_variables" inherit_id="web._assets_primary_variables">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/primary_variables.scss"/>
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/options/colors/user_color_palette.scss"/>
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/options/colors/user_theme_color_palette.scss"/>
</xpath>
</template>
<template id="_assets_secondary_variables" inherit_id="web._assets_secondary_variables">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/secondary_variables.scss"/>
</xpath>
</template>
<template id="assets_common" name="Website Assets Common" inherit_id="web.assets_common">
<xpath expr="." position="inside">
<script type="text/javascript" src="/website/static/src/js/tours/website_tour_reset_password.js"></script>
</xpath>
</template>
<template id="assets_backend" inherit_id="web.assets_backend" name="Website Backend Assets (used in backend interface)">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/website.backend.scss"/>
</xpath>
<xpath expr="//script[last()]" position="after">
<script type="text/javascript" src="/website/static/src/js/backend/button.js"/>
<script type="text/javascript" src="/website/static/src/js/backend/dashboard.js"/>
<script type="text/javascript" src="/website/static/src/js/tours/rte.js"/>
</xpath>
</template>
<template id="qunit_suite" inherit_id="web.qunit_suite">
<xpath expr="//script[last()]" position="after">
<script type="text/javascript" src="/website/static/tests/website_tests.js"/>
</xpath>
</template>
<template id="_assets_frontend_helpers" inherit_id="web._assets_frontend_helpers">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/bootstrap_overridden.scss"/>
</xpath>
</template>
<template id="assets_frontend" inherit_id="web.assets_frontend" name="Website Assets">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/website.scss"/>
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/website.ui.scss"/>
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/website.zoomodoo.scss"/>
</xpath>
<xpath expr="//script[@src='/web/static/src/js/chrome/public_root_widget.js']" position="replace">
<script type="text/javascript" src="/website/static/src/js/content/website_root.js"/>
</xpath>
<xpath expr="//script[last()]" position="after">
<script type="text/javascript" src="/website/static/src/js/utils.js"/>
<script type="text/javascript" src="/website/static/src/js/website.js"/>
<script type="text/javascript" src="/website/static/src/js/content/compatibility.js"/>
<script type="text/javascript" src="/website/static/src/js/content/lazy_template_call.js"/>
<script type="text/javascript" src="/website/static/src/js/content/menu.js"/>
<script type="text/javascript" src="/website/static/src/js/content/snippets.animation.js"/>
<script type="text/javascript" src="/website/static/src/js/content/zoomodoo.js"/>
<script type="text/javascript" src="/website/static/src/js/menu/navbar.js"/>
<script type="text/javascript" src="/website/static/src/js/html_editor.test.js"/>
</xpath>
</template>
<template id="assets_frontend_compatibility_for_12_0" inherit_id="website.assets_frontend" active="False">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/compatibility/bs3_for_12_0.scss"/>
</xpath>
</template>
<template id="website.assets_editor" name="Website Editor Assets (used in website editor)">
<t t-call="web._assets_helpers"/>
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/website.edit_mode.scss"/>
<script type="text/javascript" src="/website/static/lib/jQuery.transfo.js"/>
<script type="text/javascript" src="/website/static/src/js/editor/editor.js"/>
<script type="text/javascript" src="/website/static/src/js/editor/rte.summernote.js"/>
<script type="text/javascript" src="/website/static/src/js/editor/snippets.options.js"/>
<script type="text/javascript" src="/website/static/src/js/menu/content.js"/>
<script type="text/javascript" src="/website/static/src/js/menu/customize.js"/>
<script type="text/javascript" src="/website/static/src/js/menu/edit.js"/>
<script type="text/javascript" src="/website/static/src/js/menu/mobile_view.js"/>
<script type="text/javascript" src="/website/static/src/js/menu/new_content.js"/>
<script type="text/javascript" src="/website/static/src/js/menu/seo.js"/>
<script type="text/javascript" src="/website/static/src/js/menu/translate.js"/>
<script type="text/javascript" src="/website/static/src/js/tours/banner.js"/>
<script type="text/javascript" src="/website/static/src/js/tours/customize.js"/>
<script type="text/javascript" src="/website/static/src/js/tours/rte.js"/>
<script type="text/javascript" src="/website/static/src/js/widgets/ace.js"/>
<script type="text/javascript" src="/website/static/src/js/widgets/theme.js"/>
</template>
<!-- Layout -->
<template id="submenu" name="Submenu">
<t t-set="has_visible_submenu" t-value="submenu.child_id.filtered(lambda menu: menu.is_visible)"/>
<li t-if="submenu.is_visible and not has_visible_submenu" t-attf-class="#{item_class or ''}">
<a t-att-href="submenu.clean_url()"
t-attf-class="#{link_class or ''} #{'active' if submenu.clean_url() and unslug_url(request.httprequest.path) == unslug_url(submenu.clean_url()) else ''}"
role="menuitem"
t-ignore="true"
t-att-target="'_blank' if submenu.new_window else None">
<span t-field="submenu.name"/>
</a>
</li>
<li t-if="has_visible_submenu" t-attf-class="#{item_class or ''} dropdown #{
(submenu.clean_url() and submenu.clean_url() != '/' and any([request.httprequest.path == child.url for child in submenu.child_id if child.url]) or
(submenu.clean_url() and request.httprequest.path == submenu.clean_url())) and 'active'
}">
<a t-attf-class="#{link_class or ''} dropdown-toggle" data-toggle="dropdown" href="#">
<span t-field="submenu.name"/>
</a>
<ul class="dropdown-menu" role="menu">
<t t-foreach="submenu.child_id" t-as="submenu">
<t t-call="website.submenu">
<t t-set="item_class" t-value="None"/>
<t t-set="link_class" t-value="'dropdown-item'"/>
</t>
</t>
</ul>
</li>
</template>
<template id="layout" name="Main layout" inherit_id="portal.frontend_layout">
<xpath expr="//t[@t-set='head_website']" position="before">
<t t-set="html_data" t-value="{
'lang': lang and lang.replace('_', '-'),
'data-website-id': website.id if website else None,
'data-editable': '1' if editable else None,
'data-translatable': '1' if translatable else None,
'data-edit_translations': '1' if edit_translations else None,
'data-view-xmlid': xmlid if editable or translatable else None,
'data-viewid': viewid if editable or translatable else None,
'data-main-object': repr(main_object) if editable or translatable else None,
'data-oe-company-name': res_company.name
}"/>
<t t-if="not title">
<t t-if="main_object and 'website_meta_title' in main_object and main_object.website_meta_title">
<t t-set="title" t-value="main_object.website_meta_title"/>
</t>
<t t-else="">
<t t-if="not additional_title and main_object and 'name' in main_object">
<t t-set="additional_title" t-value="main_object.name"/>
</t>
<t t-set="title"><t t-if="additional_title"><t t-raw="additional_title"/> | </t><t t-raw="(website or res_company).name"/></t>
</t>
</t>
<t t-set="x_icon" t-value="'/web/image/website/%s/favicon/' % website.id"/>
</xpath>
<xpath expr="//t[@t-set='head_website']" position="replace">
<t t-set="head_website">
<meta name="generator" content="Odoo"/>
<meta t-if="main_object and 'website_indexed' in main_object
and not main_object.website_indexed" name="robots" content="noindex"/>
<t t-set="meta_description" t-value="main_object and 'website_meta_description' in main_object
and main_object.website_meta_description or website_meta_description"/>
<t t-set="meta_keywords" t-value="main_object and 'website_meta_keywords' in main_object
and main_object.website_meta_keywords or website_meta_keywords"/>
<meta t-if="meta_description or editable" name="description" t-att-content="meta_description"/>
<meta t-if="meta_keywords or editable" name="keywords" t-att-content="meta_keywords"/>
<t t-if="main_object">
<t t-set="website_meta" t-value="main_object.get_website_meta()"/>
<!-- OpenGraph tags for Facebook sharing -->
<t t-set="opengraph_meta" t-value="website_meta.get('opengraph_meta')"/>
<t t-if="opengraph_meta">
<t t-foreach="opengraph_meta" t-as="og_meta">
<meta t-att-property="og_meta" t-att-content="opengraph_meta[og_meta]"/>
</t>
</t>
<!-- Twitter tags for sharing -->
<t t-set="twitter_meta" t-value="website_meta.get('twitter_meta')"/>
<t t-if="opengraph_meta">
<t t-foreach="twitter_meta" t-as="t_meta">
<meta t-att-name="t_meta" t-att-content="twitter_meta[t_meta]"/>
</t>
</t>
</t>
<t t-set="languages" t-value="website.get_languages() if website else None"/>
<t t-if="request and request.is_frontend_multilang and website">
<t t-foreach="website.get_alternate_languages(request.httprequest)" t-as="lg">
<link rel="alternate" t-att-hreflang="lg['hreflang']" t-att-href="lg['href']"/>
</t>
</t>
<script type="text/javascript">
odoo.session_info = {
is_admin: <t t-esc="json.dumps(request.env.user._is_admin())"/>,
is_system: <t t-esc="json.dumps(request.env.user._is_system())"/>,
is_frontend: true,
translationURL: '/website/translations',
is_website_user: <t t-esc="json.dumps(request.env.user.id == request.website.user_id.id)" />,
user_id: <t t-esc="json.dumps(request.env.user.id)" />
};
<t groups="website.group_website_publisher">
odoo.snippetsURL = '/website/snippets';
odoo.session_info.website_id = <t t-esc="json.dumps(request.website.id)" />;
odoo.session_info.website_company_id = <t t-esc="json.dumps(request.website.company_id.id)" />;
</t>
</script>
<t t-call-assets="web.assets_common" t-js="false"/>
<t t-call-assets="web.assets_frontend" t-js="false"/>
<t t-call-assets="web_editor.summernote" t-js="false" groups="website.group_website_publisher"/>
<t t-call-assets="web_editor.assets_editor" t-js="false" groups="website.group_website_publisher"/>
<t t-call-assets="website.assets_editor" t-js="false" groups="website.group_website_publisher"/>
<t t-call-assets="web.assets_common" t-css="false"/>
<t t-call-assets="web.assets_frontend" t-css="false"/>
<t t-call-assets="web_editor.summernote" t-css="false" groups="website.group_website_publisher"/>
<t t-call-assets="web_editor.assets_editor" t-css="false" groups="website.group_website_publisher"/>
<t t-call-assets="website.assets_editor" t-css="false" groups="website.group_website_publisher"/>
</t>
</xpath>
<xpath expr="//header//a[hasclass('navbar-brand')]" position="replace">
<a class="navbar-brand" href="/" t-if="website" t-field="website.name">My Website</a>
</xpath>
<xpath expr="//header//ul[@id='top_menu']" position="attributes">
<attribute name="class" separator=" " add="o_menu_loading"/>
</xpath>
<xpath expr="//header//ul[@id='top_menu']/li[hasclass('divider')]" position="attributes">
<attribute name="t-if">website.user_id != user_id</attribute>
</xpath>
<xpath expr="//header//ul[@id='top_menu']/li[hasclass('dropdown')]" position="attributes">
<attribute name="t-if">website.user_id != user_id</attribute>
</xpath>
<xpath expr="//header//ul[@id='top_menu']/li[hasclass('divider')]" position="before">
<t t-foreach="website.menu_id.child_id" t-as="submenu">
<t t-call="website.submenu">
<t t-set="item_class" t-value="'nav-item'"/>
<t t-set="link_class" t-value="'nav-link'"/>
</t>
</t>
</xpath>
<xpath expr="//div[@id='wrapwrap']" position="after">
<script id='tracking_code' t-if="website and website.google_analytics_key and not editable">
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', _.str.trim('<t t-esc="website.google_analytics_key"/>'), 'auto');
ga('send','pageview');
</script>
</xpath>
<!-- Page options -->
<xpath expr="//div[@id='wrapwrap']" position="before">
<t groups="website.group_website_publisher">
<t t-foreach="['header_overlay', 'header_color']" t-as="optionName">
<input t-if="optionName in main_object" type="hidden" class="o_page_option_data" t-att-name="optionName" t-att-value="main_object[optionName]"/>
</t>
</t>
</xpath>
<xpath expr="//div[@id='wrapwrap']" position="attributes">
<attribute name="t-attf-class" add="#{'o_header_overlay' if 'header_overlay' in main_object and main_object.header_overlay else ''}" separator=" "/>
</xpath>
<xpath expr="//header" position="attributes">
<attribute name="t-attf-class" add="#{main_object.header_color if 'header_color' in main_object else ''}" separator=" "/>
</xpath>
</template>
<template id="layout_footer_copyright" inherit_id="website.layout" name="Footer Copyright">
<xpath expr="//footer" position="inside">
<div class="o_footer_copyright">
<div class="container">
<div class="row">
<div class="col-lg-6 text-muted text-center text-md-left">
<span>Copyright &amp;copy;</span> <span t-field="res_company.name" itemprop="name">Company name</span>
<t t-call="website.language_selector"/>
</div>
<div class="col-lg-6 text-right o_not_editable" t-if="not editable">
<t t-call="website.brand_promotion"/>
</div>
</div>
</div>
</div>
</xpath>
</template>
<template id="brand_promotion" name="Brand Promotion">
<div class="o_brand_promotion">
Create a <a target="_blank" href="http://www.odoo.com/page/website-builder?utm_source=db&amp;utm_medium=website">free website</a> with
<a target="_blank" class="badge badge-danger" href="http://www.odoo.com/page/website-builder?utm_source=db&amp;utm_medium=website">Odoo</a>
</div>
</template>
<template id="layout_logo_show" inherit_id="website.layout" customize_show="True" name="Show Logo">
<xpath expr="//header//a[hasclass('navbar-brand')]" position="replace">
<a href="/" class="navbar-brand logo">
<span t-field="res_company.logo" t-options="{'widget': 'image'}" role="img" t-att-aria-label="'Logo of %s' % res_company.name" t-att-title="res_company.name" />
</a>
</xpath>
</template>
<template id="affix_top_menu" inherit_id="website.layout" customize_show="True" name="Affix Top Menu">
<xpath expr="//header" position="attributes">
<attribute name="t-attf-class" add="#{'o_affix_enabled'}" separator=" "/>
</xpath>
</template>
<template id="no_autohide_menu" inherit_id="website.layout" active="False">
<xpath expr="//header" position="attributes">
<attribute name="t-attf-class" add="#{'o_no_autohide_menu'}" separator=" "/>
</xpath>
</template>
<record id="portal.portal_show_sign_in" model="ir.ui.view">
<field name="customize_show" eval="True"/>
</record>
<!-- Features template -->
<template id="login_layout" inherit_id="web.login_layout" name="Website Login Layout" priority="20">
<xpath expr="t" position="replace">
<t t-call="website.layout">
<div class="oe_website_login_container" t-raw="0"/>
</t>
</xpath>
</template>
<template id="footer_custom" inherit_id="website.layout" name="Footer">
<xpath expr="//div[@id='footer']" position="replace">
<div id="footer" class="oe_structure oe_structure_solo" t-ignore="true" t-if="not no_footer">
<section class="s_text_block pt16 pb8">
<div class="container">
<div class="row">
<div class="col-lg-4">
<h5>Our Products &amp; Services</h5>
<ul class="list-unstyled">
<li><a href="/">Home</a></li>
</ul>
</div>
<div class="col-lg-4" id="connect">
<h5>Connect with us</h5>
<ul class="list-unstyled">
<li><a href="/contactus">Contact us</a></li>
<li><i class="fa fa-phone"/> <span class="o_force_ltr" t-field="res_company.phone"/></li>
<li><i class="fa fa-envelope"/> <span t-field="res_company.email"/></li>
</ul>
<p>
<a t-if="website.social_facebook" t-att-href="website.social_facebook" class="btn btn-sm btn-link"><i class="fa fa-2x fa-facebook-square"/></a>
<a t-if="website.social_twitter" t-att-href="website.social_twitter" class="btn btn-sm btn-link"><i class="fa fa-2x fa-twitter"/></a>
<a t-if="website.social_linkedin" t-att-href="website.social_linkedin" class="btn btn-sm btn-link"><i class="fa fa-2x fa-linkedin"/></a>
<a t-if="website.social_youtube" t-att-href="website.social_youtube" class="btn btn-sm btn-link"><i class="fa fa-2x fa-youtube-play"/></a>
<a t-if="website.social_googleplus" t-att-href="website.social_googleplus" class="btn btn-sm btn-link" rel="publisher"><i class="fa fa-2x fa-google-plus-square"/></a>
<a t-if="website.social_github" t-att-href="website.social_github" class="btn btn-sm btn-link"><i class="fa fa-2x fa-github"/></a>
<a t-if="website.social_instagram" t-att-href="website.social_instagram" class="btn btn-sm btn-link"><i class="fa fa-2x fa-instagram"/></a>
</p>
</div>
<div class="col-lg-4">
<h5>
<span t-field="res_company.name"/>
<small> - <a href="/aboutus">About us</a></small>
</h5>
<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>
</div>
</section>
</div>
</xpath>
</template>
<template id="language_selector">
<ul class="js_language_selector mb0 list-inline" t-if="(request and request.is_frontend_multilang and len(languages) &gt; 1) or (website and (editable or translatable))">
<li class="list-inline-item">
<div class="dropup">
<button class="btn btn-sm btn-secondary dropdown-toggle" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true">
<span t-esc="list(filter(lambda lg : lg[0] == lang, languages))[0][1].split('/').pop()"/>
<span class="caret ml4"/>
</button>
<div class="dropdown-menu" role="menu">
<t t-foreach="languages" t-as="lg">
<a t-att-href="url_for(request.httprequest.path + '?' + keep_query(), lang=lg[0])"
class="dropdown-item js_change_lang"
t-att-data-default-lang="(editable or translatable) and 'true' if website and lg[0] == website.default_lang_code else None"
t-att-data-lang="lg[0]">
<t t-esc="lg[1].split('/').pop()"/>
</a>
</t>
</div>
</div>
</li>
<li groups="website.group_website_publisher" class="list-inline-item">
<t t-set="url_return" t-value="quote_plus(url_for('', '[lang]') + '?' + keep_query())"/>
<a t-attf-href="/web#action=base.action_view_base_language_install&amp;website_id=#{website.id if website else ''}&amp;url_return=#{url_return}">
<i class="fa fa-plus-circle"/>
Add a language...
</a>
</li>
</ul>
</template>
<!-- Util template -->
<template id="publish_management">
<div groups="website.group_website_publisher" t-ignore="true" class="float-right css_editable_mode_hidden" t-att-style="style or None">
<div t-attf-class="btn-group #{btn_class} js_publish_management #{object.website_published and 'css_published' or 'css_unpublished'}" t-att-data-id="object.id" t-att-data-object="object._name" t-att-data-controller="publish_controller">
<button class="btn btn-danger js_publish_btn">Unpublished</button>
<button class="btn btn-success js_publish_btn">Published</button>
<button type="button" t-attf-class="btn btn-default dropdown-toggle dropdown-toggle-split" t-att-id="'dopprod-%s' % object.id" data-toggle="dropdown"/>
<div class="dropdown-menu" role="menu" t-att-aria-labelledby="'dopprod-%s' % object.id">
<t t-raw="0"/>
<a role="menuitem" t-attf-href="/web#return_label=Website&amp;view_type=form&amp;model=#{object._name}&amp;id=#{object.id}&amp;action=#{action}&amp;menu_id=#{menu or object.env.ref('website.menu_website_configuration').id}"
title='Edit in backend' class="dropdown-item" t-if="publish_edit">Edit</a>
</div>
</div>
</div>
</template>
<template id="publish_short">
<t groups="website.group_website_publisher" t-ignore="true">
<div t-attf-class="float-right js_publish_management #{object.website_published and 'css_published' or 'css_unpublished'}" t-att-data-id="object.id" t-att-data-object="object._name" t-att-data-controller="publish_controller">
<button class="btn btn-danger js_publish_btn">Unpublished</button>
<button class="btn btn-success js_publish_btn">Published</button>
</div>
</t>
</template>
<template id="pager" name="Pager" inherit_id="portal.pager">
</template>
<!--
XML template to be processed for theme customization modal.
Allowed tags in the root <div/> elements:
<content>: Declares a new set of options (a tab pane in the dialog)
-> string = tab's nav text
-> title = tab's heading
Allowed tags in the <content/> elements:
<opt>: Declares a new toggle option
-> id (optional) = an ID to associate to the option
-> string (optional) = option's text
-> data-icon (optional) = an image URL to set as option's background
-> data-xmlid (optional) = template(s) to enable if the input is checked (list of comma-separated xml ids)
-> data-enable (optional) = enable other options (list of comma-separated option ids)
-> data-disable (optional) = disable other options (list of comma-separated option ids)
-> data-reload (optional) = force the reloading of the page if the url matches the value
Otherwise, only the main assets are reloaded
-> data-font (optional) = indicates which fonts to use to style the option and adds
default sample text if no 'string' is specified
(see $o-theme-fonts in scss)
-> data-color-palette (optional) = indicates which color palette to use to style the option
(see $o-theme-color-palettes in scss)
<more>: Declares a subset of options which is hidden by default (with a button to show it)
-> string = button's text
<list>: Declares a subset of options showed as a list
-> string = list's title
-->
<template id="theme_customize">
<div>
<!-- Color options -->
<content id="theme_customize_content_colors" string="Colors" title="Choose the theme colors">
<opt data-xmlid="" data-color-palette="user" string="Choose your colors"/>
</content>
<!-- Layout Options -->
<content id="theme_customize_content_layout" string="Layout" title="Choose your layout">
<!-- In a <more/> so that it is on a new line if themes add options before -->
<more data-depends="">
<list string="Body">
<opt string="Full" data-xmlid="" data-icon="/website/static/src/img/options/layout-full.png"/>
<opt id="option_layout_boxed" string="Boxed" data-xmlid="website.option_layout_boxed_variables" data-icon="/website/static/src/img/options/layout-boxed.png"/>
</list>
<list string="Background">
<opt id="option_no_background" string="None" data-xmlid=""/>
<opt string="Choose an image" data-xmlid="website.option_custom_body_image"/>
<opt string="Choose a pattern" data-xmlid="website.option_custom_body_image, website.option_custom_body_pattern"/>
</list>
</more>
</content>
<!-- Font options -->
<content id="theme_customize_content_fonts" string="Fonts" title="Choose your fonts">
<list id="theme_customize_content_fonts_title" string="Title">
<opt data-xmlid="" data-font="1"/>
<opt data-xmlid="website.option_font_title_02_variables" data-font="2"/>
<opt data-xmlid="website.option_font_title_03_variables" data-font="3"/>
<opt data-xmlid="website.option_font_title_04_variables" data-font="4"/>
<opt data-xmlid="website.option_font_title_05_variables" data-font="5"/>
<opt data-xmlid="website.option_font_title_06_variables" data-font="6"/>
</list>
<list id="theme_customize_content_fonts_body" string="Body">
<opt data-xmlid="" data-font="1"/>
<opt data-xmlid="website.option_font_body_02_variables" data-font="2"/>
<opt data-xmlid="website.option_font_body_03_variables" data-font="3"/>
<opt data-xmlid="website.option_font_body_04_variables" data-font="4"/>
<opt data-xmlid="website.option_font_body_05_variables" data-font="5"/>
<opt data-xmlid="website.option_font_body_06_variables" data-font="6"/>
</list>
<list id="theme_customize_content_fonts_button" string="Button">
<opt data-xmlid="" data-font="1"/>
<opt data-xmlid="website.option_font_button_02_variables" data-font="2"/>
<opt data-xmlid="website.option_font_button_03_variables" data-font="3"/>
<opt data-xmlid="website.option_font_button_04_variables" data-font="4"/>
<opt data-xmlid="website.option_font_button_05_variables" data-font="5"/>
<opt data-xmlid="website.option_font_button_06_variables" data-font="6"/>
</list>
<list id="theme_customize_content_fonts_navbar" string="Navbar">
<opt data-xmlid="" data-font="1"/>
<opt data-xmlid="website.option_font_navbar_02_variables" data-font="2"/>
<opt data-xmlid="website.option_font_navbar_03_variables" data-font="3"/>
<opt data-xmlid="website.option_font_navbar_04_variables" data-font="4"/>
<opt data-xmlid="website.option_font_navbar_05_variables" data-font="5"/>
<opt data-xmlid="website.option_font_navbar_06_variables" data-font="6"/>
</list>
</content>
</div>
</template>
<!-- Layout options -->
<template id="option_layout_boxed_variables" inherit_id="website._assets_primary_variables" active="False">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/options/layout/option_layout_boxed_variables.scss"/>
</xpath>
</template>
<template id="option_custom_body_image" inherit_id="website.assets_frontend" active="False">
<xpath expr="//link[last()]" position="after">
<style>
<!-- Patched by JS option -->
</style>
</xpath>
</template>
<template id="option_custom_body_pattern" inherit_id="website.assets_frontend" active="False">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/options/layout/option_custom_body_pattern.scss"/>
</xpath>
</template>
<!-- TODO use scss customization for fonts instead (like for user colors) -->
<!-- Title font options -->
<template id="option_font_title_02_variables" inherit_id="website._assets_primary_variables" active="False">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/options/fonts/option_font_title_02_variables.scss"/>
</xpath>
</template>
<template id="option_font_title_03_variables" inherit_id="website._assets_primary_variables" active="False">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/options/fonts/option_font_title_03_variables.scss"/>
</xpath>
</template>
<template id="option_font_title_04_variables" inherit_id="website._assets_primary_variables" active="False">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/options/fonts/option_font_title_04_variables.scss"/>
</xpath>
</template>
<template id="option_font_title_05_variables" inherit_id="website._assets_primary_variables" active="False">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/options/fonts/option_font_title_05_variables.scss"/>
</xpath>
</template>
<template id="option_font_title_06_variables" inherit_id="website._assets_primary_variables" active="False">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/options/fonts/option_font_title_06_variables.scss"/>
</xpath>
</template>
<!-- Body font options -->
<template id="option_font_body_02_variables" inherit_id="website._assets_primary_variables" active="False">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/options/fonts/option_font_body_02_variables.scss"/>
</xpath>
</template>
<template id="option_font_body_03_variables" inherit_id="website._assets_primary_variables" active="False">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/options/fonts/option_font_body_03_variables.scss"/>
</xpath>
</template>
<template id="option_font_body_04_variables" inherit_id="website._assets_primary_variables" active="False">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/options/fonts/option_font_body_04_variables.scss"/>
</xpath>
</template>
<template id="option_font_body_05_variables" inherit_id="website._assets_primary_variables" active="False">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/options/fonts/option_font_body_05_variables.scss"/>
</xpath>
</template>
<template id="option_font_body_06_variables" inherit_id="website._assets_primary_variables" active="False">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/options/fonts/option_font_body_06_variables.scss"/>
</xpath>
</template>
<!-- Button font options -->
<template id="option_font_button_02_variables" inherit_id="website._assets_primary_variables" active="False">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/options/fonts/option_font_button_02_variables.scss"/>
</xpath>
</template>
<template id="option_font_button_03_variables" inherit_id="website._assets_primary_variables" active="False">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/options/fonts/option_font_button_03_variables.scss"/>
</xpath>
</template>
<template id="option_font_button_04_variables" inherit_id="website._assets_primary_variables" active="False">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/options/fonts/option_font_button_04_variables.scss"/>
</xpath>
</template>
<template id="option_font_button_05_variables" inherit_id="website._assets_primary_variables" active="False">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/options/fonts/option_font_button_05_variables.scss"/>
</xpath>
</template>
<template id="option_font_button_06_variables" inherit_id="website._assets_primary_variables" active="False">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/options/fonts/option_font_button_06_variables.scss"/>
</xpath>
</template>
<!-- Navbar font options -->
<template id="option_font_navbar_02_variables" inherit_id="website._assets_primary_variables" active="False">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/options/fonts/option_font_navbar_02_variables.scss"/>
</xpath>
</template>
<template id="option_font_navbar_03_variables" inherit_id="website._assets_primary_variables" active="False">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/options/fonts/option_font_navbar_03_variables.scss"/>
</xpath>
</template>
<template id="option_font_navbar_04_variables" inherit_id="website._assets_primary_variables" active="False">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/options/fonts/option_font_navbar_04_variables.scss"/>
</xpath>
</template>
<template id="option_font_navbar_05_variables" inherit_id="website._assets_primary_variables" active="False">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/options/fonts/option_font_navbar_05_variables.scss"/>
</xpath>
</template>
<template id="option_font_navbar_06_variables" inherit_id="website._assets_primary_variables" active="False">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/website/static/src/scss/options/fonts/option_font_navbar_06_variables.scss"/>
</xpath>
</template>
<template id="kanban">
<t t-set="step"><t t-esc="step or 0"/></t>
<t t-set="scope"><t t-esc="scope or 0"/></t>
<t t-set="orderby"><t t-esc="orderby or 'name'"/></t>
<t t-raw="website.kanban(model, domain, column, template, step=step, scope=scope, orderby=orderby)"/>
</template>
<template id="kanban_contain">
<table class="table js_kanban">
<thead>
<tr>
<t t-set="width" t-valuef="{{ round(100.0 / (len(objects) if objects else 1), 2) }}%"/>
<t t-foreach="objects" t-as="obj">
<th t-att-width="width">
<div t-field="obj['column_id'].name" class="text-center"></div>
</th>
</t>
</tr>
</thead>
<tbody>
<tr>
<t t-foreach="objects" t-as="obj">
<td class="js_kanban_col" t-att-data-template="template"
t-att-data-domain="obj['domain']"
t-att-data-page_count="obj['page_count']"
t-att-data-model="obj['model']"
t-att-data-step="obj['step']"
t-att-data-orderby="obj['orderby']">
<t t-foreach="obj['object_ids']" t-as="object_id">
<t t-call="#{ template }"></t>
</t>
<!-- pager -->
<div t-if="1 != obj['page_end']" class="pagination pagination-centered"><!-- FIXME -->
<ul>
<li t-attf-class="prev #{'active' if obj['page'] == 1 else '' }">
<a t-att-href=" '%s,%s-%s' % (obj['kanban_url'], obj['column_id'].id, (obj['page'] &gt; 1 and obj['page']-1 or 1)) ">Prev</a></li>
<t t-foreach="range(obj['page_start'], obj['page_end']+1)" t-as="p">
<li t-att-class=" 'active' if obj['page'] == p else None ">
<a t-att-href=" '%s,%s-%s' % (obj['kanban_url'], obj['column_id'].id, p)" t-esc="p"></a></li>
</t>
<li t-attf-class="next #{'active' if obj['page'] == obj['page_end'] else '' }">
<a t-att-href=" '%s,%s-%s' % (obj['kanban_url'], obj['column_id'].id, (obj['page'] &lt; obj['page_end'] and obj['page']+1 or obj['page_end']) )">Next</a></li>
</ul>
</div>
</td>
</t>
</tr>
</tbody>
</table>
</template>
<!-- Error and special pages -->
<template id="website_info" name="Odoo Information">
<t t-call="website.layout">
<div id="wrap"/>
</t>
</template>
<template id="show_website_info" inherit_id="website.website_info" customize_show="True" name="Show Odoo Information">
<xpath expr="//div[@id='wrap']" position="inside">
<div class="oe_structure">
<section class="container">
<t t-if="not version">
<meta http-equiv="refresh" content="0;URL='/website/info'" />
</t>
<t t-if="version">
<h1><t t-esc="res_company.name"/>
<small>Odoo Version <t t-raw="version.get('server_version')"/></small>
</h1>
<p>
Information about the <t t-esc="res_company.name"/> instance of Odoo, the <a target="_blank" href="https://www.odoo.com">Open Source ERP</a>.
</p>
<div class="alert alert-warning alert-dismissable mt16" groups="website.group_website_publisher" role="status">
<button type="button" class="close" data-dismiss="alert" aria-label="Close">&amp;times;</button>
<p>
Note: To hide this page, uncheck it from the top Customize menu.
</p>
</div>
<h2>Installed Applications</h2>
<dl class="dl-horizontal" t-foreach="apps" t-as="app">
<dt>
<a t-att-href="app.website" t-if="app.website">
<t t-raw="app.shortdesc"/>
</a>
<span t-raw="app.shortdesc" t-if="not app.website"/>
</dt>
<dd>
<span t-raw="app.summary"/>
</dd><dd class="text-muted" groups='base.group_no_one'>
Technical name: <span t-field="app.name"/>, updated: <span t-field="app.write_date"/>, author: <span t-field="app.author"/>
</dd>
</dl>
<div groups='base.group_no_one'>
<h2>Installed Modules</h2>
<dl class="dl-horizontal">
<t t-foreach="modules" t-as="app">
<dt>
<span t-raw="app.shortdesc"/>
</dt>
<dd t-if="app.summary">
<span t-raw="app.summary"/>
</dd><dd>
Technical name: <span t-field="app.name"/>,
updated: <span t-field="app.write_date"/>
<t t-if="app.author">
, author: <span t-field="app.author"/>
</t>
</dd>
</t>
</dl>
</div>
</t>
</section>
</div>
</xpath>
</template>
<template id="default_page">
<t t-call="website.layout">
<div id="wrap" class="oe_structure oe_empty"/>
</t>
</template>
<template id="default_js">
<script type="text/javascript">
if (0 &gt; 1) {
let it_cant_be = false;
}
</script>
</template>
<template id="default_xml">
&lt;?xml version="1.0" encoding="utf-8"?&gt;
</template>
<template id="default_css">
<style type="text/css">
div#wrap div &gt; h1{
color: #875A7B;
}
</style>
</template>
<template id="default_less">
<style type="text/less">
div#wrap div &gt; h1 {
color: @o-brand-odoo;
}
</style>
</template>
<template id="default_scss">
<style type="text/scss">
div#wrap div &gt; h1 {
color: $o-brand-odoo;
}
</style>
</template>
<template id="default_csv">
1,2,3
</template>
<template id="page_404">
<t t-call="website.404">
<div class="container">
<div class="alert alert-info mt32">
<p>This page does not exist, but you can create it as you are administrator of this site.</p>
<a role="button" class="btn btn-primary js_disable_on_click" t-attf-href="/website/add/#{ path }#{ from_template and '?template=%s' % from_template }">Create Page</a>
</div>
<div class="text-center text-muted">Edit the content below this line to adapt the default "page not found" page.</div>
</div>
<hr/>
</t>
</template>
<template id="http_error">
<t t-call="website.layout">
<div id="wrap">
<div class="oe_structure">
<h1 class="container mt32"><t t-esc="status_code"/>: <t t-esc="status_message"/></h1>
</div>
<t t-if="editable or request.debug">
<t t-call="website.http_error_debug"/>
</t>
</div>
</t>
</template>
<template id="http_error_debug">
<div class="container accordion mb32 mt32" id="debug_infos">
<div class="card" t-if="exception">
<h4 class="card-header">
<a data-toggle="collapse" href="#error_main">Error</a>
</h4>
<div id="error_main" class="collapse in">
<div class="card-body">
<p t-if="website_controller">The following error was raised in the website controller <code t-esc="website_controller"/></p>
<p>
<strong>Error message:</strong>
<pre t-esc="exception"/>
</p>
</div>
</div>
</div>
<div class="card" t-if="qweb_exception">
<h4 class="card-header">
<a data-toggle="collapse" href="#error_qweb">QWeb</a>
</h4>
<div id="error_qweb" class="collapse">
<div class="card-body">
<p t-if="exception.message">
<strong>Error message:</strong>
<pre t-esc="exception.message"/>
</p>
<p>
The error occured while rendering the template <code t-esc="qweb_exception.name"/>
<t t-if="qweb_exception.html">and evaluating the following expression: <code t-esc="qweb_exception.html"/></t>
</p>
</div>
</div>
</div>
<div class="card" t-if="traceback">
<h4 class="card-header">
<a data-toggle="collapse" href="#error_traceback">Traceback</a>
</h4>
<div id="error_traceback" class="collapse">
<div class="card-body">
<pre id="exception_traceback" t-esc="traceback"/>
</div>
</div>
</div>
</div>
</template>
<template id="403">
<t t-call="website.layout">
<div id="wrap">
<div class="container">
<h1 class="mt32">403: Forbidden</h1>
<p>The page you were looking for could not be authorized.</p>
<p>Maybe you were looking for one of these popular pages ?</p>
<ul>
<li><a href="/">Homepage</a></li>
<li><a href="/contactus">Contact Us</a></li>
</ul>
</div>
<t t-if="editable or request.debug">
<t t-call="website.http_error_debug"/>
</t>
</div>
</t>
</template>
<template id="404">
<t t-call="website.layout">
<div id="wrap">
<t t-raw="0"/>
<div class="oe_structure oe_empty">
<div class="container">
<h1 class="mt32">404: Page not found!</h1>
<p>
The page you were looking for could not be found; it is possible you have
typed the address incorrectly, but it has most probably been removed due
to the recent website reorganisation.
</p>
<p>Maybe you were looking for one of these popular pages ?</p>
<ul>
<li><a href="/">Homepage</a></li>
<li><a href="/contactus">Contact Us</a></li>
</ul>
</div>
</div>
<t t-if="request.debug">
<t t-call="website.http_error_debug"/>
</t>
</div>
</t>
</template>
<template id="500">
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<!-- This template should not use any variable except those provided by website.ir_http._handle_exception -->
<!-- no request.crsf_token, no theme style, no assets, ... cursor can be broken during rendering ! -->
<!-- see test_05_reset_specific_view_controller_broken_request -->
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<html>
<head>
<title t-esc="status_message">Internal Server Error</title>
<t t-set="debug" t-value="True"/>
<link rel="stylesheet" href="/web/static/lib/bootstrap/css/bootstrap.css"/>
<script src="/web/static/lib/jquery/jquery.js" type="text/javascript"/>
<script type="text/javascript" src="/web/static/lib/bootstrap/js/util.js"/>
<script type="text/javascript" src="/web/static/lib/bootstrap/js/collapse.js"/>
<script type="text/javascript" src="/web/static/lib/bootstrap/js/modal.js"/>
<t t-if='views'>
<script>
$(document).ready(function() {
var button = $('#reset_templates_button');
button.click(function() {
var dialog = $('#reset_template_confirmation').modal('show');
var input = dialog.find('input[type="text"]').val('').focus();
var dialog_form = dialog.find('form');
dialog_form.submit(function() {
if (input.val() == dialog.find('.confirm_word').text()) {
dialog.modal('hide');
button.prop('disabled', true).text('Working...');
if ($("input[name='templates']:checked").length) {
$('#reset_templates_form').attr('action', '/website/reset_templates');
$('#reset_templates_form').trigger('submit');
}
} else {
input.val('').focus();
}
return false;
});
return false;
});
});
</script>
</t>
</head>
<body>
<div t-if="views" role="dialog" id="reset_template_confirmation" class="modal" tabindex="-1" t-ignore="true">
<div class="modal-dialog">
<form role="form">
<div class="modal-content">
<header class="modal-header">
<h3 class="modal-title">Reset templates</h3>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">×</button>
</header>
<main class="modal-body">
<div class="form-group row mb0">
<label for="page-name" class="col-md-9 col-form-label">
<p>The selected templates will be reset to their factory settings.</p>
<p>Type '<i class="confirm_word">yes</i>' in the box below if you want to confirm.</p>
</label>
<div class="col-md-3 mt16">
<input type="text" id="page-name" class="form-control" required="required" placeholder="yes"/>
</div>
</div>
</main>
<footer class="modal-footer">
<input type="submit" value="Confirm" class="btn btn-primary"/>
<button type="button" class="btn" data-dismiss="modal" aria-label="Cancel">Cancel</button>
</footer>
</div>
</form>
</div>
</div>
<div id="wrapwrap">
<header>
<div class="navbar navbar-expand-md navbar-light bg-light">
<div class="container">
<div class="collapse navbar-collapse navbar-top-collapse">
<ul class="navbar-nav ml-auto" id="top_menu">
<li class="nav-item"><a href="/" class="nav-link">Home</a></li>
<li class="nav-item"><a href="javascript: window.history.back()" class="nav-link">Back</a></li>
</ul>
</div>
</div>
</div>
</header>
<main>
<div class="oe_structure">
<h1 class="container mt32"><t t-esc="status_code"/>: <t t-esc="status_message"/></h1>
</div>
<div class="container" t-if="views and editable">
<div class="alert alert-danger" t-if="debug" role="alert">
<h4>Template fallback</h4>
<p>An error occured while rendering the template <code t-esc="qweb_exception.name"/>.</p>
<p>If this error is caused by a change of yours in the templates, you have the possibility to reset one or more templates to their <strong>factory settings</strong>.</p>
<form action="#" method="post" id="reset_templates_form">
<ul class="oe_template_fallback">
<li t-foreach="views" t-as="view">
<label>
<input type="checkbox" name="templates" t-att-value="view.id" t-att-checked="'checked' if view_first else None"/>
<t t-esc="view.name"/>
<span t-if="not view._get_original_view()" class="text-danger">
(!!! This view will be removed )
</span>
</label>
</li>
</ul>
<input type="hidden" name="redirect" t-att-value="request.httprequest.path"/>
<button id="reset_templates_button">Reset selected templates</button>
</form>
</div>
</div>
<t t-if="editable or request.debug">
<t t-call="website.http_error_debug"/>
</t>
</main>
</div>
</body>
</html>
</template>
<template id="robots">
<t t-translation="off">
User-agent: *
Sitemap: <t t-esc="url_root"/>sitemap.xml
</t>
</template>
<template id="sitemap_locs">
<url t-foreach="locs" t-as="page">
<loc><t t-esc="url_root"/><t t-esc="page['loc']"/></loc><t t-if="page.get('lastmod', False)">
<lastmod t-esc="page['lastmod']"/></t><t t-if="page.get('priority', False)">
<priority t-esc="page['priority']"/></t><t t-if="page.get('changefreq', False)">
<changefreq t-esc="page['changefreq']"/></t>
</url>
</template>
<template id="sitemap_xml">&lt;?xml version="1.0" encoding="UTF-8"?&gt;
<urlset t-attf-xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<t t-raw="content"/>
</urlset>
</template>
<template id="sitemap_index_xml">&lt;?xml version="1.0" encoding="UTF-8"?&gt;
<sitemapindex t-attf-xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap t-translation="off" t-foreach="pages" t-as="page">
<loc><t t-esc="url_root"/>sitemap-<t t-esc="page"/>.xml</loc>
</sitemap>
</sitemapindex>
</template>
<template id="company_description" name="Company Description">
<address itemscope="itemscope" itemtype="http://schema.org/Organization">
<!-- TODO widget contact must add itemprop attributes -->
<div t-field="res_company.partner_id" t-options='{
"widget": "contact",
"fields": ["name", "address", "phone", "mobile", "email"]}'/>
<t t-if="not res_company.google_map_img()">
<span class="fa fa-map-marker fa-fw mt16" role="img" aria-label="Address" title="Address"/> <a t-att-href="res_company.google_map_link()" target="_BLANK"> Google Maps</a>
</t>
</address>
<t t-if="res_company.google_map_img()">
<a t-att-href="res_company.google_map_link()" target="_BLANK">
<img class="img-fluid" t-att-src="res_company.google_map_img()" alt="Google Maps"/>
</a>
</t>
</template>
<template id="website_search_box" name="Website Searchbox">
<div class="input-group">
<input type="text" name="search" class="search-query form-control oe_search_box" placeholder="Search..." t-att-value="search"/>
<div class="input-group-append">
<button type="submit" class="btn btn-secondary oe_search_button" aria-label="Search" title="Search"><i class="fa fa-search"/></button>
</div>
</div>
</template>
<template id="index_management">
<t groups="website.group_website_publisher" t-ignore="true">
<div t-attf-class="float-right js_index_management #{object.website_indexed and 'css_published' or 'css_unpublished'}" t-att-data-id="object.id" t-att-data-object="object._name">
<button class="btn btn-danger js_index_btn">Unindexed</button>
<button class="btn btn-success js_index_btn">Indexed</button>
</div>
</t>
</template>
<template id="list_website_pages" name="Website Pages Management">
<t t-call="website.layout">
<div id="wrap">
<div class="container" id="list_website_pages">
<form class="mt8 float-right" role="search" t-attf-action="/website/pages" method="get">
<t t-call="website.website_search_box"/>
</form>
<div t-if="searchbar_sortings" class="dropdown float-right mt8 mr8">
<button class="btn btn-secondary dropdown-toggle" type="button" data-toggle="dropdown">
<span class="fa fa-sort fa-lg" role="img" aria-label="Sort" title="Sort"/>
<span class="d-none d-xl-inline" t-esc="searchbar_sortings[sortby].get('label', 'Newest')"/>
</button>
<div class="dropdown-menu" aria-labelledby="portal_searchbar_sortby" role="menu">
<t t-foreach="searchbar_sortings" t-as="option">
<a role="menuitem"
t-att-href="request.httprequest.path + '?' + keep_query('*', sortby=option)"
t-attf-class="dropdown-item#{sortby == option and ' active' or ''}">
<span t-esc="searchbar_sortings[option].get('label')"/>
</a>
</t>
</div>
</div>
<h3 class="mt16">Manage Your Pages</h3>
<t t-if="not pages">
<div t-if="search" class="alert alert-warning mt8" role="alert">
Your search '<t t-esc="search" />' did not match any pages.
</div>
<div t-else="" class="alert alert-warning mt8" role="alert">
There are currently no pages for your website.
</div>
</t>
<div t-if="pages" class="table-responsive">
<table class="table table-hover">
<thead>
<tr>
<th>Name</th>
<th>Url</th>
<th class="text-center"><i title="Is the page included in the main menu?" class="fa fa-thumb-tack"></i></th>
<th class="text-center"><i title="Is the page published?" class="fa fa-eye"></i></th>
<th class="text-center"><i title="Is the page indexed by search engines?" class="fa fa-globe"></i></th>
<th class="text-center"><i title="Is the page SEO optimized?" class="fa fa-search"></i></th>
<th></th>
</tr>
</thead>
<t t-set='prev_page' t-value='False' />
<t t-set='page' t-value='pages[0]' />
<t t-foreach="pages[1:]" t-as="next_page">
<t t-call='website.one_page_line'/>
<t t-set='prev_page' t-value='page' />
<t t-set='page' t-value='next_page' />
</t>
<t t-set='next_page' t-value='False'/>
<t t-call='website.one_page_line' />
</table>
</div>
<div t-if="pager" class="o_portal_pager text-center">
<t t-call="website.pager"/>
</div>
</div>
</div>
</t>
</template>
<template id="one_page_line">
<t t-set='specific_page' t-value="page.website_id"/>
<t t-set='final_page' t-value="(next_page and page.url != next_page.url) or not next_page or specific_page"/>
<tr t-att-style='not final_page and "color:#999"'>
<td>
<t groups="website.group_multi_website">
<i t-if='specific_page and prev_page and prev_page.url == page.url and not prev_page.website_id' class="fa fa-level-up fa-rotate-90 ml32 mr4"/>
<i t-else="1" class="fa fa-globe mr4" t-att-style="'visibility:hidden;' if specific_page else ''"/>
</t>
<i t-if="page.is_homepage" class="fa fa-home" title="Home"/> <span t-esc="page.name"/>
</td>
<td>
<a t-if='final_page' t-att-href="page.url"><t t-esc="page.url"/></a>
</td>
<td class="text-center">
<i t-if="page.menu_ids" class="fa fa-check" title="In main menu"/>
<i t-else="" class="fa fa-times text-muted" title="Not in main menu"/>
</td>
<td class="text-center">
<t t-set='date_formatted'><t t-options='{"widget": "date"}' t-esc="page.date_publish"/></t>
<i t-if="page.is_visible" class="fa fa-check" title="Visible"/>
<i t-elif="page.website_published" class="fa fa-eye-slash" t-attf-title="This page will be visible on {{ date_formatted }}"/>
<i t-else="" class="fa fa-times text-muted" title="Not visible"/>
</td>
<td class="text-center">
<i t-if="page.website_indexed" class="fa fa-check" title="Indexed"/>
<i t-else="" class="fa fa-times text-muted" title="Not indexed"/>
</td>
<td class="text-center">
<i t-if="page.is_seo_optimized" class="fa fa-check" title="SEO optimized"/>
<i t-else="" class="fa fa-times text-muted" title="Not SEO optimized"/>
</td>
<td class="text-right" style="white-space:nowrap;">
<a class="mr4 fa fa-cog js_page_properties" href="#" t-att-data-id="page.id" title="Manage this page"/>
<a class="mr4 fa fa-search" t-attf-href="{{ page.url}}?enable_seo" title="Optimize SEO of this page"/>
<a groups="base.group_no_one" class="mr4 fa fa-bug" t-attf-href="/web#id=#{page.view_id.id}&amp;view_type=form&amp;model=ir.ui.view" title="Edit code in backend"/>
<a class="mr4 fa fa-clone js_clone_page" t-att-data-id="page.id" href="#" title="Clone this page"/>
<a class="fa fa-trash js_delete_page" t-att-data-id="page.id" href="#" title="Delete this page"/>
</td>
</tr>
</template>
</odoo>