var EdgeCms=void 0===EdgeCms?{}:EdgeCms;!function(e){var t=0,o=!1;EdgeCms.VideoPlayer={videoPlayerClass:".edgecms-large-video-player",timestampClass:".timestamp-link",playCountAlreadyRecorded:{},construct:function(){"undefined"!=typeof videojs&&this.setupAllVideoJsPlayers(),t=localStorage.getItem("bufferCount",t)?localStorage.getItem("bufferCount",t):0},setupAllVideoJsPlayers:function(){e(this.videoPlayerClass).map((function(){return this.id})).get().forEach(this.setupVideoJsPlayer,this)},setupVideoJsPlayer:function(t){var o=e("#"+t),a=this.loadPlayerDataAttributes(o),i=localStorage.getItem("videojs_preferred_res")?localStorage.getItem("videojs_preferred_res"):a.defaultResolution;if(!0===a.sizeOverride)i=a.defaultResolution;else{var r=this.getAvailableResolutions(o);i=this.getClosestResolution(i,r)}var n=0;if(window.location.href.indexOf("timestamp=")>0){var s=window.location.href.slice(window.location.href.indexOf("timestamp=")+10);n=s.indexOf("&")>0?s.slice(0,s.indexOf("&")):s}if(1==a.cmaf)var l={httpSourceSelector:{default:"auto"},persistvolume:{namespace:"EdgeCmsPersistVolume"}};else l={videoJsResolutionSwitcher:{default:i},persistvolume:{namespace:"EdgeCmsPersistVolume"}};var c={fluid:!0,controls:a.controls,loop:a.loop,muted:a.muted,preload:!0,poster:a.poster,nativeControlsForTouch:!!a.controls&&!!a.defaultMobilePlayer,inactivityTimeout:a.inactivityTimeout,resizeManager:!1,playbackRates:[.25,.5,1,1.5,2],plugins:l,liveui:!1,controlBar:{liveDisplay:!1,seekToLive:!1}};(o=videojs(t,c)).currentTime(n),this.attachEventsToPlayer(o,t,a)},loadPlayerDataAttributes:function(t){var o=!0;return void 0!==e.cookie("nativeMobilePlayer")&&(o=1==e.cookie("nativeMobilePlayer")),{isATour:!!e("body").hasClass("tourArea"),websiteName:t.data("site-name"),inactivityTimeout:t.data("inactivity-timeout"),poster:t.data("poster"),controls:null===t.data("controls")||t.data("controls"),muted:!!t.data("muted")&&t.data("muted"),loop:!!t.data("loop")&&t.data("loop"),defaultResolution:540,sizeOverride:t.data("size-override"),defaultMobilePlayer:o,cmaf:t.data("cmaf"),customdata:t.data("customdata")?t.data("customdata"):null,cmafSources:t.data("cmaf-sources")?t.data("cmaf-sources"):null}},attachEventsToPlayer:function(a,r,n){var s=this;a.hasClass("members-area")||0!=a.hasClass("ignore-trailer-count")?a.getAttribute("data-primarykey")&&a.on("timeupdate",s.onTimeUpdate.bind(a)):a.on("play",(function(){s.playCountAlreadyRecorded.hasOwnProperty(r)||(e.getJSON("/video/incrementTrailerPlayCount",(function(e){})),s.playCountAlreadyRecorded[r]=!0)})),!0!==n.sizeOverride&&a.on("loadeddata",this.preserveResolution.bind(this,a)),a.on("error",(function(t){var o=e("#"+r).find("source");0==o.length?console.log("No sources found for video player"):(console.log(o[0].src),console.log(o[0].type)),t.stopImmediatePropagation()})),e(this.timestampClass).on("click",(function(t){t.preventDefault(),e("html,body").animate({scrollTop:e("#"+r).offset().top-e(".nav-wrapper").outerHeight()},100),a.currentTime(e(t.target).data("timestamp")),a.play()})),e("#"+r).hasClass("auto-play-loop")&&(setTimeout(this.checkInViewAndPlay(a,r),500),e(window).on("scroll",this.checkInViewAndPlay.bind(this,a,r))),e("#"+r).data("cdn-tester")&&(a.on("play",(function(){o=!0})),a.on("seeking",(function(e){o=!0})),a.on("playing",(function(e){o=!1})),a.on("waiting",(function(i){1==o?o=!1:(t++,localStorage.setItem("bufferCount",t),6==t&&!localStorage.getItem("cdnTestSubmitted")&&e(".cdn-tester-modal").length>0&&(a.pause(),e(".cdn-tester-modal").modal({backdrop:"static"})))}))),1==n.cmaf&&(a.httpSourceSelector(),a.eme({emeHeaders:{customdata:n.customdata}}),a.on("ready",(function(){var t=window.location.hostname.split("."),o=t[1]+"."+t[2],r=function(e){for(var t,o,a,i,r,n,s,l="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",c="",d=0;d<e.length;)i=(t=e[d++])>>2,r=(3&t)<<4|(o=d<e.length?e[d++]:Number.NaN)>>4,n=(15&o)<<2|(a=d<e.length?e[d++]:Number.NaN)>>6,s=63&a,isNaN(o)?n=s=64:isNaN(a)&&(s=64),c+=l.charAt(i)+l.charAt(r)+l.charAt(n)+l.charAt(s);return c},s={src:n.cmafSources["master.m3u8"],type:"application/x-mpegURL",keySystems:{"com.apple.fps.1_0":{certificateUri:"https://fp."+o+"/api/v4/getCertificate?certHash=c5678de81aa139ae8a69dad9a3f7997a",getContentId:function(e,t){let o=atob(r(t)).replace(/[^ -~]+/g,"");if(o.indexOf("skd://")>-1)return o.split("skd://")[1].substring(0,32);throw"Invalid Content ID format. The format of the Content ID must be the following: skd://xxx where xxx is the Key ID in hex format."},getLicense:function(t,a,s,l){var c="spc="+r(s)+"&assetId="+a;e.ajax({url:"https://fp."+o+"/api/v4/getLicense",type:"POST",data:c,headers:{customdata:n.customdata},contentType:"application/x-www-form-urlencoded",success:function(e){l(null,function(e){var t=window.atob(e),o=t.length,a=new Uint8Array(new ArrayBuffer(o));for(i=0;i<o;i++)a[i]=t.charCodeAt(i);return a}(e))},error:function(e){l(e)}})}},"com.widevine.alpha":"https://wv."+o+"/api/v4/getLicense"}};a.src(s)})))},checkInViewAndPlay:function(t,o){var a=e(window).scrollTop(),i=e(window).scrollTop()+e(window).height(),r=e("#"+o).offset().top;a<e("#"+o).outerHeight()+r&&i>r?t.play():t.pause()},preserveResolution:function(e){null!=e.currentResolutionState&&localStorage.setItem("videojs_preferred_res",e.currentResolutionState.sources[0].res)},onTimeUpdate:function(t){if(!t.target.getElementsByTagName)return;let o=t.target.getElementsByTagName("video")[0],a=o.played,i=0;for(let e=0;e<a.length;e+=1)i+=a.end(e)-a.start(e);if(o.currentTime>=30&&i>=10){var r=e(o);this.off("timeupdate"),e.ajax({url:"/content/recordView/"+r.data("primarykey"),type:"POST",contentType:"application/json",error:function(){console.warning("Error saving content item view flag.")},success:function(e){},dataType:"json"})}},getAvailableResolutions:function(t){var o=t.find("source"),a=[];return o.each((function(){var t=e(this).attr("res");t&&a.push(parseInt(t))})),a},getClosestResolution:function(e,t){for(var o=t[0],a=Math.abs(e-t[0]),i=1;i<t.length;i++){var r=Math.abs(e-t[i]);r<a&&(o=t[i],a=r)}return console.log("Found Resolutions:"),console.log(t),console.log("Desired Resolution:"),console.log(e),console.log("Selected Resolution:"),console.log(o),o}},e(e.proxy(EdgeCms.VideoPlayer.construct,EdgeCms.VideoPlayer))}(jQuery);