Skip to content

Instantly share code, notes, and snippets.

{
"plugin_id": "newsletter_mobile_support",
"plugin_type": "widget",
"name": "Mobile Newsletter (Support)",
"edit_page_url": "http://www.cnn.com/2016/10/14/travel/bourdain-parts-unknown-sichuan-essay/index.html",
"form_schema": [
{
"default_value": "http://i.cdn.turner.com/cnn/.element/img/4.0/political-newsletter/5things-logo-small.png ",
"field_type": "image",
"name": "image",
{
"plugin_id": "newsletter_desktop_support",
"plugin_type": "widget",
"name": "Desktop Newsletter (Support)",
"edit_page_url": "http://www.cnn.com/2016/10/14/travel/bourdain-parts-unknown-sichuan-essay/index.html",
"form_schema": [
{
"default_value": "http://i2.cdn.turner.com/cnn/2016/images/10/19/reverse-5things-logo-small-v2.png",
"field_type": "image",
"name": "image",
!function(){window.optimizelyMoat=window.optimizelyMoat||[],window.optimizely=window.optimizely||[];var a=function(a){for(var f,h,b=a.data.campaign,c=b.name,d=a.data.decision.isCampaignHoldback?"holdback":"treatment",e=a.data.decision.experimentId,g=a.data.decision.variationId,i=0;i<b.experiments.length;i++)e===b.experiments[i].id&&(f=null==b.experiments[i].name?b.experiments[i].audienceName:b.experiments[i].name,experienceIndex=i);for(var j=0;j<b.experiments[experienceIndex].variations.length;j++)g===b.experiments[experienceIndex].variations[j].id&&(h=b.experiments[experienceIndex].variations[j].name);if("equal_priority"===b.policy)var k=c+":"+f+":"+h+":"+d;else{if(redirect_campaign[key].isCampaignHoldback)return;var k=f+":"+h}window.optimizelyMoat.push(k),console.log("Moat pushed",k)};window.optimizely.push({type:"addListener",filter:{type:"lifecycle",name:"campaignDecided"},handler:a});var b=function(){var a=optimizely.get("state");if(null!=a.getRedirectInfo()){var b=a.getCampaignStates({visitorRedirected:
var state = optimizely.get('state');
var string = state.getDecisionString({"campaignId":campaignId});
if (string) {
window.optimizelyMoat = window.optimizelyMoat || [];
window.optimizelyMoat.push(string);
}
/*define handler function to be executed when each campaign is decided as the page loads.
From that event.data object, pull in Experiment Name: variation Name for A/B Tests, Campaign:experiment:Variation:Holdback/treatment for Campaigns
Then push values as strings to optimizelyMoat array*/
var campaignDecided = function(event) {
var campaign = event.data.campaign;
var campaignName = campaign.name;
var holdback = (event.data.decision.isCampaignHoldback ? "holdback" : "treatment");
var experienceId = event.data.decision.experimentId;
var experienceName;
var variationId = event.data.decision.variationId;
{
"plugin_id": "newsletter_mobile_support",
"plugin_type": "widget",
"name": "Mobile Newsletter (Support)",
"edit_page_url": "http://www.cnn.com/2016/10/03/health/nobel-prize-2016-physiology-medicine-yoshinori-ohsumi/index.html",
"form_schema": [
{
"default_value": "http://i.cdn.turner.com/cnn/.element/img/4.0/political-newsletter/5things-logo-small.png ",
"field_type": "image",
"name": "image",
{
"plugin_id": "newsletter_desktop_support",
"plugin_type": "widget",
"name": "Desktop Newsletter (Support)",
"edit_page_url": "http://www.cnn.com/2016/10/14/travel/bourdain-parts-unknown-sichuan-essay/index.html",
"form_schema": [
{
"default_value": "http://i2.cdn.turner.com/cnn/2016/images/10/19/reverse-5things-logo-small-v2.png",
"field_type": "image",
"name": "image",
@Danny-Driscoll
Danny-Driscoll / hero_change_template.js
Last active January 5, 2017 02:30
Apply JS Code by SPL for Optimizely Extension
var utils = window.optimizely.get('utils');
var cityDropdownText = '.styledComboBox label:first';
var selectedCity = '#SelectedCityId option:contains(' + extension.default_city + ')';
var heroImage = '.imageRotatorImg';
var headline = '.imageRotatorText';
var subtext = '.MediumHeroText';
var headlineLeftPos = extension.HL_LR + 'px';
var headlineTopPos = extension.HL_UD + 'px';
var subtextLeftPos = extension.ST_LR + 'px';
var suntextTopPos = extension.ST_UD + 'px';
//Define Function to get jQuery and bind events after Optimizely is initialized
var bindEvents = function(){
var $ = optimizely.get('jquery');
$(document).ready(function() {
console.log('Dom Ready');
if (window.location.href === 'http://www.relatedrentals.com/' || window.location.href === 'http://www.relatedrentals.com/apartment-rentals/apartment-search') {
//Bind to the submission on the two forms
console.log('URL Match');
$('#SearchAptBasicForm,#SearchAptForm').bind('submit', function() {
console.log('Form Submit');