mmRequestCallbacks[1]({"Scripts":[],"Campaigns":[{"Name":"T070_Homepage_Traffic_Split_LOWER_ENVs","Type":"ABnMVT","CSName":"cs_78659","HighLevelApiVersion":"1.27","PagePrefix":"","Scripts":[{"Name":"FS","Type":"script","Attrs":{"type":"text/javascript"},"Data":"campaign.events.on(\"lastRequest\",function(){Integrations.run(\"FullStory\",{account:1,campaign:campaign})});","Order":5000,"HighLevelApiVersion":"1.27"},{"Name":"Rendering","Type":"script","Attrs":{"type":"text/javascript"},"Data":"var config = {\n    \"selectorsToHide\": null,\n    \"useSecondRequest\": false,\n    \"elements\": null,\n    \"homepage\": {\n        \"includedUrls\": [\n            \"http*://localhost:4200\",\n            \"http*://localhost:4200/\",\n            \"http*://localhost:4200/?*\",\n            \"http*://localhost:4200?*\",\n            \"http*://localhost:4200/#*\",\n            \"http*://localhost:4200#*\",\n            \"http*://navstg.spirit.com\",\n            \"http*://navstg.spirit.com/\",\n            \"http*://navstg.spirit.com/?*\",\n            \"http*://navstg.spirit.com?*\",\n            \"http*://navstg.spirit.com/#*\",\n            \"http*://navstg.spirit.com#*\",\n            \"http*://performancetesting.spirit.com\",\n            \"http*://performancetesting.spirit.com/\",\n            \"http*://performancetesting.spirit.com/?*\",\n            \"http*://performancetesting.spirit.com?*\",\n            \"http*://performancetesting.spirit.com/#*\",\n            \"http*://performancetesting.spirit.com#*\",\n            \"http*://qa0*.nk.spirit.com\",\n            \"http*://qa0*.nk.spirit.com/\",\n            \"http*://qa0*.nk.spirit.com/?*\",\n            \"http*://qa0*.nk.spirit.com?*\",\n            \"http*://qa0*.nk.spirit.com/#*\",\n            \"http*://qa0*.nk.spirit.com#*\",\n            \"http*://dev0*.nk.spirit.com\",\n            \"http*://dev0*.nk.spirit.com/\",\n            \"http*://dev0*.nk.spirit.com/?*\",\n            \"http*://dev0*.nk.spirit.com?*\",\n            \"http*://dev0*.nk.spirit.com/#*\",\n            \"http*://dev0*.nk.spirit.com#*\",\n            \"http*://flystaging.spirit.com\",\n            \"http*://flystaging.spirit.com/\",\n            \"http*://flystaging.spirit.com/?*\",\n            \"http*://flystaging.spirit.com?*\",\n            \"http*://flystaging.spirit.com/#*\",\n            \"http*://flystaging.spirit.com#*\"\n        ],\n        \"excludedUrls\": [],\n        \"elements\": []\n    }\n};\n\ncampaign.scope.getConditions = getConditions;\n\n// t070 - flag\nif (typeof Storage !== 'undefined') {\n    // web storage supported\n    let e = window.localStorage.getItem(\"mmSpirit_new_homepage\");\n    null === e && window.localStorage.setItem(\"mmSpirit_new_homepage\", \"false\");\n} else {\n    // web storage not supported\n    console.log(\"Web Storage not supported...\");\n}\n\nif (config.useSecondRequest) {\n    renderer.hide(config.selectorsToHide, \"ucb\");\n    when(isVisitorQualified())\n        .done(function () {\n            renderer.getContent().always(function () {\n                render();\n                renderer.show(\"ucb\");\n            })\n        })\n        .fail(function () {\n            renderer.show(\"ucb\");\n        });\n} else {\n    render();\n}\n\nfunction render() {\n    renderCss();\n    renderJs();\n    campaign.events.trigger(\"lastRequest\");\n}\n\nfunction renderJs() {\n    var elementsToRender = campaign.getElements();\n    for (var i in elementsToRender) {\n        if (elementsToRender.hasOwnProperty(i)) {\n            var element = elementsToRender[i];\n            renderer.runVariantJs(element);\n            initContentSeen(element.Name);\n        }\n    }\n}\n\nfunction renderCss() {\n    var styles = campaign.getStyles();\n    if (styles.length) {\n        dom.addCss(styles);\n    }\n}\n\nfunction isVisitorQualified() {\n    if (window.isCampaignDesignMode) {\n        return true;\n    }\n    var rules = campaign.scope.qualificationRules || [];\n    var results = [];\n    for (var i = 0; i < rules.length; i++) {\n        var result = rules[i]();\n        if (typeof result.then !== \"function\") {\n            result = Deferred()[result ? \"resolve\" : \"reject\"]().promise();\n        }\n        results.push(result);\n    }\n    return when.apply(this, results);\n}\n\nfunction initContentSeen (name) {\n    spa.when(getConditions(name)).then(function (campaign) {\n        campaign.sendContentSeen();\n        var campaignName = campaign.getName();\n        window.MMExperience = window.MMExperience || {};\n        window.MMExperience[campaignName] = campaign.getExperience();\n    }.bind(this, campaign));\n}\n\nfunction getConditions(name) {\n    var elementConfig = config[name];\n    if (!elementConfig) {\n        return [];\n    }\n    return createConditions(elementConfig.elements, elementConfig.includedUrls, elementConfig.excludedUrls);\n}\n\nfunction createConditions(elements, includedUrls, excludedUrls) {\n    var i, conditions = [];\n    elements = elements || [];\n    includedUrls = includedUrls || [];\n    excludedUrls = excludedUrls || [];\n\n    for (i = 0; i < elements.length; i++) {\n        conditions.push(spa.conditions.element(elements[i]));\n    }\n\n    if (includedUrls.length > 0 && excludedUrls.length === 0) {\n        conditions.push(spa.conditions.location.apply(null, includedUrls));\n    } else if (includedUrls.length > 0 && excludedUrls.length > 0) {\n        conditions.push(spa.conditions.location.apply(null, includedUrls).not.apply(null, excludedUrls));\n    }\n\n    return conditions;\n}","Order":5999,"HighLevelApiVersion":"1.27"}],"Elements":[{"Name":"homepage","VariantName":"newhomepage","HTMLId":"Homepage","Data":[{"Type":"Css","Data":"\n","Attrs":{}},{"Type":"Html","Data":"\n","Attrs":{}},{"Type":"Script","Data":"\nspa.when(campaign.scope.getConditions(element.Name)).then(function() { let mm_Flag=window.localStorage.getItem(\"mmSpirit_new_homepage\");null!==mm_Flag\u0026\u0026\"false\"!==mm_Flag||window.localStorage.setItem(\"mmSpirit_new_homepage\",\"true\"); });\n","Attrs":{}},{"Type":"Html","Data":"","Attrs":{}}],"Order":0}],"Recommendations":[]},{"Name":"T070_Homepage_Traffic_Split_PROD","Type":"ABnMVT","CSName":"cs_79067","HighLevelApiVersion":"1.27","PagePrefix":"","Scripts":[{"Name":"GA","Type":"script","Attrs":{"type":"text/javascript"},"Data":"campaign.events.on(\"lastRequest\",function(){Integrations.run(\"Google Universal\",{campaign:campaign,account:\"UA-206943-1\",dimension:null,persist:false})});","Order":5000,"HighLevelApiVersion":"1.27"},{"Name":"FS","Type":"script","Attrs":{"type":"text/javascript"},"Data":"campaign.events.on(\"lastRequest\",function(){Integrations.run(\"FullStory\",{account:1,campaign:campaign})});","Order":5000,"HighLevelApiVersion":"1.27"},{"Name":"Rendering","Type":"script","Attrs":{"type":"text/javascript"},"Data":"var config = {\n    \"selectorsToHide\": null,\n    \"useSecondRequest\": false,\n    \"elements\": null,\n    \"homepage\": {\n        \"includedUrls\": [\n            \"http*://www.spirit.com\",\n            \"http*://www.spirit.com/\",\n            \"http*://www.spirit.com?*\",\n            \"http*://www.spirit.com/?*\",\n            \"http*://www.spirit.com#*\",\n            \"http*://www.spirit.com/#*\"\n        ],\n        \"excludedUrls\": [],\n        \"elements\": []\n    }\n};\n\ncampaign.scope.getConditions = getConditions;\n\n// t070 - flag\nif (typeof Storage !== 'undefined') {\n    // web storage supported\n    let e = window.localStorage.getItem(\"mmSpirit_new_homepage\");\n    null === e && window.localStorage.setItem(\"mmSpirit_new_homepage\", \"false\");\n} else {\n    // web storage not supported\n    console.log(\"Web Storage not supported...\");\n}\n\nif (config.useSecondRequest) {\n    renderer.hide(config.selectorsToHide, \"ucb\");\n    when(isVisitorQualified())\n        .done(function () {\n            renderer.getContent().always(function () {\n                render();\n                renderer.show(\"ucb\");\n            })\n        })\n        .fail(function () {\n            renderer.show(\"ucb\");\n        });\n} else {\n    render();\n}\n\nfunction render() {\n    renderCss();\n    renderJs();\n    campaign.events.trigger(\"lastRequest\");\n}\n\nfunction renderJs() {\n    var elementsToRender = campaign.getElements();\n    for (var i in elementsToRender) {\n        if (elementsToRender.hasOwnProperty(i)) {\n            var element = elementsToRender[i];\n            renderer.runVariantJs(element);\n            initContentSeen(element.Name);\n        }\n    }\n}\n\nfunction renderCss() {\n    var styles = campaign.getStyles();\n    if (styles.length) {\n        dom.addCss(styles);\n    }\n}\n\nfunction isVisitorQualified() {\n    if (window.isCampaignDesignMode) {\n        return true;\n    }\n    var rules = campaign.scope.qualificationRules || [];\n    var results = [];\n    for (var i = 0; i < rules.length; i++) {\n        var result = rules[i]();\n        if (typeof result.then !== \"function\") {\n            result = Deferred()[result ? \"resolve\" : \"reject\"]().promise();\n        }\n        results.push(result);\n    }\n    return when.apply(this, results);\n}\n\nfunction initContentSeen (name) {\n    spa.when(getConditions(name)).then(function (campaign) {\n        campaign.sendContentSeen();\n        var campaignName = campaign.getName();\n        window.MMExperience = window.MMExperience || {};\n        window.MMExperience[campaignName] = campaign.getExperience();\n    }.bind(this, campaign));\n}\n\nfunction getConditions(name) {\n    var elementConfig = config[name];\n    if (!elementConfig) {\n        return [];\n    }\n    return createConditions(elementConfig.elements, elementConfig.includedUrls, elementConfig.excludedUrls);\n}\n\nfunction createConditions(elements, includedUrls, excludedUrls) {\n    var i, conditions = [];\n    elements = elements || [];\n    includedUrls = includedUrls || [];\n    excludedUrls = excludedUrls || [];\n\n    for (i = 0; i < elements.length; i++) {\n        conditions.push(spa.conditions.element(elements[i]));\n    }\n\n    if (includedUrls.length > 0 && excludedUrls.length === 0) {\n        conditions.push(spa.conditions.location.apply(null, includedUrls));\n    } else if (includedUrls.length > 0 && excludedUrls.length > 0) {\n        conditions.push(spa.conditions.location.apply(null, includedUrls).not.apply(null, excludedUrls));\n    }\n\n    return conditions;\n}","Order":5999,"HighLevelApiVersion":"1.27"}],"Elements":[{"Name":"homepage","VariantName":"newhomepage","HTMLId":"Homepage","Data":[{"Type":"Css","Data":"\n","Attrs":{}},{"Type":"Html","Data":"\n","Attrs":{}},{"Type":"Script","Data":"\nspa.when(campaign.scope.getConditions(element.Name)).then(function() { let mm_Flag=window.localStorage.getItem(\"mmSpirit_new_homepage\");null!==mm_Flag\u0026\u0026\"false\"!==mm_Flag||window.localStorage.setItem(\"mmSpirit_new_homepage\",\"true\"); });\n","Attrs":{}},{"Type":"Html","Data":"","Attrs":{}}],"Order":0}],"Recommendations":[]},{"Name":"T082_Colombia Shortcut Boarding Suppression Campaign","Type":"ABnMVT","CSName":"cs_81030","HighLevelApiVersion":"1.27","PagePrefix":"MDgxMDMw","Scripts":[{"Name":"Rendering","Type":"script","Attrs":{"type":"text/javascript"},"Data":"var config = {\n    \"selectorsToHide\": \"\",\n    \"useSecondRequest\": true,\n    \"element1\": {\n        \"includedUrls\": [\n            \"https://www.spirit.com/book/options\",\n            \"https://www.spirit.com/book/options?*\",\n            \"https://www.spirit.com/book/options#*\",\n            \"https://www.spirit.com/book/options/\",\n            \"https://www.spirit.com/book/options/?*\",\n            \"https://www.spirit.com/book/options/#*\"\n        ],\n        \"excludedUrls\": [],\n        \"elements\": []\n    },\n    \"elements\": null\n};\n\ncampaign.scope.getConditions = getConditions;\n\nif (config.useSecondRequest) {\n    renderer.hide(config.selectorsToHide, \"ucb\");\n    when(isVisitorQualified())\n        .done(function () {\n            renderer.getContent().always(function () {\n                render();\n                renderer.show(\"ucb\");\n            })\n        })\n        .fail(function () {\n            renderer.show(\"ucb\");\n        });\n} else {\n    render();\n}\n\nfunction render() {\n    renderCss();\n    renderJs();\n    campaign.events.trigger(\"lastRequest\");\n}\n\nfunction renderJs() {\n    var elementsToRender = campaign.getElements();\n    for (var i in elementsToRender) {\n        if (elementsToRender.hasOwnProperty(i)) {\n            var element = elementsToRender[i];\n            renderer.runVariantJs(element);\n            initContentSeen(element.Name);\n        }\n    }\n}\n\nfunction renderCss() {\n    var styles = campaign.getStyles();\n    if (styles.length) {\n        dom.addCss(styles);\n    }\n}\n\nfunction isVisitorQualified() {\n    if (window.isCampaignDesignMode) {\n        return true;\n    }\n    var rules = campaign.scope.qualificationRules || [];\n    var results = [];\n    for (var i = 0; i < rules.length; i++) {\n        var result = rules[i]();\n        if (typeof result.then !== \"function\") {\n            result = Deferred()[result ? \"resolve\" : \"reject\"]().promise();\n        }\n        results.push(result);\n    }\n    return when.apply(this, results);\n}\n\nfunction initContentSeen (name) {\n    spa.when(getConditions(name)).then(function (campaign) {\n        campaign.sendContentSeen();\n        var campaignName = campaign.getName();\n        window.MMExperience = window.MMExperience || {};\n        window.MMExperience[campaignName] = campaign.getExperience();\n    }.bind(this, campaign));\n}\n\nfunction getConditions(name) {\n    var elementConfig = config[name];\n    if (!elementConfig) {\n        return [];\n    }\n    return createConditions(elementConfig.elements, elementConfig.includedUrls, elementConfig.excludedUrls);\n}\n\nfunction createConditions(elements, includedUrls, excludedUrls) {\n    var i, conditions = [];\n    elements = elements || [];\n    includedUrls = includedUrls || [];\n    excludedUrls = excludedUrls || [];\n\n    for (i = 0; i < elements.length; i++) {\n        conditions.push(spa.conditions.element(elements[i]));\n    }\n\n    if (includedUrls.length > 0 && excludedUrls.length === 0) {\n        conditions.push(spa.conditions.location.apply(null, includedUrls));\n    } else if (includedUrls.length > 0 && excludedUrls.length > 0) {\n        conditions.push(spa.conditions.location.apply(null, includedUrls).not.apply(null, excludedUrls));\n    }\n\n    return conditions;\n}","Order":5999,"HighLevelApiVersion":"1.27"},{"Name":"Fullstory","Type":"script","Attrs":{"type":"text/javascript"},"Data":"campaign.events.on(\"lastRequest\",function(){Integrations.run(\"FullStory\",{account:1,campaign:campaign})});","Order":5000,"HighLevelApiVersion":"1.27"},{"Name":"GA","Type":"script","Attrs":{"type":"text/javascript"},"Data":"campaign.events.on(\"lastRequest\",function(){Integrations.run(\"Google Universal\",{campaign:campaign,account:\"UA-206943-1\",dimension:null,persist:!1})});","Order":5000,"HighLevelApiVersion":"1.27"},{"Name":"C554073945","Type":"script","Attrs":{"type":"text/javascript"},"Data":"/*configuration block begin*/\nvar config = {\n\t\"actionName\": \"Custom Action 1\",\n\t\"value\": 1,\n\t\"attr\": \"\",\n\t\"includedUrls\": [],\n\t\"excludedUrls\": []\n};\n/*configuration block end*/\n\n// actions.set(config.actionName, config.value, config.attr).send();","Order":4000,"HighLevelApiVersion":"1.27"},{"Name":"Qualifying","Type":"script","Attrs":{"type":"text/javascript"},"Data":"function isQualified(){\n    var def = Deferred()\n\n    when(function() {\n        const attr = visitor.getAttr(\"Origin\")\n        return attr === \"AXM\"\n            || attr === \"BAQ\"\n            || attr === \"BOG\"\n            || attr === \"BGA\"\n            || attr === \"CLO\"\n            || attr === \"CTG\"\n            || attr === \"MDE\"\n    }).done(function() {\n        def.resolve()\n    })\n\n    return def\n}\n\ncampaign.scope.qualificationRules = campaign.scope.qualificationRules || [];\ncampaign.scope.qualificationRules.push(isQualified);","Order":5000,"HighLevelApiVersion":"1.27"}],"Elements":[],"Recommendations":[]}],"MRRules":[],"PersistData":[{"Name":"srv","IsGlobal":false,"Value":"prodiadcgus10","Expiration":365},{"Name":"bid","IsGlobal":false,"Value":"prodiadcgus10","Expiration":0.00694},{"Name":"pd","IsGlobal":false,"Value":"X4qOwIBExLJEMoynQ0JkZ-7XsgUCWAZDGRzsHAr4osQ=|AQAAAApDH4sIAAAAAAAEAGNh-LPaYX-L6K31DMyZiSmMQgyMTgxTX_ULMzK81LhWuerxTQ8YzQAE_6GAgc0lsyg1uYSxRZQRJA4GMEkQzcTgbMzIoHc-uW1yiyhYG1Bpi-j__0DlYB2MR24zMQiZsjAw3DZhZOhgsP2wB4fCQ_eZGLitgAoZGdpsGBk2AO1idAUAdGg95rgAAAA=","Expiration":365}],"SiteInfo":[{"Url":"spirit.com","ID":1855}],"SystemData":[{"Version":"1.0","RequestId":1,"ResponseId":1}],"GenInfo":{"T070_Homepage_Traffic_Split_LOWER_ENVs":{"homepage":"newhomepage"},"T070_Homepage_Traffic_Split_PROD":{"homepage":"newhomepage"}},"ServerAttributes":{},"Iteration":"SmMMzMmVhbtjhKJzkiW3esmkuFs","Packages":["mmpackage-1.27.js"]});