Fix erreur DSLR: detection immediate + message clair a l'ecran
- Backend: detecte quand le preview DSLR echoue (fallback silencieux) et envoie camera_erreur au frontend (debounce 5s) - Frontend: overlay d'erreur avec message si preview DSLR indisponible - Frontend: si capture echoue, affiche le motif 3s avant retour accueil au lieu de retourner silencieusement Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -9,11 +9,28 @@ const EMOJI_CAR = { 3: '🤪', 2: '😱', 1: '🔥' };
|
||||
|
||||
// --- Preview live ---
|
||||
|
||||
function afficherErreurCapture(message) {
|
||||
const el = document.getElementById('preview-erreur-camera');
|
||||
if (!el) { allerA('accueil'); return; }
|
||||
el.querySelector('p').textContent = message;
|
||||
el.querySelector('span').textContent = 'Retour dans 3 secondes...';
|
||||
el.classList.remove('cache');
|
||||
setTimeout(() => {
|
||||
el.classList.add('cache');
|
||||
allerA('accueil');
|
||||
}, 3000);
|
||||
}
|
||||
|
||||
function afficherErreurPreview(visible) {
|
||||
const el = document.getElementById('preview-erreur-camera');
|
||||
if (!el) return;
|
||||
if (visible) el.classList.remove('cache');
|
||||
else el.classList.add('cache');
|
||||
if (visible) {
|
||||
el.querySelector('p').textContent = 'Appareil photo deconnecte';
|
||||
el.querySelector('span').textContent = 'Reconnexion en cours...';
|
||||
el.classList.remove('cache');
|
||||
} else {
|
||||
el.classList.add('cache');
|
||||
}
|
||||
}
|
||||
|
||||
function resetPreviewTimeout() {
|
||||
@@ -111,7 +128,10 @@ async function lancerCapture() {
|
||||
}
|
||||
|
||||
if (resultat.erreur) {
|
||||
allerA('accueil');
|
||||
arreterPreview();
|
||||
afficherErreurCapture(resultat.erreur === 'Limite de photos atteinte'
|
||||
? 'Limite de photos atteinte'
|
||||
: 'Echec de la capture — verifier le DSLR');
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user