{"version":3,"sources":["dfp.js"],"names":["DFP","window","config","ad_slots","custom_targeting","googletag","$","JSON","parse","defined_slots","inserted_slots","extra_ids","rendered","resize_timeout","resize_width","innerWidth","document","documentElement","clientWidth","body","onResize","width","clearTimeout","setTimeout","refresh","addEventListener","attachEvent","onLoad","process","i","id","length","defineSlot","account","name","sizes","sizeMapping","outofpage","companion","DFP_ad_slot","options","slot","mapping","defineOutOfPageSlot","defineSizeMapping","addService","companionAds","pubads","screenSize","addSize","build","renderEnded","event","isEmpty","extra","original_slot","size","j","stringify","slot_name","slot_id","closest","after","cmd","push","definedSlot","setCollapseEmptyDiv","enableServices","apstag","fetchBids","slots","slotID","slotName","timeout","bids","setDisplayBids","display","remove","element","position","ad","template","replace","div","js","script","createElement","insertAdjacentHTML","innerHTML","getElementById","appendChild","parentNode","removeChild","setTargeting","hasOwnProperty","slots_to_refresh","resizeFlexAds","each","resizeFlexIframe","this","$slot","flex","attr","iframe","find","split","ratio","scaleHt","outerWidth","css","hasClass","parseInt","processA9","slotId","processNewAds","newAdSlot","cf_right3Ads","expandedSize","cf_right4Ads","isreturn","fixAmazonAdsProblem","outerHeight","height","hideAdsCloseButton","hide","showAdsCloseButton","console","log","docwidth","append","show","offsetWidth","on","e","preventDefault","$stickyDiv","top","$scrollTopHeader","animate","jQuery","removeClass","ready","DFP_config","DFP_ad_slots","DFP_custom_targeting"],"mappings":"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","file":"dfp-custom-light.min.js","sourcesContent":["/**\r\n * DFP Custom\r\n * global DFP_config, DFP_ad_units, DFP_custom_targeting\r\n */\r\nvar DFP = DFP || {}; \r\n(function ( window, DFP, config, ad_slots, custom_targeting, googletag,$ ) {\r\n ad_slots = JSON.parse(ad_slots);\r\n\r\n //initialize Amazon A9\r\n// !function(a9,a,p,s,t,A,g){if(a[a9])return;function q(c,r){a[a9]._Q.push([c,r])}a[a9]={init:function(){q(\"i\",arguments)},fetchBids:function(){q(\"f\",arguments)},setDisplayBids:function(){},targetingKeys:function(){return[]},_Q:[]};A=p.createElement(s);A.async=!0;A.src=t;g=p.getElementsByTagName(s)[0];g.parentNode.insertBefore(A,g)}(\"apstag\",window,document,\"script\",\"//c.amazon-adsystem.com/aax2/apstag.js\");\r\n// apstag.init({\r\n// pubID: '29eba328-6960-4aaa-a6e7-6878d8d7ed66',\r\n// adServer: 'googletag',\r\n// simplerGPT: true\r\n// });\r\n\r\n\r\n\t// Early exit\r\n\tif ( ! config || ! ad_slots || ! custom_targeting ) {\r\n\t\treturn false;\r\n\t}\r\n\r\n\t// Registry of ad slot instances\r\n\tDFP.defined_slots = {};\r\n\tDFP.inserted_slots = {};\r\n\tDFP.extra_ids = [];\r\n\tDFP.rendered = false; // Backup check\r\n\r\n\t/**\r\n\t * On Resize\r\n\t */\r\n\tvar resize_timeout = null,\r\n\t\tresize_width = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth\r\n\t;\r\n\tvar onResize = function ( ) {\r\n\t\tvar width = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;\r\n\t\tif ( width === resize_width ) { \r\n\t\t\t// Fake resize!\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tresize_width = width;\r\n\r\n\t\t// Debounce resize\r\n\t\tclearTimeout(resize_timeout);\r\n\t\tresize_timeout = setTimeout(DFP.refresh, 500);\r\n\t};\r\n\tif ( window.addEventListener ) {\r\n\t\twindow.addEventListener('resize', onResize, false);\r\n\t} else {\r\n\t\twindow.attachEvent('onresize', onResize);\r\n\t}\r\n\r\n\t/**\r\n\t * On Load\r\n\t */\r\n\tvar onLoad = function ( ) {\r\n\t\t// Backup check to make sure ads rendered (they should have by now)\r\n\t\tif ( ! DFP.rendered ) {\r\n // 05/14/2018 - This has been disabled because this variable seems still false\r\n // after the Load giving a flickering on ads\r\n // In addition, if slots are not filled, the code should be reviewed instead of refreshing the process\r\n\t\t\t//DFP.refresh();\r\n\t\t}\r\n\t};\r\n\tif ( window.addEventListener ) {\r\n\t\twindow.addEventListener('load', onLoad, false);\r\n\t} else {\r\n\t\twindow.attachEvent('onload', onLoad);\r\n\t}\r\n\r\n\t/**\r\n\t * Process Slots\r\n\t * @param object ad_slots Slots\r\n\t */\r\n\tDFP.process = function ( ad_slots ) {\r\n\t\t\r\n\t\tvar i, sizeMapping;\r\n\r\n for (var i in ad_slots) {\r\n\r\n\t\t\tif ( DFP.defined_slots[ad_slots[i].id] ) { continue; } // Don't define slots twice!!!\r\n if($('#' + ad_slots[i].id).length){\r\n // Define Slot\r\n DFP.defined_slots[ad_slots[i].id] = DFP.defineSlot(config.account, ad_slots[i].name, ad_slots[i].sizes, ad_slots[i].id, ad_slots[i].sizeMapping, {\r\n outofpage: ad_slots[i].outofpage, \r\n companion: ad_slots[i].companion\r\n });\r\n\r\n // Add size mapping, if applicable\r\n// if ( ad_slots[i].sizeMapping && (sizeMapping = DFP.sizeMapping(ad_slots[i].sizeMapping)) ) {\r\n// DFP.defined_slots[ad_slots[i].id].defineSizeMapping(sizeMapping);\r\n// }\r\n\r\n // Reference to original ad slot\r\n DFP.defined_slots[ad_slots[i].id].DFP_ad_slot = ad_slots[i];\r\n \r\n }\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n\t * Define Slot\r\n\t * @param string account\r\n\t * @param string name\r\n\t * @param string|false sizes\r\n\t * @param string id\r\n\t * @param object options\r\n\t * @return googletag.defineSlot\r\n\t */\r\n\tDFP.defineSlot = function ( account, name, sizes, id, sizeMapping, options ) {\r\n\t\tvar slot, mapping;\r\n \r\n\t\t// Out of page or regular slot?\r\n\t\tif ( options.outofpage ) {\r\n\t\t\tslot = googletag.defineOutOfPageSlot('/' + account + '/' + name, id);\r\n\t\t} else {\r\n\t\t\tslot = googletag.defineSlot('/' + account + '/' + name, JSON.parse(sizes), id);\r\n\t\t}\r\n \r\n // Add size mapping, if applicable\r\n if ( sizeMapping && (mapping = DFP.sizeMapping(sizeMapping)) ) {\r\n slot.defineSizeMapping(mapping);\r\n }\r\n\r\n\t\t// Companion ad?\r\n\t\tif ( options.companion ) {\r\n\t\t\tslot = slot.addService(googletag.companionAds());\r\n\t\t}\r\n\r\n\t\t// Always add the pubads service\r\n\t\treturn slot.addService(googletag.pubads());\r\n\t};\r\n\r\n\t/**\r\n\t * Size Mapping\r\n\t * @param object mapping\r\n\t * @return googletag.sizeMapping\r\n\t */\r\n\tDFP.sizeMapping = function ( mapping ) {\r\n\t\tif ( ! mapping ) { \r\n\t\t\treturn undefined;\r\n\t\t}\r\n\r\n\t\tvar sizeMapping = googletag.sizeMapping(); // Create\r\n\t\tvar screenSize;\r\n\r\n\t\tfor ( screenSize in mapping ) {\r\n\t\t\tsizeMapping.addSize(JSON.parse(screenSize), JSON.parse(mapping[screenSize])); // Add Size\r\n\t\t}\r\n\r\n\t\treturn sizeMapping.build(); // Build\r\n\t};\r\n\r\n\tDFP.renderEnded = function ( event ) {\r\n\t\tif ( ! event.slot.DFP_ad_slot ) { \r\n\t\t\t// This wasn't a slot we defined!\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// Don't force fill\r\n\t\tif ( event.isEmpty ) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// Note that we are here\r\n\t\tDFP.rendered = true;\r\n\r\n\t\t// Extras\r\n\t\tif ( event.slot.DFP_ad_slot.extra ) {\r\n\t\t\t(function ( event, original_slot ) {\r\n \t\t\t\t \r\n\t\t\t\t// Search for size match\r\n\t\t\t\tvar size;\r\n\t\t\t\tfor ( size in original_slot.extra ) {\r\n\t\t\t\t\tif ( JSON.stringify(event.size) === JSON.stringify(JSON.parse(size)) ) {\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// If we don't have a match, exit\r\n\t\t\t\tif ( JSON.stringify(event.size) !== JSON.stringify(JSON.parse(size)) ) {\r\n $('.slot_extra_' + original_slot.id ).remove();\r\n return;\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\t// Inject Ads\r\n\t\t\t\tvar j, name;\r\n\t\t\t\tfor ( j = 0; j < original_slot.extra[size].length; j++ ) {\r\n \r\n // Insert ad after our original slot\r\n var slot_name = original_slot.extra[size][j];\r\n var slot_id = 'DFP_slot_' + slot_name; \r\n // Assumes that jQuery is already loaded\r\n if( ! $('#'+slot_id).length ){\r\n $('#' + original_slot.id).\r\n closest( '.Ad.Widget' ).\r\n after('