WMG = WMG || {}; WMG.namespace("TurnKey"); WMG.TurnKey = (function () { var closeFlag = 0; var jsonOutput, parsedFile, timeout; var wmgSignUpFormOptions = { callBacks: { onSuccess: function () { if (!WMG.Utils.isUser("administrator") && !WMG.Utils.isUser("Reviewer")) { closeFlag++; if (closeFlag === 1) { clearTimeout(timeout); } if (closeFlag === 2) { setTimeout(hideToaster, 5000); jQuery.cookie("turnkeyPassCookie", 1); } } } } }; var pageNameOption = {}; function OmniPrep(omniVars, description) { if (typeof omniVars === "string") { s_dtm.linkTrackVars = 'events'; s_dtm.linkTrackEvents = omniVars; s_dtm.events = omniVars; } else { s_dtm.linkTrackVars = Object.keys(omniVars); s_dtm = jQuery.extend(s_dtm, omniVars); } s_dtm.tl(this, 'o', description); } function hideToaster() { jQuery("#lightBoxContent.lightBoxContent.tkt").removeClass('show_toaster').addClass('hide_toaster'); } function sendOmnitureEvent() { var omniVars = {}; omniVars.events = "event63"; omniVars.linkTrackEvents = "event63"; s_account = digitalData.settings.reportSuites; var turnkeyLightboxDescription = s_dtm.pageName + ':Email Sign-up Form:Toaster'; OmniPrep(omniVars, turnkeyLightboxDescription); } var scrollHandler = function () { var maxScroll = jQuery(document).height() - jQuery(window).height(); var scrollValue; var timeOutval = parsedFile.field_toaster_timeout; var toasterPos = parsedFile.field_toaster_position; var displayrate = parsedFile.field_display_rates; var tkeyHt = parsedFile.field_turnkey_height; if (toasterPos == 'From Bottom') { scrollValue = maxScroll - tkeyHt; } else { scrollValue = tkeyHt; } if (jQuery(this).scrollTop() >= scrollValue && (jQuery.cookie('turnkeyPassCookie') == null || jQuery.cookie('turnkeyPassCookie') == undefined)) { jQuery("#lightBoxContent.lightBoxContent.tkt").removeClass('hidetoaster').addClass('show_toaster'); var turnkeyLightboxOmniVars = {}; turnkeyLightboxOmniVars.eVar52 = 'Toaster:Email Sign-up Form'; turnkeyLightboxOmniVars.events = "event62"; turnkeyLightboxOmniVars.linkTrackEvents = "event62"; s_account = digitalData.settings.reportSuites; var turnkeyLightboxDescription = digitalData.page.pageInfo.pageName + ':Email Sign-up Form:Toaster'; OmniPrep(turnkeyLightboxOmniVars, turnkeyLightboxDescription); jQuery("#tktContainer .lightBoxContent.tkt .submit").live("click", function () { sendOmnitureEvent(); }) jQuery("#lightBoxContent.lightBoxContent.tkt .lightBoxClose.turnKeyClose a").click(function () { hideToaster(); if (!WMG.Utils.isUser("administrator") && !WMG.Utils.isUser("Reviewer")) { jQuery.cookie("turnkeyPassCookie", 1); } }); if (!WMG.Utils.isUser("administrator") && !WMG.Utils.isUser("Reviewer")) { timeout = setTimeout(hideToaster, timeOutval); var touchStart = ((document.ontouchstart !== null) ? 'click' : 'touchstart'); jQuery("#tktContainer .lightBoxContent").live({ mouseover: function () { clearTimeout(timeout); }, mouseout: function () { timeout = setTimeout(hideToaster, timeOutval); }, focus: function () { clearTimeout(timeout); jQuery("#tktContainer .lightBoxContent").die('mouseout'); }, blur: function () { timeout = setTimeout(hideToaster, timeOutval); jQuery("#tktContainer .lightBoxContent").live('mouseout', function () { timeout = setTimeout(hideToaster, timeOutval); }); } }); jQuery(".lightBoxContent.tkt").live({ touchstart: function () { clearTimeout(timeout); }, touchcancel: function () { timeout = setTimeout(hideToaster, timeOutval); } }); } jQuery(window).unbind('scroll', scrollHandler); } }; var createToaster = function () { var template; jsonOutput = jQuery(".view-id-turnkey_lightbox_toaster.view-display-id-block_2 .view-content").html(); var initiateTkt = function () { jQuery("body").addClass("toaster"); SplashLightbox.init('{"blockSelector" : "#tktContainer", "isLightBox":"lightbox","displayRate":"' + parsedFile.field_display_rates + '","cookieName":"turnkey-toaster-cookie","lboxHeight":"200","lboxWidth":"800"}'); $jq18('#tktContainer .lightBoxContent.tkt #lightBoxSignup').wmgSignUpForm(wmgSignUpFormOptions); if (ONEPAGE.mq.tabletNarrower) { $jq18('body > .lightBoxContent.tkt #lightBoxSignup').wmgSignUpForm(wmgSignUpFormOptions); } }; if (jsonOutput !== null && JSON.parse(jsonOutput.trim()).length > 0) { jsonOutput = jsonOutput.trim(); parsedFile = JSON.parse(jsonOutput)[0].parent; parsedFile.title = parsedFile.title.substring(0, 204); if (parsedFile.field_newsletter_id !== "" && parsedFile.field_newsletter_id !== null) { if (parsedFile.field_mailing_list_params_toast !== null && parsedFile.field_mailing_list_params_toast !== "" && parsedFile.field_mailing_list_params_toast !== undefined) { var mlistArr = parsedFile.field_mailing_list_params_toast.split("&"); var targetElement = jQuery('.turnKeyToaster .primary-list-values'); createMailinglistParams(mlistArr, targetElement); } if (parsedFile.field_mailing_list_params_se !== null && parsedFile.field_mailing_list_params_se !== "" && parsedFile.field_mailing_list_parameters_se !== undefined) { var mlistArr = parsedFile.field_mailing_list_params_se.split("&"); var targetElement = jQuery('.turnKeyToaster .secondary-list-values'); createMailinglistParams(mlistArr, targetElement); } template = jQuery('.turnKeyToaster').html(); } var html = template.supplant(parsedFile); jQuery('#tktContainer').append(html); if (parsedFile.field_preview_mode.toLowerCase() === 'true') { if (WMG.Utils.isUser("administrator") || WMG.Utils.isUser("Reviewer")) { initiateTkt(); jQuery(window).scroll(scrollHandler); } } else { initiateTkt(); jQuery(window).scroll(scrollHandler); } } } var createMailinglistParams = function (params, targetElement) { if (params != "") { params.shift(); var mlistObj = {}; jQuery.each(params, function (key, value) { var listArr = value.split("=") mlistObj[listArr[0]] = listArr[1]; }); jQuery.each(mlistObj, function (key, value) { if (targetElement.find("input[name='" + key + "']").length > 0) { targetElement.find("input[name='" + key + "']").attr("value", value); } else { targetElement.append('') } }); } } var createTurnKeyLightbox = function () { var jsonOutput = jQuery(".view-id-turnkey_lightbox_toaster.view-display-id-block_1 .view-content").html(); if (jsonOutput !== null && JSON.parse(jsonOutput.trim()).length > 0) { jQuery("body").addClass("tklightbox"); jsonOutput = jsonOutput.trim(); var parsedFile = JSON.parse(jsonOutput)[0].parent; parsedFile.title = parsedFile.title.substring(0, 204); turnkeyLightboxTitle = parsedFile.title.substring(0, 204); var template; var lightboxType = ""; function captureOmniture() { var omniVars = {}; omniVars.eVar52 = "Lightbox:" + lightboxType; omniVars.events = "event62"; omniVars.linkTrackEvents = "event62"; omniVars.description = digitalData.page.pageInfo.pageName + ":" + turnkeyLightboxTitle + ":Lightbox"; OmniPrep(omniVars, omniVars.description); function sendLightboxEvent() { var omniVars = {}; omniVars.events = "event63"; omniVars.linkTrackEvents = "event63"; s_account = digitalData.settings.reportSuites; var turnkeyLightboxDescription = s_dtm.pageName + ':Email Sign-up Form:Lightbox'; OmniPrep(omniVars, turnkeyLightboxDescription); } jQuery("#tklbContainer .lightBoxContent.tklb .submit").live("click", function () { sendLightboxEvent(); }) $jq18('.lightBoxContent.tklb .merchLink a').on("click", function () { var description = digitalData.page.pageInfo.pageName + ":lightbox:" + turnkeyLightboxTitle + ":click"; OmniPrep(omniVars, description); }); $jq18('.lightBoxContent.tklb .genericCTA a').on("click", function () { var description = digitalData.page.pageInfo.pageName + ":lightbox:" + turnkeyLightboxTitle + ":click"; OmniPrep(omniVars, description); }); $jq18('.lightBoxContent.tklb .lightBoxClose a').on("click", function () { var description = digitalData.page.pageInfo.pageName + ":Lightbox: Close:Click"; OmniPrep(omniVars, description); }); }; if (parsedFile.field_newsletter_id !== "" && parsedFile.field_newsletter_id !== null) { if (parsedFile.field_mailing_list_parameters !== null && parsedFile.field_mailing_list_parameters !== "" && parsedFile.field_mailing_list_parameters !== undefined) { var mlistArr = parsedFile.field_mailing_list_parameters.split("&"); var targetElement = jQuery('#turnkeyLightbox .mlistTemplate .primary-list-values'); createMailinglistParams(mlistArr, targetElement); } if (parsedFile.field_mailing_list_parameters_se !== null && parsedFile.field_mailing_list_parameters_se !== "" && parsedFile.field_mailing_list_parameters_se !== undefined) { var mlistArr = parsedFile.field_mailing_list_parameters_se.split("&"); var targetElement = jQuery('#turnkeyLightbox .mlistTemplate .secondary-list-values'); createMailinglistParams(mlistArr, targetElement); } template = jQuery('#turnkeyLightbox .mlistTemplate').html(); lightboxType = "Newsletter"; } else if (parsedFile.field_merch_item_name !== "" && parsedFile.field_merch_item_name !== null) { template = jQuery('#turnkeyLightbox .merchTemplate').html(); lightboxType = "Product Promotion"; } else { var ctaObj = jQuery.parseJSON(parsedFile.field_cta_button_1); var ctaDom = ''; for (var key in ctaObj) { var ctaDiv = document.createElement('div'); ctaDiv.className = "genericCTA"; var ctaA = document.createElement('a'); ctaA.setAttribute("href", ctaObj[key]); ctaA.setAttribute("target", "_blank"); ctaA.innerHTML = key; ctaDiv.appendChild(ctaA); jQuery('#turnkeyLightbox .genericDesc').append(ctaDiv); } template = jQuery('#turnkeyLightbox .genericTemplate').html(); lightboxType = "General"; } var html = template.supplant(parsedFile); jQuery('#tklbContainer').append(html); if (parsedFile.field_trigger_id === "") { jQuery('#tklbContainer #triggerId').remove(); } if (parsedFile.field_data_ext === "") { jQuery('#tklbContainer #dataext').remove(); } var hideImage = {}; hideImage.callBacks = { "onSuccess": function () { jQuery(".turnKeyImageWrapper").hide(); } }; var initiateTklb = function () { SplashLightbox.init('{"blockSelector" : "#tklbContainer", "isLightBox":"lightbox","displayRate":"' + parsedFile.field_display_rate + '","cookieName":"turnkey-lightbox-cookie","lboxHeight":"400","lboxWidth":"800"}'); pageNameOption.customPageName = turnkeyLightboxTitle; $jq18('#tklbContainer .lightBoxContent.tklb #lightBoxSignup').wmgSignUpForm(pageNameOption); if (ONEPAGE.mq.tabletNarrower) { $jq18('body > .lightBoxContent.tklb #lightBoxSignup').wmgSignUpForm(pageNameOption); } $jq18(window).on("load", function () { captureOmniture(); }) } if (parsedFile.field_preview_mode.toLowerCase() === 'true') { if (WMG.Utils.isUser("administrator") || WMG.Utils.isUser("Reviewer")) { initiateTklb(); } } else { initiateTklb(); } } }; var init = function (options) { jQuery.extend(true, wmgSignUpFormOptions, options); if (wmgSignUpFormOptions.option === "createToaster") { if ((ONEPAGE.mq.tabletNarrower && !jQuery("body > .lightBoxContent").is(":visible")) || (ONEPAGE.mq.tabletWider)) { createToaster(); } } else { jQuery.extend(true, pageNameOption, options); createTurnKeyLightbox(); } } return { init: init } })();