");vwo_$('head').append(_vwo_sel);return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("HEAD")}}, R_722219_759_1_2_0:{ fn:function(log,nonce=''){return (function(x) { if(!vwo_$.fn.vwoRevertHtml){ return; }; var ctx=vwo_$(x),el; /*vwo_debug log("Revert","content",""); vwo_debug*/; el=vwo_$('[vwo-element-id="1733126851444"]'); el.revertContentOp().remove();})("HEAD")}}, C_722219_759_1_2_1:{ fn:function(log,nonce=''){return (function(x) {})(".leo-col-6")}}, R_722219_759_1_2_1:{ fn:function(log,nonce=''){return (function(x) { if(!vwo_$.fn.vwoRevertHtml){ return; }; })(".leo-col-6")}}, ct759_16048c03a9b024888f00d49e44c4bca2:{ fn:function(executeTrigger, vwo_$) { (//Visited PDP audience trigger for VWO function() { // ---------------------------------- // ----- Personalization config ----- // ---------------------------------- var productsViewedMaxItems = 3; // Max number of recommended products /* Product master infos: - name = Master product name. Ensure that this matches the master mapping (eg. data layer values) */ var productsViewedCTAArr = [ { "name": "GREAT CareShield" }, { "name": "GoGreat Term Life" }, { "name": "TravelSmart Premier" }, { "name": "HomeGR8 Plus" }, { "name": "GREAT Protector Active" }, { "name": "Essential Protector Plus" }, { "name": "GREAT Junior Protector" }, { "name": "Drive and Save Plus" }, { "name": "GREAT Maid Protect" }, { "name": "GREAT Critical Cover Series" }, { "name": "GREAT Prime Rewards" }, { "name": "GREAT SP" }, { "name": "GREAT Golden Protector" }, { "name": "GREAT Term" }, { "name": "GREAT EV Protect" }, { "name": "GREAT Hospital Cash " }, { "name": "GREAT Cancer Guard" }, { "name": "PA Supreme" }, { "name": "GREAT Home Protect" } ]; // ----------------------------------------- // ----- System config (Do not change) ----- // ----------------------------------------- var productsViewedCookieName = "personalization_products_viewed"; var productsPurchasedCookieName = "personalization_products_purchased"; // ------------------------------- // ----- Get cookie function ----- // ------------------------------- function getCookie(cname) { var name = cname + "="; var decodedCookie = decodeURIComponent(document.cookie); var ca = decodedCookie.split(';'); for (var i = 0; i < ca.length; i++) { var c = ca[i]; while (c.charAt(0) == ' ') { c = c.substring(1); } if (c.indexOf(name) == 0) { return c.substring(name.length, c.length); } } return ""; } // ------------------------------------------------ // ----- Check last viewed/purchased products ----- // ------------------------------------------------ // Read cookies var productsViewedArr = []; // Default empty array var productsViewedStr = getCookie(productsViewedCookieName); var productsPurchasedArr = []; // Default empty array var productsPurchasedStr = getCookie(productsPurchasedCookieName); // If cookies are not empty, read the unstringified values if(productsViewedStr != "") {productsViewedArr = JSON.parse(productsViewedStr);} if(productsPurchasedStr != "") {productsPurchasedArr = JSON.parse(productsPurchasedStr);} // Remove purchased products from last viewed products productsViewedArr = productsViewedArr.filter(function (a) { return typeof productsPurchasedArr.find(function (b) { return b.name == a.name; }) == "undefined"; }); // Cross check master product infos productsViewedArr = productsViewedArr.filter(function (a) { return typeof productsViewedCTAArr.find(function (b) { return b.name == a.name; }) != "undefined"; }); // Reduce to the latest X array items productsViewedArr = productsViewedArr.slice(-productsViewedMaxItems); // If there are last products viewed, run VWO campaign if(productsViewedArr.length) { executeTrigger(); } })() }}, 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_963_1_2_0:{ fn:function(log,nonce=''){return (function(x) {;})("HEAD")}}, R_722219_963_1_2_0:{ fn:function(log,nonce=''){return (function(x) { if(!vwo_$.fn.vwoRevertHtml){ return; }; var ctx=vwo_$(x),el; /*vwo_debug log("Revert","content",""); vwo_debug*/; el=vwo_$('[vwo-element-id="1731642908827"]'); el.revertContentOp().remove();})("HEAD")}}, C_722219_963_1_2_1:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1731642909024').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{document.documentElement.classList.contains("vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98");}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_963_1_2_2:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1731642909026').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_a192231b2113d157699dea212968af5a")){var currentURL=window.location.href.split("?").pop(),clickURL="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200201/get-quotation.html?campCode=C8DISC&template=post";$("#gpabuynow").on("click",(function(){window.location.href=clickURL+"&"+currentURL}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_963_1_2_3:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1731642909027').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_117ea7d82ad4208c01b4c082cbb1dcbe")){var currentURL=window.location.href.split("?").pop(),clickURL="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200202/get-quotation.html?template=post&campCode=C8DISC";$("#gjpbuynow").on("click",(function(){window.location.href=clickURL+"&"+currentURL}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_963_1_2_4:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1731642909028').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_529d06731882814587edcdb7fcb47719")){var currentURL=window.location.href.split("?").pop(),clickURL="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200203/get-quotation.html?template=post&campCode=C8DISC";$("#ggpbuynow").on("click",(function(){window.location.href=clickURL+"&"+currentURL}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_963_1_2_5:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1731642909029').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_baf0439c6ee7eeb30695dbb63777c8a1")){var currentURL=window.location.href.split("?").pop(),clickURL="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200204/get-quotation.html?template=post&campCode=C8DISC";$("#eppbuynow").on("click",(function(){window.location.href=clickURL+"&"+currentURL}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_963_1_2_6:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1731642909030').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98")){var currentURL1=window.location.href.split("?").pop(),clickURL1="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200201/get-quotation.html?template=post&campCode=C8DISC";$("#gpabuynow").on("click",(function(){window.location.href=clickURL1+"&"+currentURL1}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_963_1_2_7:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1731642909030').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98")){var currentURL2=window.location.href.split("?").pop(),clickURL2="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200202/get-quotation.html?template=post&campCode=C8DISC";$("#gjpbuynow").on("click",(function(){window.location.href=clickURL2+"&"+currentURL2}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_963_1_2_8:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1731642909031').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98")){var currentURL3=window.location.href.split("?").pop(),clickURL3="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200203/get-quotation.html?template=post&campCode=C8DISC";$("#ggpbuynow").on("click",(function(){window.location.href=clickURL3+"&"+currentURL3}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_963_1_2_9:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1731642909032').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98")){var currentURL4=window.location.href.split("?").pop(),clickURL4="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200204/get-quotation.html?template=post&campCode=C8DISC";$("#eppbuynow").on("click",(function(){window.location.href=clickURL4+"&"+currentURL4}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_963_1_2_10:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1731642909033').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_a192231b2113d157699dea212968af5a")){var currentURL2=window.location.href.split("?").pop(),clickURL2="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200201/get-quotation.html?campCode=C8DISC&template=post";$("#gpabuynow2").on("click",(function(){window.location.href=clickURL2+"&"+currentURL2}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_963_1_2_11:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1731642909033').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_baf0439c6ee7eeb30695dbb63777c8a1")){var currentURL2=window.location.href.split("?").pop(),clickURL2="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200204/get-quotation.html?campCode=C8DISC&template=post";$("#eppbuynow2").on("click",(function(){window.location.href=clickURL2+"&"+currentURL2}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_963_1_2_12:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1731642909034').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_529d06731882814587edcdb7fcb47719")){var currentURL2=window.location.href.split("?").pop(),clickURL2="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200203/get-quotation.html?template=post&campCode=C8DISC";$("#ggpbuynow2").on("click",(function(){window.location.href=clickURL2+"&"+currentURL2}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_963_1_2_13:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1731642909035').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_117ea7d82ad4208c01b4c082cbb1dcbe")){var currentURL2=window.location.href.split("?").pop(),clickURL2="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200202/get-quotation.html?campCode=C8DISC&template=post";$("#gjpbuynow2").on("click",(function(){window.location.href=clickURL2+"&"+currentURL2}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_963_1_2_14:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1731642909036').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_a192231b2113d157699dea212968af5a")){var currentURL3=window.location.href.split("?").pop(),clickURL3="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200201/get-quotation.html?campCode=C8DISC&template=post";$("#gpabuynow3").on("click",(function(){window.location.href=clickURL3+"&"+currentURL3}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_963_1_2_15:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1731642909036').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_117ea7d82ad4208c01b4c082cbb1dcbe")){var currentURL3=window.location.href.split("?").pop(),clickURL3="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200202/get-quotation.html?template=post&campCode=C8DISC";$("#gjpbuynow3").on("click",(function(){window.location.href=clickURL3+"&"+currentURL3}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_1027_1_2_0:{ fn:function(){return (function(x) { try{ var _vwo_sel = vwo_$(""); !vwo_$("head").find("#1739333374834").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-V1", // 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/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} - static`; let eventJourneyCTA = `vworq-hh-3-${quizName}-static`; 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 (`
${className}

Medical Coverage

${header}

${quizDate}

`) }; // create quiz icon markup let quizIconHtml = `
${newCrossIcon}
${quizLogo}
`; // create quiz card markup const QuizCards = collections.map(({ className, coverImage, header, quizDate }) => createQuizCard(className, coverImage, header, quizDate) ).join(''); // create quiz cross icon markup const quizCrossButton = ` `; // function to create inner content for modal level two let modalTwoInnerContent = (className, title, promoCopy) => (` `); //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} ${className}
${quizCrossButton} ${modalInnerHtml}
`); // markup for quiz modal level one let quizModalLV1 = `
${quizCrossButton}
`; // function to create the initial modal markup let modalMarkup = () => (` `); /* ---- 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")}}, 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 = ` icons/prod cat/hospital/clr-hospitalisation `; const lifeInsuranceIcon = ` icons/prod cat/whole life/clr-whole-life `; const travelInsuranceIcon = ` icons/prod cat/lifestyle/clr-travel `; const homeInsuranceIcon = ` icons/prod cat/lifestyle/clr-house `; const personalAccidentInsuranceIcon = ` icons/prod cat/PA/clr-personal-assident `; const retirementIncomeIcon = ` icons/prod cat/savings + retirement/clr-retirement `; const carInsuranceIcon = ` icons/prod cat/lifestyle/clr-motor `; const maidInsuranceIcon = ` icons/prod cat/lifestyle/clr-maid `; const wealthInsurenceIcon = ` icons/prod cat/investment/clr-wealth `; // 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 = `

${mainTitle}

`; const htmlCard = (productName, className, productIcon, productUrl, productBuyUrl, productDescription, buttonsTitles) => (`
${productIcon}
${productName}

${productDescription}

`); // Get cookie function function getCookie(cname) { var name = cname + "="; var decodedCookie = decodeURIComponent(document.cookie); var ca = decodedCookie.split(';'); for (var i = 0; i < ca.length; i++) { var c = ca[i].trim(); if (c.indexOf(name) === 0) { return c.substring(name.length, c.length) } } return ""; } // function to trigger GA events function gaEventTrigger(eventAction, eventLabel, eventSubCategory = '', eventJourneyCTA = '') { dataLayer.push({ event: "vwoEvent", eventDetails: { category: "[vwo] thumbnail", action: eventAction, label: eventLabel }, ...(eventSubCategory ? { contentSubcategory: eventSubCategory } : {}), ...(eventAction === 'click' && eventJourneyCTA ? { journeyCta: eventJourneyCTA } : {}) }); }; // Read cookies const productsViewedStr = getCookie(VIEWED_PRODUCTS_COOKIE); const productsPurchasedStr = getCookie(PURCHASED_PRODUCTS_COOKIE); const productsViewedRCBStr = getCookie(VIEWED_RCB_COOKIE); // Parse cookies if they are not empty, otherwise default to an empty array let productsViewedArr = productsViewedStr ? JSON.parse(productsViewedStr) : []; let productsPurchasedArr = productsPurchasedStr ? JSON.parse(productsPurchasedStr) : []; let productsViewedRCBArr = productsViewedRCBStr ? JSON.parse(productsViewedRCBStr) : []; // Remove purchased products from last viewed products productsViewedArr = productsViewedArr.filter( viewedProduct => !productsPurchasedArr.some(purchasedProduct => purchasedProduct.name === viewedProduct.name) ); //console.log('productsViewedArr01:', productsViewedArr); // Filter out products that have already been viewed from the RCB list productsRCB = productsRCB.filter( rcbProduct => !productsViewedRCBArr.some(viewedRCBProduct => viewedRCBProduct.name === rcbProduct.name) ); //console.log('productsViewedArr02:', productsViewedArr); // Remove non viewed RCB products from the viewed products array productsViewedArr = productsViewedArr.filter( viewedProduct => !productsRCB.some(rcbProduct => rcbProduct.name === viewedProduct.name) ); //console.log('productsViewedArr03:', productsViewedArr); // Update product names using productNamesMaster productsViewedArr = productsViewedArr.map(viewedProduct => { const updatedName = productNamesMaster[viewedProduct.name] || viewedProduct.name; return { ...viewedProduct, name: updatedName }; }); //console.log('productsViewedArr04:', productsViewedArr); // Remove duplicate products from product list productsViewedArr = productsViewedArr.filter((item, index, array) => array.findLastIndex(obj => obj.name === item.name) === index ); //console.log('productsViewedArr05:', productsViewedArr); // Cross check master product infos productsViewedArr = productsViewedArr .filter( a => productMasterInfos.some(b => b.name === a.name) ) .map( a => { // Map image URL & CTA links const masterInfo = productMasterInfos.find(b => b.name === a.name); return { ...a, name: masterInfo.name, productName: masterInfo.productName, className: masterInfo.className, productDescription: masterInfo.productDescription, learnMoreUrl: masterInfo.learnMoreUrl, buyOrTalkToUsLink: masterInfo.buyOrTalkToUsLink, productIcon: masterInfo.productIcon, buttonsTitles: masterInfo.buttonsTitles }; } ); // Reduce to the latest X array items productsViewedArr = productsViewedArr.slice(-productsViewedMaxItems); // If no last products viewed, exit immediately if (!productsViewedArr.length) { return; } // Sort by the latest products viewed productsViewedArr.reverse(); //console.log('productsViewedArr:', productsViewedArr); // ----- Add section: Your recent visits ----- // create card html let htmlCardSection = ``; // Loop through last X products viewed and construct the cards HTML productsViewedArr.forEach(product => { const { productName, className, learnMoreUrl, buyOrTalkToUsLink, productDescription, productIcon, buttonsTitles } = product; let htmlTemp = htmlCard(productName, className, productIcon, learnMoreUrl, buyOrTalkToUsLink, productDescription, buttonsTitles); htmlCardSection += htmlTemp; // ----- GA tracking - Impression (individual card) ----- let eventLabel = (`${gaEventLabelPrefix} - card - ${productName} - ${productDescription}`).toLowerCase(); let eventSubCategory = productName.toLowerCase() gaEventTrigger("impression", eventLabel, eventSubCategory); }) // main markup let mainMarkup = `
${htmlTitle} ${htmlCardSection}
`; // Add the new row before the current 1st row if (!document.querySelector('.recent-visit-section-container')) { document.querySelectorAll(".columnControl.aem-GridColumn.aem-GridColumn--default--12")[1].insertAdjacentHTML("beforebegin", mainMarkup); // ----- GA tracking - Impression (whole section) ----- let eventLabel = (`${gaEventLabelPrefix} - section`).toLowerCase(); gaEventTrigger("impression", eventLabel); } // click handler function function clickHandler(event) { const { target } = event; //console.log('target: ', target); if (target.closest('a.recent-card-button[title="Learn More"]')) { // ----- GA tracking - Click (learn more CTA) ----- let learnMore = target.closest('a.recent-card-button[title="Learn More"]'); let productName = learnMore?.getAttribute('product-name')?.trim().toLowerCase(); let productDescription = learnMore?.getAttribute('product-description'); if (productName && productDescription) { //alert('button click - learn more'); let label = (`${gaEventLabelPrefix} - card - ${productName} - ${productDescription} - learn more`).toLowerCase(); let eventJourneyCTA = (`vworv-${productName}-learn`).toLowerCase() gaEventTrigger('click', label, productName, eventJourneyCTA); } } if (target.closest('a.recent-card-button[title="Buy Now"]')) { // ----- GA tracking - Click (buy now CTA) ----- let learnMore = target.closest('a.recent-card-button[title="Buy Now"]'); let productName = learnMore?.getAttribute('product-name')?.trim().toLowerCase(); let productDescription = learnMore?.getAttribute('product-description'); if (productName && productDescription) { //alert('button click - buy now'); let label = (`${gaEventLabelPrefix} - card - ${productName} - ${productDescription} - buy now`).toLowerCase(); let eventJourneyCTA = (`vworv-${productName}-buy`).toLowerCase(); gaEventTrigger('click', label, productName, eventJourneyCTA); } } if (target.closest('a.recent-card-button[title="Talk To Us"]')) { // ----- GA tracking - Click (talk to CTA) ----- let learnMore = target.closest('a.recent-card-button[title="Talk To Us"]'); let productName = learnMore?.getAttribute('product-name')?.trim().toLowerCase(); let productDescription = learnMore?.getAttribute('product-description'); if (productName && productDescription) { //alert('button click - Talk To Us'); let label = (`${gaEventLabelPrefix} - card - ${productName} - ${productDescription} - Talk To Us`).toLowerCase(); let eventJourneyCTA = (`vworv-${productName}-talk`).toLowerCase(); gaEventTrigger('click', label, productName, eventJourneyCTA); } } } document.body.addEventListener('click', clickHandler) }, }; // Return if the test ran already! if (document.querySelector(`.${test.id}`)) return; // Polling conditions if ( document.querySelectorAll(".cmp-container .columnControl.aem-GridColumn").length > 4 && document.querySelectorAll('.leo-card .leo-icon svg[width="16px"]').length > 6 && document.querySelector(".promo-link.leo-col-4") ) { try { // Activate test setTimeout(test.init(), 1000) //test.init(); // Success log //console.log('Vertis Digital: MT-02: V: 1:08'); } 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_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 (`
${className}

Medical Coverage

${header}

${quizDate}

`) }; // create quiz icon markup let quizIconHtml = `
${newCrossIcon}
Quiz Icon
`; // create quiz card markup const QuizCards = collections.map(({ className, coverImage, header, quizDate }) => createQuizCard(className, coverImage, header, quizDate) ).join(''); // create quiz cross icon markup const quizCrossButton = ` `; // function to create inner content for modal level two let modalTwoInnerContent = (className, title, promoCopy) => (` `); //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} ${className}
${quizCrossButton} ${modalInnerHtml}
`); // markup for quiz modal level one let quizModalLV1 = `
${quizCrossButton}
`; // function to create the initial modal markup let modalMarkup = () => (` `); /* ---- 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_980_1_3_1:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1737431535473').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{/* // Flag to ensure the action happens only once let firstTime = true; function forceClickAndChange() { if (firstTime) { // Simulate a click on the icon-edit element const iconEditButton = document.querySelector('.icon-edit'); if (iconEditButton) { iconEditButton.click(); console.log(iconEditButton); console.log("edit clicked"); } //attempt to change sliderinput value const changeValue = document.getElementById('sliderinput'); if (changeValue) { changeValue.value = 4000; console.log("amount changed v2"); } // Change the value of the modalvalue span const modalValueSpan = document.querySelector(".modelValue"); if (modalValueSpan) { modalValueSpan.textContent = 4000; console.log("amount changed v1"); } // Simulate a click on the icon-check element const iconCheckButton = document.querySelector('.icon-check'); if (iconCheckButton) { iconCheckButton.click(); console.log("edit check clicked"); // Set the flag to false to prevent future executions } firstTime = false; } } // Call the function to initiate the process forceClickAndChange(); */ }catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_965_1_2_0:{ fn:function(log,nonce=''){return (function(x) {;})("HEAD")}}, R_722219_965_1_2_0:{ fn:function(log,nonce=''){return (function(x) { if(!vwo_$.fn.vwoRevertHtml){ return; }; var ctx=vwo_$(x),el; /*vwo_debug log("Revert","content",""); vwo_debug*/; el=vwo_$('[vwo-element-id="1730706741820"]'); el.revertContentOp().remove();})("HEAD")}}, R_722219_1029_1_2_0:{ fn:function(log,nonce=''){return (function(x) { try{ var ctx=vwo_$(x),el; /*vwo_debug log("Revert","content",""); vwo_debug*/; el=vwo_$('[vwo-element-id="1739151347014"]'); el.revertContentOp().remove(); } catch(e) {console.error(e)} try{ var el,ctx=vwo_$(x); /*vwo_debug log("Revert","addElement","body"); vwo_debug*/(el=vwo_$('[vwo-element-id="1739151347015"]')).remove(); } catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("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(); } })() }}, 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")}}, 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_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 = ` Group 22 Copy 12`; const createBanner = (productName) => (`
`); // 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")}}, C_722219_889_1_2_11:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1740149298966').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{vwo_$(".breadcrumb > ul:nth-of-type(1)").vwoCss({display:"none !important"}),vwo_$(".leo-py-md").vwoCss({display:"none !important"}),vwo_$(".main > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(7)").vwoCss({display:"none !important"}),vwo_$(".m-0 > div:nth-of-type(1) > div:nth-of-type(4)").vwoCss({display:"none !important"}),vwo_$(".leo-download-links").vwoCss({display:"none !important"}),vwo_$(".cmp-announcement-widget-xf").vwoCss({display:"none !important"}),vwo_$(".promotion-container").vwoCss({display:"none !important"}),vwo_$(".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)").vwoCss({display:"none !important"}),vwo_$(".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)").vwoCss({display:"none !important"}),vwo_$(".leo-row--gap-xs > div:nth-of-type(3) > 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)").vwoCss({display:"none !important"}),vwo_$(".leo-row--gap-xs > div:nth-of-type(4) > 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(5)").vwoCss({display:"none !important"});}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, R_722219_889_1_2_10:{ fn:function(log,nonce=''){return (function(x) { if(!vwo_$.fn.vwoRevertHtml){ return; }; var el,ctx=vwo_$(x); /*vwo_debug log("Revert","remove",".leo-row--gap-xs > div:nth-of-type(4) > 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(5)"); vwo_debug*/(el=ctx).vwoRevertCss();})(".leo-row--gap-xs > div:nth-of-type(4) > 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(5)")}}, C_722219_889_1_2_10:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x); /*vwo_debug log("remove",".leo-row--gap-xs > div:nth-of-type(4) > 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(5)"); vwo_debug*/(el=ctx).vwoCss({display:"none !important"});})(".leo-row--gap-xs > div:nth-of-type(4) > 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(5)")}}, R_722219_889_1_2_9:{ fn:function(log,nonce=''){return (function(x) { if(!vwo_$.fn.vwoRevertHtml){ return; }; var el,ctx=vwo_$(x); /*vwo_debug log("Revert","remove",".leo-row--gap-xs > div:nth-of-type(3) > 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)"); vwo_debug*/(el=ctx).vwoRevertCss();})(".leo-row--gap-xs > div:nth-of-type(3) > 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)")}}, C_722219_889_1_2_9:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x); /*vwo_debug log("remove",".leo-row--gap-xs > div:nth-of-type(3) > 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)"); vwo_debug*/(el=ctx).vwoCss({display:"none !important"});})(".leo-row--gap-xs > div:nth-of-type(3) > 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)")}}, R_722219_889_1_2_8:{ fn:function(log,nonce=''){return (function(x) { if(!vwo_$.fn.vwoRevertHtml){ return; }; var el,ctx=vwo_$(x); /*vwo_debug log("Revert","remove",".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)"); vwo_debug*/(el=ctx).vwoRevertCss();})(".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)")}}, C_722219_889_1_2_8:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x); /*vwo_debug log("remove",".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)"); vwo_debug*/(el=ctx).vwoCss({display:"none !important"});})(".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)")}}, R_722219_889_1_2_7:{ fn:function(log,nonce=''){return (function(x) { if(!vwo_$.fn.vwoRevertHtml){ return; }; var el,ctx=vwo_$(x); /*vwo_debug log("Revert","remove",".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)"); vwo_debug*/(el=ctx).vwoRevertCss();})(".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)")}}, C_722219_889_1_2_7:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x); /*vwo_debug log("remove",".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)"); vwo_debug*/(el=ctx).vwoCss({display:"none !important"});})(".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)")}}, R_722219_889_1_2_6:{ fn:function(log,nonce=''){return (function(x) { if(!vwo_$.fn.vwoRevertHtml){ return; }; var el,ctx=vwo_$(x); /*vwo_debug log("Revert","remove",".promotion-container"); vwo_debug*/(el=vwo_$(".promotion-container")).vwoRevertCss();})(".leo-py-xl")}}, C_722219_889_1_2_6:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x); /*vwo_debug log("remove",".promotion-container"); vwo_debug*/(el=vwo_$(".promotion-container")).vwoCss({display:"none !important"});})(".leo-py-xl")}}, R_722219_889_1_2_5:{ fn:function(log,nonce=''){return (function(x) { if(!vwo_$.fn.vwoRevertHtml){ return; }; var el,ctx=vwo_$(x); /*vwo_debug log("Revert","remove",".cmp-announcement-widget-xf"); vwo_debug*/(el=vwo_$(".cmp-announcement-widget-xf")).vwoRevertCss();})(".cmp-announcement-widget-xf")}}, C_722219_889_1_2_5:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x); /*vwo_debug log("remove",".cmp-announcement-widget-xf"); vwo_debug*/(el=vwo_$(".cmp-announcement-widget-xf")).vwoCss({display:"none !important"});})(".cmp-announcement-widget-xf")}}, R_722219_889_1_2_4:{ fn:function(log,nonce=''){return (function(x) { if(!vwo_$.fn.vwoRevertHtml){ return; }; var el,ctx=vwo_$(x); /*vwo_debug log("Revert","remove",".leo-download-links"); vwo_debug*/(el=ctx).vwoRevertCss();})(".leo-download-links")}}, C_722219_889_1_2_4:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x); /*vwo_debug log("remove",".leo-download-links"); vwo_debug*/(el=ctx).vwoCss({display:"none !important"});})(".leo-download-links")}}, 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(); } }); })() } }, 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(); } }); })() } }, 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_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")}}, ct_cb1bcdb7d366e6811cef6d964bafcd15:{ 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(); } }); })() } }, ct1029_d707cdd6e057779346d84bdcbcbecb7f:{ fn:function(executeTrigger, vwo_$) { (//Visited PDP audience trigger for VWO function () { if (window.location.pathname !== '/sg/en/personal-insurance.html') return false // ---------------------------------- // ----- Personalization config ----- // ---------------------------------- const productsViewedMaxItems = 1; // Max number of recommended products const productsViewedCTAArr = [ { "name": "GREAT CareShield" }, { "name": "GREAT Critical Cover Series" }, { "name": "GoGreat Term Life" }, { "name": "GREAT Protector Active" }, { "name": "GREAT Junior Protector" }, { "name": "GREAT Prime Rewards" }, { "name": "TravelSmart Premier" }, { "name": "Drive and Save Plus" }, { "name": "GREAT Maid Protect" }, { "name": "GREAT SP" }, { "name": "GREAT SP (24-month)" } ]; // ----------------------------------------- // ----- System config (Do not change) ----- // ----------------------------------------- const productsViewedCookieName = "personalization_products_viewed_all"; const productsPurchasedCookieName = "personalization_products_purchased"; const IMPRESSION_COUNT_COOKIE = "HomeBannerImpressionCount"; const lastPageVisitedCookieName = "lastPageVisited" const cookieExpiryDays = 90; // 3 months // ------------------------------- // ----- Get cookie function ----- // ------------------------------- function getCookie(cname) { const name = cname + "="; const decodedCookie = decodeURIComponent(document.cookie); const cookiesArr = decodedCookie.split(';'); for (let cookie of cookiesArr) { cookie = cookie.trim(); if (cookie.startsWith(name)) { return cookie.substring(name.length, cookie.length); } } return null; } // ------------------------------- // ----- Set cookie function ----- // ------------------------------- function setCookie(cname, cvalue, exdays) { const d = new Date(); d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000)); // Set expiry time const expires = "expires=" + d.toUTCString(); document.cookie = `${cname}=${cvalue};${expires};path=/;samesite=strict;secure`; } // ------------------------------------------------ // ----- Check last viewed/purchased products ----- // ------------------------------------------------ // Read cookies let productsViewedArr = []; // Default empty array let productsViewedStr = getCookie(productsViewedCookieName); let productsPurchasedArr = []; // Default empty array let productsPurchasedStr = getCookie(productsPurchasedCookieName); // If cookies are not empty, read the unstringified values if (productsViewedStr) productsViewedArr = JSON.parse(productsViewedStr); if (productsPurchasedStr) productsPurchasedArr = JSON.parse(productsPurchasedStr); // Remove purchased products from last viewed products productsViewedArr = productsViewedArr.filter( a => !productsPurchasedArr.some(b => b.name === a.name) ); // Cross check master product infos productsViewedArr = productsViewedArr.filter( a => productsViewedCTAArr.some(b => b.name === a.name) ); // Reduce to the latest X array items productsViewedArr = productsViewedArr.slice(-productsViewedMaxItems); let lastPageVisitedInfo = getCookie(lastPageVisitedCookieName); // If there are last products viewed, run VWO campaign if ( productsViewedArr.length && window.location.pathname === '/sg/en/personal-insurance.html' && lastPageVisitedInfo === 'product' ) { let productName = productsViewedArr[0].name; let activate = false; let impressionDataStr = getCookie(IMPRESSION_COUNT_COOKIE); let impressionData = impressionDataStr ? JSON.parse(impressionDataStr) : null; const MAX_IMPRESSIONS = 3; if (!impressionData) { activate = true; setCookie( IMPRESSION_COUNT_COOKIE, JSON.stringify({ product: productName, count: 1 }), cookieExpiryDays ); } else { const { product, count } = impressionData; if (product !== productName) { activate = true; setCookie( IMPRESSION_COUNT_COOKIE, JSON.stringify({ product: productName, count: 1 }), cookieExpiryDays ); } else if (count < MAX_IMPRESSIONS) { activate = true; setCookie( IMPRESSION_COUNT_COOKIE, JSON.stringify({ product: productName, count: count + 1 }), cookieExpiryDays ); } else { activate = false; } } if (activate) { executeTrigger(); //alert('activate') } } })() }}, 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_1029_1_2_0:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1739151347014').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{!function e(t){const r={id:"MT-04",init:function(){document.body.classList.add(r.id),r.mainJS()},mainJS:function(){const e=[{name:"GREAT CareShield",ctaUrl:"/sg/en/personal-insurance/our-products/health-insurance/great-careshield.html",imageUrl_Desktop:"/content/dam/corp-site/great-eastern/sg/gels-ftrp-imc-cm/health-insurance-/great-careshield/gels-pdt-pd-gcs-hmpg-desktop-bn.jpg",imageUrl_Tablet:"/content/dam/corp-site/great-eastern/sg/gels-ftrp-imc-cm/health-insurance-/great-careshield/gels-pdt-pd-gcs-hmpg-tablet-bn.jpg",imageUrl_Mobile:"/content/dam/corp-site/great-eastern/sg/gels-ftrp-imc-cm/health-insurance-/great-careshield/gels-pdt-pd-gcs-hmpg-mobile-bn.jpg",blurbText:"Get up to 40% off your first-year premium and 20% off subsequent years’ premiums. T&Cs apply.",ctaText:"Buy now"},{name:"GREAT Critical Cover Series",ctaUrl:"/sg/en/personal-insurance/our-products/health-insurance/great-critical-cover.html",imageUrl_Desktop:"/content/dam/corp-site/great-eastern/sg/gels-ftrp-imc-cm/health-insurance-/great-critical-cover/gels-pdt-pd-gcc-hmpg-desktop-bn.jpg",imageUrl_Tablet:"/content/dam/corp-site/great-eastern/sg/gels-ftrp-imc-cm/health-insurance-/great-critical-cover/gels-pdt-pd-gcc-hmpg-tablet-bn.jpg",imageUrl_Mobile:"/content/dam/corp-site/great-eastern/sg/gels-ftrp-imc-cm/health-insurance-/great-critical-cover/gels-pdt-pd-gcc-hmpg-mobile-bn.jpg",blurbText:"Critical illness coverage that continues over and over again",ctaText:"Buy now"},{name:"GoGreat Term Life",ctaUrl:"/sg/en/personal-insurance/our-products/life-insurance/gogreat-term-life.html",imageUrl_Desktop:"/content/dam/corp-site/great-eastern/sg/gels-ftrp-imc-cm/life-insurance-/go-great-term-life/gels-pdt-pd-ggtl-hmpg-desktop-bn.jpg",imageUrl_Tablet:"/content/dam/corp-site/great-eastern/sg/gels-ftrp-imc-cm/life-insurance-/go-great-term-life/gels-pdt-pd-ggtl-hmpg-tablet-bn.jpg",imageUrl_Mobile:"/content/dam/corp-site/great-eastern/sg/gels-ftrp-imc-cm/life-insurance-/go-great-term-life/gels-pdt-pd-ggtl-hmpg-mobile-bn.jpg",blurbText:"Boost up to S$300,000 on your coverage from a yearly premium of just S$77.15",ctaText:"Buy now"},{name:"GREAT Protector Active",ctaUrl:"/sg/en/personal-insurance/our-products/personal-accident-insurance/great-protector-active.html",imageUrl_Desktop:"/content/dam/corp-site/great-eastern/sg/gels-ftrp-imc-cm/personal-accident/great-protector-active/gels-pdt-pd-gpa-c-bn.jpg",imageUrl_Tablet:"/content/dam/corp-site/great-eastern/sg/gels-ftrp-imc-cm/personal-accident/great-protector-active/gels-pdt-pd-gpa-tb-bn.jpg",imageUrl_Mobile:"/content/dam/corp-site/great-eastern/sg/gels-ftrp-imc-cm/personal-accident/great-protector-active/gels-pdt-pd-gpa-mb-bn.jpg",blurbText:"Get up to S$3 million in coverage against accidents",ctaText:"Buy now"},{name:"GREAT Junior Protector",ctaUrl:"/sg/en/personal-insurance/our-products/personal-accident-insurance/great-junior-protector.html",imageUrl_Desktop:"/content/dam/corp-site/great-eastern/sg/gels-ftrp-imc-cm/personal-accident/great-junior-protector/gels-pdt-pd-gjp-c-bn.jpg",imageUrl_Tablet:"/content/dam/corp-site/great-eastern/sg/gels-ftrp-imc-cm/personal-accident/great-junior-protector/gels-pdt-pd-gjp-tb-bn.jpg",imageUrl_Mobile:"/content/dam/corp-site/great-eastern/sg/gels-ftrp-imc-cm/personal-accident/great-junior-protector/gels-pdt-pd-gjp-mb-bn.jpg",blurbText:"Safeguard your child against accidents from S$0.69 a day.",ctaText:"Buy now"},{name:"GREAT Prime Rewards",ctaUrl:"/sg/en/personal-insurance/our-products/retirement-income/great-prime-rewards.html",imageUrl_Desktop:"/content/dam/corp-site/great-eastern/sg/gels-ftrp-imc-cm/retirement/great-prime-rewards/gels-pd-pdt-gpr3-hmpg-bn.jpg",imageUrl_Tablet:"/content/dam/corp-site/great-eastern/sg/gels-ftrp-imc-cm/retirement/great-prime-rewards/gels-pd-pdt-gpr3-tablet-bn.jpg",imageUrl_Mobile:"/content/dam/corp-site/great-eastern/sg/gels-ftrp-imc-cm/retirement/great-prime-rewards/gels-pd-pdt-gpr3-mobile-bn.jpg",blurbText:"Live out your retirement dream with a guaranteed income stream",ctaText:"Buy now"},{name:"TravelSmart Premier",ctaUrl:"/sg/en/personal-insurance/our-products/travel-insurance/travelsmart-premier.html",imageUrl_Desktop:"/content/dam/corp-site/great-eastern/sg/gels-ftrp-imc-cm/geapp-images/ge-app-exclusive-offer-tsp/oct-tspe-webmainbanner-desktop.jpg",imageUrl_Tablet:"/content/dam/corp-site/great-eastern/sg/gels-ftrp-imc-cm/geapp-images/ge-app-exclusive-offer-tsp/oct-tspe-webmainbanner-tablet.jpg",imageUrl_Mobile:"/content/dam/corp-site/great-eastern/sg/gels-ftrp-imc-cm/geapp-images/ge-app-exclusive-offer-tsp/oct-tspe-webmainbanner-mobile.jpg",blurbText:"Enjoy 45% off Classic and Elite single trip plans. Limited time offer! T&Cs apply.",ctaText:"Buy now"},{name:"Drive and Save Plus",ctaUrl:"/sg/en/personal-insurance/our-products/car-insurance/drive-and-save-plus.html",imageUrl_Desktop:"/content/dam/corp-site/great-eastern/sg/gels-cxd-dco/homepage-banners/gels-dco-hp-motor-banner-desktop.jpg",imageUrl_Tablet:"/content/dam/corp-site/great-eastern/sg/gels-cxd-dco/homepage-banners/gels-dco-hp-motor-banner-tablet.jpg",imageUrl_Mobile:"/content/dam/corp-site/great-eastern/sg/gels-cxd-dco/homepage-banners/gels-dco-hp-motor-banner-mobile.jpg",blurbText:"Safeguard your drive with enhanced protection and greater premium savings",ctaText:"Buy now"},{name:"GREAT Maid Protect",ctaUrl:"/sg/en/personal-insurance/our-products/maid-insurance/great-maid-protect.html",imageUrl_Desktop:"/content/dam/corp-site/great-eastern/sg/gels-cxd-dco/homepage-banners/gels-dco-hp-maid-banner-desktop.jpg",imageUrl_Tablet:"/content/dam/corp-site/great-eastern/sg/gels-cxd-dco/homepage-banners/gels-dco-hp-maid-banner-tablet.jpg",imageUrl_Mobile:"/content/dam/corp-site/great-eastern/sg/gels-cxd-dco/homepage-banners/gels-dco-hp-maid-banner-mobile.jpg",blurbText:"Up to S$90,000 medical coverage at affordable premium for your domestic helper",ctaText:"Buy now"},{name:"GREAT SP",ctaUrl:"/sg/en/personal-insurance/our-products/wealth-accumulation/great-sp.html",imageUrl_Desktop:"/content/dam/corp-site/great-eastern/sg/gels-ftrp-imc-cm/wealth-accumulation/great-sp/gels-pdt-pd-gsp-hmpg-desktop.jpg",imageUrl_Tablet:"/content/dam/corp-site/great-eastern/sg/gels-ftrp-imc-cm/wealth-accumulation/great-sp/gels-pdt-pd-gsp-hmpg-tablet.jpg",imageUrl_Mobile:"/content/dam/corp-site/great-eastern/sg/gels-ftrp-imc-cm/wealth-accumulation/great-sp/gels-pdt-pd-gsp-hmpg-mobile.jpg",blurbText:"Enjoy guaranteed returns of 2.30% p.a. and 100% capital guaranteed upon maturity.",ctaText:"Buy now"}],t={"GREAT SP (24-month)":"GREAT SP"};function r(e,t,r,a=""){dataLayer.push({event:"vwoEvent",eventDetails:{category:"[vwo] cta - banner",action:e,label:t},contentSubcategory:r,..."click"===e&&a?{journeyCta:a}:{}})}function a(e){const t=e+"=",r=decodeURIComponent(document.cookie).split(";");for(let e=0;e!c.some(t=>t.name===e.name)),s=s.map(e=>{const r=t[e.name]||e.name;return{...e,name:r}}),s=s.filter(t=>e.some(e=>e.name===t.name)).map(t=>{const r=e.find(e=>e.name===t.name);return{...t,...r}}),!s.length&&document.querySelector(".new-container"))return;s=s.slice(-1);const{name:i,ctaUrl:l,imageUrl_Desktop:g,imageUrl_Tablet:p,imageUrl_Mobile:m,blurbText:d,ctaText:u}=s[0],b=`\n
\n \x3c!-- images mobile, tablet, desktop --\x3e\n \n \n \n \n ${i}\n \n \x3c!-- Section Banner Content --\x3e\n
\n

${i}

\n

${d}

\n \n ${u}\n \n
`;document.querySelector("#section_banner").innerHTML=b;["GREAT Protector Active","GREAT Junior Protector","GoGreat Term Life","GREAT Prime Rewards","GREAT Maid Protect","Drive and Save Plus","GREAT CareShield"].includes(i)||document.querySelector(".leo-section-banner-content").classList.add("white-product"),r("impression",("[vwo_ce_rtg] homepage banner - "+i+" - "+d+" - "+u).toLowerCase(),i.toLowerCase()),document.body.addEventListener("click",(function(e){const{target:t}=e;if(t.closest(".vwo_homepage_herobanner_cta")){r("click",("[vwo_ce_rtg] homepage banner - "+i+" - "+d+" - "+u).toLowerCase(),i.toLowerCase(),("vwohp-"+i+"-"+u).toLowerCase())}}))}};if(!document.querySelector("."+r.id))if(document.querySelector("#section_banner"))try{r.init()}catch(e){console.log("Initialization Error:",e)}else Date.now() 0) { return executeTrigger(); } window.VWO._.phoenixMT.once("vwo_mutObs." + config.triggerName, () => { if (window.vwo_$(config.sel).length > 0) { executeTrigger(); } }); })() } }, ct_c21ebbb84ddcbb88aa1ae8fe9cfa662e:{ 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_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_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 (`
${className}

Medical Coverage

${header}

${quizDate}

`) }; // create quiz icon markup let quizIconHtml = `
${newCrossIcon}
${quizLogo}
`; // create quiz card markup const QuizCards = collections.map(({ className, coverImage, header, quizDate }) => createQuizCard(className, coverImage, header, quizDate) ).join(''); // create quiz cross icon markup const quizCrossButton = ` `; // function to create inner content for modal level two let modalTwoInnerContent = (className, title, promoCopy) => (` `); //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} ${className}
${quizCrossButton} ${modalInnerHtml}
`); // markup for quiz modal level one let quizModalLV1 = `
${quizCrossButton}
`; // function to create the initial modal markup let modalMarkup = () => (` `); /* ---- 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")}}, 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_965_1_2_21:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x); /*vwo_debug log("content","html.vwo_p_s_529d06731882814587edcdb7fcb47719 .sticky-nav-cta > a:nth-of-type(1)"); vwo_debug*/el=vwo_$("html.vwo_p_s_529d06731882814587edcdb7fcb47719 .sticky-nav-cta > a:nth-of-type(1)"),vwo_$("html.vwo_p_s_529d06731882814587edcdb7fcb47719 .sticky-nav-cta > a:nth-of-type(1)").each((function(){this.__vwoControlOuterHTML=this.__vwoControlOuterHTML||this.outerHTML,vwo_$(this).vwoAttr("href","#"),vwo_$(this).vwoAttr("target",""),vwo_$(this).not('[vwo-op-1730706741818-2=""]').length&&vwo_$(this).children().eq(1).remove().length&&vwo_$(this).attr("vwo-op-1730706741818-2","")})),(el=vwo_$("html.vwo_p_s_529d06731882814587edcdb7fcb47719 .sticky-nav-cta > a:nth-of-type(1)")).vwoCss({transition:"none !important"}),el.vwoAttr({id:"ggpbuynow2"}),el.vwoCss({transition:"none !important"});})("html.vwo_p_s_529d06731882814587edcdb7fcb47719 .sticky-nav-cta > a:nth-of-type(1)")}}, R_722219_965_1_2_20:{ 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_529d06731882814587edcdb7fcb47719 .cta-bottom > a:nth-of-type(1)"); vwo_debug*/(el=vwo_$("html.vwo_p_s_529d06731882814587edcdb7fcb47719 .cta-bottom > a:nth-of-type(1)")).vwoRevertAttr(),el.vwoRevertCss(),el.revertContentOp(),el.vwoRevertCss();})("html.vwo_p_s_529d06731882814587edcdb7fcb47719 .cta-bottom > a:nth-of-type(1)")}}, C_722219_965_1_2_20:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x); /*vwo_debug log("content","html.vwo_p_s_529d06731882814587edcdb7fcb47719 .cta-bottom > a:nth-of-type(1)"); vwo_debug*/el=vwo_$("html.vwo_p_s_529d06731882814587edcdb7fcb47719 .cta-bottom > a:nth-of-type(1)"),vwo_$("html.vwo_p_s_529d06731882814587edcdb7fcb47719 .cta-bottom > a:nth-of-type(1)").each((function(){this.__vwoControlOuterHTML=this.__vwoControlOuterHTML||this.outerHTML,vwo_$(this).vwoAttr("href","https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200203/get-quotation.html?template=post&campCode=C8DISC"),vwo_$(this).removeAttr("id"),vwo_$(this).not('[vwo-op-1730706741819-2=""]').length&&vwo_$(this).children().eq(0).remove().length&&vwo_$(this).attr("vwo-op-1730706741819-2","")})),(el=vwo_$("html.vwo_p_s_529d06731882814587edcdb7fcb47719 .cta-bottom > a:nth-of-type(1)")).vwoCss({transition:"none !important"}),el.vwoAttr({href:"#",id:"ggpbuynow",target:""}),el.vwoCss({transition:"none !important"});})("html.vwo_p_s_529d06731882814587edcdb7fcb47719 .cta-bottom > a:nth-of-type(1)")}}, R_722219_965_1_2_19:{ 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_baf0439c6ee7eeb30695dbb63777c8a1 .sticky-nav-cta > a:nth-of-type(1)"); vwo_debug*/(el=vwo_$("html.vwo_p_s_baf0439c6ee7eeb30695dbb63777c8a1 .sticky-nav-cta > a:nth-of-type(1)")).vwoRevertAttr(),el.vwoRevertCss(),el.revertContentOp(),el.vwoRevertCss();})("html.vwo_p_s_baf0439c6ee7eeb30695dbb63777c8a1 .sticky-nav-cta > a:nth-of-type(1)")}}, C_722219_965_1_2_19:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x); /*vwo_debug log("content","html.vwo_p_s_baf0439c6ee7eeb30695dbb63777c8a1 .sticky-nav-cta > a:nth-of-type(1)"); vwo_debug*/el=vwo_$("html.vwo_p_s_baf0439c6ee7eeb30695dbb63777c8a1 .sticky-nav-cta > a:nth-of-type(1)"),vwo_$("html.vwo_p_s_baf0439c6ee7eeb30695dbb63777c8a1 .sticky-nav-cta > a:nth-of-type(1)").each((function(){this.__vwoControlOuterHTML=this.__vwoControlOuterHTML||this.outerHTML,vwo_$(this).vwoAttr("href","#"),vwo_$(this).vwoAttr("target",""),vwo_$(this).not('[vwo-op-1730706741819-2=""]').length&&vwo_$(this).children().eq(1).remove().length&&vwo_$(this).attr("vwo-op-1730706741819-2","")})),(el=vwo_$("html.vwo_p_s_baf0439c6ee7eeb30695dbb63777c8a1 .sticky-nav-cta > a:nth-of-type(1)")).vwoCss({transition:"none !important"}),el.vwoAttr({id:"eppbuynow2"}),el.vwoCss({transition:"none !important"});})("html.vwo_p_s_baf0439c6ee7eeb30695dbb63777c8a1 .sticky-nav-cta > a:nth-of-type(1)")}}, R_722219_965_1_2_18:{ 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_baf0439c6ee7eeb30695dbb63777c8a1 .cta-bottom > a:nth-of-type(1)"); vwo_debug*/(el=vwo_$("html.vwo_p_s_baf0439c6ee7eeb30695dbb63777c8a1 .cta-bottom > a:nth-of-type(1)")).vwoRevertAttr(),el.vwoRevertCss(),el.revertContentOp(),el.vwoRevertCss();})("html.vwo_p_s_baf0439c6ee7eeb30695dbb63777c8a1 .cta-bottom > a:nth-of-type(1)")}}, C_722219_965_1_2_18:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x); /*vwo_debug log("content","html.vwo_p_s_baf0439c6ee7eeb30695dbb63777c8a1 .cta-bottom > a:nth-of-type(1)"); vwo_debug*/el=vwo_$("html.vwo_p_s_baf0439c6ee7eeb30695dbb63777c8a1 .cta-bottom > a:nth-of-type(1)"),vwo_$("html.vwo_p_s_baf0439c6ee7eeb30695dbb63777c8a1 .cta-bottom > a:nth-of-type(1)").each((function(){this.__vwoControlOuterHTML=this.__vwoControlOuterHTML||this.outerHTML,vwo_$(this).vwoAttr("href","https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200204/get-quotation.html?template=post&campCode=C8DISC"),vwo_$(this).not('[vwo-op-1730706741820-1=""]').length&&vwo_$(this).children().eq(0).remove().length&&vwo_$(this).attr("vwo-op-1730706741820-1","")})),(el=vwo_$("html.vwo_p_s_baf0439c6ee7eeb30695dbb63777c8a1 .cta-bottom > a:nth-of-type(1)")).vwoCss({transition:"none !important"}),el.vwoAttr({href:"#",id:"eppbuynow"}),el.vwoCss({transition:"none !important"});})("html.vwo_p_s_baf0439c6ee7eeb30695dbb63777c8a1 .cta-bottom > a:nth-of-type(1)")}}, C_722219_965_1_2_17:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1730706741978').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_baf0439c6ee7eeb30695dbb63777c8a1")){var currentURL3=window.location.href.split("?").pop(),clickURL3="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200204/get-quotation.html?campCode=C8DISC&template=post";$("#eppbuynow3").on("click",(function(){window.location.href=clickURL3+"&"+currentURL3}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_965_1_2_16:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1730706741977').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_529d06731882814587edcdb7fcb47719")){var currentURL3=window.location.href.split("?").pop(),clickURL3="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200203/get-quotation.html?campCode=C8DISC&template=post";$("#ggpbuynow3").on("click",(function(){window.location.href=clickURL3+"&"+currentURL3}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_965_1_2_15:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1730706741977').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_117ea7d82ad4208c01b4c082cbb1dcbe")){var currentURL3=window.location.href.split("?").pop(),clickURL3="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200202/get-quotation.html?template=post&campCode=C8DISC";$("#gjpbuynow3").on("click",(function(){window.location.href=clickURL3+"&"+currentURL3}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_965_1_2_14:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1730706741976').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_a192231b2113d157699dea212968af5a")){var currentURL3=window.location.href.split("?").pop(),clickURL3="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200201/get-quotation.html?campCode=C8DISC&template=post";$("#gpabuynow3").on("click",(function(){window.location.href=clickURL3+"&"+currentURL3}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_965_1_2_13:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1730706741975').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_117ea7d82ad4208c01b4c082cbb1dcbe")){var currentURL2=window.location.href.split("?").pop(),clickURL2="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200202/get-quotation.html?campCode=C8DISC&template=post";$("#gjpbuynow2").on("click",(function(){window.location.href=clickURL2+"&"+currentURL2}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_965_1_2_12:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1730706741975').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_529d06731882814587edcdb7fcb47719")){var currentURL2=window.location.href.split("?").pop(),clickURL2="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200203/get-quotation.html?template=post&campCode=C8DISC";$("#ggpbuynow2").on("click",(function(){window.location.href=clickURL2+"&"+currentURL2}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_965_1_2_11:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1730706741974').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_baf0439c6ee7eeb30695dbb63777c8a1")){var currentURL2=window.location.href.split("?").pop(),clickURL2="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200204/get-quotation.html?campCode=C8DISC&template=post";$("#eppbuynow2").on("click",(function(){window.location.href=clickURL2+"&"+currentURL2}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_965_1_2_10:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1730706741973').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_a192231b2113d157699dea212968af5a")){var currentURL2=window.location.href.split("?").pop(),clickURL2="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200201/get-quotation.html?campCode=C8DISC&template=post";$("#gpabuynow2").on("click",(function(){window.location.href=clickURL2+"&"+currentURL2}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_965_1_2_9:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1730706741973').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98")){var currentURL4=window.location.href.split("?").pop(),clickURL4="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200204/get-quotation.html?template=post&campCode=C8DISC";$("#eppbuynow").on("click",(function(){window.location.href=clickURL4+"&"+currentURL4}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_965_1_2_8:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1730706741972').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98")){var currentURL3=window.location.href.split("?").pop(),clickURL3="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200203/get-quotation.html?template=post&campCode=C8DISC";$("#ggpbuynow").on("click",(function(){window.location.href=clickURL3+"&"+currentURL3}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_965_1_2_7:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1730706741971').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98")){var currentURL2=window.location.href.split("?").pop(),clickURL2="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200202/get-quotation.html?template=post&campCode=C8DISC";$("#gjpbuynow").on("click",(function(){window.location.href=clickURL2+"&"+currentURL2}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_965_1_2_6:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1730706741970').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98")){var currentURL1=window.location.href.split("?").pop(),clickURL1="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200201/get-quotation.html?template=post&campCode=C8DISC";$("#gpabuynow").on("click",(function(){window.location.href=clickURL1+"&"+currentURL1}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_965_1_2_5:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1730706741970').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_baf0439c6ee7eeb30695dbb63777c8a1")){var currentURL=window.location.href.split("?").pop(),clickURL="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200204/get-quotation.html?template=post&campCode=C8DISC";$("#eppbuynow").on("click",(function(){window.location.href=clickURL+"&"+currentURL}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_965_1_2_4:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1730706741969').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_529d06731882814587edcdb7fcb47719")){var currentURL=window.location.href.split("?").pop(),clickURL="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200203/get-quotation.html?template=post&campCode=C8DISC";$("#ggpbuynow").on("click",(function(){window.location.href=clickURL+"&"+currentURL}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_965_1_2_3:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1730706741968').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_117ea7d82ad4208c01b4c082cbb1dcbe")){var currentURL=window.location.href.split("?").pop(),clickURL="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200202/get-quotation.html?template=post&campCode=C8DISC";$("#gjpbuynow").on("click",(function(){window.location.href=clickURL+"&"+currentURL}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_965_1_2_2:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1730706741967').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{if(document.documentElement.classList.contains("vwo_p_s_a192231b2113d157699dea212968af5a")){var currentURL=window.location.href.split("?").pop(),clickURL="https://buy.greateasternlife.com/sg/en/personal-accident-insurance/200201/get-quotation.html?campCode=C8DISC&template=post";$("#gpabuynow").on("click",(function(){window.location.href=clickURL+"&"+currentURL}))}}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_965_1_2_1:{ fn:function(log,nonce=''){return (function(x) { try{ var _vwo_sel = vwo_$("`); !vwo_$("head").find('#1730706741967').length && vwo_$('head').append(_vwo_sel);}catch(e) {console.error(e)} try{}catch(e) {console.error(e)} try{document.documentElement.classList.contains("vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98");}catch(e) {console.error(e)} return vwo_$('head')[0] && vwo_$('head')[0].lastChild;})("head")}}, C_722219_997_1_2_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", // 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"; // cookie name const cookieExpiryDays = 90; const dataPopulationCookieName = "data-population-cookie"; /// *** Utility functions *** /// // Utility function to get selected index const getSelectedIndex = (selector, selectedClass = '-selected') => { return [...document.querySelectorAll(selector)].findIndex(item => item.classList.contains(selectedClass)); } // Utility function to get payment index const getPaymentIndex = (selector, selectedClass = '-selected') => { return [...document.querySelectorAll(selector)].findIndex(item => item.parentElement.classList.contains(selectedClass)); } // Utility function to select an option by text content function selectOptionByText(selector, textContent) { document.querySelectorAll(selector).forEach(item => { if (item.textContent.trim() === textContent) { item.click(); } }); } // Utility function to set input value and dispatch event function setInputValue(selector, value) { const inputElement = document.querySelector(selector); if (inputElement) { inputElement.value = value; inputElement.dispatchEvent(new Event('input')); } } // Utility function to click a radio button by index function clickRadioButtonByIndex(selector, index) { const buttons = document.querySelectorAll(selector); if (buttons[index]) { buttons[index].click(); } } // function clickRadioButtonForGCS(selector, index) { // const buttons = document.querySelectorAll(selector); // if (buttons[index]) { // buttons[index].parentElement.click(); // } // } // Utility function to click an input element by ID function clickInputById(id) { const inputElement = document.querySelector(`#${id}`); if (inputElement) { inputElement.click(); } } // Utility function to Function to set cookie function setCookie(cname, cvalue, exdays) { const d = new Date(); d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000)); const expires = `expires=${d.toUTCString()}`; document.cookie = `${cname}=${cvalue}; ${expires}; path=/; domain=.adobecqms.net`; }; // Utility function to Function to get cookie function getCookie(cname) { const name = cname + "="; const decodedCookie = decodeURIComponent(document.cookie); const ca = decodedCookie.split(';'); for (var i = 0; i < ca.length; i++) { let c = ca[i].trim(); if (c.indexOf(name) === 0) { return c.substring(name.length, c.length); } } return ""; } // // Utility function to delete cookie // function deleteCookie(name) { // document.cookie = `${name}=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/; domain=.greateasternlife.com`; // } /// *** Utility functions *** /// // function to set or update quotation cookie const setOrUpdateQuoteDataInCookie = (quotationData) => { if (!quotationData || typeof quotationData !== 'object') return; const saveCookie = (data) => { setCookie(cookieName, JSON.stringify(data), cookieExpiryDays); }; const existingCookie = getCookie(cookieName); if (!existingCookie) { saveCookie(quotationData); //console.log("Quotation data saved as a new cookie."); return; } let existingData; try { existingData = JSON.parse(existingCookie); } catch (error) { //console.error("Failed to parse existing cookie:", error); saveCookie(quotationData); return; } if (existingData.productJourney === quotationData.productJourney) { // Same product journey, update values const updatedData = { ...existingData, ...quotationData }; saveCookie(updatedData); //console.log("Updated existing quotation data."); } else { saveCookie(quotationData); //console.log("Replaced quotation data with a new product journey."); } }; // function to set Great Protector Active quote data function getQuoteDataGPA() { if (window.location.pathname !== '/sg/en/personal-accident-insurance/200201/get-quotation.html') return; let productJourney = 'GREAT Protector Active'; let insuredFor = document.querySelector('label[for="insured"] +.multiselect .multiselect-single-label')?.textContent; let idSelector = document.querySelectorAll('label[for="thirdPartyIdType"] +.multiselect .multiselect-single-label , label[for="idType"] +.multiselect .multiselect-single-label')[0]; let idType = idSelector?.textContent; let birthDate = document.querySelector('input#birthdayInput')?.value; let planOptionsIndex = getSelectedIndex('.plan-options .cmp-radio'); let addOnSelection = document.querySelectorAll('.checkbox-custom .cmp-checkbox-custom.-selected').length > 0; let paymentCycle = getPaymentIndex('#paymentFrequency-Monthly , #paymentFrequency-Annual'); // Initializing an empty object let quotationData = {}; // Adding properties only if the values are available if (productJourney) quotationData.productJourney = productJourney; if (insuredFor) quotationData.insuredFor = insuredFor; if (idType) quotationData.idType = idType; if (birthDate) quotationData.birthDate = birthDate; if (planOptionsIndex !== -1) quotationData.planOptionsIndex = planOptionsIndex; if (paymentCycle !== -1 && document.querySelectorAll('.checkbox-custom .cmp-checkbox-custom.-selected').length > -1) { //alert('check 01') quotationData.addOnSelection = addOnSelection } if (paymentCycle !== -1) quotationData.paymentCycle = paymentCycle; // Store or update quotation data in cookie if (insuredFor && idType && birthDate) setOrUpdateQuoteDataInCookie(quotationData); } // get value of data population cookie to populate data let dataPopulationCookieValue = getCookie(dataPopulationCookieName); // set session storage based on cookie value // if (dataPopulationCookieValue) { // sessionStorage.setItem("data-population", "true"); // deleteCookie("data-population-cookie"); // } // Main function to handle form data population based on the pathname function handleDataPopulation(productData, loadAgain = false) { const pathname = window.location.pathname; const { productJourney } = productData; // Actions for Great Protector Active if (pathname === '/sg/en/personal-accident-insurance/200201/get-quotation.html' && productJourney === 'GREAT Protector Active') { if (productData.insuredFor && loadAgain) { selectOptionByText('label[for="insured"] + .multiselect .multiselect-option', productData.insuredFor); } setTimeout(function () { if (productData.idType && loadAgain) { selectOptionByText('label[for="thirdPartyIdType"] + .multiselect .multiselect-option , label[for="idType"] + .multiselect .multiselect-option', productData.idType); } if (productData.birthDate && loadAgain) { setInputValue("#birthdayInput", productData.birthDate); } }, 500) setTimeout(function () { if (productData.planOptionsIndex > -1) { clickRadioButtonByIndex('.plan-options .cmp-radio input', productData.planOptionsIndex); setTimeout(function () { let targetContent = document.querySelectorAll('.plan-options .cmp-radio input + label .radio-select-label-selected')[0]; if (targetContent) { targetContent.textContent = 'Pre-selected'; } }, 1000) } if (productData.addOnSelection) { setTimeout(function () { clickInputById('selectedExtraPlan-undefined'); if (productData.paymentCycle > -1) { setTimeout(function () { if (document.querySelector('label[for="paymentFrequency-Annual"] .cmp-text.font-normal span').textContent.length > 3) { clickRadioButtonByIndex('#paymentFrequency-Monthly , #paymentFrequency-Annual', productData.paymentCycle); } }, 1500); } }, 500) } else { if (productData.paymentCycle > -1) { setTimeout(function () { if (document.querySelector('label[for="paymentFrequency-Annual"] .cmp-text.font-normal span').textContent.length > 3) { clickRadioButtonByIndex('#paymentFrequency-Monthly , #paymentFrequency-Annual', productData.paymentCycle); } }, 1500); } } }, 2000) } } function loadData() { if (dataPopulationCookieValue !== 'true') return; (function pollForFormload() { if ( document.querySelector('input[name="agentMobileNumber"]') && document.querySelectorAll('#paymentFrequency-Annual , #packageItem-W05I1-annual').length > 0 ) { const existingCookie = getCookie(cookieName); const productData = existingCookie ? JSON.parse(existingCookie) : {}; // Handle form filling based on the current page handleDataPopulation(productData); } else { setTimeout(pollForFormload, 25); } })(); } // function to handle click events function eventHandler(event) { const { target } = event; //console.log('target:', target); if ( window.location.pathname === '/sg/en/personal-accident-insurance/200201/get-quotation.html' && target.closest('.cmp-button a') && ( target.textContent.includes('View benefits') || target.closest('.cmp-button a[href*="https://buy-uat-greateasternlife.adobecqms.net/sg/en/personal-accident-insurance/200201/quick-check.html"]')) ) { if (target.textContent.includes('View benefits')) loadData(); getQuoteDataGPA(); //alert('working GPA'); } } // Initialize product data from cookie const existingCookie = getCookie(cookieName); const productData = existingCookie ? JSON.parse(existingCookie) : {}; // Handle form data population based on the current page if (dataPopulationCookieValue === 'true') { handleDataPopulation(productData, true); } document.body.addEventListener('click', eventHandler); }, }; // 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: EXP-1: V: 1:12'); } 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")}}, ct997_11fd5df3bdf6d6f8b7b1bbf21173a0ed:{ fn:function(executeTrigger, vwo_$) { (function () { if (location.pathname !== '/sg/en/personal-accident-insurance/200201/get-quotation.html') return; const productsPurchasedCookieName = "personalization_products_purchased"; const quotationDataCookieName = "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 ""; } const productsPurchasedStr = getCookie(productsPurchasedCookieName); const productPurchaseData = productsPurchasedStr ? JSON.parse(productsPurchasedStr) : []; //const quotationDataCookieValue = getCookie(quotationDataCookieName); //const dataPopulationCookieValue = getCookie(dataPopulationCookieName); 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) ); // console.log('hasMatchingProduct:', hasMatchingProduct); // console.log('quotationDataCookieValue:', quotationDataCookieValue); // console.log('dataPopulationCookieValue:', dataPopulationCookieValue); // Activation conditions // const shouldActivate = ( // (!hasMatchingProduct && quotationDataCookieValue === '') || // (!hasMatchingProduct && quotationDataCookieValue && dataPopulationCookieValue === 'true') // ) if (!hasMatchingProduct) { //alert('activate'); executeTrigger(); } })() }}, ct_6e08f71752cf41b8b65ca2ab3ed42227:{ 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_fc2d49fcbf40a510ce450a3b975fdedd:{ 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_a26b7809c1a646c8955514539c0502d6:{ 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_97e79efe5c34332a6250ceee4164bef9:{ 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_4ab342ddee06d621a5c2d2cc929c9420:{ 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_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_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_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_514c92ff1ab85933586546d6ec18aec5:{ 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_c1d2789ab9f7415aa438042c9bb7cd9c:{ 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_7783c1b5a37a28d2d48816aa87a09f4a:{ 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_bef7cc1836347a829df66c36a6e4c3fb:{ 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_963_1_2_36:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x); /*vwo_debug log("remove","html.vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98 .cmp-announcement-widget-xf"); vwo_debug*/(el=vwo_$("html.vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98 .cmp-announcement-widget-xf")).vwoCss({display:"none !important"});})("html.vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98 .cmp-announcement-widget-xf")}}, R_722219_963_1_2_35:{ fn:function(log,nonce=''){return (function(x) { if(!vwo_$.fn.vwoRevertHtml){ return; }; var el,ctx=vwo_$(x); /*vwo_debug log("Revert","remove","html.vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98 .leo-download-links"); vwo_debug*/(el=ctx).vwoRevertCss();})("html.vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98 .leo-download-links")}}, C_722219_963_1_2_35:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x); /*vwo_debug log("remove","html.vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98 .leo-download-links"); vwo_debug*/(el=ctx).vwoCss({display:"none !important"});})("html.vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98 .leo-download-links")}}, R_722219_963_1_2_34:{ fn:function(log,nonce=''){return (function(x) { if(!vwo_$.fn.vwoRevertHtml){ return; }; var el,ctx=vwo_$(x); /*vwo_debug log("Revert","remove","html.vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98 .m-0 > div:nth-of-type(1) > div:nth-of-type(4)"); vwo_debug*/(el=ctx).vwoRevertCss();})("html.vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98 .m-0 > div:nth-of-type(1) > div:nth-of-type(4)")}}, C_722219_963_1_2_34:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x); /*vwo_debug log("remove","html.vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98 .m-0 > div:nth-of-type(1) > div:nth-of-type(4)"); vwo_debug*/(el=ctx).vwoCss({display:"none !important"});})("html.vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98 .m-0 > div:nth-of-type(1) > div:nth-of-type(4)")}}, R_722219_963_1_2_33:{ fn:function(log,nonce=''){return (function(x) { if(!vwo_$.fn.vwoRevertHtml){ return; }; var el,ctx=vwo_$(x); /*vwo_debug log("Revert","remove","html.vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98 .main > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(7)"); vwo_debug*/(el=vwo_$("html.vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98 .main > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(7)")).vwoRevertCss();})("html.vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98 .main > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(7)")}}, C_722219_963_1_2_33:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x); /*vwo_debug log("remove","html.vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98 .main > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(7)"); vwo_debug*/(el=vwo_$("html.vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98 .main > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(7)")).vwoCss({display:"none !important"});})("html.vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98 .main > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(7)")}}, R_722219_963_1_2_32:{ fn:function(log,nonce=''){return (function(x) { if(!vwo_$.fn.vwoRevertHtml){ return; }; var el,ctx=vwo_$(x); /*vwo_debug log("Revert","remove","html.vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98 .leo-py-md"); vwo_debug*/(el=vwo_$("html.vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98 .leo-py-md")).vwoRevertCss();})("html.vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98 .leo-py-md")}}, C_722219_963_1_2_32:{ fn:function(log,nonce=''){return (function(x) {var el,ctx=vwo_$(x); /*vwo_debug log("remove","html.vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98 .leo-py-md"); vwo_debug*/(el=vwo_$("html.vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98 .leo-py-md")).vwoCss({display:"none !important"});})("html.vwo_p_s_b4e3c967173ff0c7334aa142c9f54d98 .leo-py-md")}}, ct1021_22c021a553486c22bb8b3ec4795cbf6f:{ fn:function(executeTrigger, vwo_$) { ( //Visited PDP audience trigger for VWO function () { // ---------------------------------- // ----- Personalization config ----- // ---------------------------------- var MAX_VIEWED_PRODUCTS = 3; // Max number of recommended products /* Product master infos: - name = Master product name. Ensure that this matches the master mapping (eg. data layer values) */ var productsViewedCTAArr = [ { "name": "GREAT CareShield" }, { "name": "GREAT Critical Cover Series" }, { "name": "GoGreat Term Life" }, { "name": "GREAT Protector Active" }, { "name": "Essential Protector Plus" }, { "name": "GREAT Junior Protector" }, { "name": "GREAT Prime Rewards" }, { "name": "TravelSmart Premier" }, { "name": "Drive and Save Plus" }, { "name": "GREAT Maid Protect" }, { "name": "GREAT SP" }, { "name": "GREAT Golden Protector" }, { "name": "GREAT Term" }, { "name": "GREAT EV Protect" }, { "name": "GREAT Hospital Cash " }, { "name": "PA Supreme" }, { "name": "GREAT Home Protect" }, { "name": "GREAT SupremeHealth + GREAT TotalCare" }, { "name": "GREAT Wealth Advantage 4" }, { "name": "GREAT Maternity Care 2" }, { "name": "GREAT Flexi Protect Series 3" }, // unmatched product names in orion journey { "name": "GREAT SP (24-month)" }, { "name": "GREAT Critical Cover: Top 3 CIs" }, { "name": "GREAT Term (Digital)" }, { "name": "GREAT Hospital Cash" } ]; // List of RCB products var productsRCB = [ { "name": "GREAT SupremeHealth + GREAT TotalCare" }, { "name": "GREAT Wealth Advantage 4" }, { "name": "GREAT Maternity Care 2" }, { "name": "GREAT Flexi Protect Series 3" } ]; // ----------------------------------------- // ----- System config (Do not change) ----- // ----------------------------------------- var VIEWED_PRODUCTS_COOKIE = "personalization_products_viewed_all"; var PURCHASED_PRODUCTS_COOKIE = "personalization_products_purchased"; var VIEWED_RCB_COOKIE = "personalization_products_viewed_RCB"; // ------------------------------- // ----- Get cookie function ----- // ------------------------------- function getCookie(cname) { var name = cname + "="; var decodedCookie = decodeURIComponent(document.cookie); var ca = decodedCookie.split(';'); for (var i = 0; i < ca.length; i++) { var c = ca[i].trim(); if (c.indexOf(name) === 0) { return c.substring(name.length, c.length) } } return ""; } // ------------------------------------------------ // ----- Check last viewed/purchased products ----- // ------------------------------------------------ // Read cookies const productsViewedStr = getCookie(VIEWED_PRODUCTS_COOKIE); const productsPurchasedStr = getCookie(PURCHASED_PRODUCTS_COOKIE); const productsViewedRCBStr = getCookie(VIEWED_RCB_COOKIE); // Parse cookies if they are not empty, otherwise default to an empty array let productsViewedArr = productsViewedStr ? JSON.parse(productsViewedStr) : []; let productsPurchasedArr = productsPurchasedStr ? JSON.parse(productsPurchasedStr) : []; let productsViewedRCBArr = productsViewedRCBStr ? JSON.parse(productsViewedRCBStr) : []; // Remove purchased products from last viewed products productsViewedArr = productsViewedArr.filter( viewedProduct => !productsPurchasedArr.some(purchasedProduct => purchasedProduct.name === viewedProduct.name) ); // Filter out products that have already been viewed from the RCB list productsRCB = productsRCB.filter( rcbProduct => !productsViewedRCBArr.some(viewedRCBProduct => viewedRCBProduct.name === rcbProduct.name) ); // Remove non viewed RCB products from the viewed products array productsViewedArr = productsViewedArr.filter( viewedProduct => !productsRCB.some(rcbProduct => rcbProduct.name === viewedProduct.name) ); // Cross check master product infos productsViewedArr = productsViewedArr.filter( viewedProduct => productsViewedCTAArr.some(ctaProduct => ctaProduct.name === viewedProduct.name) ); // Reduce to the latest X array items productsViewedArr = productsViewedArr.slice(-MAX_VIEWED_PRODUCTS); // If there are last products viewed, run VWO campaign if (productsViewedArr.length) { executeTrigger(); } } )() }}, R_722219_1021_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="1737521679116"]')).remove(); var ctx=vwo_$(x),el; /*vwo_debug log("Revert","content",""); vwo_debug*/; el=vwo_$('[vwo-element-id="1737521679156"]'); el.revertContentOp().remove(); return vwo_$('head')[0] && vwo_$('head')[0].lastChild; } catch(e) {} })("HEAD")}}},rules:[{"triggers":["11561413"],"tags":[{"id":"metric","metricId":0,"data":{"campaigns":[{"c":1028,"g":6}],"type":"g"}}]},{"triggers":["11561416"],"tags":[{"id":"metric","metricId":0,"data":{"campaigns":[{"c":1028,"g":8}],"type":"g"}}]},{"triggers":["10641040"],"tags":[{"id":"metric","metricId":1189237,"data":{"campaigns":[{"c":980,"g":18}],"type":"m"}}]},{"triggers":["10244176"],"tags":[{"priority":4,"data":"campaigns.985","id":"runCampaign"}]},{"triggers":["10841803"],"tags":[{"id":"metric","metricId":1202800,"data":{"campaigns":[{"c":1005,"g":1}],"type":"m"}}]},{"triggers":["4496841"],"tags":[{"id":"metric","metricId":466127,"data":{"campaigns":[{"c":1029,"g":2}],"type":"m"}},{"id":"metric","metricId":466127,"data":{"campaigns":[{"c":1021,"g":2}],"type":"m"}},{"id":"metric","metricId":466127,"data":{"campaigns":[{"c":759,"g":2}],"type":"m"}},{"id":"metric","metricId":466127,"data":{"campaigns":[{"c":998,"g":2}],"type":"m"}},{"id":"metric","metricId":466127,"data":{"campaigns":[{"c":736,"g":2}],"type":"m"}},{"id":"metric","metricId":466127,"data":{"campaigns":[{"c":980,"g":13}],"type":"m"}}]},{"triggers":["11332921"],"tags":[{"id":"metric","metricId":0,"data":{"campaigns":[{"c":1029,"g":3}],"type":"g"}}]},{"triggers":["10320859"],"tags":[{"priority":4,"data":"campaigns.998","id":"runCampaign"}]},{"triggers":["6644374","6644377","6644380"],"tags":[{"priority":4,"data":"campaigns.819","id":"runCampaign"}]},{"triggers":["2695522"],"tags":[{"priority":4,"data":"campaigns.1","id":"runCampaign"}]},{"triggers":["2695525"],"tags":[{"priority":4,"data":"campaigns.2","id":"runCampaign"}]},{"triggers":["10577338"],"tags":[{"id":"metric","metricId":0,"data":{"campaigns":[{"c":998,"g":4}],"type":"g"}}]},{"triggers":["9268389","9268392","9268395"],"tags":[{"priority":4,"data":"campaigns.889","id":"runCampaign"}]},{"triggers":["10304266","10304269","10304272"],"tags":[{"priority":4,"data":"campaigns.965","id":"runCampaign"}]},{"triggers":["9522690","9522693","9522696"],"tags":[{"priority":4,"data":"campaigns.963","id":"runCampaign"}]},{"triggers":["10577314"],"tags":[{"priority":4,"data":"campaigns.997","id":"runCampaign"}]},{"triggers":["8857305","8857308","8857311"],"tags":[{"priority":4,"data":"campaigns.816","id":"runCampaign"}]},{"triggers":["11561398"],"tags":[{"id":"metric","metricId":0,"data":{"campaigns":[{"c":1027,"g":1}],"type":"g"}}]},{"triggers":["11561401"],"tags":[{"id":"metric","metricId":0,"data":{"campaigns":[{"c":1027,"g":4}],"type":"g"}}]},{"triggers":["11537467"],"tags":[{"id":"metric","metricId":1242532,"data":{"campaigns":[{"c":1027,"g":5}],"type":"m"}}]},{"triggers":["11561404"],"tags":[{"id":"metric","metricId":0,"data":{"campaigns":[{"c":1027,"g":6}],"type":"g"}}]},{"triggers":["9125532"],"tags":[{"id":"metric","metricId":1032258,"data":{"campaigns":[{"c":980,"g":17}],"type":"m"}}]},{"triggers":["9125625"],"tags":[{"id":"metric","metricId":1032369,"data":{"campaigns":[{"c":980,"g":16}],"type":"m"}}]},{"triggers":["10635910"],"tags":[{"id":"metric","metricId":1188703,"data":{"campaigns":[{"c":980,"g":15}],"type":"m"}}]},{"triggers":["10583434"],"tags":[{"id":"metric","metricId":1184620,"data":{"campaigns":[{"c":980,"g":14}],"type":"m"}}]},{"triggers":["3487732"],"tags":[{"priority":4,"data":"campaigns.653","id":"runCampaign"}]},{"triggers":["10770097","10770100"],"tags":[{"priority":4,"data":"campaigns.1021","id":"runCampaign"}]},{"triggers":["5291080"],"tags":[{"priority":4,"data":"campaigns.1005","id":"runCampaign"},{"priority":4,"data":"campaigns.1027","id":"runCampaign"},{"priority":4,"data":"campaigns.736","id":"runCampaign"},{"priority":4,"data":"campaigns.980","id":"runCampaign"}]},{"triggers":["4496838"],"tags":[{"id":"metric","metricId":466124,"data":{"campaigns":[{"c":1029,"g":1}],"type":"m"}},{"id":"metric","metricId":466124,"data":{"campaigns":[{"c":1021,"g":1}],"type":"m"}},{"id":"metric","metricId":466124,"data":{"campaigns":[{"c":759,"g":1}],"type":"m"}},{"id":"metric","metricId":466124,"data":{"campaigns":[{"c":998,"g":3}],"type":"m"}},{"id":"metric","metricId":466124,"data":{"campaigns":[{"c":736,"g":1}],"type":"m"}},{"id":"metric","metricId":466124,"data":{"campaigns":[{"c":980,"g":12}],"type":"m"}}]},{"triggers":["3487735"],"tags":[{"id":"metric","metricId":0,"data":{"campaigns":[{"c":653,"g":3}],"type":"g"}}]},{"triggers":["11534302"],"tags":[{"id":"metric","metricId":1263802,"data":{"campaigns":[{"c":1005,"g":2}],"type":"m"}}]},{"triggers":["11534305"],"tags":[{"id":"metric","metricId":1263805,"data":{"campaigns":[{"c":1005,"g":3}],"type":"m"}}]},{"triggers":["9850753"],"tags":[{"priority":4,"data":"campaigns.759","id":"runCampaign"}]},{"triggers":["11308072"],"tags":[{"priority":4,"data":"campaigns.1029","id":"runCampaign"}]},{"triggers":["3546160"],"tags":[{"id":"metric","metricId":423424,"data":{"campaigns":[{"c":965,"g":1}],"type":"m"}},{"id":"metric","metricId":423424,"data":{"campaigns":[{"c":763,"g":1}],"type":"m"}},{"id":"metric","metricId":423424,"data":{"campaigns":[{"c":657,"g":1}],"type":"m"}},{"id":"metric","metricId":423424,"data":{"campaigns":[{"c":816,"g":1}],"type":"m"}},{"id":"metric","metricId":423424,"data":{"campaigns":[{"c":963,"g":1}],"type":"m"}},{"id":"metric","metricId":423424,"data":{"campaigns":[{"c":819,"g":1}],"type":"m"}},{"id":"metric","metricId":423424,"data":{"campaigns":[{"c":889,"g":1}],"type":"m"}},{"id":"metric","metricId":423424,"data":{"campaigns":[{"c":985,"g":4}],"type":"m"}},{"id":"metric","metricId":423424,"data":{"campaigns":[{"c":997,"g":1}],"type":"m"}}]},{"triggers":["3546154","3546157"],"tags":[{"priority":4,"data":"campaigns.657","id":"runCampaign"}]},{"triggers":["8890476","8890479","8890482"],"tags":[{"priority":4,"data":"campaigns.763","id":"runCampaign"}]},{"triggers":["5291080","11537446"],"tags":[{"priority":4,"data":"campaigns.1028","id":"runCampaign"}]},{"triggers":["11561407"],"tags":[{"id":"metric","metricId":0,"data":{"campaigns":[{"c":1028,"g":1}],"type":"g"}}]},{"triggers":["11561410"],"tags":[{"id":"metric","metricId":0,"data":{"campaigns":[{"c":1028,"g":4}],"type":"g"}}]},{"triggers":["2"],"tags":[{"id":"runTestCampaign"}]},{"triggers":["75"],"tags":[{"id":"urlChange"}]},{"triggers":["5"],"tags":[{"id":"checkEnvironment"}]},{"triggers":["8"],"tags":[{"priority":2,"id":"groupCampaigns"},{"priority":3,"id":"prePostMutation"}]},{"triggers":["9"],"tags":[{"priority":2,"id":"visibilityService"}]}],pages:{"ec":[{"560865":{"inc":["o",["url","urlReg","(?i).*"]]}}]},pagesEval:{"ec":[560865]}}})(); ;;var commonWrapper=function(argument){if(!argument){argument={valuesGetter:function(){return{}},valuesSetter:function(){},verifyData:function(){return{}}}}const getVisitorUuid=function(){if(window._vwo_acc_id>=1037725){return window.VWO&&window.VWO.get("visitor.id")}else{return window.VWO._&&window.VWO._.cookies&&window.VWO._.cookies.get("_vwo_uuid")}};var pollInterval=100;var timeout=6e4;return function(){var accountIntegrationSettings={};var _interval=null;function waitForAnalyticsVariables(){try{accountIntegrationSettings=argument.valuesGetter();accountIntegrationSettings.visitorUuid=getVisitorUuid()}catch(error){accountIntegrationSettings=undefined}if(accountIntegrationSettings&&argument.verifyData(accountIntegrationSettings)){argument.valuesSetter(accountIntegrationSettings);return 1}return 0}var currentTime=0;_interval=setInterval((function(){currentTime=currentTime||performance.now();var result=waitForAnalyticsVariables();if(result||performance.now()-currentTime>=timeout){clearInterval(_interval)}}),pollInterval)}}; commonWrapper({valuesGetter:function(){return {"ga4s":0}},valuesSetter:function(data){var singleCall=data["ga4s"]||0;if(singleCall){window.sessionStorage.setItem("vwo-ga4-singlecall",true)}var ga4_device_id="";if(typeof window.VWO._.cookies!=="undefined"){ga4_device_id=window.VWO._.cookies.get("_ga")||""}if(ga4_device_id){window.vwo_ga4_uuid=ga4_device_id.split(".").slice(-2).join(".")}},verifyData:function(data){if(typeof window.VWO._.cookies!=="undefined"){return window.VWO._.cookies.get("_ga")||""}else{return false}}})(); var pushBasedCommonWrapper=function(argument){var firedCamp={};if(!argument){argument={integrationName:"",getExperimentList:function(){},accountSettings:function(){},pushData:function(){}}}return function(){window.VWO=window.VWO||[];const getVisitorUuid=function(){if(window._vwo_acc_id>=1037725){return window.VWO&&window.VWO.get("visitor.id")}else{return window.VWO._&&window.VWO._.cookies&&window.VWO._.cookies.get("_vwo_uuid")}};var sendDebugLogsOld=function(expId,variationId,errorType,user_type,data){try{var errorPayload={f:argument["integrationName"]||"",a:window._vwo_acc_id,url:window.location.href,exp:expId,v:variationId,vwo_uuid:getVisitorUuid(),user_type:user_type};if(errorType=="initIntegrationCallback"){errorPayload["log_type"]="initIntegrationCallback";errorPayload["data"]=JSON.stringify(data||"")}else if(errorType=="timeout"){errorPayload["timeout"]=true}if(window.VWO._.customError){window.VWO._.customError({msg:"integration debug",url:window.location.href,lineno:"",colno:"",source:JSON.stringify(errorPayload)})}}catch(e){window.VWO._.customError&&window.VWO._.customError({msg:"integration debug failed",url:"",lineno:"",colno:"",source:""})}};var sendDebugLogs=function(expId,variationId,errorType,user_type){var eventName="vwo_debugLogs";var eventPayload={};try{eventPayload={intName:argument["integrationName"]||"",varId:variationId,expId:expId,type:errorType,vwo_uuid:getVisitorUuid(),user_type:user_type};if(window.VWO._.event){window.VWO._.event(eventName,eventPayload,{enableLogs:1})}}catch(e){eventPayload={msg:"integration event log failed",url:window.location.href};window.VWO._.event&&window.VWO._.event(eventName,eventPayload)}};const callbackFn=function(data){if(!data)return;var expId=data[1],variationId=data[2],repeated=data[0],singleCall=0,debug=0;var experimentList=argument.getExperimentList();var integrationName=argument["integrationName"]||"vwo";if(typeof argument.accountSettings==="function"){var accountSettings=argument.accountSettings();if(accountSettings){singleCall=accountSettings["singleCall"];debug=accountSettings["debug"]}}if(debug){sendDebugLogs(expId,variationId,"intCallTriggered",repeated)}if(singleCall&&(repeated==="vS"||repeated==="vSS")||firedCamp[expId]){return}window.expList=window.expList||{};var expList=window.expList[integrationName]=window.expList[integrationName]||[];if(expId&&variationId&&["VISUAL_AB","VISUAL","SPLIT_URL"].indexOf(_vwo_exp[expId].type)>-1){if(experimentList.indexOf(+expId)!==-1){firedCamp[expId]=variationId;var visitorUuid=getVisitorUuid();var pollInterval=100;var currentTime=0;var timeout=6e4;var user_type=_vwo_exp[expId].exec?"vwo-retry":"vwo-new";var interval=setInterval((function(){if(expList.indexOf(expId)!==-1){clearInterval(interval);return}currentTime=currentTime||performance.now();var toClearInterval=argument.pushData(expId,variationId,visitorUuid);if(debug&&toClearInterval){sendDebugLogsOld(expId,variationId,"",user_type);sendDebugLogs(expId,variationId,"intDataPushed",user_type)}var isTimeout=performance.now()-currentTime>=timeout;if(isTimeout&&debug){sendDebugLogsOld(expId,variationId,"timeout",user_type);sendDebugLogs(expId,variationId,"intTimeout",user_type)}if(toClearInterval||isTimeout){clearInterval(interval)}if(toClearInterval){window.expList[integrationName].push(expId)}}),pollInterval||100)}}};window.VWO.push(["onVariationApplied",callbackFn]);window.VWO.push(["onVariationShownSent",callbackFn])}}; var surveyDataCommonWrapper=function(argument){if(!argument){argument={getCampaignList:function(){return[]},surveyStatusChange:function(){},answerSubmitted:function(){}}}return function(){window.VWO=window.VWO||[];function getValuesFromAnswers(answers){var values=[];for(var i=0;i=timeout;if(toClearInterval||isTimeout){clearInterval(interval)}}),pollInterval)}}window.VWO.push(["onSurveyShown",function(data){commonSurveyCallback(data,argument.surveyStatusChange,"surveyShown")}]);window.VWO.push(["onSurveyCompleted",function(data){commonSurveyCallback(data,argument.surveyStatusChange,"surveyCompleted")}]);window.VWO.push(["onSurveyAnswerSubmitted",function(data){commonSurveyCallback(data,argument.answerSubmitted,"surveySubmitted")}])}}; (function(){var VWOOmniTemp={};window.VWOOmni=window.VWOOmni||{};for(var key in VWOOmniTemp)Object.prototype.hasOwnProperty.call(VWOOmniTemp,key)&&(window.VWOOmni[key]=VWOOmniTemp[key]);window._vwoIntegrationsLoaded=1;pushBasedCommonWrapper({integrationName:"GA4",getExperimentList:function(){return [736,759,980,985,1021,997,998,1005,1027,1028,1029]},accountSettings:function(){var accountIntegrationSettings={"dataVariable":"","manualSetup":false,"setupVia":""};if(accountIntegrationSettings["debugType"]=="ga4"&&accountIntegrationSettings["debug"]){accountIntegrationSettings["debug"]=1}else{accountIntegrationSettings["debug"]=0}return accountIntegrationSettings},pushData:function(expId,variationId){var accountIntegrationSettings={"dataVariable":"","manualSetup":false,"setupVia":""};var ga4Setup=accountIntegrationSettings["setupVia"]||"gtag";if(typeof window.gtag!=="undefined"&&ga4Setup=="gtag"){window.gtag("event","VWO",{vwo_campaign_name:window._vwo_exp[expId].name+":"+expId,vwo_variation_name:window._vwo_exp[expId].comb_n[variationId]+":"+variationId});window.gtag("event","experience_impression",{exp_variant_string:"VWO-"+expId+"-"+variationId});return true}return false}})();pushBasedCommonWrapper({integrationName:"GA4-GTM",getExperimentList:function(){return [736,759,980,985,1021,997,998,1005,1027,1028,1029]},accountSettings:function(){var accountIntegrationSettings={"dataVariable":"","manualSetup":false,"setupVia":""};if(accountIntegrationSettings["debugType"]=="gtm"&&accountIntegrationSettings["debug"]){accountIntegrationSettings["debug"]=1}else{accountIntegrationSettings["debug"]=0}return accountIntegrationSettings},pushData:function(expId,variationId){var accountIntegrationSettings={"dataVariable":"","manualSetup":false,"setupVia":""};var ga4Setup=accountIntegrationSettings["setupVia"]||"gtm";var dataVariable=accountIntegrationSettings["dataVariable"]||"dataLayer";if(typeof window[dataVariable]!=="undefined"&&ga4Setup=="gtm"){window[dataVariable].push({event:"vwo-data-push-ga4",vwo_exp_variant_string:"VWO-"+expId+"-"+variationId});return true}return false}})(); ;})();(function(){window.VWO=window.VWO||[];var pollInterval=100;var _vis_data={};var intervalObj={};var analyticsTimerObj={};var experimentListObj={};window.VWO.push(["onVariationApplied",function(data){if(!data){return}var expId=data[1],variationId=data[2];if(expId&&variationId&&["VISUAL_AB","VISUAL","SPLIT_URL"].indexOf(window._vwo_exp[expId].type)>-1){}}])})();; ;var vD=VWO.data||{};VWO.data={content:{"fns":{"list":{"args":{"1":{"6625f8d396bba":"1720140365","6678ed3f31d18":"1733984498","66875a9973fa4":"1727406621","6678ed65bfb87":"1733984498"}},"vn":1}}},as:"r4.visualwebsiteoptimizer.com",dacdnUrl:"https://dev.visualwebsiteoptimizer.com",accountJSInfo:{"gC":[{"c":[909],"t":1,"wt":{"909":99.999998},"et":2,"id":1},{"c":[901,899],"t":1,"wt":{"901":50,"899":50},"et":2,"id":5}],"mrp":20,"url":{},"noSS":false,"pc":{"a":100,"t":100},"rp":90,"pvn":0,"ts":1740242289}};for(var k in vD){VWO.data[k]=vD[k]};;var gcpfb=function(a,loadFunc,status,err,success){function vwoErr() {_vwo_err({message:"Google_Cdn failing for " + a + ". Trying Fallback..",code:"cloudcdnerr",status:status});} if(a.indexOf("/cdn/")!==-1){loadFunc(a.replace("cdn/",""),err,success); vwoErr(); return true;} else if(a.indexOf("/dcdn/")!==-1&&a.indexOf("evad.js") !== -1){loadFunc(a.replace("dcdn/",""),err,success); vwoErr(); return true;}};window.VWO=window.VWO || [];window.VWO._= window.VWO._ || {};window.VWO._.gcpfb=gcpfb;;var d={cookie:document.cookie,URL:document.URL,referrer:document.referrer};var w={VWO:{_:{}},location:{href:window.location.href,search:window.location.search},_vwoCc:window._vwoCc};;window._vwo_cdn="https://dev.visualwebsiteoptimizer.com/cdn/";window._vwo_apm_debug_cdn="https://dev.visualwebsiteoptimizer.com/cdn/";window.VWO._.useCdn=true;window.vwo_eT="br";window._VWO=window._VWO||{};window._VWO.fSeg=["866"];window._VWO.dcdnUrl="/dcdn/settings.js";window.VWO.sTs=1740149313;window._VWO._vis_nc_lib=window._vwo_cdn+"edrv/nc-dca9e8e58ebbedbf4f612cbe1de5de17br.js";var loadWorker=function(url){_vwo_code.load(url,{dSC: true, onloadCb: function(xhr,a){window._vwo_wt_l=true;if(xhr.status===200 ||xhr.status===304){var code="var window="+JSON.stringify(w)+",document="+JSON.stringify(d)+";window.document=document;"+xhr.responseText;var blob=new Blob([code||"throw new Error('code not found!');"],{type:"application/javascript"}),url=URL.createObjectURL(blob);window.mainThread={webWorker:new Worker(url)};window.vwoChannelFW=new MessageChannel();window.vwoChannelToW=new MessageChannel();window.mainThread.webWorker.postMessage({vwoChannelToW:vwoChannelToW.port1,vwoChannelFW:vwoChannelFW.port2},[vwoChannelToW.port1, vwoChannelFW.port2]);if(!window._vwo_mt_f)return window._vwo_wt_f=true;_vwo_code.addScript({text:window._vwo_mt_f});delete window._vwo_mt_f}else{if(gcpfb(a,loadWorker,xhr.status)){return;}_vwo_code.finish("&e=loading_failure:"+a)}}, onerrorCb: function(a){if(gcpfb(a,loadWorker)){return;}window._vwo_wt_l=true;_vwo_code.finish("&e=loading_failure:"+a);}})};loadWorker("https://dev.visualwebsiteoptimizer.com/cdn/edrv/worker-98e040cb58fefde2b754a8c3fcc6ba8cbr.js");;var _vis_opt_file;var _vis_opt_lib;if(window.VWO._.allSettings.dataStore.previewExtraSettings!=undefined&&window.VWO._.allSettings.dataStore.previewExtraSettings.isSurveyPreviewMode){var surveyHash=window.VWO._.allSettings.dataStore.plugins.LIBINFO.SURVEY_DEBUG_EVENTS.HASH;var param1="evad.js?va=";var param2="&d=debugger_new";var param3="&sp=1&a=722219&sh="+surveyHash;_vis_opt_file=vwoCode.use_existing_jquery&&typeof vwoCode.use_existing_jquery()!=="undefined"?vwoCode.use_existing_jquery()?param1+"vanj"+param2:param1+"va_gq"+param2:param1+"edrv/va_gq-ab1a91b572e7545bf54dabb34d20e2edbr.js"+param2;_vis_opt_file=_vis_opt_file+param3;_vis_opt_lib="https://dev.visualwebsiteoptimizer.com/dcdn/"+_vis_opt_file}else if(window.VWO._.allSettings.dataStore.mode!=undefined&&window.VWO._.allSettings.dataStore.mode=="PREVIEW"){ var path1 = 'edrv/pd_'; var path2 = window.VWO._.allSettings.dataStore.plugins.LIBINFO.EVAD.HASH + ".js"; ;_vis_opt_file=vwoCode.use_existing_jquery&&typeof vwoCode.use_existing_jquery()!=="undefined"?vwoCode.use_existing_jquery()?path1+"vanj"+path2:path1+"va_gq"+path2:path1+"edrv/va_gq-ab1a91b572e7545bf54dabb34d20e2edbr.js"+path2;_vis_opt_lib="https://dev.visualwebsiteoptimizer.com/cdn/"+_vis_opt_file}else{_vis_opt_file=vwoCode.use_existing_jquery&&typeof vwoCode.use_existing_jquery()!=="undefined"?vwoCode.use_existing_jquery()?"edrv/vanj-4654aedf44335d951c8f0eab22c8be6fbr.js":"edrv/va_gq-ab1a91b572e7545bf54dabb34d20e2edbr.js":"edrv/va_gq-ab1a91b572e7545bf54dabb34d20e2edbr.js"}window._vwo_library_timer=setTimeout((function(){vwoCode.removeLoaderAndOverlay&&vwoCode.removeLoaderAndOverlay();vwoCode.finish()}),vwoCode.library_tolerance&&typeof vwoCode.library_tolerance()!=="undefined"?vwoCode.library_tolerance():2500),_vis_opt_lib=typeof _vis_opt_lib=="undefined"?window._vwo_cdn+_vis_opt_file:_vis_opt_lib;var loadLib=function(url){_vwo_code.load(url, {dSC: true, onloadCb:function(xhr,a){window._vwo_mt_l=true;if(xhr.status===200 || xhr.status===304){if(!window._vwo_wt_f)return window._vwo_mt_f=xhr.responseText;_vwo_code.addScript({text:xhr.responseText});delete window._vwo_wt_f;}else{if(gcpfb(a,loadLib,xhr.status)){return;}_vwo_code.finish("&e=loading_failure:"+a);}}, onerrorCb: function(a){if(gcpfb(a,loadLib)){return;}window._vwo_mt_l=true;_vwo_code.finish("&e=loading_failure:"+a);}})};loadLib(_vis_opt_lib);VWO.load_co=function(u,opts){return window._vwo_code.load(u,opts);};;;}}catch(e){_vwo_code.finish();_vwo_code.removeLoaderAndOverlay&&_vwo_code.removeLoaderAndOverlay();_vwo_err(e);window.VWO.caE=1}})();

Be wary of phishing scams. Please visit our Security Advisory page for more information.

Make a pregnancy and childbirth complications, or female-related illness claim

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 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
Clinical Abstract Application To allow us to access your medical information
Doctor's Statement To provide us with details of your diagnosis

Download all

How to apply for a Doctor's Statement

The process varies for restructured and private hospitals. Approach the treating doctor who certified your condition to complete the Doctor's Statement.

For restructured hospitals

a. Download and print the Doctor's Statement and bring it along with you to the hospital.

b. Apply through the hospital's Medical Report Office.

c. Make payment.

d. Your application may take approximately 6 to 8 weeks.

e. Once the statement is ready, collect it and submit it together with the rest of the documents.

For private hospitals

a. Download and print the Doctor's Statement and pass it to your treating specialist.

b. Make payment.

c. You may ask the treating specialist about the processing time of your application.

d. Once the statement is ready, collect it and submit it together with the rest of the documents.

2. Include supporting documents

In addition to the forms and documents in the previous step, we'll also require you to submit other supporting documents you may have for your condition, such as laboratory and test results.

3. Submission

By email

Submit the completed forms and supporting documents to us via email.

Attention to: Life Claims Department
Email: lifepaclaims-sg@greateasternlife.com
Subject: Pregnancy and childbirth complications claim / Female-related illness claim

By walk-in or post

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

 

Questions and Answers

The life insurance plan provides a worldwide cover. However, the life assured’s condition must be certified by a qualified physician practising Western medicine.

We reserve the right to ask the life assured to be reviewed by an appointed physician. If a special endorsement (Endorsement No. 100) is included in the life assured's policy, e.g. for foreigners and PRs, the life assured is required to be diagnosed in Singapore, Malaysia or Brunei. However, we will still consider the medical evidence if the illness is diagnosed in other countries.

If the medical evidence is sufficient, we may choose to pay the claim on a goodwill basis without admitting liability. Otherwise, we reserve the right to ask the life assured to be reviewed by an appointed physician.