Mediasite.namespace("Player"),Mediasite.Player.Model=function(n){function checkCurrentChapter(n){var t=vt.GetChapterAt(n);if(typeof t=="undefined"||t.Number<1){if(n===0)return;t=new Mediasite.Chapter(0,0,"")}it!==t.Time&&(it=t.Time,i.fire(r.ChapterChange,t))}function checkCurrentTimedEvent(n){var t=c.GetTimedEvents(n);s.each(t,function(n,t){i.fire(r.TimedEventReached,t)})}function checkCurrentCaption(n){if(!t.DisableCaptionDisplay){var u=vt.GetCaptionAt(n);typeof u!="undefined"&&u.Text!==yt&&(yt=u.Text,i.fire(r.CaptionChange,u))}}function checkPauseState(n){var u=ot.GetCurrentItem(n);typeof u!="undefined"&&u.Paused!==tt&&(tt=u.Paused,t.PlayStatus=tt?Mediasite.Player.PresentationStatus.LivePaused:Mediasite.Player.PresentationStatus.Live,i.fire(r.LiveStatusChanged,t.PlayStatus))}function getLiveEvents(o){function successCallback(n){var i=[],r,t;for(s=0;s0&&c.AddTimedEvents(i),o&&o(!0)}function errorCallback(n){var t=JSON.parse(n.responseText);t&&t.FaultType===Mediasite.Player.PlayerServiceFaultType.InvalidTicket?i.fire(r.InactivityExceeded):o&&o(!1)}var s;return t.PlayStatus===Mediasite.Player.PresentationStatus.Live||t.PlayStatus===Mediasite.Player.PresentationStatus.LivePaused?(n.GetLiveEvents(JSON.stringify({playbackTicket:t.PlaybackTicketId,sinceTimeInMs:a,currentTimeInMs:Math.floor(l+dt)}),successCallback,errorCallback),!0):!1}function pingServerTimerCallback(){var n=function(){p=setTimeout(pingServerTimerCallback,lt)};getLiveEvents(n)}function pollForLiveStartTimerCallback(){var r=function(n){pollForLiveStartCallbackSuccess(n)},i=function(){h=setTimeout(pollForLiveStartTimerCallback,nt)};n.GetLiveStatus(JSON.stringify({playbackTicket:t.PlaybackTicketId,presentationId:t.PresentationId}),r,i)}function pollForLiveStartCallbackSuccess(n){t.PlayStatus=n.d.PlayStatus;switch(t.PlayStatus){case Mediasite.Player.PresentationStatus.ScheduledForLive:i.fire(r.LiveStatusChanged,t.PlayStatus),h=setTimeout(pollForLiveStartTimerCallback,nt);break;case Mediasite.Player.PresentationStatus.OpenForLive:i.fire(r.LiveStatusChanged,t.PlayStatus),h=setTimeout(pollForLiveStartTimerCallback,kt);break;case Mediasite.Player.PresentationStatus.Live:case Mediasite.Player.PresentationStatus.LivePaused:u.Debug("Delaying the transition from Waiting to Live by "+b+"ms"),window.setTimeout(function(){i.fire(r.LiveStatusChanged,t.PlayStatus);var f=new Date(n.d.LiveStartUnixTimeInMs+g);i.fire(r.SetLiveStartTime,f),u.Info("Live start time set",f),i.fire(r.StartMedia,[]),u.Info("Start media: ",[]),getLiveEvents()},b);break;case Mediasite.Player.PresentationStatus.LiveEnded:case Mediasite.Player.PresentationStatus.NotAvailable:i.fire(r.LiveStatusChanged,t.PlayStatus),PerformEndPresentation()}}function pollForLiveStart(n){clearTimeout(h),h=setTimeout(pollForLiveStartTimerCallback,n)}function startServerPing(){clearTimeout(p),clearTimeout(k),p=setTimeout(pingServerTimerCallback,lt)}function inactivityTimerCallback(){var n=+new Date;n-pt>wt?i.fire(r.InactivityExceeded):k=setTimeout(inactivityTimerCallback,at)}function stopServerPing(){clearTimeout(p),pt=+new Date,k=setTimeout(inactivityTimerCallback,at)}function detectAndHandleLiveJumpBack(n){var i=n0?n:(i=document.location.href.match("^https?://[.\\d\\w\\-]+(:\\d+)?/"),!i)?void 0:r=i[0]+n.substring(1):""},this.GetCaptionAt=function(n){return st.GetCurrentItem(n)},this.GetCaptions=function(){return t.Transcript},this.GetSlides=function(n){n=n!=undefined?n:Mediasite.ContentStreamType.Slide;var i=t.GetStream(n);return i.Slides},this.GetAllSlides=function(){function compareTime(n,t){return n.time-t.time}var n=[];return s.each(t.Streams,function(t,i){n=n.concat(i.Slides)}),n.sort(compareTime),n},this.GetSlideAt=function(n,i){i=i!=undefined?i:Mediasite.ContentStreamType.Slide;var u=t.GetStream(i),r=new Mediasite.Player.TimingSearcher(u.Slides);return r.GetCurrentItem(n)},this.UpdatePosition=function(n){if(e>0&&e0&&(n=n.sort(function(n,t){return n.Time-t.Time}),u(n,function(n,t){return n.Time==t.Time&&n.Type==t.Type},function(n,t){return n.Text=[n.Text,t.Text].join(" ... "),n})),i.fire(r.SearchComplete,t,n)}function errorCallback(){i.fire(r.SearchError)}function sanitize(n){return $.trim(n)}var i=new Mediasite.Player.EventBundle,r=Mediasite.Player.ModelEvent,u;this.AddEventHandler=function(n,t){i.addHandler(n,t)},this.search=function(t){t=sanitize(t),t.length==0?i.fire(r.SearchComplete,t,[]):n.Search(t,successCallback,errorCallback)},u=function(n,t,i){var r,u,f;if(!n||!n.length||!t||!i)return n;for(r=0;r+1