' +
'';
}
function buildWhyText(paNom, index) {
var w = WORDINGS[profile] || WORDINGS['default'];
var pieces = [];
if (profile === 'auto_ent') {
pieces.push('Pour un profil ' + w.profile_label.toLowerCase() + ', ' + escapeHtml(paNom) + ' couvre la facturation, le suivi de trésorerie et la déclaration TVA dans une interface claire.');
} else if (profile === 'tpe') {
pieces.push('Pour une TPE comme la vôtre, ' + escapeHtml(paNom) + ' équilibre fonctionnalités complètes et prise en main rapide pour toute votre équipe.');
} else if (profile === 'pme') {
pieces.push('Pour une PME, ' + escapeHtml(paNom) + ' couvre la multi-utilisateurs, l\u2019intégration comptable poussée et la conformité PA.');
} else if (profile === 'eti') {
pieces.push('Pour une ETI, ' + escapeHtml(paNom) + ' propose les volumes, l\u2019API et la flexibilité multi-entités attendues à votre échelle.');
} else {
pieces.push(escapeHtml(paNom) + ' colle à votre profil sur les axes les plus importants : tarif, fonctionnalités et conformité PA.');
}
if (quizData.secteur) {
pieces.push('Adapté au secteur ' + escapeHtml(quizData.secteur) + ' avec les modèles et catégorisations qui vont bien.');
}
if (quizData.expert_comptable === 'true') {
pieces.push('Connexion avec votre expert-comptable simplifiée : il peut récupérer vos données sans manip\u2019 manuelle.');
}
return pieces.join(' ');
}
function buildSubscores(index) {
// Mini-bars éditoriales (heuristiques visuelles, pas exactes)
var base = [92, 87, 81]; // Top 1 / 2 / 3
var paBase = base[index] || 80;
var rows = [
{ label: 'Tarif vs profil', val: clamp(paBase + (quizData.budget && quizData.budget.indexOf('Gratuit') !== -1 ? 5 : 0)) },
{ label: 'Fonctionnalités', val: clamp(paBase - 2) },
{ label: 'Facilité de prise en main', val: clamp(paBase + (profile === 'auto_ent' ? 4 : 0)) },
{ label: 'Support et formation', val: clamp(paBase - 5) },
{ label: 'Conformité PA', val: clamp(98) }
];
var html = '';
for (var i = 0; i < rows.length; i++) {
html += '
';
}
return html;
}
function clamp(v) {
if (v < 30) return 30;
if (v > 100) return 100;
return v;
}
function buildBonus(paNom) {
var bonusMap = {
'Indy': ['Compte pro inclus', 'Déclaration TVA auto', 'App mobile', 'Premium gratuit pour micros'],
'Tiime': ['2 mois Business offerts', 'Compte pro inclus', 'OCR factures', 'Support 6j/7'],
'Sellsy': ['CRM intégré', 'Devis et factures liés', 'Multi-utilisateurs', 'Suivi des paiements'],
'Pennylane': ['Pré-comptabilité auto', 'Connexion banque', 'Partage cabinet EC', 'Tableau de bord'],
'Qonto': ['Compte pro Néobanque', 'Cartes équipe', 'Intégrations comptables'],
'Axonaut': ['CRM commercial', 'Ticketing support', 'Trésorerie', 'Multi-devises'],
'Abby': ['Spécial micro', 'Déclaration URSSAF', 'Compte pro inclus', 'Mobile-first'],
'Sage': ['Suite comptable complète', 'Multi-établissements', 'Conformité paye'],
'Dext': ['OCR best-in-class', 'Préparation comptable', 'Connexion cabinet']
};
var arr = bonusMap[paNom] || ['Plateforme agréée', 'Accompagnement réforme', 'Support FR'];
var html = '';
for (var i = 0; i < arr.length; i++) {
html += '' + escapeHtml(arr[i]) + '';
}
return html;
}
function renderEmailCapture() {
var existing = document.getElementById('qEmailCapture');
if (existing) return;
var wrap = document.createElement('div');
wrap.id = 'qEmailCapture';
wrap.className = 'cfe-quiz-email-capture';
wrap.innerHTML =
'
' +
'
' +
'' +
'
' +
'Recevoir tes recommandations + le guide PDF gratuit' +
'Résumé de ton diagnostic · Guide 2026 · Sans spam' +
'
' +
'
' +
'
' +
'' +
'' +
'' +
'' +
'
' +
'' +
'' +
'
';
var podium = document.getElementById('qPodium');
if (podium && podium.nextSibling) {
podium.parentNode.insertBefore(wrap, podium.nextSibling);
} else {
document.getElementById('qStepResults').appendChild(wrap);
}
document.getElementById('qCaptureSubmit').addEventListener('click', function() {
var emailVal = document.getElementById('qCaptureEmail').value.trim();
var prenomVal = document.getElementById('qCapturePrenom').value.trim();
var telVal = document.getElementById('qCaptureTelephone').value.trim();
var entVal = document.getElementById('qCaptureEntreprise').value.trim();
var msgEl = document.getElementById('qCaptureMsg');
var ok = true;
// Email
var emailEl = document.getElementById('qCaptureEmail');
if (!emailVal || !/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(emailVal)) {
emailEl.classList.add('error'); ok = false;
} else { emailEl.classList.remove('error'); }
// Prénom
var prenomEl = document.getElementById('qCapturePrenom');
if (!prenomVal) { prenomEl.classList.add('error'); ok = false; }
else { prenomEl.classList.remove('error'); }
// Téléphone OPTIONNEL (décision project_phone_gating — rétabli 12/06/2026)
var telEl = document.getElementById('qCaptureTelephone');
if (telVal && !cfeValidatePhone(telVal)) { telEl.classList.add('error'); ok = false; }
else { telEl.classList.remove('error'); }
if (!ok) {
msgEl.textContent = 'Renseigne ton prénom et un email valide (téléphone facultatif).';
msgEl.style.display = 'block';
return;
}
msgEl.style.display = 'none';
document.getElementById('qCaptureSubmit').disabled = true;
fetch('/wp-json/cfe/v1/quiz-optin', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
statut: quizData.statut || '',
taille: quizData.taille || '',
secteur: quizData.secteur || '',
volume: quizData.volume || '',
logiciel_use: quizData.logiciel_use === 'true',
logiciel_nom: quizData.logiciel_nom || '',
budget: quizData.budget || '',
expert_comptable: quizData.expert_comptable === 'true',
preparation: quizData.preparation || '',
prenom: prenomVal,
email: emailVal,
telephone: telVal,
entreprise: entVal,
website: ''
})
})
.then(function(r) { return r.json(); })
.then(function() {
var grid = wrap.querySelector('.cfe-quiz-email-capture-grid');
if (grid) grid.style.display = 'none';
document.getElementById('qCaptureSubmit').style.display = 'none';
msgEl.textContent = 'Guide envoyé ! Vérifie ta boîte mail (pense aux spams).';
msgEl.style.display = 'block';
if (typeof gtag === 'function') {
gtag('event', 'quiz_email_capture', { event_category: 'quiz', has_prenom: prenomVal ? 'yes' : 'no', has_phone: telVal ? 'yes' : 'no' });
// quiz_complete_premium_lead si budget payant + phone OK
var _gated = ['20-50€/mois','50-100€/mois','Plus de 100€/mois','Pas de limite','100-500€/mois','Plus de 500€/mois','Plus de 1000€/mois'];
if (telVal && _gated.indexOf(quizData.budget || '') !== -1) {
gtag('event', 'quiz_complete_premium_lead', { event_category: 'quiz', event_label: 'premium_lead_capture', budget: quizData.budget, quiz_variant: window.CFE_QUIZ_VARIANT || 'A' });
}
}
})
.catch(function() {
document.getElementById('qCaptureSubmit').disabled = false;
msgEl.textContent = 'Erreur — réessaie dans quelques secondes.';
msgEl.style.display = 'block';
});
});
}
function renderFreeAlternatives(data) {
var existing = document.getElementById('qFreeAlts');
if (existing) return;
var alts = data.free_alternatives;
if (!alts || alts.length === 0) return;
var html = '
' +
'
Alternatives gratuites à tester
' +
'
Ces solutions sont 100 % gratuites et conformes à la réforme.
' +
'
';
for (var i = 0; i < alts.length; i++) {
var a = alts[i];
var href = a.affiliate_url || (a.slug ? '/' + a.slug + '/' : '/plateformes-agreees/');
html += '
';
var metaCtas = document.querySelector('#qStepResults .cfe-quiz-meta-ctas');
if (metaCtas) {
metaCtas.insertAdjacentHTML('beforebegin', html);
} else {
document.getElementById('qStepResults').insertAdjacentHTML('beforeend', html);
}
}
function renderAlternatives(data) {
// L'endpoint v2 ne renvoie pour l'instant que pa1/2/3.
// On peut afficher des fallbacks éditoriaux en attendant l'extension API,
// OU masquer la section si pas de data.alternatives.
var alts = (data && data.alternatives) ? data.alternatives : [];
if (!alts || alts.length === 0) {
altWrap.style.display = 'none';
return;
}
altWrap.style.display = '';
var html = '';
for (var i = 0; i < alts.length; i++) {
var a = alts[i];
var href = a.slug ? ('/' + a.slug + '/') : '/plateformes-agreees/';
var score = (typeof a.score === 'number') ? (a.score + '%') : '';
html += '