Dynamiser template investigation-summary et nettoyer blueprint report

Dynamisation complète du template investigation-summary.php :
- Hero adaptatif (image simple, slider ou vidéo) selon heroType
- Lien automatique vers le rapport (sous-page de type report)
- Affichage dynamique des métadonnées (dates, lieu, conséquences, etc.)
- Section synthèse avec support KirbyText
- Section "en lien" avec enquêtes similaires (champ relatedInvestigations ou fallback sur les dernières enquêtes)
- Dates formatées en français via ICU

Nettoyage du blueprint report.yml :
- Suppression du champ indexTeam (remplacé par le champ team en tags)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
isUnknown 2026-01-13 11:56:02 +01:00
parent b5c8a389c3
commit 1e6b241a98
2 changed files with 268 additions and 294 deletions

View file

@ -81,24 +81,3 @@ tabs:
type: link
options:
- url
line:
type: line
indexTeam:
label: Équipe Index
type: structure
columns:
responsability:
width: 1/2
names:
width: 1/2
fields:
responsability:
label: Responsabilité
type: text
width: 1/2
names:
label: Nom
type: entries
width: 1/2
field:
type: text

View file

@ -1,97 +1,91 @@
<?php snippet('header') ?>
<?php
// Récupérer le rapport (première page enfant de type report)
$report = $page->children()->filterBy('intendedTemplate', 'report')->first();
?>
<!-- HERO IMAGESIMPLE------------------------------ -->
<!-- <div id="hero">
<?php if ($page->heroType()->value() == 'image'): ?>
<?php if ($heroImage = $page->heroImages()->toFile()): ?>
<!-- HERO IMAGE SIMPLE -->
<div id="hero">
<figure>
<img src="/assets/images/Nidal-Khaled-Amirah.png">
<img src="<?= $heroImage->url() ?>" alt="<?= $page->title()->esc() ?>">
</figure>
<figcaption>Ici la légende de limage. À partir dimages exclusives, lanalyse conjointe de BTselem et Index démontre que les deux hommes ont été abattus par des soldats israéliens alors quils ne présentaient aucun danger.</figcaption>
</div> -->
<?php if ($heroImage->caption()->isNotEmpty()): ?>
<figcaption><?= $heroImage->caption() ?></figcaption>
<?php endif ?>
</div>
<?php endif ?>
<!-- HERO SLIDER------------------------------ -->
<!-- <div id="hero" class="hero-slider swiper">
<?php elseif ($page->heroType()->value() == 'slider'): ?>
<?php if ($heroImages = $page->heroImages()->toFiles()): ?>
<!-- HERO SLIDER -->
<div id="hero" class="hero-slider swiper">
<div class="swiper-wrapper">
<?php foreach ($heroImages as $image): ?>
<div class="swiper-slide">
<figure>
<img src="/assets/images/Nidal-Khaled-Amirah.png">
<img src="<?= $image->url() ?>" alt="<?= $page->title()->esc() ?>">
</figure>
<figcaption>Ici la légende de l'image 1. À partir d'images exclusives, l'analyse conjointe de B'Tselem et Index démontre que les deux hommes ont été abattus par des soldats israéliens alors qu'ils ne présentaient aucun danger.</figcaption>
</div>
<div class="swiper-slide">
<figure>
<img src="/assets/images/kanaky-visuel-1.png">
</figure>
<figcaption>Ici la légende de l'image 2</figcaption>
</div>
<div class="swiper-slide">
<figure>
<img src="/assets/images/Jumaa-visuel-1.png">
</figure>
<figcaption>Ici la légende de l'image 3</figcaption>
<?php if ($image->caption()->isNotEmpty()): ?>
<figcaption><?= $image->caption() ?></figcaption>
<?php endif ?>
</div>
<?php endforeach ?>
</div>
<div class="swiper-button-prev"></div>
<div class="swiper-button-next"></div>
<div class="swiper-pagination"></div>
</div> -->
</div>
<?php endif ?>
<!-- HERO VIDEO------------------------------ -->
<?php elseif ($page->heroType()->value() == 'video'): ?>
<!-- HERO VIDEO -->
<div id="hero" class="hero-video">
<p class="page-title-small">Lexécution de Nidal et Khaled Amirah à Naplouse</p>
<p class="page-title-small"><?= $page->title()->esc() ?></p>
<div class="player-container">
<?php if ($page->videoExtractUrl()->isNotEmpty()): ?>
<div class="extract">
<video class="vjs-tech" id="player-element_html5_api" tabindex="-1" loop="" muted="muted" playsinline="playsinline" autoplay="" src="https://www.index.ngo/wp-content/uploads/2025/07/Jumaa_Site-web-16-9.mp4"></video>
<video class="vjs-tech" id="player-element_html5_api" tabindex="-1" loop="" muted="muted" playsinline="playsinline" autoplay="" src="<?= $page->videoExtractUrl() ?>"></video>
<button id="hero-play-video"><span class="btn--bold"><?= svg('assets/icons/play.svg') ?> <span class="text">play video</span></button>
</div>
<?php endif ?>
<?php if ($page->videoFullUrl()->isNotEmpty()): ?>
<div class="video-full">
<iframe id="youtube-vue-player-rhTyqvaQE" rel="0" frameborder="0" allowfullscreen="" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" title="Mort par noyade de Jumaa al-Hasan, exilé syrien : la police mise en cause" width="480" height="320" src="https://www.youtube.com/embed/HuH8NEwn0-k?autoplay=false&amp;loop=1&amp;controls=1&amp;modestbranding=1&amp;enablejsapi=1&amp;origin=https%3A%2F%2Fwww.index.ngo&amp;widgetid=1&amp;forigin=https%3A%2F%2Fwww.index.ngo%2Fenquetes%2Fmort-par-noyade-de-jumaa-al-hasan-la-police-mise-en-cause%2F&amp;aoriginsup=0&amp;gporigin=https%3A%2F%2Fwww.index.ngo%2F&amp;vf=1"></iframe>
<iframe rel="0" frameborder="0" allowfullscreen="" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" title="<?= $page->title()->esc() ?>" width="480" height="320" src="<?= $page->videoFullUrl() ?>"></iframe>
</div>
<?php endif ?>
</div>
<!-- <figure>
<img src="/assets/images/Nidal-Khaled-Amirah.png">
</figure> -->
</div>
<?php endif ?>
<header>
<p class="tag-inline">Enquête</p>
<h2 class="page-title">Lexécution de Nidal et Khaled Amirah à Naplouse</h2>
<h2 class="page-title"><?= $page->title()->esc() ?></h2>
<p class="date-publish"></p>
</header>
<div id="banner--page">
<nav id="nav--page">
<ul>
<li><a href="#">Vidéo</a></li>
<li><a href="#">Synthèse</a></li>
<li><a href="#">Impacts</a></li>
<li><a href="#">En lien</a></li>
<li><a href="#section__short">Vidéo</a></li>
<li><a href="#section__synthese">Synthèse</a></li>
<li><a href="#section__impacts">Impacts</a></li>
<li><a href="#section__en-lien">En lien</a></li>
</ul>
</nav>
<div class="btn--group">
<button class="btn--bold"><a href="/enquetes/enquete-1-full">Lire le rapport</a></button>
<?php if ($report): ?>
<button class="btn--bold"><a href="<?= $report->url() ?>">Lire le rapport</a></button>
<?php endif ?>
<label for="share-banner__desktop" class="btn--bold-inline no-link">Partager</label>
</div>
@ -100,84 +94,109 @@
</div>
<p class="section__article" id="section__short">À partir dimages exclusives, lanalyse conjointe de BTselem et Index démontre que les deux hommes ont été abattus par des soldats israéliens alors quils ne présentaient aucun danger.</p>
<?php if ($page->chapo()->isNotEmpty()): ?>
<p class="section__article" id="section__short"><?= $page->chapo()->inline() ?></p>
<?php endif ?>
<dl class="section__article" id="section__dl">
<?php if ($page->incidentDate()->isNotEmpty()): ?>
<div class="dl__group">
<dt>Date de lincident</dt>
<dd><time datetime="2025-06-10">10 juin 2025</time></dd>
<dt>Date de l'incident</dt>
<dd><time datetime="<?= $page->incidentDate()->toDate('yyyy-MM-dd') ?>"><?= $page->incidentDate()->toDate('d MMMM yyyy', 'fr_FR') ?></time></dd>
</div>
<?php endif ?>
<?php if ($page->incidentLocation()->isNotEmpty()): ?>
<div class="dl__group">
<dt>Lieu de lincident</dt>
<dd>Naplouse, Cisjordanie occupée, Palestine</dd>
<dt>Lieu de l'incident</dt>
<dd><?= $page->incidentLocation()->esc() ?></dd>
</div>
<?php endif ?>
<?php if ($page->incidentConsequences()->isNotEmpty()): ?>
<div class="dl__group">
<dt>Conséquences</dt>
<dd>Mort</dd>
<dd><?= $page->incidentConsequences()->esc() ?></dd>
</div>
<?php endif ?>
<?php if ($keywords = $page->keywords()->split()): ?>
<?php if (count($keywords) > 0): ?>
<div class="dl__group dl__group__keywords">
<dt>Mots-clés</dt>
<dd>
<ul class="keywords">
<li><a href="#" target="_blank">Occupation</a></li>
<li><a href="#" target="_blank">Colonialité</a></li>
<li><a href="#" target="_blank">Forces armées</a></li>
<li><a href="#" target="_blank">Colonialité</a></li>
<?php foreach ($keywords as $keyword): ?>
<li><a href="#"><?= esc($keyword) ?></a></li>
<?php endforeach ?>
</ul>
</dd>
</div>
<?php endif ?>
<?php endif ?>
<?php if ($methodology = $page->methodology()->split()): ?>
<?php if (count($methodology) > 0): ?>
<div class="dl__group">
<dt>Méthodologie</dt>
<dd>
<ul>
<li>Reconstitution 3D</li>
<li>Frame-match</li>
<li>Analyse audiovisuelle</li>
<?php foreach ($methodology as $method): ?>
<li><?= esc($method) ?></li>
<?php endforeach ?>
</ul>
</dd>
</div>
<?php endif ?>
<?php endif ?>
<?php if ($team = $page->team()->split()): ?>
<?php if (count($team) > 0): ?>
<div class="dl__group">
<dt>Équipe</dt>
<dd>Nadav Joffe, Basile Trouillet, Francesco Sebregondi, Basile Trouillet, Francesco Sebregondi</dd>
<dd><?= implode(', ', array_map('esc', $team)) ?></dd>
</div>
<?php endif ?>
<?php endif ?>
<?php if ($partners = $page->partners()->toStructure()): ?>
<?php if ($partners->isNotEmpty()): ?>
<div class="dl__group">
<dt>Partenaire(s)</dt>
<dd><a href="#" target="_blank">BTselem</a></dd>
<dd>
<?php $partnerLinks = [] ?>
<?php foreach ($partners as $partner): ?>
<?php if ($partner->link()->isNotEmpty()): ?>
<?php $partnerLinks[] = '<a href="' . $partner->link() . '" target="_blank">' . $partner->name()->esc() . '</a>' ?>
<?php else: ?>
<?php $partnerLinks[] = $partner->name()->esc() ?>
<?php endif ?>
<?php endforeach ?>
<?= implode(', ', $partnerLinks) ?>
</dd>
</div>
<?php endif ?>
<?php endif ?>
<?php if ($page->created()->isNotEmpty()): ?>
<div class="dl__group">
<dt>Date de publication</dt>
<dd><time datetime="2025-12-09">09 dec 2025</time></dd>
<dd><time datetime="<?= $page->created()->toDate('yyyy-MM-dd') ?>"><?= $page->created()->toDate('d MMMM yyyy', 'fr_FR') ?></time></dd>
</div>
<?php endif ?>
</dl>
<?php if ($page->synthesis()->isNotEmpty()): ?>
<div class="section__article" id="section__synthese">
<h3 class="section__title">Synthèse</h3>
<p>Le 10 juin 2025, lors dun raid de grande envergure dans la vieille ville de Naplouse, les forces armées israéliennes ont tué deux Palestiniens : les frères Nidal et Khaled Amirah.
</p>
<p>
Suite à lincident, larmée israélienne a affirmé dans un communiqué que les hommes étaient des « terroristes » qui avaient essayé de semparer de larme dun soldat et en avaient blessé quatre autres. Les soldats auraient alors riposté en tirant sur les deux hommes, les tuant tous les deux.
</p>
<p>
Cependant, lanalyse vidéo et les témoignages recueillis contredisent cette version des faits. Une enquête menée conjointement par BTselem et Index révèle que les frères Amirah nont à aucun moment posé de danger pour les soldats impliqués. Pourtant, Khaled a été exécuté à bout portant alors quil était maintenu au sol par plusieurs soldats armés, tandis que son frère Nidal a été abattu par un tir dans le dos. Les soldats ont également empêché les secouristes présents de leur prêter assistance.
</p>
<h4>Un sous-titre ici pour tester</h4>
<p>
Les corps de Nidal et de Khaled Amirah sont toujours détenus par les forces armées israéliennes.
</p>
<p>
À Naplouse comme à Jénine des soldats ont été filmés le mois dernier en train dexécuter deux Palestiniens qui sétaient rendus ces images révèlent une politique de “tir à vue”, qui permet à larmée israélienne de faire un usage sans aucun frein de la force létale contre les Palestiniens. Depuis octobre 2023, Israël a tué plus de 1 000 Palestiniens en Cisjordanie occupée.
</p>
<?= $page->synthesis()->kt() ?>
</div>
<?php endif ?>
<div class="section__article" id="section__impacts">
<h3 class="section__title">Impacts</h3>
<!-- Contenu statique temporaire - sera dynamique quand les pages impacts seront créées -->
<div class="card--impact" data-impact-type="media">
<p class="tag">Médiatique</p>
<div class="content">
@ -196,7 +215,7 @@
<p class="tag">Judiciaire</p>
<p class="date">12 Dec 2025</p>
<div class="content">
<p >La justice israélienne déclare ouvrir une enquête sur “les circonstances de la mort de Nidal et Khaled Amirah”.
<p >La justice israélienne déclare ouvrir une enquête sur "les circonstances de la mort de Nidal et Khaled Amirah".
</p>
</div>
</div>
@ -205,7 +224,7 @@
<p class="tag">Judiciaire</p>
<p class="date">12 Dec 2025</p>
<div class="content">
<p >La justice israélienne déclare ouvrir une enquête sur “les circonstances de la mort de Nidal et Khaled Amirah”
<p >La justice israélienne déclare ouvrir une enquête sur "les circonstances de la mort de Nidal et Khaled Amirah"
</p>
</div>
@ -215,76 +234,52 @@
<p class="tag">Judiciaire</p>
<p class="date">12 Dec 2025</p>
<div class="content">
<p>Index présente une série denquêtes récentes au Festival du Réel 2025. <a class="see-more" href="#">Voir plus</a>
<p>Index présente une série d'enquêtes récentes au Festival du Réel 2025. <a class="see-more" href="#">Voir plus</a>
</p>
</div>
</div>
</div>
<?php
// Récupérer les enquêtes en lien
$relatedInvestigations = $page->relatedInvestigations()->toPages();
if ($relatedInvestigations->isEmpty()) {
// Si pas d'enquêtes liées définies, prendre les 3 dernières enquêtes (sauf la page actuelle)
$relatedInvestigations = $page->parent()->children()->filterBy('intendedTemplate', 'investigation-summary')->not($page)->listed()->limit(3);
}
?>
<?php if ($relatedInvestigations->isNotEmpty()): ?>
<aside class="section__article" id="section__en-lien">
<h3 class="section__title">En lien</h3>
<?php foreach ($relatedInvestigations as $related): ?>
<article class="card--article-small">
<?php if ($cover = $related->cover()->toFile()): ?>
<figure>
<img src="/assets/images/Nahel-visuel1.png">
<img src="<?= $cover->url() ?>" alt="<?= $related->title()->esc() ?>">
</figure>
<?php endif ?>
<div class="content">
<h4 class="title"><a href="/enquetes/l-execution-de-nidal-et-khaled-amirah-a-naplouse" target="_blank">Lhomicide de Nahel Merzouk</a></h4>
<time datetime="2024-06-27">27 Jun 2024</time>
<h4 class="title"><a href="<?= $related->url() ?>"><?= $related->title()->esc() ?></a></h4>
<?php if ($related->incidentDate()->isNotEmpty()): ?>
<time datetime="<?= $related->incidentDate()->toDate('yyyy-MM-dd') ?>"><?= $related->incidentDate()->toDate('d MMMM yyyy', 'fr_FR') ?></time>
<?php endif ?>
<?php if ($relatedKeywords = $related->keywords()->split()): ?>
<?php if (count($relatedKeywords) > 0): ?>
<ul class="keywords">
<li><a href="#" target="_blank">Occupation</a></li>
<li><a href="#" target="_blank">Colonialité</a></li>
<li><a href="#" target="_blank">Forces armées</a></li>
<li><a href="#" target="_blank">Colonialité</a></li>
<?php foreach ($relatedKeywords as $keyword): ?>
<li><a href="#"><?= esc($keyword) ?></a></li>
<?php endforeach ?>
</ul>
<?php endif ?>
<?php endif ?>
</div>
<a class="link-block" href="/enquetes/l-execution-de-nidal-et-khaled-amirah-a-naplouse" target="_blank"></a>
</article>
<article class="card--article-small">
<figure>
<img src="/assets/images/Jumaa-visuel-1.png">
</figure>
<div class="content">
<h4 class="title"><a href="/enquetes/l-execution-de-nidal-et-khaled-amirah-a-naplouse" target="_blank">La mort par noyade de Jumaa al-Hasan</a></h4>
<time datetime="2024-06-27">27 Jun 2024</time>
<ul class="keywords">
<li><a href="#" target="_blank">Occupation</a></li>
<li><a href="#" target="_blank">Colonialité</a></li>
<li><a href="#" target="_blank">Forces armées</a></li>
<li><a href="#" target="_blank">Colonialité</a></li>
</ul>
</div>
<a class="link-block" href="/enquetes/l-execution-de-nidal-et-khaled-amirah-a-naplouse" target="_blank"></a>
</article>
<article class="card--article-small">
<figure>
<img src="/assets/images/kanaky-visuel-1.png">
</figure>
<div class="content">
<h4 class="title"><a href="/enquetes/l-execution-de-nidal-et-khaled-amirah-a-naplouse" target="_blank">Trois morts a Saint-Louis, Kanaky/Nouvelle-Caledonie</a></h4>
<time datetime="2024-06-27">27 Jun 2024</time>
<ul class="keywords">
<li><a href="#" target="_blank">Occupation</a></li>
<li><a href="#" target="_blank">Colonialité</a></li>
<li><a href="#" target="_blank">Forces armées</a></li>
<li><a href="#" target="_blank">Colonialité</a></li>
</ul>
</div>
<a class="link-block" href="/enquetes/l-execution-de-nidal-et-khaled-amirah-a-naplouse" target="_blank"></a>
<a class="link-block" href="<?= $related->url() ?>"></a>
</article>
<?php endforeach ?>
</aside>
<?php endif ?>
<?php snippet('footer') ?>