summaryrefslogtreecommitdiff
path: root/addons/website_event/views/event_templates_list.xml
diff options
context:
space:
mode:
authorstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
committerstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
commit3751379f1e9a4c215fb6eb898b4ccc67659b9ace (patch)
treea44932296ef4a9b71d5f010906253d8c53727726 /addons/website_event/views/event_templates_list.xml
parent0a15094050bfde69a06d6eff798e9a8ddf2b8c21 (diff)
initial commit 2
Diffstat (limited to 'addons/website_event/views/event_templates_list.xml')
-rw-r--r--addons/website_event/views/event_templates_list.xml331
1 files changed, 331 insertions, 0 deletions
diff --git a/addons/website_event/views/event_templates_list.xml b/addons/website_event/views/event_templates_list.xml
new file mode 100644
index 00000000..4ad91388
--- /dev/null
+++ b/addons/website_event/views/event_templates_list.xml
@@ -0,0 +1,331 @@
+<?xml version="1.0" encoding="utf-8"?>
+<odoo>
+
+<!-- Index -->
+<template id="index" name="Events">
+ <t t-call="website.layout">
+ <div id="wrap" class="o_wevent_index">
+ <!-- Options -->
+ <t t-set="opt_events_list_cards" t-value="is_view_active('website_event.opt_events_list_cards')"/>
+ <t t-set="opt_events_list_columns" t-value="is_view_active('website_event.opt_events_list_columns')"/>
+ <!-- Topbar -->
+ <t t-call="website_event.index_topbar"/>
+ <!-- Drag/Drop Area -->
+ <div id="oe_structure_we_index_1" class="oe_structure oe_empty"/>
+ <!-- Content -->
+ <div t-attf-class="o_wevent_events_list #{opt_events_list_cards and 'opt_event_list_cards_bg'}">
+ <div class="container">
+ <div class="row">
+ <t t-call="website_event.searched_tags"/>
+ </div>
+ <div class="row">
+ <div id="o_wevent_index_main_col" t-attf-class="col-md my-5 #{opt_events_list_columns and 'opt_events_list_columns' or 'opt_events_list_rows'}">
+ <div class="row">
+ <!-- Events List -->
+ <t t-call="website_event.events_list"/>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <!-- Drag/Drop Area -->
+ <div id="oe_structure_we_index_2" class="oe_structure oe_empty"/>
+ </div>
+ </t>
+</template>
+
+<!-- Index - OPTION - Sidebar -->
+<template id="opt_index_sidebar" inherit_id="website_event.index" active="False" customize_show="True" name="Show Sidebar">
+ <xpath expr="//div[@id='o_wevent_index_main_col']" position="after">
+ <t t-call="website_event.index_sidebar"/>
+ </xpath>
+</template>
+
+<!-- Index Topbar -->
+<template id="index_topbar" name="Topbar">
+ <nav class="navbar navbar-light border-top shadow-sm d-print-none">
+ <div class="container">
+ <div class="d-flex flex-column flex-sm-row justify-content-between w-100">
+ <span class="navbar-brand h4 my-0 mr-auto">Events</span>
+ <ul class="o_wevent_index_topbar_filters nav"/>
+ <div class="d-flex align-items-center flex-wrap pl-sm-3 pr-0">
+ <t t-call="website_event.events_search_box">
+ <t t-set="_searches" t-value="searches"/>
+ <t t-set="_placeholder">Search an event...</t>
+ </t>
+ </div>
+ </div>
+ </div>
+ </nav>
+</template>
+
+<template id="searched_tags" name="Searched tags">
+ <div class="d-flex align-items-center mt16">
+ <t t-foreach="search_tags" t-as="tag">
+ <span class="align-items-baseline border d-inline-flex pl-2 rounded ml16 mb-2 bg-white">
+ <i class="fa fa-tag mr-2 text-muted"/>
+ <t t-esc="tag.display_name"/>
+ <a t-att-href="'/event?%s' % keep_query('*', tags=str((search_tags - tag).ids))" class="btn border-0 py-1">&#215;</a>
+ </span>
+ </t>
+ </div>
+</template>
+
+<!-- Filter - Date -->
+<template id="event_time" inherit_id="website_event.index_topbar" customize_show="True" name="Filter by Date">
+ <xpath expr="//ul[hasclass('o_wevent_index_topbar_filters')]" position="inside">
+ <li class="nav-item dropdown mr-2 my-1">
+ <a href="#" role="button" class="btn dropdown-toggle" data-toggle="dropdown">
+ <i class="fa fa-calendar"/>
+ <t t-if="current_date" t-esc="current_date"/>
+ <t t-else="">Upcoming Events</t>
+ </a>
+ <div class="dropdown-menu">
+ <t t-foreach="dates" t-as="date">
+ <t t-if="date[3] or (date[0] in ('old','all'))">
+ <a t-att-href="keep('/event', date=date[0])" t-attf-class="dropdown-item d-flex align-items-center justify-content-between #{searches.get('date') == date[0] and 'active'}">
+ <t t-esc="date[1]"/>
+ <span t-if="date[3]" t-esc="date[3]" class="badge badge-pill badge-primary ml-3"/>
+ </a>
+ </t>
+ </t>
+ </div>
+ </li>
+ </xpath>
+</template>
+
+<template id="event_category_tag" inherit_id="website_event.index_topbar" active="False" customize_show="True" name="Filter by Tags">
+ <xpath expr="//ul[hasclass('o_wevent_index_topbar_filters')]" position="inside">
+ <t t-foreach="categories" t-as="category">
+ <li t-if="category.tag_ids and any(tag.color for tag in category.tag_ids)" class="nav-item dropdown mr-2 my-1">
+ <a href="#" role="button" class="btn dropdown-toggle" data-toggle="dropdown">
+ <i class="fa fa-folder-open"/>
+ <t t-esc="category.name"/>
+ </a>
+ <div class="dropdown-menu">
+ <t t-foreach="category.tag_ids" t-as="tag">
+ <a t-if="tag.color"
+ t-att-href="'/event?%s' % keep_query('*', tags=str((search_tags - tag).ids if tag in search_tags else (tag | search_tags).ids))"
+ t-attf-class="dropdown-item d-flex align-items-center justify-content-between #{'active' if tag in search_tags else ''}">
+ <t t-esc="tag.name"/>
+ </a>
+ </t>
+ </div>
+ </li>
+ </t>
+ </xpath>
+</template>
+
+<!-- Filter - Location -->
+<template id="event_location" inherit_id="website_event.index_topbar" active="False" customize_show="True" name="Filter by Country">
+ <xpath expr="//ul[hasclass('o_wevent_index_topbar_filters')]" position="inside">
+ <li class="nav-item dropdown mr-2 my-1">
+ <a href="#" role="button" class="btn dropdown-toggle" data-toggle="dropdown">
+ <i class="fa fa-map-marker"/>
+ <t t-if="current_country" t-esc="current_country.name"/>
+ <t t-else="">All countries</t>
+ </a>
+ <div class="dropdown-menu">
+ <t t-foreach="countries" t-as="country">
+ <t t-if="country['country_id']">
+ <a t-att-href="keep('/event', country=country['country_id'][0])" t-attf-class="dropdown-item d-flex align-items-center justify-content-between #{searches.get('country') == str(country['country_id'] and country['country_id'][0]) and 'active'}">
+ <t t-esc="country['country_id'][1]"/>
+ <span t-esc="country['country_id_count']" class="badge badge-pill badge-primary ml-auto"/>
+ </a>
+ </t>
+ <t t-else="">
+ <a t-att-href="keep('/event', country='online')" t-attf-class="dropdown-item d-flex align-items-center justify-content-between #{searches.get('country') == 'online' and 'active'}">
+ <span>Online Events</span>
+ <span t-esc="country['country_id_count']" class="badge badge-pill badge-primary ml-3"/>
+ </a>
+ </t>
+ </t>
+ </div>
+ </li>
+ </xpath>
+</template>
+
+<!-- Index - Events list -->
+<template id="events_list" name="Events list">
+ <!-- Options -->
+ <t t-set="opt_index_sidebar" t-value="is_view_active('website_event.opt_index_sidebar')"/>
+ <t t-if="opt_events_list_columns" t-set="opt_event_size" t-value="opt_index_sidebar and 'col-md-6' or 'col-md-6 col-lg-4'"/>
+ <t t-else="" t-set="opt_event_size" t-value="opt_index_sidebar and 'col-12' or 'col-xl-10 offset-xl-1'"/>
+ <!-- No events -->
+ <t t-if="not event_ids">
+ <div class="col-12">
+ <div class="h2 mb-3">No events found.</div>
+ <div class="alert alert-info text-center" groups="event.group_event_manager">
+ <p class="m-0">Use the top button '<b>+ New</b>' to create an event.</p>
+ </div>
+ </div>
+ </t>
+ <!-- List -->
+ <div t-foreach="event_ids" t-as="event" t-attf-class=" #{opt_event_size} mb-4">
+ <a t-attf-href="/event/#{ slug(event) }/#{(not event.menu_id) and 'register'}" class="text-decoration-none">
+ <article t-attf-class="h-100 #{opt_events_list_cards and 'card border-0 shadow-sm'}" itemscope="itemscope" itemtype="http://schema.org/Event">
+ <div class="h-100 row no-gutters">
+ <!-- Header -->
+ <header t-attf-class="overflow-hidden bg-secondary #{opt_events_list_columns and 'col-12 rounded-top' or 'col-sm-4 col-lg-3 rounded-left'} #{(not opt_events_list_cards) and 'rounded shadow'} #{(not opt_events_list_cards and not opt_events_list_columns) and 'rounded-top'}">
+ <!-- Image + Link -->
+ <div class="d-block h-100 w-100">
+ <t t-call="website.record_cover">
+ <t t-set="_record" t-value="event"/>
+
+ <!-- Short Date -->
+ <div class="o_wevent_event_date position-absolute bg-white shadow-sm text-dark">
+ <span t-field="event.with_context(tz=event.date_tz).date_begin" t-options="{'format': 'LLL'}" class="o_wevent_event_month"/>
+ <span t-field="event.with_context(tz=event.date_tz).date_begin" t-options="{'format': 'dd'}" class="o_wevent_event_day"/>
+ </div>
+ <!-- Participating -->
+ <small t-if="event.is_participating" class="o_wevent_participating bg-success">
+ <i class="fa fa-check mr-2"/>Registered
+ </small>
+ <!-- Unpublished -->
+ <small t-if="not event.website_published" class="o_wevent_unpublished bg-danger">
+ <i class="fa fa-ban mr-2"/>Unpublished
+ </small>
+ </t>
+ </div>
+ </header>
+ <div t-att-class="'%s %s' % (
+ opt_events_list_columns and 'col-12' or 'col',
+ opt_events_list_columns and event.event_registrations_open and not event.event_registrations_sold_out and 'h-100' or '')">
+ <!-- Body -->
+ <main t-attf-class="#{opt_events_list_cards and 'card-body' or (opt_events_list_columns and 'py-3' or 'px-4')}">
+ <!-- Title -->
+ <h5 t-attf-class="card-title mt-2 mb-0 text-truncate #{(not event.website_published) and 'text-danger'}">
+ <span t-field="event.name" itemprop="name"/>
+ </h5>
+ <!-- Start Date & Time -->
+ <time itemprop="startDate" t-att-datetime="event.date_begin">
+ <span t-field="event.with_context(tz=event.date_tz).date_begin" t-options="{'date_only': 'true', 'format': 'long'}"/> -
+ <span t-field="event.with_context(tz=event.date_tz).date_begin" t-options="{'time_only': 'true', 'format': 'short'}"/>
+ </time>
+ <!-- Location -->
+ <div itemprop="location" t-field="event.address_id" t-options="{'widget': 'contact', 'fields': ['city'], 'no_marker': 'true'}"/>
+ <div class="mt8 d-flex align-items-center">
+ <t t-foreach="event.tag_ids" t-as="tag">
+ <span t-if="tag.color"
+ t-attf-class="badge mr8 #{'badge-primary' if tag in search_tags else 'badge-light'} #{'o_tag_color_%s' % tag.color if tag.color else ''}">
+ <span t-esc="tag.name"/>
+ </span>
+ </t>
+ </div>
+ </main>
+ </div>
+ <!-- Footer -->
+ <footer t-if="not event.event_registrations_open or event.event_registrations_sold_out"
+ t-att-class="'small align-self-end w-100 %s %s' % (
+ opt_events_list_cards and 'card-footer' or (not opt_events_list_columns and 'mx-4 mt-auto pt-2') or 'py-2',
+ opt_events_list_cards and 'border-top' or '',
+ )">
+ <span t-if="not event.event_registrations_open" class="text-danger">
+ <t t-if="event.start_sale_date and event.start_sale_date &gt; datetime.date.today()">
+ Registrations not yet open
+ </t>
+ <t t-elif="event.event_registrations_sold_out">
+ Sold Out
+ </t>
+ <t t-else="">
+ Registrations Closed
+ </t>
+ </span>
+ </footer>
+ </div>
+ </article>
+ </a>
+ </div>
+ <!-- Pager -->
+ <div class="form-inline justify-content-center my-3">
+ <t t-call="website.pager"/>
+ </div>
+</template>
+
+<template id="opt_events_list_columns" inherit_id="website_event.events_list" active="True" customize_show="True" name="Layout • Columns"/>
+
+<template id="opt_events_list_cards" inherit_id="website_event.events_list" active="True" customize_show="True" name="'Cards' Design"/>
+
+<template id="opt_events_list_categories" inherit_id="website_event.events_list" active="False" customize_show="True" name="Show Templates">
+ <xpath expr="//main/*" position="before">
+ <span t-if="event.event_type_id" t-attf-href="/event?type=#{event.event_type_id.id}" t-attf-class="badge bg-secondary o_wevent_badge #{opt_events_list_columns and 'o_wevent_badge_event' or 'float-right'}" t-field="event.event_type_id"/>
+ </xpath>
+</template>
+
+<!-- Index - Sidebar -->
+<template id="index_sidebar" name="Sidebar">
+ <div id="o_wevent_index_sidebar" class="col-lg-4 ml-lg-3 ml-xl-5 my-5"/>
+</template>
+
+<!-- Index - Sidebar - About us -->
+<template id="index_sidebar_about_us" inherit_id="website_event.index_sidebar" active="True" customize_show="True" name="About us" priority="20">
+ <xpath expr="//div[@id='o_wevent_index_sidebar']" position="inside">
+ <div class="o_wevent_sidebar_block">
+ <h6 class="o_wevent_sidebar_title">About us</h6>
+ <p>Use this paragrah to write a short text about your events or company.</p>
+ </div>
+ <div id="oe_structure_website_event_about_us_1" class="oe_structure"/>
+ </xpath>
+</template>
+
+<!-- Index - Sidebar - Follow us -->
+<template id="index_sidebar_follow_us" inherit_id="website_event.index_sidebar" active="True" customize_show="True" name="Follow us" priority="30">
+ <xpath expr="//div[@id='o_wevent_index_sidebar']" position="inside">
+ <div class="o_wevent_sidebar_block">
+ <h6 class="o_wevent_sidebar_title">Follow Us</h6>
+ <div class="o_wevent_sidebar_social mx-n1">
+ <a t-if="website.social_facebook" t-att-href="website.social_facebook" class="o_wevent_social_link"><i class="fa fa-facebook text-facebook" aria-label="Facebook" title="Facebook"/></a>
+ <a t-if="website.social_twitter" t-att-href="website.social_twitter" class="o_wevent_social_link"><i class="fa fa-twitter text-twitter" aria-label="Twitter" title="Twitter"/></a>
+ <a t-if="website.social_linkedin" t-att-href="website.social_linkedin" class="o_wevent_social_link"><i class="fa fa-linkedin text-linkedin" aria-label="LinkedIn" title="LinkedIn"/></a>
+ <a t-if="website.social_youtube" t-att-href="website.social_youtube" class="o_wevent_social_link"><i class="fa fa-youtube-play text-youtube" aria-label="Youtube" title="Youtube"/></a>
+ <a t-if="website.social_github" t-att-href="website.social_github" class="o_wevent_social_link"><i class="fa fa-github text-github" aria-label="Github" title="Github"/></a>
+ <a t-if="website.social_instagram" t-att-href="website.social_instagram" class="o_wevent_social_link"><i class="fa fa-instagram text-instagram" aria-label="Instagram" title="Instagram"/></a>
+ </div>
+ </div>
+ <div id="oe_structure_website_event_follow_us_1" class="oe_structure"/>
+ </xpath>
+</template>
+
+<!-- Index - Sidebar - Photos -->
+<template id="index_sidebar_photos" inherit_id="website_event.index_sidebar" active="True" customize_show="True" name="Photos" priority="40">
+ <xpath expr="//div[@id='o_wevent_index_sidebar']" position="inside">
+ <h6 class="o_wevent_sidebar_title">Photos</h6>
+ <a href="/event">
+ <figure class="o_wevent_sidebar_block o_wevent_sidebar_figure figure">
+ <img class="figure-img img-fluid rounded" src="/website_event/static/src/img/event_past_0.jpg" alt=""/>
+ <figcaption class="figure-caption text-muted">A past event</figcaption>
+ </figure>
+ </a>
+ <a href="/event">
+ <figure class="o_wevent_sidebar_block o_wevent_sidebar_figure figure">
+ <img class="figure-img img-fluid rounded" src="/website_event/static/src/img/event_training_0.jpg" alt=""/>
+ <figcaption class="figure-caption text-muted">Our Trainings</figcaption>
+ </figure>
+ </a>
+ </xpath>
+</template>
+
+<!-- Index - Sidebar - Quotes -->
+<template id="index_sidebar_quotes" inherit_id="website_event.index_sidebar" active="True" customize_show="True" name="Quotes" priority="60">
+ <xpath expr="//div[@id='o_wevent_index_sidebar']" position="inside">
+ <div class="o_wevent_sidebar_block card">
+ <div class="card-body">
+ <blockquote class="blockquote mb-0">
+ <p><em>Write here a quote from one of your attendees. It gives confidence in your events.</em></p>
+ <footer class="blockquote-footer text-muted">Author</footer>
+ </blockquote>
+ </div>
+ </div>
+ </xpath>
+</template>
+
+<!-- Index - Sidebar - Snippet - Country Events -->
+<template id="index_sidebar_country_event" inherit_id="website_event.index_sidebar" active="True" customize_show="True" name="Country Events" priority="70">
+ <xpath expr="//div[@id='o_wevent_index_sidebar']" position="inside">
+ <div class="o_wevent_sidebar_block">
+ <t t-snippet-call="website_event.s_country_events"/>
+ </div>
+ </xpath>
+</template>
+
+</odoo>