Cadre impose visible en overlay sur live + preview + partage

- Overlay cadre sur les 3 ecrans : live (capture), preview (filtres), partage
- chargerCadreImpose() au debut de chaque capture : affiche le cadre event
- Photos sauvegardees sans cadre, cadre applique uniquement a l'impression
- afficherCadreOverlay cherche d'abord dans les cadres evenement

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-06-23 00:36:57 +02:00
parent e5c73d4855
commit 77b1127816
4 changed files with 44 additions and 9 deletions

View File

@@ -78,17 +78,33 @@ async function appliquerFiltreStrip(filtre) {
}
function afficherCadreOverlay(nom) {
const el = document.getElementById('cadre-overlay-preview');
if (!el) return;
const ids = ['cadre-overlay-preview', 'cadre-overlay-live', 'cadre-overlay-partage'];
if (!nom) {
el.classList.add('cache');
el.src = '';
ids.forEach(id => {
const el = document.getElementById(id);
if (el) { el.classList.add('cache'); el.src = ''; }
});
return;
}
const config_imp = config.impression || {};
const fmt = (config_imp.format || '15x20').replace('-2up', '');
el.src = `/assets/cadres/${fmt}/${nom}`;
el.classList.remove('cache');
const event_id = (config.evenement || {}).event_id;
let src = `/assets/cadres/${fmt}/${nom}`;
if (event_id) {
const eventSrc = `/data/evenements/${event_id}/cadres/${fmt}/${nom}`;
src = eventSrc;
}
ids.forEach(id => {
const el = document.getElementById(id);
if (el) {
el.src = src;
el.onerror = () => {
el.src = `/assets/cadres/${fmt}/${nom}`;
el.onerror = null;
};
el.classList.remove('cache');
}
});
}
async function chargerOverlays() {