old
This commit is contained in:
@@ -0,0 +1,79 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo>
|
||||
|
||||
<!-- ================================================================== -->
|
||||
<!-- Fino Luxury B2B Header -->
|
||||
<!-- Mirrors the .topbar design from Website/index.html -->
|
||||
<!-- Selectable in the website editor alongside Default / Stretch / etc. -->
|
||||
<!-- ================================================================== -->
|
||||
<template id="template_header_fino"
|
||||
inherit_id="website.layout"
|
||||
name="Template Header Fino"
|
||||
active="False">
|
||||
|
||||
<xpath expr="//header//nav" position="replace">
|
||||
|
||||
<t t-call="website.navbar">
|
||||
<!--
|
||||
_navbar_classes: d-none d-lg-block hides the desktop bar
|
||||
on mobile (mobile fallback rendered by template_header_mobile below).
|
||||
o_fino_navbar is our custom hook for SCSS.
|
||||
-->
|
||||
<t t-set="_navbar_classes" t-valuef="d-none d-lg-block shadow-sm o_fino_navbar"/>
|
||||
|
||||
<div id="o_main_nav" class="o_main_nav o_fino_nav_inner">
|
||||
|
||||
<!-- ── Left: brand logo + portal label ───────────────── -->
|
||||
<div class="o_fino_brand_wrap">
|
||||
<t t-call="website.placeholder_header_brand">
|
||||
<t t-set="_link_class" t-valuef="o_fino_brand_link"/>
|
||||
</t>
|
||||
<span class="o_fino_portal_label">B2B<br/>Partner Portal</span>
|
||||
</div>
|
||||
|
||||
<!-- ── Centre: website menu items ────────────────────── -->
|
||||
<t t-call="website.navbar_nav">
|
||||
<t t-set="_nav_class" t-valuef="ms-auto o_fino_nav_links"/>
|
||||
|
||||
<t t-foreach="website.menu_id.child_id" t-as="submenu">
|
||||
<t t-call="website.submenu">
|
||||
<t t-set="item_class" t-valuef="nav-item"/>
|
||||
<t t-set="link_class" t-valuef="nav-link o_fino_nav_link"/>
|
||||
</t>
|
||||
</t>
|
||||
</t>
|
||||
|
||||
<!-- ── Right: language + sign-in / user dropdown ─────── -->
|
||||
<ul class="navbar-nav align-items-center gap-3 flex-shrink-0 ms-3 o_fino_nav_actions">
|
||||
|
||||
<!-- Language selector (hidden when only one language) -->
|
||||
<t t-call="website.placeholder_header_language_selector">
|
||||
<t t-set="_btn_class" t-valuef="nav-link o_fino_nav_link px-0"/>
|
||||
<t t-set="_dropdown_menu_class" t-valuef="dropdown-menu-end"/>
|
||||
</t>
|
||||
|
||||
<!-- Sign In (shown when logged-out) -->
|
||||
<t t-call="portal.placeholder_user_sign_in">
|
||||
<t t-set="_link_class" t-valuef="o_fino_btn_signin"/>
|
||||
</t>
|
||||
|
||||
<!-- User dropdown (shown when logged-in) -->
|
||||
<t t-call="portal.user_dropdown">
|
||||
<t t-set="_user_name" t-value="True"/>
|
||||
<t t-set="_item_class" t-valuef="dropdown"/>
|
||||
<t t-set="_link_class" t-valuef="nav-link border-0 o_fino_nav_link"/>
|
||||
<t t-set="_dropdown_menu_class" t-valuef="dropdown-menu-end"/>
|
||||
</t>
|
||||
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</t>
|
||||
|
||||
<!-- Mobile header (Odoo standard offcanvas) -->
|
||||
<t t-call="website.template_header_mobile"/>
|
||||
|
||||
</xpath>
|
||||
</template>
|
||||
|
||||
</odoo>
|
||||
@@ -0,0 +1,337 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<odoo>
|
||||
|
||||
<!-- ================================================================== -->
|
||||
<!-- Snippet template – Brand Universe section -->
|
||||
<!-- ================================================================== -->
|
||||
<template id="fino_brands" name="Fino – Brand Universe">
|
||||
<section
|
||||
class="fino_brands o_cc o_cc1 pt64 pb64"
|
||||
data-snippet="fino_brands"
|
||||
data-name="Fino – Brand Universe"
|
||||
>
|
||||
<div class="container">
|
||||
|
||||
<!-- ── Section header ──────────────────────────────────── -->
|
||||
<p class="fino_brands_section_label">Our Brand Universe</p>
|
||||
<h2 class="fino_brands_section_title" id="brands-heading">
|
||||
Consumer & Retail Destinations
|
||||
</h2>
|
||||
<p class="fino_brands_section_body">
|
||||
Direct your clients and consumers to our flagship brand
|
||||
destinations — each crafted to deliver the full luxury
|
||||
experience.
|
||||
</p>
|
||||
|
||||
<!-- ── Brand cards grid ────────────────────────────────── -->
|
||||
<div class="fino_brands_grid" role="list">
|
||||
|
||||
<!-- FI-NE -->
|
||||
<a
|
||||
class="fino_brands_card fino_brands_card--fine"
|
||||
href="https://finecosmetic.de"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
role="listitem"
|
||||
aria-label="Visit [fi-ne] consumer website — finecosmetic.de"
|
||||
>
|
||||
<div
|
||||
class="fino_brands_card_top_accent"
|
||||
aria-hidden="true"
|
||||
/>
|
||||
<img
|
||||
class="fino_brands_card_image"
|
||||
src="/fino_brands_snippet/static/src/img/Fine.webp"
|
||||
alt="[fi-ne] Deodorant Cream Vetiver Geranium product"
|
||||
loading="lazy"
|
||||
/>
|
||||
<div
|
||||
class="fino_brands_card_overlay"
|
||||
aria-hidden="true"
|
||||
/>
|
||||
<div class="fino_brands_card_content">
|
||||
<span
|
||||
class="fino_brands_card_eyebrow"
|
||||
>Premium Natural Cosmetics</span>
|
||||
<img
|
||||
class="fino_brands_card_logo"
|
||||
src="/fino_brands_snippet/static/src/img/Fine.svg"
|
||||
alt="[fi-ne] brand logo"
|
||||
loading="lazy"
|
||||
/>
|
||||
<span class="fino_brands_card_tagline">
|
||||
Clean. Unisex. Uncompromisingly effective.<br />
|
||||
Made in Germany.
|
||||
</span>
|
||||
<span class="fino_brands_card_cta">
|
||||
finecosmetic.de
|
||||
<span
|
||||
class="fino_brands_card_cta_arrow"
|
||||
aria-hidden="true"
|
||||
>→</span>
|
||||
</span>
|
||||
</div>
|
||||
</a>
|
||||
|
||||
<!-- LACUEOR -->
|
||||
<a
|
||||
class="fino_brands_card fino_brands_card--lacueor"
|
||||
href="https://lacueor.com"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
role="listitem"
|
||||
aria-label="Visit LACUEOR consumer website — lacueor.com"
|
||||
>
|
||||
<div
|
||||
class="fino_brands_card_top_accent"
|
||||
aria-hidden="true"
|
||||
/>
|
||||
<img
|
||||
class="fino_brands_card_image"
|
||||
src="/fino_brands_snippet/static/src/img/Lacuoer.jpg"
|
||||
alt="LACUEOR Staub luxury skincare product on crystal"
|
||||
loading="lazy"
|
||||
/>
|
||||
<div
|
||||
class="fino_brands_card_overlay"
|
||||
aria-hidden="true"
|
||||
/>
|
||||
<div class="fino_brands_card_content">
|
||||
<span
|
||||
class="fino_brands_card_eyebrow"
|
||||
>Premium Organic Skin Care</span>
|
||||
<img
|
||||
class="fino_brands_card_logo fino_brands_card_logo--lacueor"
|
||||
src="/fino_brands_snippet/static/src/img/Lacueor.svg"
|
||||
alt="LACUEOR brand logo"
|
||||
loading="lazy"
|
||||
/>
|
||||
<span class="fino_brands_card_tagline">
|
||||
From the quantum realm to your skin.<br />
|
||||
Made in Berlin & Brandenburg with love.
|
||||
</span>
|
||||
<span class="fino_brands_card_cta">
|
||||
lacueor.com
|
||||
<span
|
||||
class="fino_brands_card_cta_arrow"
|
||||
aria-hidden="true"
|
||||
>→</span>
|
||||
</span>
|
||||
</div>
|
||||
</a>
|
||||
|
||||
</div>
|
||||
<!-- /fino_brands_grid -->
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</template>
|
||||
|
||||
|
||||
<!-- ================================================================== -->
|
||||
<!-- Snippet template – B2B Partner Access -->
|
||||
<!-- ================================================================== -->
|
||||
<template id="fino_b2b" name="Fino – B2B Partner Access">
|
||||
<section
|
||||
class="fino_b2b o_cc o_cc1 pt64 pb64"
|
||||
data-snippet="fino_b2b"
|
||||
data-name="Fino – B2B Partner Access"
|
||||
>
|
||||
<div class="container">
|
||||
|
||||
<!-- ── Section header ──────────────────────────────────── -->
|
||||
<p class="fino_b2b_label">Exclusive Partnership</p>
|
||||
<h2 class="fino_b2b_title">Apply for B2B Access</h2>
|
||||
<p class="fino_b2b_body">
|
||||
Join our Business Partner Programme and unlock wholesale pricing,
|
||||
exclusive promotions, and dedicated account support —
|
||||
crafted for retailers, distributors, and professional buyers.
|
||||
</p>
|
||||
|
||||
<!-- ── Benefit pillars ─────────────────────────────────── -->
|
||||
<div class="fino_b2b_benefits" role="list">
|
||||
|
||||
<!-- Bulk Pricing -->
|
||||
<div class="fino_b2b_benefit" role="listitem">
|
||||
<div
|
||||
class="fino_b2b_benefit_icon_wrap"
|
||||
aria-hidden="true"
|
||||
>
|
||||
<!-- Package / layers icon -->
|
||||
<svg
|
||||
width="28"
|
||||
height="28"
|
||||
viewBox="0 0 24 24"
|
||||
fill="none"
|
||||
stroke="currentColor"
|
||||
stroke-width="1.25"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path
|
||||
d="M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z"
|
||||
/>
|
||||
<polyline
|
||||
points="3.27 6.96 12 12.01 20.73 6.96"
|
||||
/>
|
||||
<line x1="12" y1="22.08" x2="12" y2="12" />
|
||||
</svg>
|
||||
</div>
|
||||
<span class="fino_b2b_benefit_title">Bulk Pricing</span>
|
||||
<div class="fino_b2b_benefit_rule" aria-hidden="true" />
|
||||
<span class="fino_b2b_benefit_text">
|
||||
Tiered wholesale rates on every SKU across our entire
|
||||
brand portfolio — the more you order, the more you save.
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<!-- Exclusive Promotions -->
|
||||
<div class="fino_b2b_benefit" role="listitem">
|
||||
<div
|
||||
class="fino_b2b_benefit_icon_wrap"
|
||||
aria-hidden="true"
|
||||
>
|
||||
<!-- Award / star icon -->
|
||||
<svg
|
||||
width="28"
|
||||
height="28"
|
||||
viewBox="0 0 24 24"
|
||||
fill="none"
|
||||
stroke="currentColor"
|
||||
stroke-width="1.25"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<circle cx="12" cy="8" r="6" />
|
||||
<path
|
||||
d="M15.477 12.89 17 22l-5-3-5 3 1.523-9.11"
|
||||
/>
|
||||
</svg>
|
||||
</div>
|
||||
<span
|
||||
class="fino_b2b_benefit_title"
|
||||
>Exclusive Promotions</span>
|
||||
<div class="fino_b2b_benefit_rule" aria-hidden="true" />
|
||||
<span class="fino_b2b_benefit_text">
|
||||
Partner-only seasonal campaigns, early-access product launches,
|
||||
and co-marketing opportunities reserved for B2B members.
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<!-- Dedicated Support -->
|
||||
<div class="fino_b2b_benefit" role="listitem">
|
||||
<div
|
||||
class="fino_b2b_benefit_icon_wrap"
|
||||
aria-hidden="true"
|
||||
>
|
||||
<!-- Headset / support icon -->
|
||||
<svg
|
||||
width="28"
|
||||
height="28"
|
||||
viewBox="0 0 24 24"
|
||||
fill="none"
|
||||
stroke="currentColor"
|
||||
stroke-width="1.25"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path d="M3 18v-6a9 9 0 0 1 18 0v6" />
|
||||
<path
|
||||
d="M21 19a2 2 0 0 1-2 2h-1a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2h3z"
|
||||
/>
|
||||
<path
|
||||
d="M3 19a2 2 0 0 0 2 2h1a2 2 0 0 0 2-2v-3a2 2 0 0 0-2-2H3z"
|
||||
/>
|
||||
</svg>
|
||||
</div>
|
||||
<span
|
||||
class="fino_b2b_benefit_title"
|
||||
>Dedicated Support</span>
|
||||
<div class="fino_b2b_benefit_rule" aria-hidden="true" />
|
||||
<span class="fino_b2b_benefit_text">
|
||||
A personal account manager and priority fulfilment
|
||||
to keep your business moving without friction.
|
||||
</span>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<!-- /fino_b2b_benefits -->
|
||||
|
||||
<!-- ── Gold rule divider ────────────────────────────────── -->
|
||||
<div class="fino_b2b_divider" aria-hidden="true" />
|
||||
|
||||
<!-- ── Sign-up form placeholder ────────────────────────── -->
|
||||
<!--
|
||||
╔══════════════════════════════════════════════════════╗
|
||||
║ FORM PLACEHOLDER ║
|
||||
║ Replace .fino_b2b_form_area with your own ║
|
||||
║ sign-up form, Odoo form widget, or embedded iframe. ║
|
||||
╚══════════════════════════════════════════════════════╝
|
||||
-->
|
||||
<div class="fino_b2b_form_area">
|
||||
<p class="fino_b2b_form_placeholder">
|
||||
✎  Send your application here
|
||||
</p>
|
||||
</div>
|
||||
<!-- /fino_b2b_form_area -->
|
||||
|
||||
<!-- ── Footer note ──────────────────────────────────────── -->
|
||||
<p class="fino_b2b_notice">
|
||||
Already a partner?  —  
|
||||
<a href="/web/login">Sign in to your B2B account</a>
|
||||
</p>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</template>
|
||||
|
||||
|
||||
<!-- ================================================================== -->
|
||||
<!-- Register both snippets in the website editor – Content group -->
|
||||
<!-- ================================================================== -->
|
||||
<template
|
||||
id="snippets"
|
||||
inherit_id="website.snippets"
|
||||
name="Fino – Snippet Entries"
|
||||
>
|
||||
<xpath expr="//snippets[@id='snippet_structure']" position="inside">
|
||||
<t
|
||||
t-snippet="fino_brands_snippet.fino_brands"
|
||||
t-thumbnail="/fino_brands_snippet/static/src/img/snippet_thumb.svg"
|
||||
string="Fino – Brand Universe"
|
||||
group="content"
|
||||
/>
|
||||
<t
|
||||
t-snippet="fino_brands_snippet.fino_b2b"
|
||||
t-thumbnail="/fino_brands_snippet/static/src/img/b2b_snippet_thumb.svg"
|
||||
string="Fino – B2B Partner Access"
|
||||
group="content"
|
||||
/>
|
||||
</xpath>
|
||||
</template>
|
||||
|
||||
|
||||
<!-- ================================================================== -->
|
||||
<!-- Register the Fino Luxury header in the website header picker -->
|
||||
<!-- ================================================================== -->
|
||||
<template
|
||||
id="snippets_header_fino"
|
||||
inherit_id="website.snippet_options"
|
||||
name="Fino Header – Header Picker Entry"
|
||||
>
|
||||
<xpath
|
||||
expr="//we-select[@data-variable='header-template']"
|
||||
position="inside"
|
||||
>
|
||||
<we-button
|
||||
title="Fino – Luxury B2B"
|
||||
data-name="header_fino_opt"
|
||||
data-trigger="regular_header_visibility_opt"
|
||||
data-customize-website-views="fino_brands_snippet.template_header_fino"
|
||||
data-customize-website-variable="'fino'"
|
||||
data-img="/fino_brands_snippet/static/src/img/header_template_fino.svg"
|
||||
/>
|
||||
</xpath>
|
||||
</template>
|
||||
|
||||
</odoo>
|
||||
Reference in New Issue
Block a user