window.addEventListener('ll-quiz-init', (event) => {
const { quizId, llQuizApi } = event.detail;
console.log('Quiz initialized:', quizId);
});
window.addEventListener('ll-quiz-step-view', (event) => {
const { quizId, stepId, stepName, fieldsSimple, llQuizApi } = event.detail;
console.log(`Quiz: ${quizId}`);
console.log(`Viewing step: ${stepName} (${stepId})`);
console.log('Step data:', fieldsSimple);
});
window.addEventListener('ll-quiz-step-leave', (event) => {
const { quizId, stepName } = event.detail;
console.log(`Quiz: ${quizId}`);
console.log(`Leaving step: ${stepName}`);
});
window.addEventListener('ll-quiz-submit', (event) => {
const { quizId, stepId, stepName, fields, fieldsSimple, response } = event.detail;
console.log(`Quiz: ${quizId}`);
console.log(`Quiz submitted from step: ${stepName} (${stepId})`);
console.log('All quiz data:', fieldsSimple);
console.log('API response:', response);
// Example: Send to analytics
if (window.gtag) {
window.gtag('event', 'conversion', {
'send_to': 'AW-CONVERSION_ID/CONVERSION_LABEL',
'value': 1.0,
'currency': 'USD'
});
}
});
window.addEventListener('ll-quiz-exit', (event) => {
const { quizId, llQuizApi } = event.detail;
console.log(`Quiz: ${quizId}`);
console.log('Quiz exited (tab/window closed)');
// Example: Track exit event
if (window.gtag) {
window.gtag('event', 'quiz_exit', {
'quiz_id': quizId
});
}
// Note: This event is based on pagehide and may not fire reliably
// Don't rely on it for critical operations
});
window.addEventListener('ll-quiz-button-click', (event) => {
const { quizId, blockId, blockName, stepId, stepName, llQuizApi } = event.detail;
console.log(`Quiz: ${quizId}`);
console.log(`Button clicked: ${blockName} (${blockId})`);
console.log(`In step: ${stepName} (${stepId})`);
// Example: Track button clicks
if (window.gtag) {
window.gtag('event', 'button_click', {
'quiz_id': quizId,
'block_id': blockId,
'block_name': blockName,
'step_id': stepId,
'step_name': stepName
});
}
});
window.addEventListener('ll-quiz-input-click', (event) => {
const { quizId, blockId, blockName, stepId, stepName, optionId, optionValue, optionLabel, llQuizApi } = event.detail;
console.log(`Quiz: ${quizId}`);
console.log(`Option clicked: ${optionLabel} (${optionId})`);
console.log(`In block: ${blockName} (${blockId})`);
console.log(`In step: ${stepName} (${stepId})`);
// Example: Track option clicks
if (window.gtag) {
window.gtag('event', 'option_click', {
'quiz_id': quizId,
'block_id': blockId,
'block_name': blockName,
'step_id': stepId,
'step_name': stepName,
'option_id': optionId,
'option_value': optionValue,
'option_label': optionLabel
});
}
});