PageSourceSearch

https://static.foxnews.com/static/orion/scripts/fox-weather/video/embed/ag.app.js

js foxnews.com collected 2026-09-24 09:04:40 UTC 50,834 bytes, 19 lines download raw bytes

1/*! updated; 09-21-2026 12:56 PM **/
2
3
4Modulr.define("fox-weather.video:api",["require","jquery","lodash","helper","promise","methods/embed","methods/tracking","methods/metrics","methods/authenticate","methods/ads","methods/springserve","methods/partners","core.base:utils/detector","core.base:utils/cookie","core.plugins:Viewport","core.plugins:ImageResizer","methods/strikedata"],function(require,$,_,Helper,Promise){var Embed=require("methods/embed"),Tracking=require("methods/tracking"),Metrics=require("methods/metrics"),Authenticate=require("methods/authenticate"),Ads=require("methods/ads"),Springserve=require("methods/springserve"),Partners=require("methods/partners"),Detector=require("core.base:utils/detector"),Viewport=require("core.plugins:Viewport"),ImageResizer=require("core.plugins:ImageResizer"),Cookie=require("core.base:utils/cookie"),StrikeData=require("methods/strikedata"),LOADED_VIEW=Detector.current(),PRIVACY_SETTING=Cookie("us_privacy"),XID=Cookie("xid");return new function(){var Proto=this;Proto.fetchLiveStream=function(apiRoot,callback){window.fetch("https://api-sps.foxweather.com/schedule/v1/listings?startDateTimeGTE=2024-06-18T23%3A59%3A00Z&endDateTimeGTE=2024-06-20T00%3A14%3A00Z&callSigns=FOXWEATHER").then(res=>res.json()).then(response=>{Helper.log("livestream data:",response.data);var streamData=response.data.results[0];"function"==typeof callback&&(Helper.log("sent livestream streamData:",streamData),Helper.log("sent livestream data object:",response.data),callback({stream:streamData,data:response.data}))}).catch(error=>{Helper.log("livestream error:",error)})},Proto.authenticate=function(apiRoot,callback){Authenticate.authenticate(apiRoot,callback)},Proto.embedLiveStream=function(container,properties){return new Promise(function(resolve){var val,prefix=(val=_.get(properties,"livestreamURL",null).split("/"))[0]+"//"+val[2]+"/"+val[3];if(!prefix)return Helper.log("ERROR: no livestream url!"),resolve(null);Promise.all([new Promise(function(resolve){Proto.authenticate(prefix,function(accessToken){resolve(accessToken)})}),new Promise(function(resolve){Proto.fetchLiveStream(prefix,function(data){resolve(data)})})]).then(function(payload){var token=payload[0],{stream:payload,data}=payload[1];_.merge(properties,{videoId:_.get(payload,"id"),player:{streamType:"live",image:_.get(payload,"images.videoList.raw",""),mode:"live",auth:{profile:{accessToken:token}},watch:{streamType:"live"}},data:data}),resolve(Proto.embed(container,properties))})})},Proto.embed=function(container,properties){return new Promise(function(resolve){var prismSection,videoSection,videoId=(container=(container=container instanceof window.jQuery?container:$(container)).first()).attr("data-video-id")||_.get(properties,"videoId",null)||Proto.getQueryVar("video_id"),videoInfo={},videoId=videoId||container.attr("data-video-url")||_.get(properties,"videoUrl",null)||Proto.getQueryVar("video_url");if((_.includes(videoId,"play-")||_.includes(videoId,"fmc-"))&&(window.fetch("https://api.foxweather.com/spark/videos?external_id="+videoId).then(res=>res.json()).then(response=>{videoInfo=response.data.results[0],Helper.log("videoInfo object delta:",videoInfo),videoInfo&&videoInfo.thumbnail&&(response=videoInfo.thumbnail.url,response=ImageResizer(response,620,"16:9"),response=_.replace(response,"//a57.foxnews.com/static-media.fox.com/","//images.foxweather.com/static-media.fox.com/"),imagePath=response)}),prismSection=document.querySelector('meta[name="prism.section"]'),videoSection=prismSection?prismSection.content:""),!videoId)return resolve(null);var autoPlayEnabled=_.get(properties,"autoplayEnabled",!0),imagePath=(()=>{var image=container.find("img");if(!(image.length<=0))return image.attr("src")})(),embedOnView=!0,target=("boolean"==typeof properties.embedOnView&&(embedOnView=properties.embedOnView,delete properties.embedOnView),container.empty(),container.wrapInner('<div class="player-wrapper"></div>'),container.find("> .player-wrapper")),id=Embed.generateId();target.attr("id",id),setTimeout(()=>{Embed.ready(function(Player){function generatePlayer(config){let strikeData=new StrikeData(config.videoID,config?.videoInfo?.canonical_url);(async()=>
4{try{var enhancedConfig=await strikeData.getContextData(config);Helper.log("sent strike context data:",{params:enhancedConfig?.params,videoId:enhancedConfig?.videoID,videoCanonicalUrl:enhancedConfig?.videoInfo?.canonical_url}),resolve({player:new Player(enhancedConfig),config:enhancedConfig})}catch(error){console.error("Failed to get strike context data:",error),resolve({player:new Player(config),config:config})}})()}var custom,partnerInfo=_.get(properties,"app.partner",null),tracking=new Tracking(Player),config={id:id,autoplay:autoPlayEnabled,mute:!1,image:imagePath||"https://static.foxnews.com/static/orion/styles/img/fox-weather/og/og-fox-weather-16-9.png",watch:{streamId:videoId,streamType:"vod"},params:{focusDisabled:!0,utag_data:{platform_version:"fwx-20260921165645"}},width:"100%",height:"100%",mode:"vod",videoID:videoId,videoInfo:videoInfo,properties:properties},cmsConfig={params:{ads:{xid:XID,siteSection:videoSection,privacyParameter:PRIVACY_SETTING,limitedAdTracking:!1,focusDisabled:!0,gam:{cmsId:"2672738",iu:Proto.getVodIuString()}}}},reservedEvents=("external_media_cloud"===videoInfo?.content_type&&videoInfo?.mcvod?.stream_type&&"vod"!==videoInfo.mcvod.stream_type&&(_.merge(config,cmsConfig),Helper.log("video config for delta:",_.cloneDeep(config))),tracking.set(config,{partner:partnerInfo}));(custom=_.get(properties,"player",null))&&_.merge(config,(()=>{var id,filter={};for(id in custom)-1<reservedEvents.indexOf(id)&&"function"==typeof config[id]?filter[id]=function(e){config[id](e),custom[id](e)}:filter[id]=custom[id];return filter})()),Metrics(config),Ads(config),partnerInfo&&Partners(config,partnerInfo),"live"===config.mode&&(cmsConfig={params:{ads:{gam:{iu:Proto.getIuString()}}}},_.merge(config,cmsConfig)),Springserve(config).then(function(config){Helper.log("player embed config:",_.cloneDeep(config)),Array.isArray(videoInfo)&&(videoInfo=videoInfo[0]),embedOnView?Proto.registerViewlistener(target,function(){generatePlayer(config)}):generatePlayer(config)})})},500)})},Proto.getQueryVar=function(name){name=new RegExp("(\\?|&)"+name+"=([^&]+)(&|$)","gi"),name=window.location.search.match(name);return name&&name[0]?name[0].split("=")[1].replace(/&$/g,""):null},Proto.registerViewlistener=function(target,callback){Viewport.inViewOnce(target,function(){"function"==typeof callback&&callback()},{scrollElement:target})},Proto.isDesktop=function(){return"desktop"===LOADED_VIEW},Proto.isLiveBlog=function(){return window.location.href.includes("/live-news/")},Proto.isLiveOrVideo=function(){return window.location.href.includes("/live")||window.location.href.includes("/video")},Proto.getVodIuString=function(){let iu=null;switch(LOADED_VIEW){case"desktop":iu="/4145/fxw.videos/desk/vid/clip";break;case"tablet":iu="/4145/fxw.videos/tw/vid/clip";break;case"mobile":iu="/4145/fxw.videos/mw/vid/clip"}return iu},Proto.getIuString=function(){let isLiveBlog=Proto.isLiveBlog(),isLiveOrVideo=Proto.isLiveOrVideo(),iu=null;switch(LOADED_VIEW){case"desktop":iu=isLiveBlog?"/4145/fxw.videos/desk/blog/wfast":isLiveOrVideo?"/4145/fxw.videos/desk/vid/wfast":null;break;case"tablet":iu=isLiveBlog?"/4145/fxw.videos/tw/blog/wfast":isLiveOrVideo?"/4145/fxw.videos/tw/vid/wfast":null;break;case"mobile":iu=isLiveBlog?"/4145/fxw.videos/mw/blog/wfast":isLiveOrVideo?"/4145/fxw.videos/mw/vid/wfast":null}return iu}}});
5Modulr.define("fox-weather.video:config",["require"],function(require){var src,qs,config={};return config.source=(src="https://player.fox.com/v3/foxweather.js",/pre-www\.foxweather\.com/i.test(window.location.hostname)&&(src=src.replace(/staging\./,"")),-1<(qs=window.location.search).indexOf("playertest=dev")?src=src.replace(/qa\./,"dev."):-1<qs.indexOf("playertest=prod")&&(src=src.replace(/(qa|stage|staging)\./,"")),src),config});
6Modulr.define("fox-weather.video:helper",["lodash"],function(_){return new function(){this.log=function(){var argsList;if(-1<window.location.search.indexOf("_log=1")&&window.console)return(argsList=Array.prototype.slice.call(arguments)).unshift("[fwx.video-embed]"),console.log.apply(console,argsList)},this.warn=function(){var argsList;if(-1<window.location.search.indexOf("_log=1")&&window.console)return(argsList=Array.prototype.slice.call(arguments)).unshift("[fwx.video-embed]"),(console.warn||console.log).apply(console,argsList)},this.error=function(){var argsList;if(window.console)return(argsList=Array.prototype.slice.call(arguments)).unshift("[fwx.video-embed]"),(console.error||console.log).apply(console,argsList)},this.scriptLoader=function(src,callback,opts){var script=document.createElement("script");script.async=!0,script.addEventListener("load",callback,!1),script.addEventListener("error",function(){throw new Error("Error loading script: "+src)},!1),script.src=src,document.getElementsByTagName("head")[0].appendChild(script)}}});
7Modulr.define("fox-weather.video:methods/ads",["require","jquery","lodash","core.base:utils/cookie","core.base:utils/sessionStorage"],function(require,$,_,Cookie,SessionStorage){return function(config){var info={};return _.merge(info,{ads:{publisherId:(()=>{var sid="__fwx_vdid",res=null;
7return SessionStorage.isAvailable()?(res=(res=SessionStorage.get(sid))||uuid(),SessionStorage.set(sid,res)):(res=Cookie(sid))||(res=uuid(),Cookie(sid,res,{path:"/",samesite:"none"})),res})()}}),window.__uspapi&&window.__uspapi.api&&_.merge(info,{ads:{privacyParameter:_.get(window.__uspapi.api.get(),"val",null)}}),_.merge(config,{params:info})};function uuid(){return"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx".replace(/[x]/g,function(c){var r=16*Math.random()|0;return("x"===c?r:3&r|8).toString(16)})}});
8Modulr.define("fox-weather.video:methods/authenticate",["require","jquery","lodash","core.base:utils/cookie"],function(require,$,_,Cookie){return new function(props){var isSafari=!!navigator.userAgent.match(/safari/i)&&!navigator.userAgent.match(/chrome/i)&&void 0!==document.body.style.webkitFilter,expDays=365,domain=location.hostname.split(".").slice(1).join(".");function setStored(key,value){var expires;return isSafari?(expires="expires="+new Date(+new Date+864e5*expDays).toUTCString(),document.cookies=key+"="+value+"; "+expires+"; path=/; secure; samesite=lax; domain="+domain+";"):localStorage.setItem(key,value),value}function manageAnonId(key){var currentId=(key=>{var cookie,result=null;return result=isSafari?0<(cookie=document.cookie.split("; ").filter(function(c){return-1<c.indexOf(key+"=")})).length?cookie[0].split("="):result:localStorage.getItem(key)})(key);return setStored(key,!!currentId?currentId:"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(c){var r=16*Math.random()|0;return("x"===c?r:3&r|8).toString(16)}))}this.authenticate=function(apiRoot,callback){var anonID=manageAnonId("anon_video_id");$.ajax({url:apiRoot+"/login",type:"POST",contentType:"application/json; charset=UTF-8",data:JSON.stringify({deviceId:anonID||""}),beforeSend:function(xhr){xhr.setRequestHeader("X-Api-Key","pP3tjxCcmc8eoZc8Slwzkmmtz80swn2b")},success:function(data){"function"==typeof callback&&callback(_.get(data,"accessToken"))}})},this.getAnonId=function(){return manageAnonId("anon_video_id")}}});
9Modulr.define("fox-weather.video:methods/embed",["require","lodash","config","core.base:utils/script.loader"],function(require,_,config,ScriptLoader){var SCRIPT_LOADED=!1,SCRIPT_INIT=!1,ID_ITERATOR=0,READY_STACK=[];function getScope(){return _.get(window.FNGPlayer,"default",null)}return new function(){this.ready=function(callback){"function"==typeof callback&&(SCRIPT_INIT||(SCRIPT_INIT=!0,ScriptLoader(config.source,function(){if(SCRIPT_LOADED=!0,0!==READY_STACK.length)for(;0<READY_STACK.length;)READY_STACK.shift()(getScope())},{noCacheString:!0})),SCRIPT_LOADED?callback(getScope()):READY_STACK.push(callback))},this.generateId=function(){return"delta-vplayer-"+ ++ID_ITERATOR}}});
10Modulr.define("fox-weather.video:methods/heartbeat",["require","fox-weather.video:helper","lodash","fox-weather.video:models/ampquery","fox-weather.video.page:helper"],function(require,logger,_){return function(){let adbMediaSDK="ADB"in window&&"Media"in window.ADB?window.ADB.Media:{},tracker,playbackFormat,firstVideo=!0,ampProps=require("fox-weather.video:models/ampquery")(),currentPos=0,stateEnds={};function getFromOmtr(name){let ssContextData=window.sessionStorage.getItem("fox_weather_adobe_context_data"),data;return(data=(ssContextData=ssContextData?JSON.parse(ssContextData):window.omtr?window.omtr.contextData:{})[name])&&""!==data?data:null}0===Object.keys(adbMediaSDK).length&&logger.error("Error: ADB.Media not found"),this.setMediaObj=function(config){return{init({trackingData}){var{videoID,mode,videoInfo={},properties}=config,{content:trackingData={},video={}}=trackingData,{video_content_length:video,video_asset_title,video_content_type:mode=mode,video_content_length_format}=video;if(0!==Object.keys(adbMediaSDK).length){var PlayerState=adbMediaSDK.PlayerState,PlayerState=(void 0!==PlayerState&&0!==Object.keys(PlayerState).length||(adbMediaSDK.PlayerState={FullScreen:"fullScreen",ClosedCaption:"closedCaptioning",Mute:"mute",PictureInPicture:"pictureInPicture",InFocus:"inFocus"}),mode.toLowerCase()),mode=(playbackFormat="vod"===PlayerState&&video_content_length_format?video_content_length_format:"",adbMediaSDK.createMediaObject("vod"===PlayerState?trackingData.title||video_asset_title:(properties=>_.get(properties,"data.headline")||"FOX Weather")(properties),"vod"===PlayerState?videoID:"Live",video,"vod"===PlayerState?adbMediaSDK.StreamType.VOD:adbMediaSDK.StreamType.Live,adbMediaSDK.MediaType.Video)),video_content_length_format=videoInfo.last_published_date||(new Date).toISOString(),trackingData="vod"===PlayerState?"vod short":"live long";let boi={};try{boi=window.localStorage.getItem("boi")?JSON.parse(window.localStorage.getItem("boi")):{}}catch(e){boi={}}video_asset_title=null;
10let contextData={};contextData[adbMediaSDK.MediaObjectKey.GranularAdTracking]=!0,contextData[adbMediaSDK.VideoMetadataKeys.Show]=`no show ${trackingData}-form`,contextData[adbMediaSDK.VideoMetadataKeys.Season]=`no season ${trackingData}-form`,contextData[adbMediaSDK.VideoMetadataKeys.Episode]=`no episode ${trackingData}-form`,contextData[adbMediaSDK.VideoMetadataKeys.AssetId]=`no asset id ${trackingData}-form`,contextData[adbMediaSDK.VideoMetadataKeys.Genre]="News and Information",contextData[adbMediaSDK.VideoMetadataKeys.Rating]=`no content rating ${trackingData}-form`,contextData[adbMediaSDK.VideoMetadataKeys.Network]="foxweather",contextData[adbMediaSDK.VideoMetadataKeys.FirstAirDate]=video_content_length_format.split("T")[0],contextData[adbMediaSDK.VideoMetadataKeys.FirstDigitalDate]=video_content_length_format.split("T")[0],contextData.app_name="weather",contextData.primary_business_unit="foxnewsmedia",contextData.secondary_business_unit="weather",contextData.app_platform="web",contextData.app_version="20260921165645",contextData.app_build="20260921165645",contextData.page_name=ampProps?ampProps.properties.category:getFromOmtr("page_name")||video_asset_title,contextData.page_type=ampProps?ampProps.properties.page_content_type:getFromOmtr("page_type")||video_asset_title,contextData.video_content_length_format="vod"===PlayerState?"short-form":"long-form",contextData.video_is_resume=!1,contextData.video_is_show_code="vod"===PlayerState?"no show code short-form":"no show code long-form",contextData.video_is_continuous=!firstVideo,contextData.video_is_restart=!1,contextData.video_is_autoplay=!(ampProps||!config.autoplay),contextData.video_player_type=ampProps?"googleamp":"embed",contextData.video_station_id="FOXWEATHER",contextData.campaign_tracking_code=getFromOmtr("campaign_tracking_code")||video_asset_title,contextData.internal_tracking_code=getFromOmtr("internal_tracking_code")||video_asset_title,contextData.page_url=getFromOmtr("page_url")||video_asset_title,contextData.page_content_distributor=getFromOmtr("page_content_distributor")||video_asset_title,contextData.page_sponsor_name=getFromOmtr("page_sponsor_name")||video_asset_title,contextData.page_content_author=getFromOmtr("page_content_author")||video_asset_title,contextData.page_content_id=getFromOmtr("page_content_id")||video_asset_title,contextData.page_content_category=getFromOmtr("page_content_category")||video_asset_title,contextData.page_content_subcategory=getFromOmtr("page_content_subcategory")||video_asset_title,contextData.page_content_originator=getFromOmtr("page_content_originator")||video_asset_title,contextData.page_content_title=getFromOmtr("page_content_title")||video_asset_title,contextData.page_content_author_secondary=getFromOmtr("page_content_author_secondary")||video_asset_title,contextData.page_content_original_publish_date=getFromOmtr("page_content_original_publish_date")||video_asset_title,contextData.page_content_original_publish_time=getFromOmtr("page_content_original_publish_time")||video_asset_title,contextData.page_content_major_publish_date=getFromOmtr("page_content_major_publish_date")||video_asset_title,contextData.page_content_modified_date=getFromOmtr("page_content_modified_date")||video_asset_title,contextData.page_content_modified_time=getFromOmtr("page_content_modified_time")||video_asset_title,contextData.page_content_major_publish_time=getFromOmtr("page_content_major_publish_time")||video_asset_title,contextData.page_canonical_url=getFromOmtr("page_canonical_url")||video_asset_title,contextData.app_selected_view=getFromOmtr("app_platform")||video_asset_title,contextData.user_xid=getFromOmtr("user_xid")||video_asset_title,contextData.video_content_tags=(tags=>null==tags||""===tags?null:"string"==typeof tags?tags:Array.isArray(tags)&&(tags=tags.map(function(tag){return"string"==typeof tag?tag:tag&&"object"==typeof tag&&null!=tag.title&&""!==tag.title?String(tag.title):""}).filter(function(s){return""!==s})).length?tags.join(","):null)(videoInfo.tags)||`no content tag ${PlayerState} `+("vod"===PlayerState?"short-form":"long-form"),contextData.user_fox_anonymous_profile_id=boi.last_anonymous_id||video_asset_title,contextData.user_fox_known_profile_id=boi.fox_last_known_profile_id||boi.fox_known_profile_id||video_asset_title,contextData=(contextData=>{let cd={};
10return Object.keys(contextData).forEach(key=>{null!=contextData[key]&&(cd[key]=contextData[key])}),cd})(contextData),(tracker=adbMediaSDK.getInstance())&&tracker.trackSessionStart(mode,contextData),tracker&&"vod"===PlayerState&&tracker.updatePlayhead(video),logger.log("HB TrackSessionStart -- ",mode),firstVideo=!1}},trackPlay(){tracker&&tracker.trackPlay()},trackPause(){tracker&&tracker.trackPause()},trackComplete(){let _this=this;Object.keys(stateEnds).forEach(key=>{stateEnds[key]&&_this[key]()}),tracker&&tracker.trackComplete()},trackSeekStart(){tracker&&tracker.trackEvent(adbMediaSDK.Event.SeekStart)},trackSeekComplete(){tracker&&tracker.trackEvent(adbMediaSDK.Event.SeekComplete)},trackBufferStart(){tracker&&tracker.trackEvent(adbMediaSDK.Event.BufferStart)},trackBufferComplete(){tracker&&tracker.trackEvent(adbMediaSDK.Event.BufferComplete)},trackSessionEnd(){let _this=this;Object.keys(stateEnds).forEach(key=>{stateEnds[key]&&_this[key]()}),tracker&&tracker.trackSessionEnd()},trackFullscreen(){stateEnds.trackFullscreenOff=!0,tracker&&tracker.trackEvent(adbMediaSDK.Event.StateStart,adbMediaSDK.createStateObject(adbMediaSDK.PlayerState.FullScreen))},trackFullscreenOff(){stateEnds.trackFullscreenOff=!1,tracker&&tracker.trackEvent(adbMediaSDK.Event.StateEnd,adbMediaSDK.createStateObject(adbMediaSDK.PlayerState.FullScreen))},trackClosedCaption(){stateEnds.trackClosedCaptionOff=!0,tracker&&tracker.trackEvent(adbMediaSDK.Event.StateStart,adbMediaSDK.createStateObject(adbMediaSDK.PlayerState.ClosedCaption))},trackClosedCaptionOff(){stateEnds.trackClosedCaptionOff=!1,tracker&&tracker.trackEvent(adbMediaSDK.Event.StateEnd,adbMediaSDK.createStateObject(adbMediaSDK.PlayerState.ClosedCaption))},trackMute(){stateEnds.trackUnmute=!0,tracker&&tracker.trackEvent(adbMediaSDK.Event.StateStart,adbMediaSDK.createStateObject(adbMediaSDK.PlayerState.Mute))},trackUnmute(){stateEnds.trackUnmute=!1,tracker&&tracker.trackEvent(adbMediaSDK.Event.StateEnd,adbMediaSDK.createStateObject(adbMediaSDK.PlayerState.Mute))},trackPIP(){stateEnds.trackPIPOff=!0,tracker&&tracker.trackEvent(adbMediaSDK.Event.StateStart,adbMediaSDK.createStateObject(adbMediaSDK.PlayerState.PictureInPicture))},trackPIPOff(){stateEnds.trackPIPOff=!1,tracker&&tracker.trackEvent(adbMediaSDK.Event.StateEnd,adbMediaSDK.createStateObject(adbMediaSDK.PlayerState.PictureInPicture))},trackError(err){tracker&&tracker.trackError(err)},updatePlayhead(position){tracker&&tracker.updatePlayhead(position)}}},this.setAdObj=function(){return{init({ad:adObj={},trackingData={}}){var{id,startTime,endTime,position,duration}=adObj.ad_id?adObj:adObj.data,{ad:trackingData={},video={},content={}}=trackingData,{type:trackingData,video_ad_length,ad_asset_id,video_asset_id,video_ad_name}=trackingData,video="no ad name "+(video.livestream||content.livestream?"live long-form":"vod short-form");0!==Object.keys(adbMediaSDK).length&&(currentPos=position<1?1:position===currentPos?position+1:position,content=adbMediaSDK.createAdBreakObject(trackingData+"_"+currentPos,currentPos,startTime),tracker&&tracker.trackEvent(adbMediaSDK.Event.AdBreakStart,content),logger.log("HB AdBreakStart -- ",content),position=adObj.data?adObj.data.title||adObj.data.creativeName:null,trackingData=adbMediaSDK.createAdObject(video_ad_name||position||video,ad_asset_id||video_asset_id||id,currentPos,video_ad_length||duration||endTime-startTime),tracker&&tracker.trackEvent(adbMediaSDK.Event.AdStart,trackingData),logger.log("HB createAdObject -- ",trackingData))},trackAdComplete(){tracker&&tracker.trackEvent(adbMediaSDK.Event.AdComplete)},trackAdBreakComplete(){tracker&&tracker.trackEvent(adbMediaSDK.Event.AdBreakComplete)},trackAdSkip(){tracker&&tracker.trackEvent(adbMediaSDK.Event.AdSkip)}}}}});
11Modulr.define("fox-weather.video:methods/metrics",["require","jquery","lodash","isa"],function(require,$,_,ISA){return function(config){var info,meta,val;if(ISA&&ISA.meta)return info={},meta=ISA.meta(),meta=meta.pagetype,val=null,(val=-1<["homepage","article","video"].indexOf(meta)?"homepage"===meta?"home":meta:val)&&(info.page=val),_.merge(config.watch,info)}});
12Modulr.define("fox-weather.video:methods/nielsen",["require","fox-weather.video:helper","lodash","core.base:utils/cookie"],function(require,logger,_,Cookie){let nSdkInstance={};return class{constructor(config,options){this.config=config||{},this.options=options||{},this.contentMetadataObject={},this.nielsenAppId="PA64CECF9-1366-417D-BAAB-9CC131F51C1B",this.updatedPosition=0,this.init()}init(){var e,n,usprivacy=Cookie("usprivacy")||"";function t(e){return"object"==typeof e?JSON.parse(JSON.stringify(e)):e}window.NOLBUNDLE||((e=window)[n="NOLBUNDLE"]=e[n]||{nlsQ:function(o,r,c){var s=e.document,a=s.createElement("script"),o=(a.async=1,a.src=("http:"===e.location.protocol?"http:":"https:")+"//cdn-gl.imrworldwide.com/conf/"+o+".js#name="+r+"&ns="+n,s.getElementsByTagName("script")[0]);return o.parentNode.insertBefore(a,o),e[n][r]=e[n][r]||{g:c||{},ggPM:function(o,c,s,a,i){e[n][r].q=e[n][r].q||[];
12try{var l=t([o,c,s,a,i]);e[n][r].q.push(l)}catch(e){console&&console.log&&console.log("Error: Cannot register event in Nielsen SDK queue.")}},trackEvent:function(o){e[n][r].te=e[n][r].te||[];try{var c=t(o);e[n][r].te.push(c)}catch(e){console&&console.log&&console.log("Error: Cannot register event in Nielsen SDK queue.")}}},e[n][r]}});var options={};(-1<"<%= @domain %>".indexOf("dev-")||-1<"<%= @domain %>".indexOf("stage-"))&&(options.nol_sdkDebug="debug"),options.optout="Y"===usprivacy.charAt(2),nSdkInstance=window.NOLBUNDLE.nlsQ(this.nielsenAppId,"sdk-video-instance",options)}setupMetadataObject(eventInfo){var{content={},video={}}=eventInfo.trackingData,{video_asset_title:video,video_content_type=this.config.mode}=video,video_content_type=video_content_type.toLowerCase();this.contentMetadataObject={type:"content",assetid:content.asset_id,program:"vod"===video_content_type?"Clip":"Live",title:this._filterTitle("vod"===video_content_type?content.title||video:this._getLiveTitle(this.config.properties)),length:"vod"===video_content_type?this._getVideoLength(eventInfo):0,airdate:this._getAirDate(),isfullepisode:"N",adloadtype:"2"}}loadMetadata(eventInfo){logger.log("Nielsen Video loadMetadata -- ",eventInfo),this.setupMetadataObject(eventInfo),logger.log("Nielsen Video loadMetadata metadata object -- ",this.contentMetadataObject),nSdkInstance.ggPM("loadMetadata",this.contentMetadataObject)}loadAdMetadata(trackingData){logger.log("Nielsen Video loadAdMetadata -- ",trackingData),nSdkInstance.ggPM("loadMetadata",{type:trackingData.ad.type,assetid:trackingData.ad.video_ad_creative_id||trackingData.ad.video_ad_pod_name||"ad-"+trackingData.ad.pod_id})}setPlayheadPosition(eventInfo){logger.log("Nielsen Video setPlayheadPosition -- ",eventInfo);var{video:eventInfo={},ad={}}=eventInfo.trackingData,{video_content_type=this.config.mode}=eventInfo,video_content_type=video_content_type.toLowerCase(),ad=ad.type||"vod"===video_content_type?parseInt(eventInfo.position,10)||0:Math.floor(Date.now()/1e3);ad>this.updatedPosition&&(this.updatedPosition=ad,nSdkInstance.ggPM("setPlayheadPosition",this.updatedPosition))}stop(eventInfo){logger.log("Nielsen Video stop -- ",eventInfo);var{video:eventInfo={}}=eventInfo.trackingData;nSdkInstance.ggPM("stop",eventInfo.position||Math.floor(Date.now()/1e3))}end(eventInfo){logger.log("Nielsen Video end -- ",eventInfo);var{video:eventInfo={}}=eventInfo.trackingData;nSdkInstance.ggPM("end",eventInfo.position||Math.floor(Date.now()/1e3))}_filterTitle(title){return(title||"FOX Weather").replace(/[^A-Za-z0-9\s_-]/gi,"").substring(0,40)}_getLiveTitle(properties){return _.get(properties,"data.headline")||"FOX Weather"}_getVideoLength(eventInfo){var{video:eventInfo={}}=eventInfo.trackingData,eventInfo=eventInfo.video_content_length,{videoInfo={}}=this.config,{mcvod:videoInfo={}}=videoInfo;return eventInfo||videoInfo.duration||0}_getAirDate(){var{videoInfo={}}=this.config,{mcvod:videoInfo={},last_published_date=null}=videoInfo,videoInfo=videoInfo.original_air_date||last_published_date||this._getFromOmtr("page_content_original_publish_date")||"",last_published_date=new Date,last_published_date=last_published_date.getFullYear()+"-"+("0"+(last_published_date.getMonth()+1)).slice(-2)+"-"+("0"+last_published_date.getDate()).slice(-2)+"T"+("0"+last_published_date.getHours()).slice(-2)+":00:00";return videoInfo.match(/\d{4}-\d{2}-\d{2}/gi)?videoInfo.replace("Z",""):last_published_date}_getFromOmtr(name){let ssContextData=window.sessionStorage.getItem("fox_weather_adobe_context_data"),data;return(data=(ssContextData=ssContextData?JSON.parse(ssContextData):window.omtr?window.omtr.contextData:{})[name])&&""!==data?data:null}}});
13Modulr.define("fox-weather.video:methods/partners",["require","lodash"],function(require,_){var AD_DOMAIN_MAP={nypost:{vod:"nyp.videos/web/wclip",live:"nyp.videos/web/wfast"}};return function(config,partnerInfo){var id,found=null,domain=_.get(partnerInfo,"domain",null),mode=_.get(config,"mode",null);if(!domain)return done("fxw.videos/embed");for(id in AD_DOMAIN_MAP)if(domain.includes(id)&&AD_DOMAIN_MAP[id][mode]){found=AD_DOMAIN_MAP[id][mode];break}return done(found||"fxw.videos/embed");function done(val){return _.merge(config,{params:{ads:{siteSection:val}}})}}});
14Modulr.define("fox-weather.video:methods/segment",["require","lodash","helper","models/ampquery"],function(require,_,Helper,QueryParser){var PAGE_LOAD_INIT=!1;return function(config,options){var pageInfo,custom_page_name;!PAGE_LOAD_INIT&&(PAGE_LOAD_INIT=!0,options=_.get(options,"partner",null),pageInfo=QueryParser(),options||pageInfo)&&(custom_page_name=_.get(pageInfo,"properties.custom_page_name",options?"video external embed":null),window.leapmetrics=window.leapmetrics||[],window.leapmetrics.push(function(Leap){custom_page_name&&"function"==typeof Leap.setProp&&Leap.setProp("custom_page_name",custom_page_name),Leap.setProp("custom.page.info",function(current){return custom_page_name&&_.has(p
14ageInfo,"properties.custom_page_name")&&delete pageInfo.properties.custom_page_name,pageInfo}),window.leapmetrics=window.leapmetrics||[],window.leapmetrics.push(function(Leap){})}),Helper.scriptLoader("//static.foxnews.com/static/leap/loader.js",function(){}))}});
15Modulr.define("fox-weather.video:methods/springserve",["require","jquery","lodash","helper","core.base:utils/environment"],function(require,$,_,Helper){let Environment=require("core.base:utils/environment");return function(config){if(!window.foxstrike||!window.foxstrike.springserve)return Helper.log("springserve is not defined"),Promise.resolve(config);var currentEnv=Environment.getEnvironment(),clientWidth=document.documentElement.clientWidth,currentVideoContainer=document.getElementById(config.id)?.closest(".video-container"),firstVideoContainer=document.getElementsByClassName("video-container")[0];function getCookie(name){var nameEQ=name+"=",ca=document.cookie.split(";");for(let i=0;i<ca.length;i++){for(var c=ca[i];" "==c.charAt(0);)c=c.substring(1,c.length);if(0==c.indexOf(nameEQ))return c.substring(nameEQ.length,c.length)}return null}let platform=null,cookies=(platform=clientWidth<768?"mobile":768<=clientWidth&&clientWidth<992?"tablet":"desktop",{});["xid","idl_env","lr_env"].forEach(key=>{var value=getCookie(key);value&&(cookies[key]=value)});clientWidth={platform:platform,streamType:"vod"===config.watch.streamType?"clip":config.watch.streamType,tagId:"31343",appName:"Fox Weather",appDomain:window.location.hostname,contentCategories:["IAB15-10"],contentDomain:window.location.hostname,playerWidth:currentVideoContainer?.offsetWidth,playerHeight:currentVideoContainer?.offsetHeight,uspValue:getCookie("usprivacy"),cookies:cookies,isProd:!0,contentId:config.videoID};return firstVideoContainer===currentVideoContainer&&(element=>{element=element.getBoundingClientRect();return.5*element.height<=Math.max(0,Math.min(element.bottom,window.innerHeight)-Math.max(element.top,0))})(currentVideoContainer)&&(clientWidth.pos=1),"live"!==config.watch.streamType?(clientWidth.videoLength=Math.round(config.videoInfo?.mcvod?.duration??config.videoInfo?.duration)||0,clientWidth.url=config.videoInfo?.canonical_url||""):clientWidth.url="https://www.foxweather.com/live","dev"!==currentEnv&&"stage"!==currentEnv||(clientWidth.isProd=!1),Helper.log("springserve data: ->",clientWidth),window.foxstrike.springserve.getSpringServeData(clientWidth).then(function(res){return Helper.log("springserve response: ->",res),res&&null!==res.ss_request_key&&(res={params:{ads:{gam:{cust_params:(obj=>Object.entries(obj).map(([key,value])=>key+"="+value).join("&"))({ss_request_key:res.ss_request_key,ss_ad_cache_key:res.ss_ad_cache_key,ss_region:res.ss_region})}}}},_.merge(config,res)),config}).catch(function(error){return Helper.log("springserve call failed: ->",error),config})}});
16Modulr.define("fox-weather.video:methods/strikedata",[],function(){return class{constructor(videoId,url){this.url=this.getCanonicalUrl(url),this.videoId=videoId}getCanonicalUrl(videoUrl){if(!videoUrl)return document.querySelector('link[rel="canonical"]')?.href;try{return new URL(videoUrl).href}catch{return`${window.location.protocol}//${window.location.host.split(".")[0]}.`+videoUrl}}filterCustParams(params){params=params?.cust_params;return params?params.endsWith("&")?params:params+"&":""}isLiveStream({mode}){return"live"===mode?.toLowerCase()}getStrikeData(data,config){try{if(!data?.dv?.gam?.cust_params)throw new Error("No cust_params found");var custParams=data.dv.gam.cust_params;let mobianParams=data.mobian.gam.cust_params,filteredMobianParams="";if(mobianParams){var validKeys=["mobian_ap_p0","mobian_ap_p1","mobian_ap_a0","mobian_ap_a1","mobian_categories","mobian_emotions","mobian_genres","mobian_risk","mobian_sentiment","mobian_themes","mobian_tones"].filter(key=>mobianParams[key]);let paramArray=[];validKeys.forEach(key=>{paramArray.push(key+"="+mobianParams[key])}),filteredMobianParams=paramArray.join("&")}var existingParams=this.filterCustParams(config.params?.ads?.gam);return{...config,params:{...config.params,ads:{...config.params?.ads,gam:{...config.params?.ads?.gam,cust_params:mobianParams?existingParams+`g=${custParams}&`+filteredMobianParams:existingParams+"g="+custParams}}}}}catch(error){return console.warn("Error getting strike data:",error),console.warn("Data:",data),console.warn("Config:",config),config}}getContextData(config){return window.foxstrike=window.foxstrike||{},window.foxstrike.cmd=window.foxstrike.cmd||[],new Promise((resolve,reject)=>{if(config?.params?.ads){let timeoutId=setTimeout(()=>
16{reject(new Error("Strike callback timed out"))},2e3);window.foxstrike.cmd.push(Strike=>{clearTimeout(timeoutId),Strike?.getVideoContextData&&"function"==typeof Strike.getVideoContextData?Strike.getVideoContextData({videoId:this.videoId,url:this.url,bypassPageLevelData:this.isLiveStream(config)}).then(data=>resolve(this.getStrikeData(data,config))).catch(error=>{console.error("Error getting video context data:",error),reject(error)}):reject(new Error("Strike.getVideoContextData not available"))})}else reject(new Error("Invalid config: missing params.ads"))})}}});
17Modulr.define("fox-weather.video:methods/tracking",["fox-weather.video:helper","methods/heartbeat","methods/segment","methods/nielsen"],function(logger,videoHB,segmentTracker,Nielsen){return function(){let adContentData={},lastTimeFired=0,adLastTimeFired=0,secondsContentPlayed=0,sessionId=null,liveInitiated=!1,segmentInit=!1,NielsenTracking=null,nielsenInitialized=!1,nielsenUnload=!1,isMidroll=!1,currentEventInfo=null,additionalProps={assetId:null,video_asset_id:null,livestream:null,pod_id:null},videoPlaybackLength,videoPlaybackTitle,videoPlaybackFormat,videoPlaybackAdType,comsSa;function trackingDataSession(id,type,eventInfo){var{trackingData:eventInfo={}}=eventInfo,{video={}}=eventInfo;return eventInfo.video=video,id&&(eventInfo.video.session_id=id),type&&(eventInfo.video.video_player_type=type),eventInfo}function segmentMetrics(callback){"function"==typeof callback&&(window.leapmetrics=window.leapmetrics||[],window.leapmetrics.push(function(leap){callback(leap),segmentInit||(logger.log("Segment tracking init"),segmentInit=!0)}))}function comsNotifyEvents(notifyEvent,{mode="",videoID=0},{ad={}},isAds=!1){try{if(window.comscore_sdk_analytics){var mediaType=mode.toLowerCase();let notifyLogs="track-content";var comsdk=window.comscore_sdk_analytics,cm=new comsdk.StreamingAnalytics.ContentMetadata;if(cm.setUniqueId(videoID),cm.setDictionaryClassificationC3("foxweather"),cm.setDictionaryClassificationC4("*null"),cm.setDictionaryClassificationC6("*null"),videoPlaybackTitle&&cm.setProgramTitle(videoPlaybackTitle),cm.setGenreName("News"),cm.addCustomLabels({ns_st_st:"FOX",ns_st_pu:"Fox Weather"}),isAds){var{type=videoPlaybackAdType,video_ad_length=videoPlaybackLength}=ad,am=new comsdk.StreamingAnalytics.AdvertisementMetadata,{ON_DEMAND_PRE_ROLL,LIVE,OTHER}=(am.setRelatedContentMetadata(cm),comsdk.StreamingAnalytics.AdvertisementMetadata.AdvertisementType);"vod"===mediaType&&"preroll"===type?(am.setMediaType(ON_DEMAND_PRE_ROLL),am.setLength(1e3*video_ad_length),notifyLogs=`track-vod-ads (va${ON_DEMAND_PRE_ROLL})`):"live"===mediaType&&"midroll"===type?(am.setMediaType(LIVE),am.setLength(0),notifyLogs=`track-live-ads (va${LIVE})`):(am.setMediaType(OTHER),am.setLength(0),notifyLogs=`track-other-ads (va${OTHER})`,logger.warn("ad type not found")),comsSa.setMetadata(am)}else{let{LONG_FORM_ON_DEMAND,SHORT_FORM_ON_DEMAND,LIVE,OTHER}=comsdk.StreamingAnalytics.ContentMetadata.ContentType;"live"===mediaType?(cm.setMediaType(LIVE),cm.setLength(0),notifyLogs=`track-live-content (vc${LIVE})`):"vod"===mediaType&&"long-form"===videoPlaybackFormat&&videoPlaybackLength?(cm.setMediaType(LONG_FORM_ON_DEMAND),cm.setLength(1e3*videoPlaybackLength),notifyLogs=`track-vod-content (vc${LONG_FORM_ON_DEMAND})`):"vod"===mediaType&&"short-form"===videoPlaybackFormat&&videoPlaybackLength?(cm.setMediaType(SHORT_FORM_ON_DEMAND),cm.setLength(1e3*videoPlaybackLength),notifyLogs=`track-vod-content (vc${SHORT_FORM_ON_DEMAND})`):(cm.setMediaType(OTHER),cm.setLength(0),notifyLogs=`track-other-content (vc${OTHER})`,logger.warn("content media type or video format not found")),comsSa.setMetadata(cm)}comsSa&&notifyEvent in comsSa&&"function"==typeof comsSa[notifyEvent]?(comsSa[notifyEvent](),logger.log(`Notify.${notifyEvent} - `+notifyLogs)):logger.warn(`Notify event (${notifyEvent}) not found`)}}catch(err){console.error(err)}}function nielsenSetUnload(){nielsenUnload||(nielsenUnload=!0,window.addEventListener("beforeunload",function(event){NielsenTracking&&currentEventInfo&&(isMidroll&&NielsenTracking.stop(currentEventInfo),NielsenTracking.end(currentEventInfo),NielsenTracking.stop(currentEventInfo))}))}window.comscore_sdk_analytics?(window.comscore_sdk_analytics.start(),comsSa=new window.comscore_sdk_analytics.StreamingAnalytics,logger.log("Comscore analytics init")):logger.warn("Native comscore_sdk_analytics disabled"),window._segHBPlayheads=window._segHBPlayheads||{},this.set=function(config,options){var HB=new videoHB;let mediaHBContent=HB.setMediaObj(config),mediaHBAds=HB.setAdObj(),video_player_type=(NielsenTracking=new Nielsen(config,options),null);HB=options.partner,HB&&"domain"in HB&&(video_player_type="embedded player "+HB.domain),segmentTracker(config,options),HB={onReady(eventInfo){logger.log("Event.onReady --",eventInfo)},onPause(eventInfo){let trackingData=trackingDataSession(sessionId,video_player_type,eventInfo);logger.log("Event.onPause -- ",trackingData),comsNotifyEvents("notifyPause",config,trackingData),mediaHBContent.trackPause(),NielsenTracking.stop(eventInfo),segmentMetrics(function(leap){leap.track("video:playback-paused",trackingData)}),currentEventInfo=eventInfo},onResume(eventInfo){let trackingData=trackingDataSession(sessionId,video_player_type,eventInfo);logger.log("Event.onResume"),mediaHBContent.trackPlay(),comsNotifyEvents("notifyPlay",config,trackingData),segmentMetrics(function(leap){leap.track("video:playback-resumed",trackingData)}),currentEventInfo=eventInfo},onBufferStart(eventInfo){let trackingData=trackingDataSession(sessionId,video_player_type,eventInfo);logger.log("Event.onBufferStart"),comsNotifyEvents("notifyBufferStart",config,trackingData),mediaHBContent.trackBufferStart(),segmentMetrics(function(leap){leap.track("video:playback-buffer-started",trackingData)})},onBufferEnd(eventInfo){let trackingData=trackingDataSession(sessionId,video_player_type,eventInfo);logger.log("Event.onBufferEnd"),comsNotifyEvents("notifyBufferStop",config,trackingData),mediaHBContent.trackBufferComplete(),segmentMetrics(function(leap){leap.track("video:playback-buffer-completed",trackingData)})},onSeekStart(eventInfo){logger.log("Event.onSeekStart"),mediaHBContent.trackSeekStart()},onSeekComplete(eventInfo){logger.log("Event.onSeekComplete"),mediaHBContent.trackSeekComplete()},onPlaybackStart(eventInfo){let{trackingData={}}=eventInfo;var{video={},content={},playback={}}=trackingData,{video_content_length_format,video_content_length,title,ad_type,video_asset_id}=video,content=content.asset_id,playback=playback.livestream,video=(currentEventInfo=eventInfo,trackingData.video=video,additionalProps.video_asset_id=video_asset_id,additionalProps.assetId=content,additionalProps.livestream=playback,additionalProps.video_asset_id||additionalProps.assetId);video&&comsSa&&(comsSa.createPlaybackSession(),logger.log("Create Playback Session")),video&&(sessionId=video+":"+(new Date).getTime(),trackingData.video.session_id=sessionId),video_player_type&&(trackingData.video.video_player_type=video_player_type),videoPlaybackTitle=title,videoPlaybackLength=video_content_length,videoPlaybackFormat=video_content_length_format,videoPlaybackAdType=ad_type,logger.log("Event.onPlaybackStart -- ",trackingData),"live"!==config.mode||liveInitiated?"live"!==config.mode&&(mediaHBContent.init(eventInfo),mediaHBContent.trackPlay(),mediaHBContent.updatePlayhead(secondsContentPlayed),sessionId)&&(window._segHBPlayheads[sessionId]=secondsContentPlayed):(mediaHBContent.init(eventInfo),mediaHBContent.trackPlay(),liveInitiated=!0),segmentMetrics(function(leap){leap.track("video:playback-started",trackingData)})},onPlaybackComplete(eventInfo){let trackingData=trackingDataSession(sessionId,video_player_type,eventInfo);logger.log("Event.onPlaybackComplete"),"live"!==config.mode&&mediaHBContent.trackComplete(),segmentMetrics(function(leap){leap.track("video:playback-completed",trackingData)}),currentEventInfo=eventInfo},onContentStart(eventInfo){let trackingData=trackingDataSession(sessionId,video_player_type,eventInfo);logger.log("Event.onContentStart"),comsNotifyEvents("notifyPlay",config,trackingData),mediaHBContent.trackPlay(),segmentMetrics(function(leap){leap.track("video:content-started",trackingData)}),currentEventInfo=eventInfo},onContentPlaying(eventInfo){let{trackingData={},secondsViewed:timeElapsed}=eventInfo;var{video={}}=trackingData;currentEventInfo=eventInfo,!nielsenInitialized&&eventInfo&&eventInfo.trackingData&&(NielsenTracking.loadMetadata(eventInfo),nielsenInitialized=!0,nielsenSetUnload()),isMidroll=!1,NielsenTracking.setPlayheadPosition(eventInfo),trackingData.video=video,sessionId&&(trackingData.video.session_id=sessionId),video_player_type&&(trackingData.video.video_player_type=video_player_type),10<=timeElapsed&&timeElapsed%10==0&&lastTimeFired!==timeElapsed&&(lastTimeFired=timeElapsed,trackingData.content.video_seconds_viewed=10,secondsContentPlayed+=10,mediaHBContent.updatePlayhead(secondsContentPlayed),logger.log("Event.onContentPlaying -- video seconds viewed: ",secondsContentPlayed),sessionId&&(window._segHBPlayheads[sessionId]=secondsContentPlayed),segmentMetrics(function(leap){leap.track("video:content-playing",trackingData)}))},onContentComplete(eventInfo){let trackingData=trackingDataSession(sessionId,video_player_type,eventInfo);trackingData.video.video_asset_id=additionalProps.video_asset_id||"";var{secondsViewed=0}=eventInfo;secondsViewed>=secondsContentPlayed&&(secondsViewed=parseInt(secondsViewed-secondsContentPlayed,10),trackingData.content.video_seconds_viewed=secondsViewed),"live"!==config.mode&&(mediaHBContent.trackComplete(),NielsenTracking.end(eventInfo),NielsenTracking.stop(eventInfo),currentEventInfo=null,NielsenTracking=null),logger.log("Event.onContentComplete"),comsNotifyEvents("notifyEnd",config,trackingData),segmentMetrics(function(leap){leap.track("video:content-completed",trackingData)})},onFullScreen(eventInfo){logger.log("Event.onFullScreen"),eventInfo.fullscreen?mediaHBContent.trackFullscreen():mediaHBContent.trackFullscreenOff()},onShowCaptions(eventInfo){logger.log("Event.onShowCaptions"),"off"===eventInfo.state?mediaHBContent.trackClosedCaptionOff():mediaHBContent.trackClosedCaption()},onMute(eventInfo){logger.log("Event.onMute"),eventInfo.mute?mediaHBContent.trackMute():mediaHBContent.trackUnmute()},onPIPModeChange(eventInfo){logger.log("Event.onPIPModeChange"),eventInfo.state?mediaHBContent.trackPIP():mediaHBContent.trackPIPOff()},onAdStart(eventInfo){let trackingData=trackingDataSession(sessionId,video_player_type,eventInfo);var{video={},content={}}=trackingData,video=video.pod_id;currentEventInfo=eventInfo,additionalProps.pod_id=video,trackingData.video.video_asset_id=additionalProps.video_asset_id||"",trackingData.video.livestream=additionalProps.livestream,adContentData=content,logger.log("Event.onAdStart -- ",trackingData),comsNotifyEvents("notifyPlay",config,trackingData,!0),mediaHBAds.init(eventInfo),"midroll"===trackingData.ad.type&&(isMidroll=!0,NielsenTracking.stop(eventInfo)),NielsenTracking.loadAdMetadata(trackingData),NielsenTracking.setPlayheadPosition(eventInfo),nielsenSetUnload(),segmentMetrics(function(leap){leap.track("video:ad-started",trackingData)})},onAdSkip(eventInfo){logger.log("Event.onPIPModeChange"),mediaHBAds.trackAdSkip()},onAdPlaying(eventInfo){let trackingData=trackingDataSession(sessionId,video_player_type,eventInfo);trackingData.content=adContentData||{};var currentTime=(currentEventInfo=eventInfo).currentTime,currentTime=parseInt(currentTime,10);NielsenTracking.setPlayheadPosition(eventInfo),adLastTimeFired!==currentTime&&(adLastTimeFired=currentTime,trackingData.video.video_asset_id=additionalProps.video_asset_id||"",trackingData.video.livestream=additionalProps.livestream,trackingData.video.pod_id=additionalProps.pod_id||"",logger.log("Event.onAdPlaying"),segmentMetrics(function(leap){leap.track("video:ad-playing",trackingData)}))},onAdComplete(eventInfo){let trackingData=trackingDataSession(sessionId,video_player_type,eventInfo);var ad=eventInfo.ad,{endTime:ad=0}=ad,ad=(trackingData.content=adContentData||{},parseInt(ad-adLastTimeFired,10));trackingData.ad.video_seconds_viewed=1<=ad?10<ad?10:ad:0,trackingData.video.video_asset_id=additionalProps.video_asset_id||"",trackingData.video.livestream=additionalProps.livestream,trackingData.video.pod_id=additionalProps.pod_id||"",logger.log("Event.onAdComplete"),comsNotifyEvents("notifyEnd",config,trackingData,!0),mediaHBAds.trackAdComplete(),segmentMetrics(function(leap){leap.track("video:ad-completed",trackingData)}),currentEventInfo=eventInfo},onAdPodComplete(eventInfo){logger.log("Event.onAdPodComplete"),mediaHBAds.trackAdBreakComplete(),NielsenTracking.stop(eventInfo),currentEventInfo=eventInfo},onAdPause(eventInfo){eventInfo=trackingDataSession(sessionId,video_player_type,eventInfo);logger.log("Event.onAdPause -- ",eventInfo),comsNotifyEvents("notifyPause",config,eventInfo,!0),mediaHBContent.trackPause()},onAdResume(eventInfo){eventInfo=trackingDataSession(sessionId,video_player_type,eventInfo);logger.log("Event.onAdResume"),comsNotifyEvents("notifyPlay",config,eventInfo,!0),mediaHBContent.trackPlay()},onAdBufferStart(eventInfo){logger.log("Event.onAdBufferStart")},onAdBufferEnd(eventInfo){logger.log("Event.onAdBufferEnd")},onPlaybackInterrupted(eventInfo){eventInfo=trackingDataSession(sessionId,video_player_type,eventInfo);logger.log("Event.onPlaybackInterrupted -- ",eventInfo),mediaHBContent.trackSessionEnd()},onPlayerError(eventInfo){let errorMsg="";var{error:eventInfo="player error"}=eventInfo;eventInfo&&Object.hasOwn(eventInfo,"message")?errorMsg=eventInfo.message:"string"==typeof eventInfo&&(errorMsg=eventInfo),mediaHBContent.trackError(errorMsg),logger.error("Error: "+errorMsg)}};return Object.assign(config,HB),Object.keys(HB)}}});
18Modulr.define("fox-weather.video:models/ampquery",["require","jquery","lodash","helper","core.plugins:Base64","core.plugins:URLInfo"],function(require,$,_){var Base64=require("core.plugins:Base64"),URLInfo=require("core.plugins:URLInfo");return function(){function getQueryParam(name){var url=new URLInfo(window.location.href).getInfo(),url=url.query[name]||url.hash[name]||null;return url=null!==url&&"boolean"==typeof url?url.toString():url}var amp=getQueryParam("ampProps")||getQueryParam("pageProps")||null;if(null===amp||"string"!=typeof amp)return null;var initProps=Base64.decode(amp||"").split(","),refinedProps=[];if(0===initProps.length)return null;for(var i=0;i<initProps.length;i++)refinedProps.push(decodeURIComponent(initProps[i]));amp={articleId:refinedProps[0]||"",articleTitle:refinedProps[1]||"",articletags:refinedProps[2]||"",pageType:refinedProps[3]||"",authorName:refinedProps[4]||"",articleLanguage:refinedProps[5]||"",articleSource:refinedProps[6]||"",articlePublishDate:{date:refinedProps[7]||"",time:refinedProps[8]||""},articleModifiedDate:{date:refinedProps[9]||"",time:refinedProps[10]||""},articleLastPubDate:{date:refinedProps[11]||"",time:refinedProps[12]||""},articleSection:refinedProps[13]||"",articleSubsection:refinedProps[14]||"",articleCategory:refinedProps[15]||"",articlePath:refinedProps[16]||"",articleUrl:refinedProps[17]||""};return{properties:{app_name:"Fox Weather",author:amp.authorName,category:amp.articleCategory,name:amp.articleId,page_content_author:amp.authorName,page_content_category:amp.articleCategory,page_content_distributor:"owned",page_content_id:"urn:uri:base64:"+amp.articleId,page_content_language:amp.articleLanguage,page_content_major_publish_date:amp.articleLastPubDate.date,page_content_major_publish_time:amp.articleLastPubDate.time,page_content_modified_date:amp.articleModifiedDate.date,page_content_modified_time:amp.articleModifiedDate.time,page_content_original_publish_date:amp.articlePublishDate.date,page_content_original_publish_time:amp.articlePublishDate.time,page_content_originator:amp.articleSource,page_content_subcategory:amp.articleCategory,page_content_tags:amp.articletags,page_content_title:amp.articleTitle,page_content_type:amp.pageType,page_content_type_of_story:amp.pageType,page_is_dark_mode:!1,page_name:"fox:weather:web:"+amp.articleSection+":"+amp.articleTitle,page_type:amp.articleSection+":"+amp.articleCategory,path:"/"+amp.articlePath,primary_business_unit:"Fox News",secondary_business_unit:"Fox Weather",title:amp.articleTitle,url:amp.arti
18cleUrl,custom_page_name:"video"}}}});
19((Modulr,FNC)=>{var config;Modulr.getInstance("fox-weather.video")||(config={instance:"fox-weather.video",baseDomain:FNC.CDN.domain,baseUrl:"/static/orion/scripts/fox-weather/video/embed/app",masterFile:"/static/orion/scripts/core/utils/modulr/master.js",paths:{},packages:["core.plugins","core.components","core.templates"],shim:{jquery:{src:"/static/orion/scripts/core/utils/jquery/core.js",exports:"jQuery"},lodash:{src:"/static/orion/scripts/core/utils/lodash.js",exports:"_"},modernizr:{src:"/static/orion/scripts/core/utils/modernizr.js",exports:"Modernizr"},"jquery.cookie":{src:"/static/orion/scripts/core/utils/jquery/plugins/cookie.js",exports:"jQuery.cookie"},promise:{src:"/static/orion/scripts/core/utils/promise.polyfill.js",exports:"Promise"}}},(Modulr=Modulr.config(config)).define("cdn",function(){return FNC.CDN}),Modulr.define("isa",function(){return FNC.ISA}),window.FNC=window.FNC||{},window.FNC.weather=window.FNC.weather||{},window.FNC.weather.videos=window.FNC.videos||[],Modulr.require(["api"],function(API){if(Array.isArray(window.FNC.weather.videos)&&0<window.FNC.weather.videos.length)for(;0<window.FNC.weather.videos.length;)window.FNC.weather.videos.shift()(API);window.FNC.weather.videos={push:function(){var callback=arguments[0]||null;"function"==typeof callback&&callback(API)},embed:function(){var callback=arguments[0]||null;"function"==typeof callback&&callback(API)}}}))})(window.Modulr,window.FNC);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.