newsletter apage
All checks were successful
Deploy / Deploy to Production (push) Successful in 13s

This commit is contained in:
Julie Blanc 2026-02-26 17:02:34 +01:00
parent e7da4d77b5
commit 20bdf428e4
25 changed files with 648 additions and 88 deletions

View file

@ -0,0 +1,23 @@
name: Titre
icon: title
wysiwyg: true
preview: heading
fields:
level:
label: Niveau
type: toggles
empty: false
default: "h4"
labels: false
options:
- value: h4
icon: h4
text: H4
- value: h5
icon: h5
text: H5
text:
label: Texte
type: writer
inline: true
placeholder: Titre…

View file

@ -4,4 +4,20 @@ tabs:
contentTab:
label: Contenu
icon: page
fields:
title:
label: Titre
type: text
required: true
body:
label: Corps
type: blocks
fieldsets:
- heading-sub
- text
- image
- beforeafter
- video
- gallery
- insert
seo: seo/page

View file

@ -3,4 +3,17 @@ title: Contact
tabs:
contentTab:
label: Contenu
icon: page
fields:
title:
label: Titre
type: text
required: true
body:
label: Corps
type: blocks
fieldsets:
- heading
- text
- image
seo: seo/page

View file

@ -3,4 +3,37 @@ title: Mentions légales
tabs:
contentTab:
label: Contenu
icon: page
fields:
title:
label: Titre
type: text
required: true
definitions:
label: Tableau de définitions
help: Affiché sous forme de liste en deux colonnes (terme — définition)
type: structure
fields:
term:
label: Terme
type: text
width: 1/3
definition:
label: Définition
type: writer
width: 2/3
marks:
- bold
- italic
- highlight
- link
nodes:
- bulletList
- orderedList
body:
label: Corps
type: blocks
fieldsets:
- heading-sub
- text
seo: seo/page

View file

@ -0,0 +1,30 @@
title: Newsletter
tabs:
contentTab:
label: Contenu
icon: email
fields:
title:
label: Titre
type: text
required: true
chapo:
label: Chapeau
type: writer
nodes: false
marks:
- bold
- italic
- underline
- link
details:
label: Détails
type: writer
nodes: false
marks:
- bold
- italic
- underline
- link
seo: seo/page

View file

@ -0,0 +1,18 @@
title: Politique de confidentialité
tabs:
contentTab:
label: Contenu
icon: page
fields:
title:
label: Titre
type: text
required: true
body:
label: Corps
type: blocks
fieldsets:
- heading-sub
- text
seo: seo/page

View file

@ -5,4 +5,14 @@ tabs:
label: Contenu
sections:
investigations: fields/investigations
legal:
type: pages
label: Pages légales
templates:
- legal-notices
- privacy-policy
- newsletter
layout: list
text: "{{ page.title }}"
create: false
seo: seo/site

View file

@ -93,6 +93,24 @@ return [
return Str::contains($path, 'pages/mentions-legales');
}
],
'newsletter' => [
'label' => 'Newsletter',
'icon' => 'email',
'link' => 'pages/newsletter',
'current' => function (string $current): bool {
$path = Kirby\Cms\App::instance()->path();
return Str::contains($path, 'pages/newsletter');
}
],
'privacy-policy' => [
'label' => 'Politique de confidentialité',
'icon' => 'lock',
'link' => 'pages/politique-de-confidentialite',
'current' => function (string $current): bool {
$path = Kirby\Cms\App::instance()->path();
return Str::contains($path, 'pages/politique-de-confidentialite');
}
],
'-',
'database' => [
'label' => 'Bases de données',

View file

@ -15,21 +15,30 @@ de la vérité et de la justice.</p>
</form>
<nav>
<nav id="nav-pages">
<ul>
<li><a href="<?= page('a-propos')->url() ?>"><?= kirby()->language() && kirby()->language()->code() === 'en' ? 'About' : 'À propos' ?></a></li>
<li><a href="<?= page('enquetes')->url() ?>"><?= t('investigations.title') ?></a></li>
<li><a href="<?= page('packages')->url() ?>"><?= t('packages.title') ?></a></li>
<li><a href="<?= page('impacts')->url() ?>"><?= t('impacts.title') ?></a></li>
<li><a href="<?= page('news')->url() ?>"><?= t('news.title') ?></a></li>
<li><a href="<?= page('ressources')->url() ?>"><?= t('resources.title') ?></a></li>
<li><a href="<?= page('laboratoire')->url() ?>"><?= t('lab.title') ?></a></li>
</ul>
</nav>
<li><a href="#">À propos</a></li> <!-- page à créer -->
<li><a href="/enquêtes">Equêtes</a></li>
<li><a href="/packages">Dossiers</a></li>
<li><a href="#">Contact</a></li>
<li><a href="#">À propos</a></li>
<li><a href="#">Ressources</a></li>
<li><a href="#">Newsletter</a></li>
<li><a href="#">Mentions légales</a></li>
<li class="support highlight"><a href="#">Soutenez-nous</a></li>
<nav id="nav-aside">
<ul>
<li><a href="<?= page('contact')->url() ?>">Contact</a></li>
<li><a href="<?= page('newsletter')->url() ?>">Newsletter</a></li>
<li class="support highlight"><a href="#">Soutenez-nous</a></li>
</ul>
</nav>
<nav id="nav-legal">
<ul>
<li><a href="<?= page('mentions-legales')->url() ?>"><?= kirby()->language() && kirby()->language()->code() === 'en' ? 'Legal notices' : 'Mentions légales' ?></a></li>
<li><a href="<?= page('politique-de-confidentialite')->url() ?>"><?= kirby()->language() && kirby()->language()->code() === 'en' ? 'Privacy policy' : 'Politique de confidentialité' ?></a></li>
</ul>
</nav>

View file

@ -1,4 +1,15 @@
<?php snippet('header') ?>
<main>
<main class="main__single">
<header class="page__header">
<h2 class="page__title"><?= $page->title()->esc() ?></h2>
</header>
<?php if ($page->body()->isNotEmpty()): ?>
<div class="page__content">
<?= $page->body()->toBlocks() ?>
</div>
<?php endif ?>
</main>
<?php snippet('footer') ?>
<?php snippet('footer') ?>

View file

@ -1,2 +1,15 @@
<?php snippet('header') ?>
<?php snippet('footer') ?>
<main class="main__single">
<header class="page__header">
<h2 class="page__title"><?= $page->title()->esc() ?></h2>
</header>
<?php if ($page->body()->isNotEmpty()): ?>
<div class="page__content">
<?= $page->body()->toBlocks() ?>
</div>
<?php endif ?>
</main>
<?php snippet('footer') ?>

View file

@ -62,7 +62,7 @@ $dateLocale = substr(is_array($locale) ? reset($locale) : $locale, 0, 5);
<dl id="investigation__dl">
<dl class="dl-table" id="investigation__dl">
<?php if ($page->incidentDate()->isNotEmpty()): ?>
<div class="dl__group">
<dt>Date de l'incident</dt>

View file

@ -1,2 +1,27 @@
<?php snippet('header') ?>
<?php snippet('footer') ?>
<main class="main__single">
<header class="page__header">
<h2 class="page__title"><?= $page->title()->esc() ?></h2>
</header>
<?php $definitions = $page->definitions()->toStructure() ?>
<?php if ($definitions->isNotEmpty()): ?>
<dl class="dl-table" id="legal-notices__dl">
<?php foreach ($definitions as $item): ?>
<div class="dl__group">
<dt><?= $item->term()->esc() ?></dt>
<dd><?= $item->definition() ?></dd>
</div>
<?php endforeach ?>
</dl>
<?php endif ?>
<?php if ($page->body()->isNotEmpty()): ?>
<div class="page__content">
<?= $page->body()->toBlocks() ?>
</div>
<?php endif ?>
</main>
<?php snippet('footer') ?>

View file

@ -0,0 +1,39 @@
<?php snippet('header') ?>
<main class="main__single">
<header class="page__header">
<h2 class="page__title"><?= $page->title()->esc() ?></h2>
</header>
<div class="page__content">
<?php if ($page->chapo()->isNotEmpty()): ?>
<div class="description">
<p><?= $page->chapo() ?></p>
</div>
<?php endif ?>
<form class="form__newsletter">
<input type="email" name="email" placeholder="Votre adresse e-mail" required="">
<button class="btn--newsletter" type="submit" aria-label="sinscrire">
<span class="txt">Sinscrire</span>
<span class="icon">
<svg clip-rule="evenodd" fill-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="2" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
<path d="m14.523 18.787s4.501-4.505 6.255-6.26c.146-.146.219-.338.219-.53s-.073-.383-.219-.53c-1.753-1.754-6.255-6.258-6.255-6.258-.144-.145-.334-.217-.524-.217-.193 0-.385.074-.532.221-.293.292-.295.766-.004 1.056l4.978 4.978h-14.692c-.414 0-.75.336-.75.75s.336.75.75.75h14.692l-4.979 4.979c-.289.289-.286.762.006 1.054.148.148.341.222.533.222.19 0 .378-.072.522-.215z" fill-rule="nonzero"></path>
</svg>
</span>
</button>
</form>
<?php if ($page->details()->isNotEmpty()): ?>
<div class="details">
<p><?= $page->details() ?></p>
</div>
<?php endif ?>
</div>
</main>
<?php snippet('footer') ?>

View file

@ -0,0 +1,15 @@
<?php snippet('header') ?>
<main class="main__single">
<header class="page__header">
<h2 class="page__title"><?= $page->title()->esc() ?></h2>
</header>
<?php if ($page->body()->isNotEmpty()): ?>
<div class="page__content">
<?= $page->body()->toBlocks() ?>
</div>
<?php endif ?>
</main>
<?php snippet('footer') ?>