Ir al contenido
Español (CO)
الْعَرَبيّة
English (US)
Français (CA)
Español (CO)
0
Mi carrito
Iniciar sesión
Home
Francisation
Soutien aux familles
Formation
Information Socioprofessionnelle
Calendrier
Cita
Contáctenos
0
Home
Francisation
Soutien aux familles
Formation
Information Socioprofessionnelle
Calendrier
Cita
Español (CO)
الْعَرَبيّة
English (US)
Français (CA)
Español (CO)
Iniciar sesión
Contáctenos
Eventos
Service Aux Familles
Todos
Familles
En français
En présentiel
Participation Culturelle
En ligne
Parler Français
Todos
<template id="events_cards_page" name="Events - Cards"> <t t-call="website.layout"> <div class="container py-4"> <!-- 🔽 Lire le paramètre ?tag= depuis l'URL --> <t t-set="tag_id" t-value="int(request.params.get('tag') or 0)"/> <!-- 🔽 Construire le domain en fonction du tag --> <t t-set="domain" t-value="tag_id and [('tag_ids', 'in', tag_id)] or []"/> <!-- 🔽 Charger les événements filtrés --> <t t-set="events" t-value="request.env['event.event'].sudo().search(domain, order='is_featured desc, date_begin desc')"/> <h1 class="mb-4"> <t t-if="tag_id"> Événements – <t t-esc="request.env['event.tag'].sudo().browse(tag_id).name"/> </t> <t t-else="">Tous les événements</t> </h1> <div class="row g-4"> <t t-foreach="events" t-as="e" t-key="e.id"> <div class="col-12 col-sm-6 col-lg-4"> <div class="card h-100 shadow-sm border-0"> <!-- Image : galerie si dispo sinon image_1920 --> <t t-set="gal" t-value="e.event_image_id and e.event_image_id[0] or False"/> <img t-if="gal and (gal.sh_thumb or gal.sh_image)" t-att-src="gal.sh_thumb and ('/web/image/event.image.gallery/%s/sh_thumb' % gal.id) or ('/web/image/event.image.gallery/%s/sh_image' % gal.id)" class="card-img-top" alt="" style="object-fit:cover; height:180px;"/> <img t-else="" t-att-src="'/web/image/event.event/%s/image_1920' % e.id" class="card-img-top" alt="" style="object-fit:cover; height:180px;"/> <div class="card-body d-flex flex-column"> <h5 class="card-title"> <t t-esc="e.name"/> <t t-if="e.is_featured"> <span class="badge bg-warning text-dark ms-1">En vedette</span> </t> </h5> <div class="text-muted small mb-2"> <span t-field="e.date_begin" t-options='{"format":"dd-MM-yyyy HH:mm"}'/> </div> <p class="card-text flex-grow-1"> <t t-if="gal and gal.sh_description"> <t t-esc="(gal.sh_description or '')[:160]"/> </t> </p> <a t-att-href="e.website_url" class="btn btn-primary mt-auto">Voir l’événement</a> </div> </div> </div> </t> <t t-if="not events"> <div class="col-12"> <div class="alert alert-info">Aucun événement publié.</div> </div> </t> </div> </div> </t> </template>
jeune
Todos
Jeunesse
Próximas
Próximos eventos
Eventos pasados
Todos los eventos
Par défaut
Filtros
Service Aux Familles
Familles
En français
En présentiel
Participation Culturelle
En ligne
Parler Français
<template id="events_cards_page" name="Events - Cards"> <t t-call="website.layout"> <div class="container py-4"> <!-- 🔽 Lire le paramètre ?tag= depuis l'URL --> <t t-set="tag_id" t-value="int(request.params.get('tag') or 0)"/> <!-- 🔽 Construire le domain en fonction du tag --> <t t-set="domain" t-value="tag_id and [('tag_ids', 'in', tag_id)] or []"/> <!-- 🔽 Charger les événements filtrés --> <t t-set="events" t-value="request.env['event.event'].sudo().search(domain, order='is_featured desc, date_begin desc')"/> <h1 class="mb-4"> <t t-if="tag_id"> Événements – <t t-esc="request.env['event.tag'].sudo().browse(tag_id).name"/> </t> <t t-else="">Tous les événements</t> </h1> <div class="row g-4"> <t t-foreach="events" t-as="e" t-key="e.id"> <div class="col-12 col-sm-6 col-lg-4"> <div class="card h-100 shadow-sm border-0"> <!-- Image : galerie si dispo sinon image_1920 --> <t t-set="gal" t-value="e.event_image_id and e.event_image_id[0] or False"/> <img t-if="gal and (gal.sh_thumb or gal.sh_image)" t-att-src="gal.sh_thumb and ('/web/image/event.image.gallery/%s/sh_thumb' % gal.id) or ('/web/image/event.image.gallery/%s/sh_image' % gal.id)" class="card-img-top" alt="" style="object-fit:cover; height:180px;"/> <img t-else="" t-att-src="'/web/image/event.event/%s/image_1920' % e.id" class="card-img-top" alt="" style="object-fit:cover; height:180px;"/> <div class="card-body d-flex flex-column"> <h5 class="card-title"> <t t-esc="e.name"/> <t t-if="e.is_featured"> <span class="badge bg-warning text-dark ms-1">En vedette</span> </t> </h5> <div class="text-muted small mb-2"> <span t-field="e.date_begin" t-options='{"format":"dd-MM-yyyy HH:mm"}'/> </div> <p class="card-text flex-grow-1"> <t t-if="gal and gal.sh_description"> <t t-esc="(gal.sh_description or '')[:160]"/> </t> </p> <a t-att-href="e.website_url" class="btn btn-primary mt-auto">Voir l’événement</a> </div> </div> </div> </t> <t t-if="not events"> <div class="col-12"> <div class="alert alert-info">Aucun événement publié.</div> </div> </t> </div> </div> </t> </template>
Parler Français
jeune
Jeunesse
Fecha
Próximos eventos
Eventos pasados
Todos los eventos
Todavía no hay eventos programados
No encontramos ningún evento programado en este momento.