`;
// function to create inner content for modal level two
let modalTwoInnerContent = (className, title, promoCopy) => (`
${title}
${promoCopy}
Start now
`);
//function to generate radio buttons
function generateRadioButtons(options, groupName) {
// Helper function to generate a single radio item
const createRadioItem = (option, index) => {
const id = `${groupName}-option-${index + 1}`; // Unique ID for each option
return `
`;
};
// Generate all radio items
const radioItems = options.map((option, index) => createRadioItem(option, index)).join("");
// Wrap the radio items in the section structure
return `
${radioItems}
`;
}
// function to create inner content for modal level two
let modalThreeInnerContent = (className, questionOne, questionTwo) => (`
`);
// function to create markup for modals on level two and three
let quizModalfn = (className, quizName, image, modalInnerHtml, modalClassNameOne, modalClassNametwo) => (`
${quizCrossButton}
${quizCrossButton}
${modalInnerHtml}
`);
// markup for quiz modal level one
let quizModalLV1 = `
${quizCrossButton}
Take our simple quizzes and win instant rewards today!
Take part in our simple quizzes and win instant rewards today!
${QuizCards}
`;
// function to create the initial modal markup
let modalMarkup = () => (`
${quizModalLV1}
`);
/* ---- DOM Manipulation ---- */
// current url path
const currentPath = window.location.pathname;
// Dom manipulation for quiz variation
if (variationPages.includes(currentPath)) {
// preload images
preloadImages(imageUrls);
// insert quiz icon
if (document.querySelector('.quiz-icon-container')) return;
document.querySelector('main.container .cmp-container > .aem-Grid').insertAdjacentHTML('beforeend', quizIconHtml);
let eventLabel = '[vwo_ce_rtg] rewards quiz - healthy heart - win prizes - static';
gaEventTrigger('impression', eventLabel);
// insert modal markup
document.querySelectorAll('main.container .cmp-container > .aem-Grid')[0].insertAdjacentHTML('beforeend', modalMarkup())
// click handler function for variation pages
function clickHandler(event) {
const { target } = event;
//console.log('target: ', target);
// Utility: Toggle modal visibility
const toggleModal = (selector, addClass, removeClass) => {
const modal = document.querySelector(selector);
if (modal) {
if (addClass !== null) modal.classList.add(addClass);
if (removeClass !== null) modal.classList.remove(removeClass);
}
};
// Utility: Map class names to modal numbers
const getModalNum = () => {
if (target.closest('.healthy-heart-quiz-one')) return 0;
if (target.closest('.healthy-heart-quiz-two')) return 1;
if (target.closest('.word-search-edition-three')) return 2;
return null; // Default if no match found
};
// Utility: Clear form errors
const clearFormErrors = () => {
document.querySelector('.form-section .error-copy')?.remove();
document.querySelector('.form-section.form-error')?.classList.remove('form-error');
};
// Handle: Quiz icon click (open modal)
if (target.closest('.quiz-icon-container .quiz-icon')) {
toggleModal('.quiz-modal-container', 'modal--visible', 'modal--hidden');
// click on quiz icon
let eventLabel = '[vwo_ce_rtg] rewards quiz - healthy heart - win prizes - static';
let eventJourneyCTA = 'vworq-hh-win prizes-static';
gaEventTrigger('click', eventLabel, eventJourneyCTA);
}
// Handle: Quiz cross icon click (cross icon)
if (target.closest('.quiz-icon-container .cross-icon')) {
document.querySelector('.quiz-icon-container').classList.add('hide-quiz-icon');
// hide quiz icon
let eventLabel = '[vwo_ce_rtg] rewards quiz - healthy heart - win prizes - static';
gaEventTrigger('close', eventLabel);
return;
}
// Handle: Close modal
if (
target.closest('.modal-cross-button .cross-icon') ||
target.classList.contains('modal--visible')
) {
// step 1 modal - close
if (target.closest('.quiz-modal-content.quiz-level-one .modal-cross-button .cross-icon')) {
let eventLabel = `[vwo_ce_rtg] rewards quiz - healthy heart - step 1 - select quiz - static`;
gaEventTrigger('close', eventLabel);
}
// step 2 modal - close
if (target.closest('.quiz-modal-content.quiz-level-two .modal-cross-button .cross-icon')) {
let quizName = document.querySelector('.quiz-modal.quiz-modal-two')?.getAttribute('quiz-name').split('-')[1].toLowerCase().trim();
let eventLabel = `[vwo_ce_rtg] rewards quiz - healthy heart - step 2 - start now - ${quizName} - static`;
gaEventTrigger('close', eventLabel);
}
// step 3 - close
if (target.closest('.quiz-modal-content.quiz-level-three .modal-cross-button .cross-icon')) {
let quizName = document.querySelector('.quiz-modal.quiz-modal-three')?.getAttribute('quiz-name').split('-')[1].toLowerCase().trim();
let eventLabel = `[vwo_ce_rtg] rewards quiz - healthy heart - step 3 - continue - ${quizName} - static`;
gaEventTrigger('close', eventLabel);
}
toggleModal('.quiz-modal-container', 'modal--hidden', 'modal--visible');
document.querySelectorAll('.quiz-modal.quiz-modal-three, .quiz-modal.quiz-modal-two').forEach(modal => modal.remove());
toggleModal('.quiz-modal.quiz-modal-one', null, 'hide-modal'); // Unhide modal one
return;
}
// Handle: Click on modal cards
if (target.closest('.quiz-modal-one .quiz-card')) {
const modalNum = getModalNum();
if (modalNum !== null) {
const { quizName, quizNumber, className, image, promoCopy, details } = collections[modalNum];
const modalTwoInnerHtml = modalTwoInnerContent(className, quizName, promoCopy, details);
const modalTwoMarkup = quizModalfn(className, quizName, image, modalTwoInnerHtml, 'quiz-modal-two', 'quiz-level-two');
document.querySelector('.quiz-modal.quiz-modal-one').insertAdjacentHTML('afterend', modalTwoMarkup);
toggleModal('.quiz-modal.quiz-modal-one', 'hide-modal', null);
// step 1 - popup card click
let quizTitle = quizNumber.toLowerCase();
let eventLabel = `[vwo_ce_rtg] rewards quiz - healthy heart - step 1 - select quiz - ${quizTitle} - static`;
let eventJourneyCTA = `vworq-hh-1-${quizTitle}-static`;
gaEventTrigger('click', eventLabel, eventJourneyCTA);
}
return;
}
// Handle: Click on quiz start button in modal two
if (target.closest('.quiz-modal.quiz-modal-two .quiz-button')) {
const questionModalNum = getModalNum();
if (questionModalNum !== null) {
const { quizName, quizNumber, className, image, questionOne, questionTwo } = collections[questionModalNum];
const modalThreeInnerHtml = modalThreeInnerContent(className, questionOne, questionTwo);
const modalThreeMarkup = quizModalfn(className, quizName, image, modalThreeInnerHtml, 'quiz-modal-three', 'quiz-level-three');
document.querySelector('.quiz-modal.quiz-modal-one').insertAdjacentHTML('afterend', modalThreeMarkup);
toggleModal('.quiz-modal.quiz-modal-two', 'hide-modal', null);
// step 2 - start now CTA click
let quizTitle = quizNumber.toLowerCase();
let eventLabel = `[vwo_ce_rtg] rewards quiz - healthy heart - step 2 - start now - ${quizTitle} - static`;
let eventJourneyCTA = `vworq-hh-2-${quizTitle}-static`;
gaEventTrigger('click', eventLabel, eventJourneyCTA);
}
return;
}
// Handle: Click on quiz button in modal three (final action)
if (target.closest('.quiz-modal.quiz-modal-three .quiz-button')) {
const questionModalNum = getModalNum();
if (questionModalNum !== null) {
const { url, quizNumber } = collections[questionModalNum];
// Validate input and process quiz data
validationAndProcessQuizData(url, quizNumber);
}
return;
}
// Handle: Input focus (clear errors)
if (target.closest('input#form-quiestion-one') || target.closest('input#form-quiestion-two')) {
clearFormErrors();
return;
}
}
// Attach click handler to the document
document.body.addEventListener('click', clickHandler);
function touchStartEventHandler(event) {
const { target } = event;
//console.log('target touch: ', target);
// Utility: Toggle modal visibility
const toggleModal = (selector, addClass, removeClass) => {
const modal = document.querySelector(selector);
if (modal) {
modal.classList.add(addClass);
modal.classList.remove(removeClass);
}
};
// Handle: Close modal
if (
target.closest('.modal-cross-button .cross-icon') ||
target.classList.contains('modal--visible')
) {
// step 1 - close
if (target.closest('.quiz-modal-content.quiz-level-one .modal-cross-button .cross-icon')) {
let eventLabel = `[vwo_ce_rtg] rewards quiz - healthy heart - step 1 - select quiz - static`;
gaEventTrigger('close', eventLabel);
}
// step 2 - close
if (target.closest('.quiz-modal-content.quiz-level-two .modal-cross-button .cross-icon')) {
let quizName = document.querySelector('.quiz-modal.quiz-modal-two')?.getAttribute('quiz-name').split('-')[1].toLowerCase().trim();
let eventLabel = `[vwo_ce_rtg] rewards quiz - healthy heart - step 2 - start now - ${quizName} - static`;
gaEventTrigger('close', eventLabel);
}
// step 3 - close
if (target.closest('.quiz-modal-content.quiz-level-three .modal-cross-button .cross-icon')) {
let quizName = document.querySelector('.quiz-modal.quiz-modal-three')?.getAttribute('quiz-name').split('-')[1].toLowerCase().trim();
let eventLabel = `[vwo_ce_rtg] rewards quiz - healthy heart - step 3 - continue - ${quizName} - static`;
gaEventTrigger('close', eventLabel);
}
toggleModal('.quiz-modal-container', 'modal--hidden', 'modal--visible');
document.querySelectorAll('.quiz-modal.quiz-modal-three, .quiz-modal.quiz-modal-two').forEach(modal => modal.remove());
toggleModal('.quiz-modal.quiz-modal-one', null, 'hide-modal'); // Unhide modal one
return;
}
}
if (isTouchDevice()) {
document.body.addEventListener('touchstart', touchStartEventHandler)
}
}
// Dom manipulation to populate the quiz modal
if (quizPages.includes(currentPath)) {
// Retrieve and parse quiz data from sessionStorage
const quizData = sessionStorage.getItem('quizData');
if (quizData) {
try {
const [url, answerOne, answerTwo] = JSON.parse(quizData);
const currentUrl = window.location.href;
// Check if the current URL matches the stored URL
if (currentUrl.includes(url)) {
document.querySelectorAll(`.cmp-form .leo-radio__input input[value="${answerOne}"]`)[0].click();
document.querySelectorAll(`.cmp-form .leo-radio__input input[value="${answerTwo}"]`)[0].click();
}
} catch (error) {
//console.error('Failed to parse quiz data from sessionStorage:', error);
}
}
}
},
};
// Return if the test ran already!
if (document.querySelector(`.${test.id}`)) return;
// Polling conditions
if (document.querySelector('main.container .cmp-container > .aem-Grid')) {
try {
// Activate test
setTimeout(function () { test.init() }, 1000)
// Success log
console.log('Vertis Digital: EXP-10: V: 1:05');
} catch (error) {
// Error log
console.log(`Initialization Error:`, error);
}
} else {
Date.now() < timeInFuture
? setTimeout(loadVariation.bind({}, timeInFuture), 25)
: console.log("loadVariation timed out!");
}
})(Date.now() + 60000);
// End variation JS
return vwo_$('head')[0] && vwo_$('head')[0].lastChild; } catch(e) {} })("HEAD")}}, R_722219_1027_1_2_0:{ fn:function(){return (function(x) { try{
var el,ctx=vwo_$(x);
/*vwo_debug log("Revert","addElement","body"); vwo_debug*/(el=vwo_$('[vwo-element-id="1739333374770"]')).remove();
var ctx=vwo_$(x),el;
/*vwo_debug log("Revert","content",""); vwo_debug*/;
el=vwo_$('[vwo-element-id="1739333374834"]');
el.revertContentOp().remove();
return vwo_$('head')[0] && vwo_$('head')[0].lastChild; } catch(e) {} })("HEAD")}}, C_722219_1027_1_3_0:{ fn:function(){return (function(x) { try{
var _vwo_sel = vwo_$("");
!vwo_$("head").find("#1739333374787").length && vwo_$('head').append(_vwo_sel);
// Start variation JS
void (function loadVariation(timeInFuture) {
// Main Test object
const test = {
// Some test specific global letiables
id: "EXP-10-V2",
// Test init
init: function () {
// Add a test specific classname to the body element
document.body.classList.add(test.id);
// Below function calls order is important
test.mainJS();
},
// Main JS
mainJS: function () {
/* ---- LOGO ---- */
const crossIcon = `
`;
const newCrossIcon = `
`;
/* ---- DATA ---- */
// quiz data
const collections = [
{
quizName: "Healthy heart, Happy life - Quiz 1",
quizNumber: "quiz 1",
className: "healthy-heart-quiz-one",
image: "https://www.greateasternlife.com/content/dam/corp-site/great-eastern/sg/gels-dme-rewards/health-programme/heart-health/gels-dme-rewards-heart-health-quiz-1.jpg",
coverImage: "https://www.greateasternlife.com/content/dam/corp-site/great-eastern/sg/gels-dme-rewards/health-programme/heart-health/gels-dme-rewards-heart-health-quiz-1.jpg",
url: "https://www.greateasternlife.com/sg/en/personal-insurance/lifepedia/healthy-heart-happy-life/heart-health-and-you-quiz-1.html",
header: "Healthy heart, Happy life - Quiz 1",
quizDate: "Jan 06, 2025",
promoCopy: "Answer 3 simple questions and win an exclusive prize from Eu Yan Sang worth $15!",
questionOne: [
"1. One should see a ____________ if he/she is experiencing chest pain and shortness of breath as it could be a possible sign of heart disease and heart failure.",
["Cardiologist", "Dentist", "Gastroenterologist"]
],
questionTwo: [
"2. These chronic conditions – diabetes, high blood pressure, and high ___________ (also known as the “Three Highs”), are usually asymptomatic and may be unnoticed. It has been observed that patients are also developing these conditions at an increasingly earlier age.",
["Blood count", "Cholesterol", "Fever"]
]
},
{
quizName: "Healthy heart, Happy life - Quiz 2",
quizNumber: "quiz 2",
className: "healthy-heart-quiz-two",
image: "https://www.greateasternlife.com/content/dam/corp-site/great-eastern/sg/gels-dme-rewards/health-programme/heart-health/gels-dme-rewards-heart-health-quiz-2.jpg",
coverImage: "https://www.greateasternlife.com/content/dam/corp-site/great-eastern/sg/gels-dme-rewards/health-programme/heart-health/gels-dme-rewards-heart-health-quiz-2-thumbnail.jpg",
url: "https://www.greateasternlife.com/sg/en/personal-insurance/lifepedia/healthy-heart-happy-life/huat-the-heart-wants-quiz-2.html",
header: "Healthy heart, Happy life - Quiz 2",
quizDate: "Jan 20, 2025",
promoCopy: "Answer 3 simple questions and win an exclusive prize from Fitness First worth $60!",
questionOne: [
"1. Even though pineapple tarts are everywhere for the festive season, I should limit my intake to ____ pieces because it is equivalent to 7 teaspoons of sugar, which is within our recommended daily intake of 10 teaspoons.",
["2", "4", "6"]
],
questionTwo: [
"2. Nian gao, nian gao, in the box… which is the most calorie-loaded of them all?",
["Steamed", "Fried"]
]
},
];
// quiz icon links
const animatedIcon = "https://useruploads.visualwebsiteoptimizer.com/useruploads/722219/images/7a172faba185610e9d0a41c2db03373b_quizicon01.gif";
// quiz image links
const imageUrls = [
"https://useruploads.visualwebsiteoptimizer.com/useruploads/722219/images/2ec24e2a92a520a5701a7de9c9df9671_quizicon01hover.gif",
"https://useruploads.visualwebsiteoptimizer.com/useruploads/722219/images/7a172faba185610e9d0a41c2db03373b_quizicon01.gif",
"https://www.greateasternlife.com/content/dam/corp-site/great-eastern/sg/gels-dme-rewards/health-programme/heart-health/gels-dme-rewards-heart-health-quiz-1.jpg",
"https://www.greateasternlife.com/content/dam/corp-site/great-eastern/sg/gels-dme-rewards/health-programme/heart-health/gels-dme-rewards-heart-health-quiz-2.jpg",
"https://www.greateasternlife.com/content/dam/corp-site/great-eastern/sg/gels-dme-rewards/health-programme/heart-health/gels-dme-rewards-heart-health-quiz-2-thumbnail.jpg"
];
// array of quiz pages
const quizPages = [
'/sg/en/personal-insurance/lifepedia/healthy-heart-happy-life/heart-health-and-you-quiz-1.html',
'/sg/en/personal-insurance/lifepedia/healthy-heart-happy-life/huat-the-heart-wants-quiz-2.html',
];
// array of pages to show quiz logo
const variationPages = [
'/sg/en/personal-insurance/lifepedia.html',
'/sg/en/personal-insurance/lifepedia/medical-coverage.html',
'/sg/en/personal-insurance/lifepedia/life-protection.html',
'/sg/en/personal-insurance/lifepedia/lifestyle-protection.html',
'/sg/en/personal-insurance/lifepedia/savings-and-investment.html',
'/sg/en/personal-insurance/lifepedia/retirement-income.html',
'/sg/en/personal-insurance/lifepedia/career.html',
'/sg/en/personal-insurance/rewards-and-promotions.html'
];
/* ---- Utility Functions ---- */
// // image preload function
function preloadImages(imageUrls) {
imageUrls.forEach(url => {
const img = new Image();
img.src = url;
});
}
// function to validate and process quiz data
function validationAndProcessQuizData(quizUrl, quizNumber) {
// Cache form elements
const formSection = document.querySelector('.form-section');
const questionOneInput = document.querySelectorAll('.form-group-one .radio-item input:checked')[0];
const questionTwoInput = document.querySelectorAll('.form-group-two .radio-item input:checked')[0];
// Validation: Check if questions are answered
const isEmpty = !(questionOneInput?.value) || !(questionTwoInput?.value.trim());
const existingError = formSection.querySelector('.error-copy');
const errorHtml = `
Please complete the questions.
`
if (isEmpty) {
// Add error message if it doesn't exist
if (!existingError) {
formSection.insertAdjacentHTML('beforeend', errorHtml);
formSection.classList.add('form-error');
return; // Exit the function
}
return;
}
// Remove error if validation passes
if (existingError) {
existingError.remove();
}
formSection.classList.remove('form-error');
// Prepare quiz data
const quizData = [
quizUrl.trim(),
questionOneInput.value.trim(),
questionTwoInput.value.trim(),
];
// Store the data in session storage
sessionStorage.setItem('quizData', JSON.stringify(quizData));
// step 3 - continue CTA click
let quizName = quizNumber.toLowerCase();
let eventLabel = `[vwo_ce_rtg] rewards quiz - healthy heart - step 3 - continue - ${quizName} - animated`;
let eventJourneyCTA = `vworq-hh-3-${quizName}-animated`;
gaEventTrigger('click', eventLabel, eventJourneyCTA);
// Redirect to the quiz URL
window.location.href = quizUrl;
}
// function to trigger GA events
function gaEventTrigger(eventAction, eventLabel, eventJourneyCTA = '') {
dataLayer.push({
event: "vwoEvent",
eventDetails: {
category: "[vwo] sticky icon",
action: eventAction,
label: eventLabel
},
contentSubcategory: "healthy heart quiz",
...(eventJourneyCTA ? { journeyCta: eventJourneyCTA } : {})
});
};
// fuction to detect touch device
const isTouchDevice = () => {
return (
'ontouchstart' in window || // Check for touch events
navigator.maxTouchPoints > 0 || // Check for touch points
navigator.msMaxTouchPoints > 0 // Microsoft-specific touch points
);
};
/* ---- HTML Templates Markup and Functions ---- */
// create Quiz cards markup
const createQuizCard = (className, coverImage, header, quizDate) => {
return (`
`;
// function to create inner content for modal level two
let modalTwoInnerContent = (className, title, promoCopy) => (`
${title}
${promoCopy}
Start now
`);
//function to generate radio buttons
function generateRadioButtons(options, groupName) {
// Helper function to generate a single radio item
const createRadioItem = (option, index) => {
const id = `${groupName}-option-${index + 1}`; // Unique ID for each option
return `
`;
};
// Generate all radio items
const radioItems = options.map((option, index) => createRadioItem(option, index)).join("");
// Wrap the radio items in the section structure
return `
${radioItems}
`;
}
// function to create inner content for modal level two
let modalThreeInnerContent = (className, questionOne, questionTwo) => (`
`);
// function to create markup for modals on level two and three
let quizModalfn = (className, quizName, image, modalInnerHtml, modalClassNameOne, modalClassNametwo) => (`
${quizCrossButton}
${quizCrossButton}
${modalInnerHtml}
`);
// markup for quiz modal level one
let quizModalLV1 = `
${quizCrossButton}
Take our simple quizzes and win instant rewards today!
Take part in our simple quizzes and win instant rewards today!
${QuizCards}
`;
// function to create the initial modal markup
let modalMarkup = () => (`
${quizModalLV1}
`);
/* ---- DOM Manipulation ---- */
// current url path
const currentPath = window.location.pathname;
// Dom manipulation for quiz variation
if (variationPages.includes(currentPath)) {
// preload images
preloadImages(imageUrls);
// insert quiz icon
if (document.querySelector('.quiz-icon-container')) return;
document.querySelector('main.container .cmp-container > .aem-Grid').insertAdjacentHTML('beforeend', quizIconHtml);
let eventLabel = '[vwo_ce_rtg] rewards quiz - healthy heart - win prizes - animated';
gaEventTrigger('impression', eventLabel);
// insert modal markup
document.querySelectorAll('main.container .cmp-container > .aem-Grid')[0].insertAdjacentHTML('beforeend', modalMarkup())
// click handler function for variation pages
function clickHandler(event) {
const { target } = event;
//console.log('target: ', target);
// Utility: Toggle modal visibility
const toggleModal = (selector, addClass, removeClass) => {
const modal = document.querySelector(selector);
if (modal) {
if (addClass !== null) modal.classList.add(addClass);
if (removeClass !== null) modal.classList.remove(removeClass);
}
};
// Utility: Map class names to modal numbers
const getModalNum = () => {
if (target.closest('.healthy-heart-quiz-one')) return 0;
if (target.closest('.healthy-heart-quiz-two')) return 1;
if (target.closest('.word-search-edition-three')) return 2;
return null; // Default if no match found
};
// Utility: Clear form errors
const clearFormErrors = () => {
document.querySelector('.form-section .error-copy')?.remove();
document.querySelector('.form-section.form-error')?.classList.remove('form-error');
};
// Handle: Quiz icon click (open modal)
if (target.closest('.quiz-icon-container .quiz-icon')) {
toggleModal('.quiz-modal-container', 'modal--visible', 'modal--hidden');
// click on quiz icon
let eventLabel = '[vwo_ce_rtg] rewards quiz - healthy heart - win prizes - animated';
let eventJourneyCTA = 'vworq-hh-win prizes-animated';
gaEventTrigger('click', eventLabel, eventJourneyCTA);
}
// Handle: Quiz cross icon click (cross icon)
if (target.closest('.quiz-icon-container .cross-icon')) {
document.querySelector('.quiz-icon-container').classList.add('hide-quiz-icon');
// hide quiz icon
let eventLabel = '[vwo_ce_rtg] rewards quiz - healthy heart - win prizes - animated';
gaEventTrigger('close', eventLabel);
return;
}
// Handle: Close modal
if (
target.closest('.modal-cross-button .cross-icon') ||
target.classList.contains('modal--visible')
) {
// step 1 modal - close
if (target.closest('.quiz-modal-content.quiz-level-one .modal-cross-button .cross-icon')) {
let eventLabel = `[vwo_ce_rtg] rewards quiz - healthy heart - step 1 - select quiz - animated`;
gaEventTrigger('close', eventLabel);
}
// step 2 modal - close
if (target.closest('.quiz-modal-content.quiz-level-two .modal-cross-button .cross-icon')) {
//let quizName = document.querySelector('.quiz-modal.quiz-modal-two')?.getAttribute('quiz-name')?.toLowerCase();
let quizName = document.querySelector('.quiz-modal.quiz-modal-two')?.getAttribute('quiz-name').split('-')[1].toLowerCase().trim();
let eventLabel = `[vwo_ce_rtg] rewards quiz - healthy heart - step 2 - start now - ${quizName} - animated`;
gaEventTrigger('close', eventLabel);
}
// step 3 - close
if (target.closest('.quiz-modal-content.quiz-level-three .modal-cross-button .cross-icon')) {
//let quizName = document.querySelector('.quiz-modal.quiz-modal-three')?.getAttribute('quiz-name')?.toLowerCase();
let quizName = document.querySelector('.quiz-modal.quiz-modal-three')?.getAttribute('quiz-name').split('-')[1].toLowerCase().trim();
let eventLabel = `[vwo_ce_rtg] rewards quiz - healthy heart - step 3 - continue - ${quizName} - animated`;
gaEventTrigger('close', eventLabel);
}
toggleModal('.quiz-modal-container', 'modal--hidden', 'modal--visible');
document.querySelectorAll('.quiz-modal.quiz-modal-three, .quiz-modal.quiz-modal-two').forEach(modal => modal.remove());
toggleModal('.quiz-modal.quiz-modal-one', null, 'hide-modal'); // Unhide modal one
return;
}
// Handle: Click on modal cards
if (target.closest('.quiz-modal-one .quiz-card')) {
const modalNum = getModalNum();
if (modalNum !== null) {
const { quizName, quizNumber, className, image, promoCopy, details } = collections[modalNum];
const modalTwoInnerHtml = modalTwoInnerContent(className, quizName, promoCopy, details);
const modalTwoMarkup = quizModalfn(className, quizName, image, modalTwoInnerHtml, 'quiz-modal-two', 'quiz-level-two');
document.querySelector('.quiz-modal.quiz-modal-one').insertAdjacentHTML('afterend', modalTwoMarkup);
toggleModal('.quiz-modal.quiz-modal-one', 'hide-modal', null);
// step 1 - popup card click
let quizTitle = quizNumber.toLowerCase();
let eventLabel = `[vwo_ce_rtg] rewards quiz - healthy heart - step 1 - select quiz - ${quizTitle} - animated`;
let eventJourneyCTA = `vworq-hh-1-${quizTitle}-animated`;
gaEventTrigger('click', eventLabel, eventJourneyCTA);
}
return;
}
// Handle: Click on quiz start button in modal two
if (target.closest('.quiz-modal.quiz-modal-two .quiz-button')) {
const questionModalNum = getModalNum();
if (questionModalNum !== null) {
const { quizName, quizNumber, className, image, questionOne, questionTwo } = collections[questionModalNum];
const modalThreeInnerHtml = modalThreeInnerContent(className, questionOne, questionTwo);
const modalThreeMarkup = quizModalfn(className, quizName, image, modalThreeInnerHtml, 'quiz-modal-three', 'quiz-level-three');
document.querySelector('.quiz-modal.quiz-modal-one').insertAdjacentHTML('afterend', modalThreeMarkup);
toggleModal('.quiz-modal.quiz-modal-two', 'hide-modal', null);
// step 2 - start now CTA click
let quizTitle = quizNumber.toLowerCase();
let eventLabel = `[vwo_ce_rtg] rewards quiz - healthy heart - step 2 - start now - ${quizTitle} - animated`;
let eventJourneyCTA = `vworq-hh-2-${quizTitle}-animated`;
gaEventTrigger('click', eventLabel, eventJourneyCTA);
}
return;
}
// Handle: Click on quiz button in modal three (final action)
if (target.closest('.quiz-modal.quiz-modal-three .quiz-button')) {
const questionModalNum = getModalNum();
if (questionModalNum !== null) {
const { url, quizNumber } = collections[questionModalNum];
// Validate input and process quiz data
validationAndProcessQuizData(url, quizNumber);
}
return;
}
// Handle: Input focus (clear errors)
if (target.closest('input#form-quiestion-one') || target.closest('input#form-quiestion-two')) {
clearFormErrors();
return;
}
}
// Attach click handler to the document
document.body.addEventListener('click', clickHandler);
function touchStartEventHandler(event) {
const { target } = event;
//console.log('target touch: ', target);
// Utility: Toggle modal visibility
const toggleModal = (selector, addClass, removeClass) => {
const modal = document.querySelector(selector);
if (modal) {
modal.classList.add(addClass);
modal.classList.remove(removeClass);
}
};
// Handle: Close modal
if (
target.closest('.modal-cross-button .cross-icon') ||
target.classList.contains('modal--visible')
) {
// step 1 - close
if (target.closest('.quiz-modal-content.quiz-level-one .modal-cross-button .cross-icon')) {
let eventLabel = `[vwo_ce_rtg] rewards quiz - healthy heart - step 1 - select quiz - animated`;
gaEventTrigger('close', eventLabel);
}
// step 2 - close
if (target.closest('.quiz-modal-content.quiz-level-two .modal-cross-button .cross-icon')) {
let quizName = document.querySelector('.quiz-modal.quiz-modal-two')?.getAttribute('quiz-name').split('-')[1].toLowerCase().trim();
let eventLabel = `[vwo_ce_rtg] rewards quiz - healthy heart - step 2 - start now - ${quizName} - animated`;
gaEventTrigger('close', eventLabel);
}
// step 3 - close
if (target.closest('.quiz-modal-content.quiz-level-three .modal-cross-button .cross-icon')) {
let quizName = document.querySelector('.quiz-modal.quiz-modal-three')?.getAttribute('quiz-name').split('-')[1].toLowerCase().trim();
let eventLabel = `[vwo_ce_rtg] rewards quiz - healthy heart - step 3 - continue - ${quizName} - animated`;
gaEventTrigger('close', eventLabel);
}
toggleModal('.quiz-modal-container', 'modal--hidden', 'modal--visible');
document.querySelectorAll('.quiz-modal.quiz-modal-three, .quiz-modal.quiz-modal-two').forEach(modal => modal.remove());
toggleModal('.quiz-modal.quiz-modal-one', null, 'hide-modal'); // Unhide modal one
return;
}
}
if (isTouchDevice()) {
document.body.addEventListener('touchstart', touchStartEventHandler)
}
}
// Dom manipulation to populate the quiz modal
if (quizPages.includes(currentPath)) {
// Retrieve and parse quiz data from sessionStorage
const quizData = sessionStorage.getItem('quizData');
if (quizData) {
try {
const [url, answerOne, answerTwo] = JSON.parse(quizData);
const currentUrl = window.location.href;
// Check if the current URL matches the stored URL
if (currentUrl.includes(url)) {
document.querySelectorAll(`.cmp-form .leo-radio__input input[value="${answerOne}"]`)[0].click();
document.querySelectorAll(`.cmp-form .leo-radio__input input[value="${answerTwo}"]`)[0].click();
}
} catch (error) {
//console.error('Failed to parse quiz data from sessionStorage:', error);
}
}
}
},
};
// Return if the test ran already!
if (document.querySelector(`.${test.id}`)) return;
// Polling conditions
if (document.querySelector('main.container .cmp-container > .aem-Grid')) {
try {
// Activate test
setTimeout(function () { test.init() }, 1000)
// Success log
console.log('Vertis Digital: EXP-10: V: 2:05');
} catch (error) {
// Error log
console.log(`Initialization Error:`, error);
}
} else {
Date.now() < timeInFuture
? setTimeout(loadVariation.bind({}, timeInFuture), 25)
: console.log("loadVariation timed out!");
}
})(Date.now() + 60000);
// End variation JS
return vwo_$('head')[0] && vwo_$('head')[0].lastChild; } catch(e) {} })("HEAD")}}, R_722219_1027_1_3_0:{ fn:function(){return (function(x) { try{
var el,ctx=vwo_$(x);
/*vwo_debug log("Revert","addElement","body"); vwo_debug*/(el=vwo_$('[vwo-element-id="1739333374850"]')).remove();
var ctx=vwo_$(x),el;
/*vwo_debug log("Revert","content",""); vwo_debug*/;
el=vwo_$('[vwo-element-id="1739333374787"]');
el.revertContentOp().remove();
return vwo_$('head')[0] && vwo_$('head')[0].lastChild; } catch(e) {} })("HEAD")}}, C_722219_816_1_2_0:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x);
/*vwo_debug log("remove",".cmp-marquee-promotion"); vwo_debug*/(el=vwo_$(".cmp-marquee-promotion")).vwoCss({display:"none !important"});})(".cmp-marquee-promotion")}}, C_722219_816_1_2_1:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x);
/*vwo_debug log("remove",".header"); vwo_debug*/(el=vwo_$(".header")).vwoCss({display:"none !important"});})(".header")}}, C_722219_816_1_2_2:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x);
/*vwo_debug log("remove",".footer"); vwo_debug*/(el=vwo_$(".footer")).vwoCss({display:"none !important"});})(".footer")}}, C_722219_816_1_2_3:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x);
/*vwo_debug log("remove",".root > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(24) > div:nth-of-type(1)"); vwo_debug*/(el=vwo_$(".root > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(24) > div:nth-of-type(1)")).vwoCss({display:"none !important"});})(".root > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(24) > div:nth-of-type(1)")}}, C_722219_816_1_2_4:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x);
/*vwo_debug log("remove","#RCBFORM > div:nth-of-type(1) > div:nth-of-type(1)"); vwo_debug*/(el=vwo_$("#RCBFORM > div:nth-of-type(1) > div:nth-of-type(1)")).vwoCss({display:"none !important"});})("#RCBFORM > div:nth-of-type(1) > div:nth-of-type(1)")}}, C_722219_985_1_2_0:{ fn:function(){return (function(x) { try{
function setCookie(e,t,o){const i=new Date;i.setTime(i.getTime()+24*o*60*60*1e3);const n="expires="+i.toUTCString();document.cookie=e+"="+t+";"+n+";path=/; domain=.greateasternlife.com"}setCookie("lastPageVisited","product",180);
return vwo_$('head')[0] && vwo_$('head')[0].lastChild; } catch(e) {} })("HEAD")}}, C_722219_657_1_2_0:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x);
/*vwo_debug log("remove visibility",".leo-py-xs"); vwo_debug*/(el=vwo_$(".leo-py-xs")).vwoCss({visibility:"hidden !important",display:"none !important"});})(".leo-py-xs")}}, C_722219_657_1_2_1:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x);
/*vwo_debug log("content",".redactor-editor"); vwo_debug*/(el=vwo_$(".redactor-editor")).replaceWith(''),el=vwo_$(".redactor-editor");})(".redactor-editor")}}, C_722219_657_1_2_2:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x);
/*vwo_debug log("content",".modal-footer"); vwo_debug*/el=vwo_$(".modal-footer"),vwo_$(".modal-footer").each((function(){vwo_$(this).vwoAttr("class","modal-footer leo-text-right "),vwo_$(this).children().eq(1).vwoAttr("class","leo-button leo-button--secondary modal-save product-save-btn-active "),vwo_$(this).children().eq(1).nonEmptyContents().eq(0).replaceWith(document.createTextNode("Apply")),vwo_$(this).children().eq(1).children().eq(0).vwoAttr("class","rippleJS focus-visible "),vwo_$(this).children().eq(1).children().eq(0).vwoAttr("data-focus-visible-added","")})),el=vwo_$(".modal-footer");})(".modal-footer")}}, C_722219_657_1_2_3:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x);
/*vwo_debug log("remove","#filter-search"); vwo_debug*/(el=vwo_$("#filter-search")).vwoCss({display:"none !important"});})("#filter-search")}}, C_722219_657_1_2_4:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x);
/*vwo_debug log("remove","#search-sb-key"); vwo_debug*/(el=vwo_$("#search-sb-key")).vwoCss({display:"none !important"});})("#search-sb-key")}}, C_722219_657_1_2_5:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x);
/*vwo_debug log("remove","#filter-form > span:nth-of-type(1)"); vwo_debug*/(el=vwo_$("#filter-form > span:nth-of-type(1)")).vwoCss({display:"none !important"});})("#filter-form > span:nth-of-type(1)")}}, C_722219_657_1_2_6:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x);
/*vwo_debug log("remove",".announcement-blue-bg"); vwo_debug*/(el=vwo_$(".announcement-blue-bg")).vwoCss({display:"none !important"});})(".announcement-blue-bg")}}, C_722219_1005_1_2_1:{ fn:function(log,nonce=''){return (function(x) {
try{
var _vwo_sel = vwo_$("`);
!vwo_$("head").find('#1740052750814').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)}
try{}catch(e) {console.error(e)}
try{var value;console.log("value check started");const elementlist=document.getElementsByClassName("cmp-button__button--primary");var myFunction=function(){document.querySelectorAll(".cmp-text.mb-2.color-gray-dark").forEach(e=>{const t=e.querySelector("p.font-14");if(t&&t.textContent.includes("Plan type:")){let e=t.textContent.replace("Plan type:","").trim().replace("()","").trim();sendValue(value=e),console.log("value v1 check",value)}})};function sendValue(e){window.VWO=window.VWO||[],VWO.event=VWO.event||function(){VWO.push(["event"].concat([].slice.call(arguments)))},VWO.event("gtcPlanType",{gtcPlanType:e})}Array.from(elementlist).forEach((function(e){e.addEventListener("click",myFunction)}));}catch(e) {console.error(e)}
return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_1005_1_2_0:{ fn:function(log,nonce=''){return (function(x) {
try{
var _vwo_sel = vwo_$("`);
!vwo_$("head").find('#1740052750811').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)}
try{}catch(e) {console.error(e)}
try{const plan=document.querySelector("#selectedPlan-Gold");plan.click(),console.log("plan selected");}catch(e) {console.error(e)}
return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_998_1_2_0:{ fn:function(){return (function(x) { try{
var _vwo_sel = vwo_$("");
!vwo_$("head").find("#1736837447668").length && vwo_$('head').append(_vwo_sel);
// Start variation JS
void (function loadVariation(timeInFuture) {
// Main Test object
const test = {
// Some test specific global letiables
id: "EXP-1-Home",
// Test init
init: function () {
// Add a test specific classname to the body element
document.body.classList.add(test.id);
// Below function calls order is important
test.mainJS();
},
// Main JS
mainJS: function () {
const cookieName = "quotationData";
const dataPopulationCookieName = "data-population-cookie";
// Function to get cookie
function getCookie(cname) {
const name = cname + "=";
const decodedCookie = decodeURIComponent(document.cookie);
const cookies = decodedCookie.split(';');
for (const cookie of cookies) {
const c = cookie.trim();
if (c.indexOf(name) === 0) {
return c.substring(name.length);
}
}
return "";
}
// Utility function to Function to set cookie
function setCookie(cname, cvalue, exmin) {
const d = new Date();
d.setTime(d.getTime() + (exmin * 60 * 1000));
const expires = `expires=${d.toUTCString()}`;
document.cookie = `${cname}=${cvalue}; ${expires}; path=/; domain=.greateasternlife.com`;
};
// function to trigger GA events
function gaEventTrigger(eventAction, eventLabel, eventSubCategory = '', eventJourneyCTA = '') {
dataLayer.push({
event: "vwoEvent",
eventDetails: {
category: "[vwo] floating banner - ab test - expose",
action: eventAction,
label: eventLabel
},
...(eventSubCategory ? { contentSubcategory: eventSubCategory } : {}),
...(eventJourneyCTA ? { journeyCta: eventJourneyCTA } : {})
});
};
const existingCookie = getCookie(cookieName);
const productData = existingCookie ? JSON.parse(existingCookie) : {};
const productLinks = {
'GREAT Protector Active': 'https://buy-uat-greateasternlife.adobecqms.net/sg/en/personal-accident-insurance/200201/get-quotation.html'
}
let productName = productData?.productJourney;
let productRedirect = productLinks[productData?.productJourney];
const crossIcon = `
`;
const createBanner = (productName) => (`
${crossIcon}
Ready to complete your purchase for ${productName}?
Secure your coverage now
Resume my purchase
`);
// Retrieve banner view count from localStorage or default to 0
let bannerViewCount = parseInt(localStorage.getItem('bannerViewCount') || '0', 10);
// Check session storage for the 'viewInSession' flag, defaulting to 'show'
const viewInSession = sessionStorage.getItem('viewInSession') || 'show';
// Update session storage if not already set
if (viewInSession === 'show') {
sessionStorage.setItem('viewInSession', 'show');
// Increment and update banner view count in localStorage
bannerViewCount += 1;
localStorage.setItem('bannerViewCount', bannerViewCount);
}
if (
productData &&
productData.productJourney &&
location.pathname === '/sg/en/personal-insurance.html' &&
!document.querySelector('.product-purchase-banner-section') &&
bannerViewCount <= 2 &&
viewInSession !== 'dont show'
) {
// insert the banner
document.querySelector('main .cmp-container > .aem-Grid').insertAdjacentHTML('beforeend', createBanner(productName));
// trigger impression event
let eventLabel = (`[vwo_ce_rtg] resume orion journey floating banner - ${productName}`).toLowerCase();
let eventSubCategory = productName.toLowerCase();
gaEventTrigger('impression', eventLabel, eventSubCategory);
// set banner view count to session & local storage
sessionStorage.setItem('viewInSession', 'seen');
// function for click events
function clickHander(event) {
const { target } = event;
//console.log('target: ', target);
if (target.closest('.banner-icon-section svg')) {
document.querySelector('.product-purchase-banner-section').classList.add('hide-banner');
sessionStorage.setItem('viewInSession', 'dont show');
// trigger click event to Close CTA
let eventLabel = (`[vwo_ce_rtg] resume orion journey floating banner - ${productName}`).toLowerCase();
let eventSubCategory = productName.toLowerCase();
gaEventTrigger('close', eventLabel, eventSubCategory);
}
if (target.closest('.banner-button.new-button') && productRedirect) {
// trigger click event to CTA
let eventLabel = (`[vwo_ce_rtg] resume orion journey floating banner - ${productName} - Resume my purchase`).toLowerCase();
let eventSubCategory = productName.toLowerCase();
let eventJourneyCTA = ("vworf-" + productName).toLowerCase();
gaEventTrigger('click', eventLabel, eventSubCategory, eventJourneyCTA);
setCookie(dataPopulationCookieName, "true", 15);
window.location.href = productRedirect;
}
}
// Add event listener on click event.
document.body.addEventListener('click', clickHander);
}
},
};
// Return if the test ran already!
if (document.querySelector(`.${test.id}`)) return;
// Polling conditions
if (document.querySelector('main .cmp-container > .aem-Grid')) {
try {
// Activate test
test.init();
// Success log
console.log('Vertis Digital: Home: EXP-1: V: 1:11');
} catch (error) {
// Error log
console.log(`Initialization Error:`, error);
}
} else {
Date.now() < timeInFuture
? setTimeout(loadVariation.bind({}, timeInFuture), 25)
: console.log("loadVariation timed out!");
}
})(Date.now() + 60000);
// End variation JS
return vwo_$('head')[0] && vwo_$('head')[0].lastChild; } catch(e) {} })("HEAD")}}, R_722219_998_1_2_0:{ fn:function(){return (function(x) { try{
var el,ctx=vwo_$(x);
/*vwo_debug log("Revert","addElement","body"); vwo_debug*/(el=vwo_$('[vwo-element-id="1736837447632"]')).remove();
var ctx=vwo_$(x),el;
/*vwo_debug log("Revert","content",""); vwo_debug*/;
el=vwo_$('[vwo-element-id="1736837447668"]');
el.revertContentOp().remove();
return vwo_$('head')[0] && vwo_$('head')[0].lastChild; } catch(e) {} })("HEAD")}}, C_722219_998_1_3_0:{ fn:function(){return (function(x) { try{
// Start variation JS
void (function loadVariation(timeInFuture) {
// Main Test object
const test = {
// Some test specific global letiables
id: "EXP-1-control",
// Test init
init: function () {
// Add a test specific classname to the body element
document.body.classList.add(test.id);
// Below function calls order is important
test.mainJS();
},
// Main JS
mainJS: function () {
const cookieName = "quotationData";
// Function to get cookie
function getCookie(cname) {
const name = cname + "=";
const decodedCookie = decodeURIComponent(document.cookie);
const cookies = decodedCookie.split(';');
for (const cookie of cookies) {
const c = cookie.trim();
if (c.indexOf(name) === 0) {
return c.substring(name.length);
}
}
return "";
}
// function to trigger GA events
function gaEventTrigger(eventAction, eventLabel, eventSubCategory = '', eventJourneyCTA = '') {
dataLayer.push({
event: "vwoEvent",
eventDetails: {
category: "[vwo] floating banner - ab test - control",
action: eventAction,
label: eventLabel
},
...(eventSubCategory ? { contentSubcategory: eventSubCategory } : {}),
...(eventJourneyCTA ? { journeyCta: eventJourneyCTA } : {})
});
};
const existingCookie = getCookie(cookieName);
const productData = existingCookie ? JSON.parse(existingCookie) : {};
let productName = productData?.productJourney;
// Retrieve banner view count from localStorage or default to 0
let bannerViewCount = parseInt(localStorage.getItem('bannerViewCount') || '0', 10);
// Check session storage for the 'viewInSession' flag, defaulting to 'show'
const viewInSession = sessionStorage.getItem('viewInSession') || 'show';
// Update session storage if not already set
if (viewInSession === 'show') {
sessionStorage.setItem('viewInSession', 'show');
// Increment and update banner view count in localStorage
bannerViewCount += 1;
localStorage.setItem('bannerViewCount', bannerViewCount);
}
if (
productData &&
productData.productJourney &&
location.pathname === '/sg/en/personal-insurance.html' &&
bannerViewCount <= 2 &&
viewInSession !== 'dont show'
) {
// trigger impression event
let eventLabel = (`[vwo_ce_rtg] resume orion journey floating banner - ${productName}`).toLowerCase();
let eventSubCategory = productName.toLowerCase();
gaEventTrigger('impression', eventLabel, eventSubCategory);
// set banner view count to session & local storage
sessionStorage.setItem('viewInSession', 'seen');
}
},
};
// Return if the test ran already!
if (document.querySelector(`.${test.id}`)) return;
// Polling conditions
if (document.readyState === 'complete') {
try {
// Activate test
test.init();
// Success log
console.log('Vertis Digital: Control: EXP-1: V: 1:01');
} catch (error) {
// Error log
console.log(`Initialization Error:`, error);
}
} else {
Date.now() < timeInFuture
? setTimeout(loadVariation.bind({}, timeInFuture), 25)
: console.log("loadVariation timed out!");
}
})(Date.now() + 60000);
// End variation JS
return vwo_$('head')[0] && vwo_$('head')[0].lastChild; } catch(e) {} })("HEAD")}}, ct998_7968865b609e3fc27b943d00b3dd1b98:{ fn:function(executeTrigger, vwo_$) {
(function () {
if (location.pathname !== '/sg/en/personal-insurance.html') return false;
const cookieName = "quotationData";
const productsPurchasedCookieName = "personalization_products_purchased";
// Function to get cookie
function getCookie(cname) {
const name = cname + "=";
const decodedCookie = decodeURIComponent(document.cookie);
const cookies = decodedCookie.split(';');
for (const cookie of cookies) {
const c = cookie.trim();
if (c.indexOf(name) === 0) {
return c.substring(name.length);
}
}
return "";
}
const existingCookie = getCookie(cookieName);
const productsPurchasedStr = getCookie(productsPurchasedCookieName);
const productData = existingCookie ? JSON.parse(existingCookie) : {};
const productPurchaseData = productsPurchasedStr ? JSON.parse(productsPurchasedStr) : [];
const productsViewedCTAArr = [
{ "name": "GREAT Protector Active" }
];
// Check if any product from productsViewedCTAArr is in productPurchaseData
const hasMatchingProduct = productsViewedCTAArr.some(viewedProduct =>
productPurchaseData.some(purchasedProduct => purchasedProduct.name === viewedProduct.name)
);
let bannerCount = localStorage.getItem('bannerViewCount');
if (
!hasMatchingProduct &&
productData &&
productData.productJourney &&
(bannerCount === null || (bannerCount && parseInt(bannerCount, 10) < 3))
) {
//alert('activate');
executeTrigger();
}
})()
}}, ct_50797db9f8236bc7d9dca0f411851f4f:{ fn:function(executeTrigger, vwo_$, config) {
(function() {
if (!config || typeof config !== "object") {
return;
}
if (window.vwo_$(config.sel).length > 0) {
return executeTrigger();
}
window.VWO._.phoenixMT.once("vwo_mutObs." + config.triggerName, () => {
if (window.vwo_$(config.sel).length > 0) {
executeTrigger();
}
});
})()
}
}, ct_cbb73702f57faed15ee0829091863373:{ fn:function(executeTrigger, vwo_$, config) {
(function() {
if (!config || typeof config !== "object") {
return;
}
if (window.vwo_$(config.sel).length > 0) {
return executeTrigger();
}
window.VWO._.phoenixMT.once("vwo_mutObs." + config.triggerName, () => {
if (window.vwo_$(config.sel).length > 0) {
executeTrigger();
}
});
})()
}
}, GL_722219_963_post:{ fn:function(VWO_CURRENT_CAMPAIGN, VWO_CURRENT_VARIATION,nonce = ""){}}, GL_722219_963_pre:{ fn:function(VWO_CURRENT_CAMPAIGN, VWO_CURRENT_VARIATION,nonce = ""){try{;
var _vwoCurrentPageUrl = window.location.href; var matchRegex = VWO._.matchRegex;vwo_$('[vwo-widget-id]').remove();vwo_$('html').get(0).classList.forEach((cl)=>{var mpClass=cl.match(/(?:\s|^)(vwo_p_s_[0-9a-f]{32})(?:\s|$)/);mpClass && (['vwo_p_s_baf0439c6ee7eeb30695dbb63777c8a1','vwo_p_s_529d06731882814587edcdb7fcb47719','vwo_p_s_117ea7d82ad4208c01b4c082cbb1dcbe','vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98','vwo_p_s_c1156e4acc492a4b12f5b24e80ca04d4','vwo_p_s_a192231b2113d157699dea212968af5a','vwo_p_s_f5e15ac35b42d3a7242aa2f738572873','vwo_p_s_db54451655d6fbb590be3ae44920e36f'].indexOf(mpClass[1])!=-1) && vwo_$('html').removeClass(mpClass[1]);});if(matchRegex(_vwoCurrentPageUrl,'^https:\/\/greateasternlife\.com\/sg\/en\/personal-insurance\/our-products\/personal-accident-insurance\/essential-protector-plus\.html\/?(?:[?#].*)?$')){vwo_$('html').addClass('vwo_p_s_baf0439c6ee7eeb30695dbb63777c8a1')} else if(matchRegex(_vwoCurrentPageUrl,'^https:\/\/greateasternlife\.com\/sg\/en\/personal-insurance\/our-products\/personal-accident-insurance\/great-golden-protector\.html\/?(?:[?#].*)?$')){vwo_$('html').addClass('vwo_p_s_529d06731882814587edcdb7fcb47719')} else if(matchRegex(_vwoCurrentPageUrl,'^https:\/\/greateasternlife\.com\/sg\/en\/personal-insurance\/our-products\/personal-accident-insurance\/great-junior-protector\.html\/?(?:[?#].*)?$')){vwo_$('html').addClass('vwo_p_s_117ea7d82ad4208c01b4c082cbb1dcbe')} else if(matchRegex(_vwoCurrentPageUrl,'^https:\/\/greateasternlife\.com\/sg\/en\/personal-insurance\/our-products\/personal-accident-insurance\.html\/?(?:[?#].*)?$')){vwo_$('html').addClass('vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98')} else if(matchRegex(_vwoCurrentPageUrl,'^https:\/\/greateasternlife\.com\/sg\/en\/personal-insurance\/rewards-and-promotions\/promotions-and-events\/2024\/geapp-exclusive-deals\.html\/?(?:[?#].*)?$')){vwo_$('html').addClass('vwo_p_s_c1156e4acc492a4b12f5b24e80ca04d4')} else if(matchRegex(_vwoCurrentPageUrl,'^https:\/\/greateasternlife\.com\/sg\/en\/personal-insurance\/our-products\/personal-accident-insurance\/great-protector-active\.html\/?(?:[?#].*)?$')){vwo_$('html').addClass('vwo_p_s_a192231b2113d157699dea212968af5a')} else if(matchRegex(_vwoCurrentPageUrl,'^https:\/\/greateasternlife\.com\/sg\/en\/personal-insurance\/rewards-and-promotions\.html\/?(?:[?#].*)?$')){vwo_$('html').addClass('vwo_p_s_f5e15ac35b42d3a7242aa2f738572873')} else if(matchRegex(_vwoCurrentPageUrl,'^https:\/\/wpr-uat\.greateasternlife\.com\/sg\/en\/personal-insurance\/our-products\/personal-accident-insurance\.html\/?(?:[?#].*)?$')){vwo_$('html').addClass('vwo_p_s_db54451655d6fbb590be3ae44920e36f')}
}catch(e){}}}, R_722219_963_1_2_61:{ fn:function(log,nonce=''){return (function(x) {
if(!vwo_$.fn.vwoRevertHtml){
return;
};
var el,ctx=vwo_$(x);
/*vwo_debug log("Revert","editElement","html.vwo_p_s_db54451655d6fbb590be3ae44920e36f #eppbuynow"); vwo_debug*/(el=vwo_$("html.vwo_p_s_db54451655d6fbb590be3ae44920e36f #eppbuynow")).vwoRevertAttr(),el.vwoRevertCss();})("html.vwo_p_s_db54451655d6fbb590be3ae44920e36f #eppbuynow")}}, C_722219_963_1_2_61:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x);
/*vwo_debug log("editElement","html.vwo_p_s_db54451655d6fbb590be3ae44920e36f #eppbuynow"); vwo_debug*/(el=vwo_$("html.vwo_p_s_db54451655d6fbb590be3ae44920e36f #eppbuynow")).vwoAttr({href:"#"}),el.vwoCss({transition:"none !important"});})("html.vwo_p_s_db54451655d6fbb590be3ae44920e36f #eppbuynow")}}, R_722219_963_1_2_60:{ fn:function(log,nonce=''){return (function(x) {
if(!vwo_$.fn.vwoRevertHtml){
return;
};
var el,ctx=vwo_$(x);
/*vwo_debug log("Revert","editElement","html.vwo_p_s_db54451655d6fbb590be3ae44920e36f #ggpbuynow"); vwo_debug*/(el=vwo_$("html.vwo_p_s_db54451655d6fbb590be3ae44920e36f #ggpbuynow")).vwoRevertAttr(),el.vwoRevertCss();})("html.vwo_p_s_db54451655d6fbb590be3ae44920e36f #ggpbuynow")}}, C_722219_963_1_2_60:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x);
/*vwo_debug log("editElement","html.vwo_p_s_db54451655d6fbb590be3ae44920e36f #ggpbuynow"); vwo_debug*/(el=vwo_$("html.vwo_p_s_db54451655d6fbb590be3ae44920e36f #ggpbuynow")).vwoAttr({href:"#"}),el.vwoCss({transition:"none !important"});})("html.vwo_p_s_db54451655d6fbb590be3ae44920e36f #ggpbuynow")}}, C_722219_965_1_2_45:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x);
/*vwo_debug log("editElement","html.vwo_p_s_c1156e4acc492a4b12f5b24e80ca04d4 .leo-row--gap-xs > div:nth-of-type(2) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(2) > div:nth-of-type(2) > p:nth-of-type(4) > b:nth-of-type(1) > a:nth-of-type(1)"); vwo_debug*/(el=vwo_$("html.vwo_p_s_c1156e4acc492a4b12f5b24e80ca04d4 .leo-row--gap-xs > div:nth-of-type(2) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(2) > div:nth-of-type(2) > p:nth-of-type(4) > b:nth-of-type(1) > a:nth-of-type(1)")).html("Buy now").vwoAttr({href:"https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200204/get-quotation.html?template=post&campCode=C8DISC&aid=GEAPP&utm_campaign=gels_clvm_aw_ds_pageapp1124&utm_source=other_geapp&utm_medium=text-link&utm_content=postlogin&utm_term=pa8geapp_postcpbuy_epp"});})("html.vwo_p_s_c1156e4acc492a4b12f5b24e80ca04d4 .leo-row--gap-xs > div:nth-of-type(2) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(2) > div:nth-of-type(2) > p:nth-of-type(4) > b:nth-of-type(1) > a:nth-of-type(1)")}}, R_722219_965_1_2_44:{ fn:function(log,nonce=''){return (function(x) {
if(!vwo_$.fn.vwoRevertHtml){
return;
};
var el,ctx=vwo_$(x);
/*vwo_debug log("Revert","editElement","html.vwo_p_s_c1156e4acc492a4b12f5b24e80ca04d4 .leo-row--gap-xs > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(2) > div:nth-of-type(2) > p:nth-of-type(6) > b:nth-of-type(1) > a:nth-of-type(1)"); vwo_debug*/(el=vwo_$("html.vwo_p_s_c1156e4acc492a4b12f5b24e80ca04d4 .leo-row--gap-xs > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(2) > div:nth-of-type(2) > p:nth-of-type(6) > b:nth-of-type(1) > a:nth-of-type(1)")).vwoRevertHtml().vwoRevertAttr();})("html.vwo_p_s_c1156e4acc492a4b12f5b24e80ca04d4 .leo-row--gap-xs > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(2) > div:nth-of-type(2) > p:nth-of-type(6) > b:nth-of-type(1) > a:nth-of-type(1)")}}, C_722219_965_1_2_44:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x);
/*vwo_debug log("editElement","html.vwo_p_s_c1156e4acc492a4b12f5b24e80ca04d4 .leo-row--gap-xs > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(2) > div:nth-of-type(2) > p:nth-of-type(6) > b:nth-of-type(1) > a:nth-of-type(1)"); vwo_debug*/(el=vwo_$("html.vwo_p_s_c1156e4acc492a4b12f5b24e80ca04d4 .leo-row--gap-xs > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(2) > div:nth-of-type(2) > p:nth-of-type(6) > b:nth-of-type(1) > a:nth-of-type(1)")).html("Buy now").vwoAttr({href:"https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200201/get-quotation.html?template=post&campCode=C8DISC&aid=GEAPP&utm_campaign=gels_clvm_aw_ds_pageapp1124&utm_source=other_geapp&utm_medium=text-link&utm_content=postlogin&utm_term=pa8geapp_postcpbuy_gpa"});})("html.vwo_p_s_c1156e4acc492a4b12f5b24e80ca04d4 .leo-row--gap-xs > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(2) > div:nth-of-type(2) > p:nth-of-type(6) > b:nth-of-type(1) > a:nth-of-type(1)")}}, R_722219_1028_1_2_0:{ fn:function(){return (function(x) { try{
var el,ctx=vwo_$(x);
/*vwo_debug log("Revert","addElement","body"); vwo_debug*/(el=vwo_$('[vwo-element-id="1739332828517"]')).remove();
var ctx=vwo_$(x),el;
/*vwo_debug log("Revert","content",""); vwo_debug*/;
el=vwo_$('[vwo-element-id="1739332828552"]');
el.revertContentOp().remove();
return vwo_$('head')[0] && vwo_$('head')[0].lastChild; } catch(e) {} })("HEAD")}}, C_722219_1028_1_2_0:{ fn:function(){return (function(x) { try{
var _vwo_sel = vwo_$("");
!vwo_$("head").find("#1739332828552").length && vwo_$('head').append(_vwo_sel);
// Start variation JS
void (function loadVariation(timeInFuture) {
// Main Test object
const test = {
// Some test specific global letiables
id: "EXP-10",
// Test init
init: function () {
// Add a test specific classname to the body element
document.body.classList.add(test.id);
// Below function calls order is important
test.mainJS();
},
// Main JS
mainJS: function () {
/* ---- LOGO ---- */
const quizLogo = `
`;
const crossIcon = `
`;
const newCrossIcon = `
`;
/* ---- DATA ---- */
// quiz data
const collections = [
{
quizName: "Healthy heart, Happy life - Quiz 1",
quizNumber: "quiz 1",
className: "healthy-heart-quiz-one",
image: "https://www.greateasternlife.com/content/dam/corp-site/great-eastern/sg/gels-dme-rewards/health-programme/heart-health/gels-dme-rewards-heart-health-quiz-1.jpg",
coverImage: "https://www.greateasternlife.com/content/dam/corp-site/great-eastern/sg/gels-dme-rewards/health-programme/heart-health/gels-dme-rewards-heart-health-quiz-1.jpg",
url: "https://www.greateasternlife.com/sg/en/personal-insurance/lifepedia/healthy-heart-happy-life/heart-health-and-you-quiz-1.html",
header: "Healthy heart, Happy life - Quiz 1",
quizDate: "Jan 06, 2025",
promoCopy: "Answer 3 simple questions and win an exclusive prize from Eu Yan Sang worth $15!",
questionOne: [
"1. One should see a ____________ if he/she is experiencing chest pain and shortness of breath as it could be a possible sign of heart disease and heart failure.",
["Cardiologist", "Dentist", "Gastroenterologist"]
],
questionTwo: [
"2. These chronic conditions – diabetes, high blood pressure, and high ___________ (also known as the “Three Highs”), are usually asymptomatic and may be unnoticed. It has been observed that patients are also developing these conditions at an increasingly earlier age.",
["Blood count", "Cholesterol", "Fever"]
]
},
{
quizName: "Healthy heart, Happy life - Quiz 2",
quizNumber: "quiz 2",
className: "healthy-heart-quiz-two",
image: "https://www.greateasternlife.com/content/dam/corp-site/great-eastern/sg/gels-dme-rewards/health-programme/heart-health/gels-dme-rewards-heart-health-quiz-2.jpg",
coverImage: "https://www.greateasternlife.com/content/dam/corp-site/great-eastern/sg/gels-dme-rewards/health-programme/heart-health/gels-dme-rewards-heart-health-quiz-2-thumbnail.jpg",
url: "https://www.greateasternlife.com/sg/en/personal-insurance/lifepedia/healthy-heart-happy-life/huat-the-heart-wants-quiz-2.html",
header: "Healthy heart, Happy life - Quiz 2",
quizDate: "Jan 20, 2025",
promoCopy: "Answer 3 simple questions and win an exclusive prize from Fitness First worth $60!",
questionOne: [
"1. Even though pineapple tarts are everywhere for the festive season, I should limit my intake to ____ pieces because it is equivalent to 7 teaspoons of sugar, which is within our recommended daily intake of 10 teaspoons.",
["2", "4", "6"]
],
questionTwo: [
"2. Nian gao, nian gao, in the box… which is the most calorie-loaded of them all?",
["Steamed", "Fried"]
]
},
];
// quiz image links
const imageUrls = [
"https://www.greateasternlife.com/content/dam/corp-site/great-eastern/sg/gels-dme-rewards/health-programme/heart-health/gels-dme-rewards-heart-health-quiz-1.jpg",
"https://www.greateasternlife.com/content/dam/corp-site/great-eastern/sg/gels-dme-rewards/health-programme/heart-health/gels-dme-rewards-heart-health-quiz-2.jpg",
"https://www.greateasternlife.com/content/dam/corp-site/great-eastern/sg/gels-dme-rewards/health-programme/heart-health/gels-dme-rewards-heart-health-quiz-2-thumbnail.jpg"
];
// array of quiz pages
const quizPages = [
'/sg/en/personal-insurance/lifepedia/healthy-heart-happy-life/heart-health-and-you-quiz-1.html',
'/sg/en/personal-insurance/lifepedia/healthy-heart-happy-life/huat-the-heart-wants-quiz-2.html',
];
// array of pages to show quiz logo
const variationPages = [
'/sg/en/personal-insurance.html'
];
/* ---- Utility Functions ---- */
// // image preload function
function preloadImages(imageUrls) {
imageUrls.forEach(url => {
const img = new Image();
img.src = url;
});
}
// function to validate and process quiz data
function validationAndProcessQuizData(quizUrl, quizNumber) {
// Cache form elements
const formSection = document.querySelector('.form-section');
const questionOneInput = document.querySelectorAll('.form-group-one .radio-item input:checked')[0];
const questionTwoInput = document.querySelectorAll('.form-group-two .radio-item input:checked')[0];
// Validation: Check if questions are answered
const isEmpty = !(questionOneInput?.value) || !(questionTwoInput?.value.trim());
const existingError = formSection.querySelector('.error-copy');
const errorHtml = `
Please complete the questions.
`
if (isEmpty) {
// Add error message if it doesn't exist
if (!existingError) {
formSection.insertAdjacentHTML('beforeend', errorHtml);
formSection.classList.add('form-error');
return; // Exit the function
}
return;
}
// Remove error if validation passes
if (existingError) {
existingError.remove();
}
formSection.classList.remove('form-error');
// Prepare quiz data
const quizData = [
quizUrl.trim(),
questionOneInput.value.trim(),
questionTwoInput.value.trim(),
];
// Store the data in session storage
sessionStorage.setItem('quizData', JSON.stringify(quizData));
// step 3 - continue CTA click
let quizName = quizNumber.toLowerCase();
let eventLabel = `[vwo_ce_rtg] rewards quiz - healthy heart - step 3 - continue - ${quizName}`;
let eventJourneyCTA = `vworq-hh-3-${quizName}`;
gaEventTrigger('click', eventLabel, eventJourneyCTA);
// Redirect to the quiz URL
window.location.href = quizUrl;
}
// function to trigger GA events
function gaEventTrigger(eventAction, eventLabel, eventJourneyCTA = '') {
dataLayer.push({
event: "vwoEvent",
eventDetails: {
category: "[vwo] sticky icon",
action: eventAction,
label: eventLabel
},
contentSubcategory: "healthy heart quiz",
...(eventJourneyCTA ? { journeyCta: eventJourneyCTA } : {})
});
};
// fuction to detect touch device
const isTouchDevice = () => {
return (
'ontouchstart' in window || // Check for touch events
navigator.maxTouchPoints > 0 || // Check for touch points
navigator.msMaxTouchPoints > 0 // Microsoft-specific touch points
);
};
/* ---- HTML Templates Markup and Functions ---- */
// create Quiz cards markup
const createQuizCard = (className, coverImage, header, quizDate) => {
return (`
`;
// function to create inner content for modal level two
let modalTwoInnerContent = (className, title, promoCopy) => (`
${title}
${promoCopy}
Start now
`);
//function to generate radio buttons
function generateRadioButtons(options, groupName) {
// Helper function to generate a single radio item
const createRadioItem = (option, index) => {
const id = `${groupName}-option-${index + 1}`; // Unique ID for each option
return `
`;
};
// Generate all radio items
const radioItems = options.map((option, index) => createRadioItem(option, index)).join("");
// Wrap the radio items in the section structure
return `
${radioItems}
`;
}
// function to create inner content for modal level two
let modalThreeInnerContent = (className, questionOne, questionTwo) => (`
`);
// function to create markup for modals on level two and three
let quizModalfn = (className, quizName, image, modalInnerHtml, modalClassNameOne, modalClassNametwo) => (`
${quizCrossButton}
${quizCrossButton}
${modalInnerHtml}
`);
// markup for quiz modal level one
let quizModalLV1 = `
${quizCrossButton}
Take our simple quizzes and win instant rewards today!
Take part in our simple quizzes and win instant rewards today!
${QuizCards}
`;
// function to create the initial modal markup
let modalMarkup = () => (`
${quizModalLV1}
`);
/* ---- DOM Manipulation ---- */
// current url path
const currentPath = window.location.pathname;
// Dom manipulation for quiz variation
if (variationPages.includes(currentPath)) {
// preload images
preloadImages(imageUrls);
// insert quiz icon
if (document.querySelector('.quiz-icon-container')) return;
document.querySelector('main.container .cmp-container > .aem-Grid').insertAdjacentHTML('beforeend', quizIconHtml);
let eventLabel = '[vwo_ce_rtg] rewards quiz - healthy heart - win prizes';
gaEventTrigger('impression', eventLabel);
// insert modal markup
document.querySelectorAll('main.container .cmp-container > .aem-Grid')[0].insertAdjacentHTML('beforeend', modalMarkup())
// click handler function for variation pages
function clickHandler(event) {
const { target } = event;
//console.log('target: ', target);
// Utility: Toggle modal visibility
const toggleModal = (selector, addClass, removeClass) => {
const modal = document.querySelector(selector);
if (modal) {
if (addClass !== null) modal.classList.add(addClass);
if (removeClass !== null) modal.classList.remove(removeClass);
}
};
// Utility: Map class names to modal numbers
const getModalNum = () => {
if (target.closest('.healthy-heart-quiz-one')) return 0;
if (target.closest('.healthy-heart-quiz-two')) return 1;
if (target.closest('.word-search-edition-three')) return 2;
return null; // Default if no match found
};
// Utility: Clear form errors
const clearFormErrors = () => {
document.querySelector('.form-section .error-copy')?.remove();
document.querySelector('.form-section.form-error')?.classList.remove('form-error');
};
// Handle: Quiz icon click (open modal)
if (target.closest('.quiz-icon-container .quiz-icon')) {
toggleModal('.quiz-modal-container', 'modal--visible', 'modal--hidden');
// click on quiz icon
let eventLabel = '[vwo_ce_rtg] rewards quiz - healthy heart - win prizes';
let eventJourneyCTA = 'vworq-hh-win prizes';
gaEventTrigger('click', eventLabel, eventJourneyCTA);
}
// Handle: Quiz cross icon click (cross icon)
if (target.closest('.quiz-icon-container .cross-icon')) {
document.querySelector('.quiz-icon-container').classList.add('hide-quiz-icon');
// hide quiz icon
let eventLabel = '[vwo_ce_rtg] rewards quiz - healthy heart - win prizes';
gaEventTrigger('close', eventLabel);
return;
}
// Handle: Close modal
if (
target.closest('.modal-cross-button .cross-icon') ||
target.classList.contains('modal--visible')
) {
// step 1 modal - close
if (target.closest('.quiz-modal-content.quiz-level-one .modal-cross-button .cross-icon')) {
let eventLabel = `[vwo_ce_rtg] rewards quiz - healthy heart - step 1 - select quiz`;
gaEventTrigger('close', eventLabel);
}
// step 2 modal - close
if (target.closest('.quiz-modal-content.quiz-level-two .modal-cross-button .cross-icon')) {
let quizName = document.querySelector('.quiz-modal.quiz-modal-two')?.getAttribute('quiz-name').split('-')[1].toLowerCase().trim();
let eventLabel = `[vwo_ce_rtg] rewards quiz - healthy heart - step 2 - start now - ${quizName}`;
gaEventTrigger('close', eventLabel);
}
// step 3 - close
if (target.closest('.quiz-modal-content.quiz-level-three .modal-cross-button .cross-icon')) {
let quizName = document.querySelector('.quiz-modal.quiz-modal-three')?.getAttribute('quiz-name').split('-')[1].toLowerCase().trim();
let eventLabel = `[vwo_ce_rtg] rewards quiz - healthy heart - step 3 - continue - ${quizName}`;
gaEventTrigger('close', eventLabel);
}
toggleModal('.quiz-modal-container', 'modal--hidden', 'modal--visible');
document.querySelectorAll('.quiz-modal.quiz-modal-three, .quiz-modal.quiz-modal-two').forEach(modal => modal.remove());
toggleModal('.quiz-modal.quiz-modal-one', null, 'hide-modal'); // Unhide modal one
return;
}
// Handle: Click on modal cards
if (target.closest('.quiz-modal-one .quiz-card')) {
const modalNum = getModalNum();
if (modalNum !== null) {
const { quizName, quizNumber, className, image, promoCopy, details } = collections[modalNum];
const modalTwoInnerHtml = modalTwoInnerContent(className, quizName, promoCopy, details);
const modalTwoMarkup = quizModalfn(className, quizName, image, modalTwoInnerHtml, 'quiz-modal-two', 'quiz-level-two');
document.querySelector('.quiz-modal.quiz-modal-one').insertAdjacentHTML('afterend', modalTwoMarkup);
toggleModal('.quiz-modal.quiz-modal-one', 'hide-modal', null);
// step 1 - popup card click
let quizTitle = quizNumber.toLowerCase();
let eventLabel = `[vwo_ce_rtg] rewards quiz - healthy heart - step 1 - select quiz - ${quizTitle}`;
let eventJourneyCTA = `vworq-hh-1-${quizTitle}`;
gaEventTrigger('click', eventLabel, eventJourneyCTA);
}
return;
}
// Handle: Click on quiz start button in modal two
if (target.closest('.quiz-modal.quiz-modal-two .quiz-button')) {
const questionModalNum = getModalNum();
if (questionModalNum !== null) {
const { quizName, quizNumber, className, image, questionOne, questionTwo } = collections[questionModalNum];
const modalThreeInnerHtml = modalThreeInnerContent(className, questionOne, questionTwo);
const modalThreeMarkup = quizModalfn(className, quizName, image, modalThreeInnerHtml, 'quiz-modal-three', 'quiz-level-three');
document.querySelector('.quiz-modal.quiz-modal-one').insertAdjacentHTML('afterend', modalThreeMarkup);
toggleModal('.quiz-modal.quiz-modal-two', 'hide-modal', null);
// step 2 - start now CTA click
let quizTitle = quizNumber.toLowerCase();
let eventLabel = `[vwo_ce_rtg] rewards quiz - healthy heart - step 2 - start now - ${quizTitle}`;
let eventJourneyCTA = `vworq-hh-2-${quizTitle}`;
gaEventTrigger('click', eventLabel, eventJourneyCTA);
}
return;
}
// Handle: Click on quiz button in modal three (final action)
if (target.closest('.quiz-modal.quiz-modal-three .quiz-button')) {
const questionModalNum = getModalNum();
if (questionModalNum !== null) {
const { url, quizNumber } = collections[questionModalNum];
// Validate input and process quiz data
validationAndProcessQuizData(url, quizNumber);
}
return;
}
// Handle: Input focus (clear errors)
if (target.closest('input#form-quiestion-one') || target.closest('input#form-quiestion-two')) {
clearFormErrors();
return;
}
}
// Attach click handler to the document
document.body.addEventListener('click', clickHandler);
function touchStartEventHandler(event) {
const { target } = event;
//console.log('target touch: ', target);
// Utility: Toggle modal visibility
const toggleModal = (selector, addClass, removeClass) => {
const modal = document.querySelector(selector);
if (modal) {
modal.classList.add(addClass);
modal.classList.remove(removeClass);
}
};
// Handle: Close modal
if (
target.closest('.modal-cross-button .cross-icon') ||
target.classList.contains('modal--visible')
) {
// step 1 - close
if (target.closest('.quiz-modal-content.quiz-level-one .modal-cross-button .cross-icon')) {
let eventLabel = `[vwo_ce_rtg] rewards quiz - healthy heart - step 1 - select quiz`;
gaEventTrigger('close', eventLabel);
}
// step 2 - close
if (target.closest('.quiz-modal-content.quiz-level-two .modal-cross-button .cross-icon')) {
let quizName = document.querySelector('.quiz-modal.quiz-modal-two')?.getAttribute('quiz-name').split('-')[1].toLowerCase().trim();
let eventLabel = `[vwo_ce_rtg] rewards quiz - healthy heart - step 2 - start now - ${quizName}`;
gaEventTrigger('close', eventLabel);
}
// step 3 - close
if (target.closest('.quiz-modal-content.quiz-level-three .modal-cross-button .cross-icon')) {
let quizName = document.querySelector('.quiz-modal.quiz-modal-three')?.getAttribute('quiz-name').split('-')[1].toLowerCase().trim();
let eventLabel = `[vwo_ce_rtg] rewards quiz - healthy heart - step 3 - continue - ${quizName}`;
gaEventTrigger('close', eventLabel);
}
toggleModal('.quiz-modal-container', 'modal--hidden', 'modal--visible');
document.querySelectorAll('.quiz-modal.quiz-modal-three, .quiz-modal.quiz-modal-two').forEach(modal => modal.remove());
toggleModal('.quiz-modal.quiz-modal-one', null, 'hide-modal'); // Unhide modal one
return;
}
}
if (isTouchDevice()) {
document.body.addEventListener('touchstart', touchStartEventHandler)
}
}
// Dom manipulation to populate the quiz modal
if (quizPages.includes(currentPath)) {
// Retrieve and parse quiz data from sessionStorage
const quizData = sessionStorage.getItem('quizData');
if (quizData) {
try {
const [url, answerOne, answerTwo] = JSON.parse(quizData);
const currentUrl = window.location.href;
// Check if the current URL matches the stored URL
if (currentUrl.includes(url)) {
document.querySelectorAll(`.cmp-form .leo-radio__input input[value="${answerOne}"]`)[0].click();
document.querySelectorAll(`.cmp-form .leo-radio__input input[value="${answerTwo}"]`)[0].click();
}
} catch (error) {
//console.error('Failed to parse quiz data from sessionStorage:', error);
}
}
}
},
};
// Return if the test ran already!
if (document.querySelector(`.${test.id}`)) return;
// Polling conditions
if (document.querySelector('main.container .cmp-container > .aem-Grid')) {
try {
// Activate test
setTimeout(function () { test.init() }, 1000)
// Success log
console.log('Vertis Digital: EXP-10: Personalization: V: 1:04');
} catch (error) {
// Error log
console.log(`Initialization Error:`, error);
}
} else {
Date.now() < timeInFuture
? setTimeout(loadVariation.bind({}, timeInFuture), 25)
: console.log("loadVariation timed out!");
}
})(Date.now() + 60000);
// End variation JS
return vwo_$('head')[0] && vwo_$('head')[0].lastChild; } catch(e) {} })("HEAD")}}, C_722219_980_1_2_0:{ fn:function(log,nonce=''){return (function(x) {
try{
var _vwo_sel = vwo_$("`);
!vwo_$("head").find('#1737431535466').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)}
try{}catch(e) {console.error(e)}
try{const inputField=document.querySelectorAll(".cmp-input__inputfield"),notificationDiv=document.querySelector(".education-message-notification");var spanElement=document.querySelector(".cmp-notification__icon.cmp-notification__icon--image"),childElement=spanElement.querySelector("img");const slideAdd=document.querySelector(".vwo-slider");function updateClassC(e){console.log("NEWVALUE",e);const t=document.querySelector(".cmp-notification__text .cmp-notification__textcon");t&&("4,000"===e?(notificationDiv.classList.remove("hidden"),t.textContent="For $4,000 you can hire a trained domestic helper for caregiving and pay for rehabilitation and medical supply expenses.",childElement.src="/content/dam/gel-orion/pre-login-agency/sg/en/common-images/icons/icon-milestone-heart.png"):"4,800"===e?(notificationDiv.classList.remove("hidden"),t.textContent="$4,800 can bring you care by a loved one as well as rehabilitation and medical supplies.",childElement.src="/content/dam/gel-orion/pre-login-agency/sg/en/common-images/icons/icon-milestone-successful.png"):notificationDiv.classList.add("hidden"))}function sendValue(e){window.VWO=window.VWO||[],VWO.event=VWO.event||function(){VWO.push(["event"].concat([].slice.call(arguments)))},VWO.event("gcsSelectedRevenueAmount",{container5D41476F83DivAemCmpForm:e,gcsSlideValue2:e})}slideAdd.classList.add("slider-icons-wrapper"),inputField.forEach(e=>{const t=e.querySelector(".modelValue");if(t){const e=()=>{console.log("Current value:",t.textContent),updateClassC(t.textContent.trim()),sendValue(t.textContent.trim())};e();new MutationObserver(()=>{e()}).observe(t,{attributes:!0,characterData:!0,childList:!0,subtree:!0,attributeOldValue:!0,characterDataOldValue:!0})}});}catch(e) {console.error(e)}
return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_763_1_2_0:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x);
/*vwo_debug log("remove",".cmp-marquee-promotion"); vwo_debug*/(el=vwo_$(".cmp-marquee-promotion")).vwoCss({display:"none !important"});})(".cmp-marquee-promotion")}}, ct_969ce375f56191050c360e633277bd5a:{ fn:function(executeTrigger, vwo_$, config) {
(function() {
if (!config || typeof config !== "object") {
return;
}
if (window.vwo_$(config.sel).length > 0) {
return executeTrigger();
}
window.VWO._.phoenixMT.once("vwo_mutObs." + config.triggerName, () => {
if (window.vwo_$(config.sel).length > 0) {
executeTrigger();
}
});
})()
}
}, ct_5215ff5c22dc94f8ba11d10604b76f9d:{ fn:function(executeTrigger, vwo_$, config) {
(function() {
if (!config || typeof config !== "object") {
return;
}
if (window.vwo_$(config.sel).length > 0) {
return executeTrigger();
}
window.VWO._.phoenixMT.once("vwo_mutObs." + config.triggerName, () => {
if (window.vwo_$(config.sel).length > 0) {
executeTrigger();
}
});
})()
}
}, C_722219_1021_1_2_0:{ fn:function(){return (function(x) { try{
var _vwo_sel = vwo_$("");
!vwo_$("head").find("#1737521679156").length && vwo_$('head').append(_vwo_sel);
// Start variation JS
void (function loadVariation(timeInFuture) {
// Main Test object
const test = {
// Some test specific global letiables
id: "MT-02",
// Test init
init: function () {
// Add a test specific classname to the body element
document.body.classList.add(test.id);
// Below function calls order is important
test.mainJS();
},
// Main JS
mainJS: function () {
// ----- Personalization config -----
const productsViewedMaxItems = 3;
const mainTitle = "Your recent visits";
const learnMoreCTA = "Learn More";
const buyNowCTA = "Buy Now";
const talkToUsCTA = "Talk To Us";
// GA tracking
var gaEventLabelPrefix = "[vwo_ce_rtg] your recent visits";
// SVG Icons
const healthInsuranceIcon = `
`;
const lifeInsuranceIcon = `
`;
const travelInsuranceIcon = `
`;
const homeInsuranceIcon = `
`;
const personalAccidentInsuranceIcon = `
`;
const retirementIncomeIcon = `
`;
const carInsuranceIcon = `
`;
const maidInsuranceIcon = `
`;
const wealthInsurenceIcon = `
`;
// list of products and their information
const productMasterInfos = [
{
name: "GREAT CareShield",
productName: "GREAT CareShield",
className: "GREAT-CareShield",
learnMoreUrl: "/sg/en/personal-insurance/our-products/health-insurance/great-careshield.html",
buyOrTalkToUsLink: "//buy.greateasternlife.com/sg/en/health-insurance/220402/get-quotation.html?template=post",
productDescription: "Get up to 40% off your first-year premium and 20% off subsequent years’ premiums. T&Cs apply.",
productIcon: healthInsuranceIcon,
buttonsTitles: [learnMoreCTA, buyNowCTA]
},
{
name: "GoGreat Term Life",
productName: "GoGreat Term Life",
className: "GoGreat-Term-Life",
learnMoreUrl: "/sg/en/personal-insurance/our-products/life-insurance/gogreat-term-life.html",
buyOrTalkToUsLink: "//buy.greateasternlife.com/sg/en/life-insurance/210301/get-quotation.html?template=post",
productDescription: "Boost up to S$300,000 on your coverage from a yearly premium of just S$77.15",
productIcon: lifeInsuranceIcon,
buttonsTitles: [learnMoreCTA, buyNowCTA]
},
{
name: "TravelSmart Premier",
productName: "TravelSmart Premier",
className: "TravelSmart-Premier",
learnMoreUrl: "/sg/en/personal-insurance/our-products/travel-insurance/travelsmart-premier.html",
buyOrTalkToUsLink: "//store.greateasterngeneral.com/SG/AgencySales/D/B2C/P:TSP",
productDescription: "Enjoy 45% off Classic and Elite single trip plans. T&Cs apply.",
productIcon: travelInsuranceIcon,
buttonsTitles: [learnMoreCTA, buyNowCTA]
},
{
name: "GREAT Protector Active",
productName: "GREAT Protector Active",
className: "GREAT-Protector-Active",
learnMoreUrl: "/sg/en/personal-insurance/our-products/personal-accident-insurance/great-protector-active.html",
buyOrTalkToUsLink: "//buy.greateasternlife.com/sg/en/personal-accident-insurance/200201/get-quotation.html?template=post",
productDescription: "Get up to S$3 million in coverage against accidents",
productIcon: personalAccidentInsuranceIcon,
buttonsTitles: [learnMoreCTA, buyNowCTA]
},
{
name: "Essential Protector Plus",
productName: "Essential Protector Plus",
className: "Essential-Protector-Plus",
learnMoreUrl: "/sg/en/personal-insurance/our-products/personal-accident-insurance/essential-protector-plus.html",
buyOrTalkToUsLink: "//buy.greateasternlife.com/sg/en/personal-accident-insurance/200204/get-quotation.html?template=post",
productDescription: "Peace of mind with global protection against accidents",
productIcon: personalAccidentInsuranceIcon,
buttonsTitles: [learnMoreCTA, buyNowCTA]
},
{
name: "GREAT Junior Protector",
productName: "GREAT Junior Protector",
className: "GREAT-Junior-Protector",
learnMoreUrl: "/sg/en/personal-insurance/our-products/personal-accident-insurance/great-junior-protector.html",
buyOrTalkToUsLink: "//buy.greateasternlife.com/sg/en/personal-accident-insurance/200202/get-quotation.html?template=post",
productDescription: "Safeguard your child against accidents wherever they are",
productIcon: personalAccidentInsuranceIcon,
buttonsTitles: [learnMoreCTA, buyNowCTA]
},
{
name: "Drive and Save Plus",
productName: "Drive and Save Plus",
className: "Drive-and-Save-Plus",
learnMoreUrl: "/sg/en/personal-insurance/our-products/car-insurance/drive-and-save-plus.html",
buyOrTalkToUsLink: "//store.greateasterngeneral.com/SG/AgencySales/D/B2C/P:VDP",
productDescription: "Safeguard your drive with enhanced protection",
productIcon: carInsuranceIcon,
buttonsTitles: [learnMoreCTA, buyNowCTA]
},
{
name: "GREAT Maid Protect",
productName: "GREAT Maid Protect",
className: "GREAT-Maid-Protect",
learnMoreUrl: "/sg/en/personal-insurance/our-products/maid-insurance/great-maid-protect.html",
buyOrTalkToUsLink: "//store.greateasterngeneral.com/SG/AgencySales/D/B2C/P:AGM",
productDescription: "Enjoy 20% off all plan types. T&Cs apply.",
productIcon: maidInsuranceIcon,
buttonsTitles: [learnMoreCTA, buyNowCTA]
},
{
name: "GREAT Critical Cover Series",
productName: "GREAT Critical Cover Series",
className: "GREAT-Critical-Cover-Series",
learnMoreUrl: "/sg/en/personal-insurance/our-products/health-insurance/great-critical-cover.html",
buyOrTalkToUsLink: "//buy.greateasternlife.com/sg/en/life-insurance/220303/get-quotation.html?template=post",
productDescription: "Critical illness coverage that continues over and over again",
productIcon: healthInsuranceIcon,
buttonsTitles: [learnMoreCTA, buyNowCTA]
},
{
name: "GREAT Prime Rewards",
productName: "GREAT Prime Rewards",
className: "GREAT-Prime-Rewards",
learnMoreUrl: "/sg/en/personal-insurance/our-products/retirement-income/great-prime-rewards.html",
buyOrTalkToUsLink: "//buy.greateasternlife.com/sg/en/life-insurance/220105/get-quotation.html",
productDescription: "Live out your retirement dream with a guaranteed income stream",
productIcon: retirementIncomeIcon,
buttonsTitles: [learnMoreCTA, buyNowCTA]
},
{
name: "GREAT SP",
productName: "GREAT SP",
className: "GREAT-SP",
learnMoreUrl: "/sg/en/personal-insurance/our-products/wealth-accumulation/great-sp.html",
buyOrTalkToUsLink: "//buy.greateasternlife.com/sg/en/life-insurance/240101/get-quotation.html?template=post",
productDescription: "Guaranteed returns of 2.30% p.a. upon maturity. T&Cs apply.",
productIcon: wealthInsurenceIcon,
buttonsTitles: [learnMoreCTA, buyNowCTA]
},
{
name: "GREAT Golden Protector",
productName: "GREAT Golden Protector",
className: "GREAT-Golden-Protector",
learnMoreUrl: "/sg/en/personal-insurance/our-products/personal-accident-insurance/great-golden-protector.html",
buyOrTalkToUsLink: "//buy.greateasternlife.com/sg/en/personal-accident-insurance/200203/get-quotation.html?template=post",
productDescription: "Protect your golden years with financial assurance",
productIcon: personalAccidentInsuranceIcon,
buttonsTitles: [learnMoreCTA, buyNowCTA]
},
{
name: "GREAT Term",
productName: "GREAT Term",
className: "GREAT-Term",
learnMoreUrl: "/sg/en/personal-insurance/our-products/life-insurance/great-term.html",
buyOrTalkToUsLink: "/sg/en/personal-insurance/our-products/life-insurance/great-term.html#rcbform",
productDescription: "Secure your future with a customisable, affordable term plan",
productIcon: lifeInsuranceIcon,
buttonsTitles: [learnMoreCTA, talkToUsCTA]
},
{
name: "GREAT EV Protect",
productName: "GREAT EV Protect",
className: "GREAT-EV-Protect",
learnMoreUrl: "/sg/en/personal-insurance/our-products/car-insurance/great-ev-protect.html",
buyOrTalkToUsLink: "//store.greateasterngeneral.com/SG/AgencySales/D/B2C/P:VEV",
productDescription: "Protect your drive with comprehensive coverage for your electric vehicle",
productIcon: carInsuranceIcon,
buttonsTitles: [learnMoreCTA, buyNowCTA]
},
{
name: "GREAT Hospital Cash ",
productName: "GREAT Hospital Cash ",
className: "GREAT-Hospital-Cash ",
learnMoreUrl: "/sg/en/personal-insurance/our-products/health-insurance/great-hospital-cash.html",
buyOrTalkToUsLink: "//buy.greateasternlife.com/sg/en/health-insurance/230401/get-quotation.html",
productDescription: "Daily Cash Benefit upon hospitalisation",
productIcon: healthInsuranceIcon,
buttonsTitles: [learnMoreCTA, buyNowCTA]
},
{
name: "PA Supreme",
productName: "PA Supreme",
className: "PA-Supreme",
learnMoreUrl: "/sg/en/personal-insurance/our-products/personal-accident-insurance/pa-supreme.html",
buyOrTalkToUsLink: "//www.greateasternlife.com/psu",
productDescription: "Enjoy 25% off all plan types. T&Cs apply.",
productIcon: personalAccidentInsuranceIcon,
buttonsTitles: [learnMoreCTA, buyNowCTA]
},
{
name: "GREAT Home Protect",
productName: "GREAT Home Protect",
className: "GREAT-Home-Protect",
learnMoreUrl: "/sg/en/personal-insurance/our-products/home-insurance/great-home-protect.html",
buyOrTalkToUsLink: "//store.greateasterngeneral.com/SG/AgencySales/D/B2C/P:HHP",
productDescription: "Enjoy 20% off your home insurance! T&Cs apply.",
productIcon: homeInsuranceIcon,
buttonsTitles: [learnMoreCTA, buyNowCTA]
},
{
name: "GREAT SupremeHealth + GREAT TotalCare",
productName: "GREAT SupremeHealth",
className: "GREAT-SupremeHealth",
learnMoreUrl: "/sg/en/personal-insurance/our-products/health-insurance/great-supremehealth.html",
buyOrTalkToUsLink: "/sg/en/personal-insurance/our-products/health-insurance/great-supremehealth.html#rcbform",
productDescription: "Cover up to 95% of your total hospitalisation bill",
productIcon: healthInsuranceIcon,
buttonsTitles: [learnMoreCTA, talkToUsCTA]
},
{
name: "GREAT Wealth Advantage 4",
productName: "GREAT Wealth Advantage",
className: "GREAT-Wealth-Advantage",
learnMoreUrl: "/sg/en/personal-insurance/our-products/wealth-accumulation/great-wealth-advantage.html",
buyOrTalkToUsLink: "/sg/en/personal-insurance/our-products/wealth-accumulation/great-wealth-advantage.html#rcbform",
productDescription: "Power up your investment portfolio on your terms",
productIcon: wealthInsurenceIcon,
buttonsTitles: [learnMoreCTA, talkToUsCTA]
},
{
name: "GREAT Maternity Care 2",
productName: "GREAT Maternity Care",
className: "GREAT-Maternity-Care",
learnMoreUrl: "/sg/en/personal-insurance/our-products/health-insurance/great-maternity-care.html",
buyOrTalkToUsLink: "/sg/en/personal-insurance/our-products/health-insurance/great-maternity-care.html#rcbform",
productDescription: "Comprehensive coverage from as early as 13 weeks into your pregnancy",
productIcon: healthInsuranceIcon,
buttonsTitles: [learnMoreCTA, talkToUsCTA]
},
{
name: "GREAT Flexi Protect Series 3",
productName: "GREAT Flexi Protect Series",
className: "GREAT-Flexi-Protect-Series",
learnMoreUrl: "/sg/en/personal-insurance/our-products/life-insurance/great-flexi-protect-series.html",
buyOrTalkToUsLink: "/sg/en/personal-insurance/our-products/life-insurance/great-flexi-protect-series.html#rcbform",
productDescription: "Secure lifelong multiplied coverage to protect you and your loved ones",
productIcon: lifeInsuranceIcon,
buttonsTitles: [learnMoreCTA, talkToUsCTA]
}
];
// List of RCB products
let productsRCB = [
{ name: "GREAT SupremeHealth + GREAT TotalCare" },
{ name: "GREAT Wealth Advantage 4" },
{ name: "GREAT Maternity Care 2" },
{ name: "GREAT Flexi Protect Series 3" }
];
// Master product names handling
const productNamesMaster = {
"GREAT SP (24-month)": "GREAT SP",
"GREAT Critical Cover: Top 3 CIs": "GREAT Critical Cover Series",
"GREAT Term (Digital)": "GREAT Term",
"GREAT Hospital Cash": "GREAT Hospital Cash "
};
// ----- System config -----
const VIEWED_PRODUCTS_COOKIE = "personalization_products_viewed_all";
const PURCHASED_PRODUCTS_COOKIE = "personalization_products_purchased";
const VIEWED_RCB_COOKIE = "personalization_products_viewed_RCB";
const vwoCtaClassName = "vwo_homepage_recentvisits_cta";
// ----- System config: HTML structure-----
const htmlTitle = `
Make a CareShield or ElderShield disability claim if you're unable to perform a number of activities of daily living (ADL) as specified in your policy contract.
What are the 6 ADLs?
Washing
Dressing
Feeding
Toileting
Walking or moving around
Transferring
Did you know?
You can submit your claims via your Financial Representative, and they can also help follow up on your specific needs.
How to make a CareShield or ElderShield claim
1. Download documents
You will need to submit the following documents for your claim
Document
Purpose
Claimant's Statement
To be completed with details of your claim
Letter of Undertaking and Indemnity
To provide us with consent to release the benefit payment to a third party (family member or caregiver)
In addition to the forms and documents in the previous step, we'll also require you to submit the following documents:
a. Copy of the policyholder's NRIC or passport
b. Copy of the third party's NRIC or passport
c. Copy of all diagnostic reports, such as:
Resting ECGs
Exercise stress tests
Troponin results
Enzymes assays
Isotope studies imaging coronary angiography
Blood tests
Ultrasounds
Biopsies
Histopathology reports
CT scans
Other imaging studies
Laboratory tests results
Detailed Inpatient Discharge Summary
Any other relevant hospital reports
d. Copy of birth certificate or legal adoption papers of your child (applicable only for Dependent Care Benefit)
e. Copy of bank passbook, statement, or e-statement with full name and account number clearly indicated on the same page. All other information may be blanked out (applicable only for homes and institutions)
How to get an Assessor's Statement
To attain an Assessor's Statement, you will need to first be assessed by one of our appointed assessors on your severe disability.
On your appointment day, prepare a fee of SGD100 for the assessment, and bring along all of the following:
Claimant's Statement
Letter of Undertaking and Indemnity
Clinical Abstract Application
Any available medical reports or discharge summary
Your current medication (if any)
If you are unable to travel to the assessor's clinic, you may make arrangements with the assessor nearest your location for a home-based assessment. Note that the home-based assessment will cost SGD250.
The Assessor's Statement and all documents will be sent directly to us after your appointment is completed.
3. Submission
By email
Submit the completed forms and supporting documents to us via email.
You can also visit us at our customer service centre, or send all forms and documents and supporting documents to us by post.
Attention to: Life Claims Department The Great Eastern Life Assurance Company Limited
1 Pickering Street
Great Eastern Centre #01-01
Singapore 048659
Payout process
Once we receive the documents, we will proceed to process the claim.
You will receive payouts monthly for as long as you are unable to perform the applicable number of ADLs. Payout will be made to you by the method you've indicated in your claim form.
The amount is dependent on your chosen monthly benefit when you purchased the policy, and whether you had purchased GREAT CareShield Advantage or GREAT CareShield Enhanced.
Note that you will still be required to pay for your premiums until you being receiving the payouts. Any premiums paid after this point will then be refunded.
Questions and Answers
GREAT CareShield Advantage and GREAT CareShield Enhanced provides worldwide coverage. Follow these steps to file your claim if you are overseas:
a. Obtain the claimant's statement, or contact the our customer service centre to request for a copy to be mailed to you.
b. Submit the completed statement, together with any available medical reports (from registered practitioners in Western medicine)
Provide the name, address and clinic of the doctor certifying your medical condition.
c. Upon receipt of the information, we will send the Assessor’s Statement to you doctor, who will assess the severity of your disability and send the completed statement back to us.
d. We will assess the claim and, where necessary, request your disability to be assessed by a specialist in your country of residence, to be appointed by us.
For claims made from overseas, we shall make every reasonable effort to assess the disability and make claim payments.
Under these circumstances, we may pay out the benefit in a single payment reflecting the present value of future benefit payments.
Yes, you will need to go for another medical assessment.
Yes, you will be be fully reimbursed for the fees upon admission of the claim.
Yes, assessors will take into consideration if an insured is suspected to be cognitively impaired.
Not all GPs would have undergone the rigorous training programme to learn how to assess disability. You will still be required to undergo disability assessment by an accredited assessor.
If you are staying in a nursing home, you may approach your nursing home for assistance to submit the Resident Assessment Form in place of the severe disability assessment.
Yes, you may be required to go to our panel assessor for periodic examination. We shall keep you informed when such requirements arise.
We will bear all charges for the reviews.
No. If we have assessed during the periodic review that your disability has worsened to the inability to perform 2 or more ADLs, the monthly payout from your plan will start 90 days from the date your disability is confirmed and certified to have worsened.
No, you will only be required to complete a single claim form and assessment for your both policies.