update img partenaire et team

This commit is contained in:
KIRITO_KMA 2026-04-08 00:57:37 +02:00
parent f17ca2527c
commit ed395b9fb7
11 changed files with 61 additions and 51 deletions

View file

@ -73,7 +73,7 @@ document.addEventListener('DOMContentLoaded', () => {
// Générer les slides (tripler pour garantir boucle sans trou)
const copies = [...partners, ...partners, ...partners];
partnersTrack.innerHTML = copies.map((p, i) => {
const imgSrc = `assets/images/partners/${p.name}.png`;
const imgSrc = p.logo || `assets/images/partners/${p.name}.png`;
return `
<div class="partner-slide" data-partner-idx="${i % partners.length}" role="button" tabindex="0" aria-label="Voir ${p.displayName}">
<div class="partner-slide-inner">
@ -153,16 +153,26 @@ document.addEventListener('DOMContentLoaded', () => {
function openPartnerModal(p) {
isPaused = true;
const imgSrc = `assets/images/partners/${p.name}.png`;
document.getElementById('partner-modal-logo-img').src = imgSrc;
document.getElementById('partner-modal-logo-img').alt = p.displayName;
document.getElementById('partner-modal-logo-img').onerror = function() {
const imgSrc = p.logo || `assets/images/partners/${p.name}.png`;
const logoImg = document.getElementById('partner-modal-logo-img');
const logoInner = document.getElementById('partner-modal-logo-fallback');
logoImg.src = imgSrc;
logoImg.alt = p.displayName;
logoImg.style.display = 'block';
logoInner.style.background = '';
logoInner.style.justifyContent = '';
// Si l'image échoue → fallback initiales dans l'octogone
logoImg.onerror = function() {
this.style.display = 'none';
document.getElementById('partner-modal-logo-fallback').style.display = 'flex';
document.getElementById('partner-modal-logo-fallback').style.background = p.gradient;
document.getElementById('partner-modal-logo-fallback').textContent = p.displayName.substring(0,2).toUpperCase();
logoInner.style.background = p.gradient;
logoInner.style.display = 'flex';
logoInner.style.alignItems = 'center';
logoInner.style.justifyContent = 'center';
logoInner.style.fontSize = '2rem';
logoInner.style.fontFamily = "'OmegaLarge', sans-serif";
logoInner.style.color = 'white';
logoInner.textContent = p.displayName.substring(0,2).toUpperCase();
};
document.getElementById('partner-modal-logo-fallback').style.display = 'none';
document.getElementById('partner-modal-name').textContent = p.displayName;
document.getElementById('partner-modal-desc').textContent = p.longDesc;
document.getElementById('partner-modal-since').textContent = p.since;
@ -226,7 +236,7 @@ document.addEventListener('DOMContentLoaded', () => {
<div class="team-avatar">
<div class="team-avatar-inner" id="team-avatar-inner-${i}">
<img src="${imgSrc}" alt="${m.name}" class="team-avatar-photo"
onerror="this.style.display='none';document.getElementById('team-avatar-fallback-${i}').style.display='flex';">
onerror="if(this.src.endsWith('.png')){this.src=this.src.replace('.png','.jpg');}else{this.style.display='none';document.getElementById('team-avatar-fallback-${i}').style.display='flex';}">
<span class="team-avatar-fallback" id="team-avatar-fallback-${i}" style="display:none;">${m.avatar}</span>
</div>
</div>
@ -322,7 +332,7 @@ document.addEventListener('DOMContentLoaded', () => {
const imgSrc = `assets/images/team/${m.id}.png`;
modalAvatar.innerHTML = `
<img src="${imgSrc}" alt="${m.name}" class="team-modal-avatar-photo"
onerror="this.style.display='none';this.nextElementSibling.style.display='flex';">
onerror="if(this.src.endsWith('.png')){this.src=this.src.replace('.png','.jpg');}else{this.style.display='none';this.nextElementSibling.style.display='flex';}">
<span class="team-modal-avatar-fallback">${m.avatar || m.name.charAt(0)}</span>
`;
modalName.textContent = m.name;