Refonte jauge : affichage des soutiens réguliers vers objectif 500
- Remplace le montant collecté par le nombre de soutiens réguliers actifs (plans Donorbox status=active + 98 soutiens historiques) avec objectif 500 - Proxy PHP : appel à /api/v1/plans pour compter les plans actifs toutes campagnes confondues, avec pagination et détail plans_detail dans la réponse - Jauge initialisée à 19.6% (98/500) en fallback si l'API est indisponible - Versions FR et EN mises à jour Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
f0591a20ab
commit
97766e6bb7
5 changed files with 301 additions and 113 deletions
12
api/cache/donorbox_data.json
vendored
12
api/cache/donorbox_data.json
vendored
|
|
@ -1,8 +1,14 @@
|
|||
{
|
||||
"total_raised": "35675.25",
|
||||
"total_raised": "35825.53",
|
||||
"goal_amt": "50000.0",
|
||||
"currency": "eur",
|
||||
"donations_count": 521,
|
||||
"donations_count": 533,
|
||||
"recurring_donors_count": 56,
|
||||
"campaign_name": "Soutenez Index avant le 31 d\u00e9cembre 2025 !",
|
||||
"updated_at": "2026-02-27T12:51:20+01:00"
|
||||
"updated_at": "2026-03-06T07:41:46+00:00",
|
||||
"DEBUG_plans_breakdown": {
|
||||
"cancelled|monthly": 36,
|
||||
"active|monthly": 56,
|
||||
"failed|monthly": 19
|
||||
}
|
||||
}
|
||||
|
|
@ -128,14 +128,56 @@ if ($campaign === null) {
|
|||
}
|
||||
}
|
||||
|
||||
// Compter tous les donateurs réguliers actifs (toutes campagnes confondues)
|
||||
$recurring_count = 0;
|
||||
$plans_page = 1;
|
||||
do {
|
||||
$plans_url = 'https://donorbox.org/api/v1/plans?per_page=100&page=' . $plans_page;
|
||||
|
||||
$ch_plans = curl_init();
|
||||
curl_setopt_array($ch_plans, [
|
||||
CURLOPT_URL => $plans_url,
|
||||
CURLOPT_RETURNTRANSFER => true,
|
||||
CURLOPT_USERPWD => DONORBOX_EMAIL . ':' . DONORBOX_API_KEY,
|
||||
CURLOPT_HTTPAUTH => CURLAUTH_BASIC,
|
||||
CURLOPT_HTTPHEADER => ['Content-Type: application/json', 'User-Agent: Index-NGO-Website'],
|
||||
CURLOPT_TIMEOUT => 10,
|
||||
CURLOPT_SSL_VERIFYPEER => true
|
||||
]);
|
||||
|
||||
$plans_response = curl_exec($ch_plans);
|
||||
$plans_http_code = curl_getinfo($ch_plans, CURLINFO_HTTP_CODE);
|
||||
curl_close($ch_plans);
|
||||
|
||||
if ($plans_response === false || $plans_http_code !== 200) {
|
||||
break;
|
||||
}
|
||||
|
||||
$plans = json_decode($plans_response, true);
|
||||
if (!is_array($plans)) break;
|
||||
|
||||
foreach ($plans as $plan) {
|
||||
if (isset($plan['status']) && $plan['status'] === 'active') {
|
||||
$recurring_count++;
|
||||
}
|
||||
$status = $plan['status'] ?? 'unknown';
|
||||
$type = $plan['type'] ?? 'unknown';
|
||||
$plans_detail[$status . '|' . $type] = ($plans_detail[$status . '|' . $type] ?? 0) + 1;
|
||||
}
|
||||
|
||||
$plans_page++;
|
||||
} while (count($plans) === 100);
|
||||
|
||||
// Extraire uniquement les données nécessaires
|
||||
$filteredData = [
|
||||
'total_raised' => $campaign['total_raised'] ?? 0,
|
||||
'goal_amt' => $campaign['goal_amt'] ?? 50000,
|
||||
'currency' => $campaign['currency'] ?? 'EUR',
|
||||
'donations_count' => $campaign['donations_count'] ?? 0,
|
||||
'recurring_donors_count' => $recurring_count,
|
||||
'campaign_name' => $campaign['name'] ?? 'Unknown',
|
||||
'updated_at' => date('c')
|
||||
'updated_at' => date('c'),
|
||||
'plans_detail' => $plans_detail ?? []
|
||||
];
|
||||
|
||||
$jsonResponse = json_encode($filteredData, JSON_PRETTY_PRINT);
|
||||
|
|
|
|||
|
|
@ -2,17 +2,8 @@ const DONORBOX_CONFIG = {
|
|||
proxyUrl: '/api/donorbox-proxy.php',
|
||||
};
|
||||
|
||||
function formatCurrency(amount) {
|
||||
const rounded = Math.round(amount * 100) / 100;
|
||||
const hasDecimals = rounded % 1 !== 0;
|
||||
|
||||
const formatted = rounded.toLocaleString('fr-FR', {
|
||||
minimumFractionDigits: 0,
|
||||
maximumFractionDigits: hasDecimals ? 2 : 0,
|
||||
});
|
||||
|
||||
return formatted.replace(/[\s\u00A0\u202F]/g, '\u202F') + '\u202F€';
|
||||
}
|
||||
const RECURRING_DONORS_OFFSET = 98;
|
||||
const GOAL_SUPPORTERS = 500;
|
||||
|
||||
async function fetchDonorboxData() {
|
||||
try {
|
||||
|
|
@ -41,9 +32,9 @@ async function fetchDonorboxData() {
|
|||
}
|
||||
|
||||
function updateGaugeDisplay(campaignData) {
|
||||
const collected = campaignData.total_raised || 0;
|
||||
const goal = campaignData.goal_amt || 50000;
|
||||
const percentage = Math.min((collected / goal) * 100, 100);
|
||||
const recurringCount = campaignData.recurring_donors_count || 0;
|
||||
const totalSupport = recurringCount + RECURRING_DONORS_OFFSET;
|
||||
const percentage = Math.min((totalSupport / GOAL_SUPPORTERS) * 100, 100);
|
||||
|
||||
const gaugeElement = document.getElementById('gauge');
|
||||
if (gaugeElement) {
|
||||
|
|
@ -53,27 +44,16 @@ function updateGaugeDisplay(campaignData) {
|
|||
);
|
||||
}
|
||||
|
||||
const collectedElement = document.querySelector(
|
||||
const countElement = document.querySelector(
|
||||
'#gauge--infos__donateurs .value'
|
||||
);
|
||||
if (collectedElement) {
|
||||
collectedElement.textContent = formatCurrency(collected);
|
||||
}
|
||||
|
||||
const goalElement = document.querySelector('#gauge--infos__objectif .value');
|
||||
if (goalElement) {
|
||||
goalElement.textContent = formatCurrency(goal);
|
||||
}
|
||||
|
||||
const donorsCount = campaignData.donations_count || 0;
|
||||
const donorsElement = document.querySelector('#gauge--infos__donors .value');
|
||||
if (donorsElement) {
|
||||
donorsElement.textContent = donorsCount;
|
||||
if (countElement) {
|
||||
countElement.textContent = totalSupport;
|
||||
}
|
||||
|
||||
console.log('Gauge updated:', {
|
||||
collected: formatCurrency(collected),
|
||||
goal: formatCurrency(goal),
|
||||
recurringDonors: recurringCount,
|
||||
totalSupport,
|
||||
percentage: `${percentage.toFixed(1)}%`,
|
||||
});
|
||||
}
|
||||
|
|
|
|||
|
|
@ -96,21 +96,17 @@
|
|||
<div class="gauge__container">
|
||||
<div id="gauge" style="--pourcent: 0%"></div>
|
||||
<div class="gauge--infos" id="gauge--infos__donateurs">
|
||||
<p class="property">Raised</p>
|
||||
<p class="value">0€</p>
|
||||
</div>
|
||||
<div class="gauge--infos" id="gauge--infos__donors">
|
||||
<p class="property">Donors</p>
|
||||
<p class="property">Regular supporters</p>
|
||||
<p class="value">0</p>
|
||||
</div>
|
||||
<div class="gauge--infos" id="gauge--infos__objectif">
|
||||
<p class="property">Goal</p>
|
||||
<p class="value"></p>
|
||||
<p class="value">500</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p class="p__baseline-big">
|
||||
Support us <strong>in 2026</strong>
|
||||
Goal: 500 supporters<br /><strong>in 2026</strong>
|
||||
</p>
|
||||
</section>
|
||||
|
||||
|
|
@ -518,16 +514,36 @@
|
|||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
>
|
||||
<span class="icon">
|
||||
<svg width="100%" height="100%" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
|
||||
<g transform="matrix(1,0,0,1,-2,1.77636e-15)">
|
||||
<circle cx="14" cy="12" r="12" style="fill:white;"/>
|
||||
</g>
|
||||
<g transform="matrix(0.692308,0,0,0.692308,3.69231,3.69231)">
|
||||
<path d="M21.742,21.75L14.179,10.571L21.235,2.25L18.779,2.25L13.088,8.964L8.548,2.25L2.359,2.25L9.649,13.026L2.25,21.75L4.706,21.75L10.741,14.632L15.559,21.75L21.75,21.75L21.742,21.75ZM7.739,3.818L18.81,20.182L16.363,20.182L5.29,3.818L7.739,3.818Z" style="fill-rule:nonzero;"/>
|
||||
</g>
|
||||
</svg>
|
||||
</span>
|
||||
<span class="icon">
|
||||
<svg
|
||||
width="100%"
|
||||
height="100%"
|
||||
viewBox="0 0 24 24"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xml:space="preserve"
|
||||
xmlns:serif="http://www.serif.com/"
|
||||
style="
|
||||
fill-rule: evenodd;
|
||||
clip-rule: evenodd;
|
||||
stroke-linejoin: round;
|
||||
stroke-miterlimit: 2;
|
||||
"
|
||||
>
|
||||
<g transform="matrix(1,0,0,1,-2,1.77636e-15)">
|
||||
<circle cx="14" cy="12" r="12" style="fill: white" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0.692308,0,0,0.692308,3.69231,3.69231)"
|
||||
>
|
||||
<path
|
||||
d="M21.742,21.75L14.179,10.571L21.235,2.25L18.779,2.25L13.088,8.964L8.548,2.25L2.359,2.25L9.649,13.026L2.25,21.75L4.706,21.75L10.741,14.632L15.559,21.75L21.75,21.75L21.742,21.75ZM7.739,3.818L18.81,20.182L16.363,20.182L5.29,3.818L7.739,3.818Z"
|
||||
style="fill-rule: nonzero"
|
||||
/>
|
||||
</g>
|
||||
</svg>
|
||||
</span>
|
||||
<span class="text">X</span>
|
||||
</a>
|
||||
</li>
|
||||
|
|
|
|||
268
index.html
268
index.html
|
|
@ -97,21 +97,17 @@
|
|||
<div class="gauge__container">
|
||||
<div id="gauge" style="--pourcent: 0%"></div>
|
||||
<div class="gauge--infos" id="gauge--infos__donateurs">
|
||||
<p class="property">Collectés</p>
|
||||
<p class="value">0€</p>
|
||||
</div>
|
||||
<div class="gauge--infos" id="gauge--infos__donors">
|
||||
<p class="property">Donateur·ices</p>
|
||||
<p class="property">Soutiens réguliers</p>
|
||||
<p class="value">0</p>
|
||||
</div>
|
||||
<div class="gauge--infos" id="gauge--infos__objectif">
|
||||
<p class="property">Objectif</p>
|
||||
<p class="value"></p>
|
||||
<p class="value">500</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p class="p__baseline-big">
|
||||
Soutenez-nous<br /><strong>en 2026</strong>
|
||||
Objectif 500 soutiens<br /><strong>en 2026</strong>
|
||||
</p>
|
||||
</section>
|
||||
|
||||
|
|
@ -123,7 +119,10 @@
|
|||
</section>
|
||||
|
||||
<section id="section__video">
|
||||
<h2 class="section__heading">Pourquoi soutenir Index  ? <br>Écoutez les premier·es concerné·es </h2>
|
||||
<h2 class="section__heading">
|
||||
Pourquoi soutenir Index  ? <br />Écoutez les premier·es
|
||||
concerné·es
|
||||
</h2>
|
||||
<div class="video-container">
|
||||
<iframe
|
||||
title="Vidéo de campagne"
|
||||
|
|
@ -147,7 +146,13 @@
|
|||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xml:space="preserve"
|
||||
xmlns:serif="http://www.serif.com/"
|
||||
style="fill-rule: evenodd; clip-rule: evenodd; stroke-linejoin: round; stroke-miterlimit: 2;">
|
||||
style="
|
||||
fill-rule: evenodd;
|
||||
clip-rule: evenodd;
|
||||
stroke-linejoin: round;
|
||||
stroke-miterlimit: 2;
|
||||
"
|
||||
>
|
||||
<rect
|
||||
x="0"
|
||||
y="0"
|
||||
|
|
@ -165,22 +170,9 @@
|
|||
</label>
|
||||
|
||||
<ul class="videos__ul">
|
||||
<li class="videos__li" data-video="https://player.vimeo.com/video/1138884807?h=384a2d15ea&autoplay=1">
|
||||
<span class="icon">
|
||||
<svg height="80px" width="80px" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 512 512" xml:space="preserve" >
|
||||
<path d="M500.203,236.907L30.869,2.24c-6.613-3.285-14.443-2.944-20.736,0.939C3.84,7.083,0,13.931,0,21.333v469.333 c0,7.403,3.84,14.251,10.133,18.155c3.413,2.112,7.296,3.179,11.2,3.179c3.264,0,6.528-0.747,9.536-2.24l469.333-234.667 C507.435,271.467,512,264.085,512,256S507.435,240.533,500.203,236.907z"/>
|
||||
</svg>
|
||||
</span>
|
||||
<p class="txt">« Index fait un travail que la justice ne fait pas » : <span class="br-desktop"><br></span>le témoignage d’Issam El Khalfaoui</p>
|
||||
</li>
|
||||
|
||||
|
||||
|
||||
<li
|
||||
class="videos__li"
|
||||
data-video="https://player.vimeo.com/video/1145581831?h=ce46358189&autoplay=1"
|
||||
|
||||
|
||||
data-video="https://player.vimeo.com/video/1138884807?h=384a2d15ea&autoplay=1"
|
||||
>
|
||||
<span class="icon">
|
||||
<svg
|
||||
|
|
@ -197,67 +189,199 @@
|
|||
/>
|
||||
</svg>
|
||||
</span>
|
||||
<p class="txt">« Votre travail nous a permis de nous rendre au tribunal la tête haute » : le témoignage de Dominique Rodtchenki-Pontonnier</p>
|
||||
<p class="txt">
|
||||
« Index fait un travail que la justice
|
||||
ne fait pas » :
|
||||
<span class="br-desktop"><br /></span>le témoignage
|
||||
d’Issam El Khalfaoui
|
||||
</p>
|
||||
</li>
|
||||
|
||||
|
||||
|
||||
|
||||
<li class="videos__li" data-video="https://player.vimeo.com/video/1142401468?h=f88778b3dd&autoplay=1">
|
||||
<li
|
||||
class="videos__li"
|
||||
data-video="https://player.vimeo.com/video/1145581831?h=ce46358189&autoplay=1"
|
||||
>
|
||||
<span class="icon">
|
||||
<svg height="80px" width="80px" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 512 512" xml:space="preserve" >
|
||||
<path d="M500.203,236.907L30.869,2.24c-6.613-3.285-14.443-2.944-20.736,0.939C3.84,7.083,0,13.931,0,21.333v469.333 c0,7.403,3.84,14.251,10.133,18.155c3.413,2.112,7.296,3.179,11.2,3.179c3.264,0,6.528-0.747,9.536-2.24l469.333-234.667 C507.435,271.467,512,264.085,512,256S507.435,240.533,500.203,236.907z"/>
|
||||
<svg
|
||||
height="80px"
|
||||
width="80px"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
viewBox="0 0 512 512"
|
||||
xml:space="preserve"
|
||||
>
|
||||
<path
|
||||
d="M500.203,236.907L30.869,2.24c-6.613-3.285-14.443-2.944-20.736,0.939C3.84,7.083,0,13.931,0,21.333v469.333 c0,7.403,3.84,14.251,10.133,18.155c3.413,2.112,7.296,3.179,11.2,3.179c3.264,0,6.528-0.747,9.536-2.24l469.333-234.667 C507.435,271.467,512,264.085,512,256S507.435,240.533,500.203,236.907z"
|
||||
/>
|
||||
</svg>
|
||||
</span>
|
||||
<p class="txt">« Les enquêtes d'Index doivent continuer » : <span class="br-desktop"><br></span>le témoignage d’Assa Traoré</p>
|
||||
<p class="txt">
|
||||
« Votre travail nous a permis de nous rendre au
|
||||
tribunal la tête haute » : le témoignage
|
||||
de Dominique Rodtchenki-Pontonnier
|
||||
</p>
|
||||
</li>
|
||||
|
||||
<li class="videos__li" data-video="https://player.vimeo.com/video/1143395847?h=f28d317c46&autoplay=1">
|
||||
<li
|
||||
class="videos__li"
|
||||
data-video="https://player.vimeo.com/video/1142401468?h=f88778b3dd&autoplay=1"
|
||||
>
|
||||
<span class="icon">
|
||||
<svg height="80px" width="80px" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 512 512" xml:space="preserve" >
|
||||
<path d="M500.203,236.907L30.869,2.24c-6.613-3.285-14.443-2.944-20.736,0.939C3.84,7.083,0,13.931,0,21.333v469.333 c0,7.403,3.84,14.251,10.133,18.155c3.413,2.112,7.296,3.179,11.2,3.179c3.264,0,6.528-0.747,9.536-2.24l469.333-234.667 C507.435,271.467,512,264.085,512,256S507.435,240.533,500.203,236.907z"/>
|
||||
<svg
|
||||
height="80px"
|
||||
width="80px"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
viewBox="0 0 512 512"
|
||||
xml:space="preserve"
|
||||
>
|
||||
<path
|
||||
d="M500.203,236.907L30.869,2.24c-6.613-3.285-14.443-2.944-20.736,0.939C3.84,7.083,0,13.931,0,21.333v469.333 c0,7.403,3.84,14.251,10.133,18.155c3.413,2.112,7.296,3.179,11.2,3.179c3.264,0,6.528-0.747,9.536-2.24l469.333-234.667 C507.435,271.467,512,264.085,512,256S507.435,240.533,500.203,236.907z"
|
||||
/>
|
||||
</svg>
|
||||
</span>
|
||||
<p class="txt">« Vous faites un travail rare et concret » : <span class="br-desktop"><br></span>le témoignage de Jérôme Rodrigues</p>
|
||||
<p class="txt">
|
||||
« Les enquêtes d'Index doivent continuer » :
|
||||
<span class="br-desktop"><br /></span>le témoignage
|
||||
d’Assa Traoré
|
||||
</p>
|
||||
</li>
|
||||
|
||||
<li class="videos__li" data-video="https://player.vimeo.com/video/1144550389?h=5781ebef9b&autoplay=1">
|
||||
<li
|
||||
class="videos__li"
|
||||
data-video="https://player.vimeo.com/video/1143395847?h=f28d317c46&autoplay=1"
|
||||
>
|
||||
<span class="icon">
|
||||
<svg height="80px" width="80px" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 512 512" xml:space="preserve" >
|
||||
<path d="M500.203,236.907L30.869,2.24c-6.613-3.285-14.443-2.944-20.736,0.939C3.84,7.083,0,13.931,0,21.333v469.333 c0,7.403,3.84,14.251,10.133,18.155c3.413,2.112,7.296,3.179,11.2,3.179c3.264,0,6.528-0.747,9.536-2.24l469.333-234.667 C507.435,271.467,512,264.085,512,256S507.435,240.533,500.203,236.907z"/>
|
||||
<svg
|
||||
height="80px"
|
||||
width="80px"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
viewBox="0 0 512 512"
|
||||
xml:space="preserve"
|
||||
>
|
||||
<path
|
||||
d="M500.203,236.907L30.869,2.24c-6.613-3.285-14.443-2.944-20.736,0.939C3.84,7.083,0,13.931,0,21.333v469.333 c0,7.403,3.84,14.251,10.133,18.155c3.413,2.112,7.296,3.179,11.2,3.179c3.264,0,6.528-0.747,9.536-2.24l469.333-234.667 C507.435,271.467,512,264.085,512,256S507.435,240.533,500.203,236.907z"
|
||||
/>
|
||||
</svg>
|
||||
</span>
|
||||
<p class="txt">« Index est d’un intérêt public absolu » : <span class="br-desktop"><br></span>le témoignage de Fatiha B.</p>
|
||||
<p class="txt">
|
||||
« Vous faites un travail rare
|
||||
et concret » :
|
||||
<span class="br-desktop"><br /></span>le témoignage
|
||||
de Jérôme Rodrigues
|
||||
</p>
|
||||
</li>
|
||||
|
||||
<li class="videos__li" data-video="https://player.vimeo.com/video/1145649552?h=63bd03334b&autoplay=1">
|
||||
<li
|
||||
class="videos__li"
|
||||
data-video="https://player.vimeo.com/video/1144550389?h=5781ebef9b&autoplay=1"
|
||||
>
|
||||
<span class="icon">
|
||||
<svg height="80px" width="80px" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 512 512" xml:space="preserve" >
|
||||
<path d="M500.203,236.907L30.869,2.24c-6.613-3.285-14.443-2.944-20.736,0.939C3.84,7.083,0,13.931,0,21.333v469.333 c0,7.403,3.84,14.251,10.133,18.155c3.413,2.112,7.296,3.179,11.2,3.179c3.264,0,6.528-0.747,9.536-2.24l469.333-234.667 C507.435,271.467,512,264.085,512,256S507.435,240.533,500.203,236.907z"/>
|
||||
<svg
|
||||
height="80px"
|
||||
width="80px"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
viewBox="0 0 512 512"
|
||||
xml:space="preserve"
|
||||
>
|
||||
<path
|
||||
d="M500.203,236.907L30.869,2.24c-6.613-3.285-14.443-2.944-20.736,0.939C3.84,7.083,0,13.931,0,21.333v469.333 c0,7.403,3.84,14.251,10.133,18.155c3.413,2.112,7.296,3.179,11.2,3.179c3.264,0,6.528-0.747,9.536-2.24l469.333-234.667 C507.435,271.467,512,264.085,512,256S507.435,240.533,500.203,236.907z"
|
||||
/>
|
||||
</svg>
|
||||
</span>
|
||||
<p class="txt">« Je n’aurais jamais imaginé recevoir un tel soutien » : <span class="br-desktop"><br></span>le témoignage de Jean-François Martin</p>
|
||||
<p class="txt">
|
||||
« Index est d’un intérêt public absolu » :
|
||||
<span class="br-desktop"><br /></span>le témoignage
|
||||
de Fatiha B.
|
||||
</p>
|
||||
</li>
|
||||
|
||||
<li class="videos__li" data-video="https://player.vimeo.com/video/1146620554?badge=0&autopause=0&player_id=0&app_id=58479&autoplay=1">
|
||||
<li
|
||||
class="videos__li"
|
||||
data-video="https://player.vimeo.com/video/1145649552?h=63bd03334b&autoplay=1"
|
||||
>
|
||||
<span class="icon">
|
||||
<svg height="80px" width="80px" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 512 512" xml:space="preserve" >
|
||||
<path d="M500.203,236.907L30.869,2.24c-6.613-3.285-14.443-2.944-20.736,0.939C3.84,7.083,0,13.931,0,21.333v469.333 c0,7.403,3.84,14.251,10.133,18.155c3.413,2.112,7.296,3.179,11.2,3.179c3.264,0,6.528-0.747,9.536-2.24l469.333-234.667 C507.435,271.467,512,264.085,512,256S507.435,240.533,500.203,236.907z"/>
|
||||
<svg
|
||||
height="80px"
|
||||
width="80px"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
viewBox="0 0 512 512"
|
||||
xml:space="preserve"
|
||||
>
|
||||
<path
|
||||
d="M500.203,236.907L30.869,2.24c-6.613-3.285-14.443-2.944-20.736,0.939C3.84,7.083,0,13.931,0,21.333v469.333 c0,7.403,3.84,14.251,10.133,18.155c3.413,2.112,7.296,3.179,11.2,3.179c3.264,0,6.528-0.747,9.536-2.24l469.333-234.667 C507.435,271.467,512,264.085,512,256S507.435,240.533,500.203,236.907z"
|
||||
/>
|
||||
</svg>
|
||||
</span>
|
||||
<p class="txt">« Le travail d'Index a permis de rétablir la vérité » : <span class="br-desktop"><br></span>le témoignage de Mahamadou Camara, frère de Gaye</p>
|
||||
<p class="txt">
|
||||
« Je n’aurais jamais imaginé recevoir un tel
|
||||
soutien » :
|
||||
<span class="br-desktop"><br /></span>le témoignage
|
||||
de Jean-François Martin
|
||||
</p>
|
||||
</li>
|
||||
|
||||
<li class="videos__li" data-video="https://player.vimeo.com/video/1148007280?h=2e9c81e900&autoplay=1">
|
||||
<li
|
||||
class="videos__li"
|
||||
data-video="https://player.vimeo.com/video/1146620554?badge=0&autopause=0&player_id=0&app_id=58479&autoplay=1"
|
||||
>
|
||||
<span class="icon">
|
||||
<svg height="80px" width="80px" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 512 512" xml:space="preserve" >
|
||||
<path d="M500.203,236.907L30.869,2.24c-6.613-3.285-14.443-2.944-20.736,0.939C3.84,7.083,0,13.931,0,21.333v469.333 c0,7.403,3.84,14.251,10.133,18.155c3.413,2.112,7.296,3.179,11.2,3.179c3.264,0,6.528-0.747,9.536-2.24l469.333-234.667 C507.435,271.467,512,264.085,512,256S507.435,240.533,500.203,236.907z"/>
|
||||
<svg
|
||||
height="80px"
|
||||
width="80px"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
viewBox="0 0 512 512"
|
||||
xml:space="preserve"
|
||||
>
|
||||
<path
|
||||
d="M500.203,236.907L30.869,2.24c-6.613-3.285-14.443-2.944-20.736,0.939C3.84,7.083,0,13.931,0,21.333v469.333 c0,7.403,3.84,14.251,10.133,18.155c3.413,2.112,7.296,3.179,11.2,3.179c3.264,0,6.528-0.747,9.536-2.24l469.333-234.667 C507.435,271.467,512,264.085,512,256S507.435,240.533,500.203,236.907z"
|
||||
/>
|
||||
</svg>
|
||||
</span>
|
||||
<p class="txt">« Pour les familles endeuillées, Index est essentiel » : <span class="br-desktop"><br></span>le témoignage de Christelle Vendeiro-Bico, belle-sœur de Luis Bico</p>
|
||||
<p class="txt">
|
||||
« Le travail d'Index a permis de rétablir
|
||||
la vérité » :
|
||||
<span class="br-desktop"><br /></span>le témoignage de
|
||||
Mahamadou Camara, frère de Gaye
|
||||
</p>
|
||||
</li>
|
||||
|
||||
|
||||
<li
|
||||
class="videos__li"
|
||||
data-video="https://player.vimeo.com/video/1148007280?h=2e9c81e900&autoplay=1"
|
||||
>
|
||||
<span class="icon">
|
||||
<svg
|
||||
height="80px"
|
||||
width="80px"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
viewBox="0 0 512 512"
|
||||
xml:space="preserve"
|
||||
>
|
||||
<path
|
||||
d="M500.203,236.907L30.869,2.24c-6.613-3.285-14.443-2.944-20.736,0.939C3.84,7.083,0,13.931,0,21.333v469.333 c0,7.403,3.84,14.251,10.133,18.155c3.413,2.112,7.296,3.179,11.2,3.179c3.264,0,6.528-0.747,9.536-2.24l469.333-234.667 C507.435,271.467,512,264.085,512,256S507.435,240.533,500.203,236.907z"
|
||||
/>
|
||||
</svg>
|
||||
</span>
|
||||
<p class="txt">
|
||||
« Pour les familles endeuillées, Index est
|
||||
essentiel » :
|
||||
<span class="br-desktop"><br /></span>le témoignage de
|
||||
Christelle Vendeiro-Bico, belle-sœur de Luis Bico
|
||||
</p>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
|
|
@ -663,16 +787,36 @@
|
|||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
>
|
||||
<span class="icon">
|
||||
<svg width="100%" height="100%" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
|
||||
<g transform="matrix(1,0,0,1,-2,1.77636e-15)">
|
||||
<circle cx="14" cy="12" r="12" style="fill:white;"/>
|
||||
</g>
|
||||
<g transform="matrix(0.692308,0,0,0.692308,3.69231,3.69231)">
|
||||
<path d="M21.742,21.75L14.179,10.571L21.235,2.25L18.779,2.25L13.088,8.964L8.548,2.25L2.359,2.25L9.649,13.026L2.25,21.75L4.706,21.75L10.741,14.632L15.559,21.75L21.75,21.75L21.742,21.75ZM7.739,3.818L18.81,20.182L16.363,20.182L5.29,3.818L7.739,3.818Z" style="fill-rule:nonzero;"/>
|
||||
</g>
|
||||
</svg>
|
||||
</span>
|
||||
<span class="icon">
|
||||
<svg
|
||||
width="100%"
|
||||
height="100%"
|
||||
viewBox="0 0 24 24"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xml:space="preserve"
|
||||
xmlns:serif="http://www.serif.com/"
|
||||
style="
|
||||
fill-rule: evenodd;
|
||||
clip-rule: evenodd;
|
||||
stroke-linejoin: round;
|
||||
stroke-miterlimit: 2;
|
||||
"
|
||||
>
|
||||
<g transform="matrix(1,0,0,1,-2,1.77636e-15)">
|
||||
<circle cx="14" cy="12" r="12" style="fill: white" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0.692308,0,0,0.692308,3.69231,3.69231)"
|
||||
>
|
||||
<path
|
||||
d="M21.742,21.75L14.179,10.571L21.235,2.25L18.779,2.25L13.088,8.964L8.548,2.25L2.359,2.25L9.649,13.026L2.25,21.75L4.706,21.75L10.741,14.632L15.559,21.75L21.75,21.75L21.742,21.75ZM7.739,3.818L18.81,20.182L16.363,20.182L5.29,3.818L7.739,3.818Z"
|
||||
style="fill-rule: nonzero"
|
||||
/>
|
||||
</g>
|
||||
</svg>
|
||||
</span>
|
||||
<span class="text">X</span>
|
||||
</a>
|
||||
</li>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue