Mediasite.namespace("MediaPlayer"),Mediasite.namespace("MediaPlayer.Views"),Mediasite.MediaPlayer.ModelFlash=function(n){function nowUnloading(){ht=!0}function resetLiveMedia(){l=!0,y=0;var n=u.id,i=makeJsBridgeFunctionGlobalName(n);tt=t.GetVolume(),ut=t.IsMuted(),h=e.CreateMediaElement(n,i),nt=e.Wrapper,u=h.get(0)}function isLive(){return!!o}function reconnectOnLiveMediaOpenFailure(){resetLiveMedia()}function convertState(n){switch(n.toLowerCase()){case"buffering":return Mediasite.Player.MediaState.Buffering;case"closed":return Mediasite.Player.MediaState.Closed;case"error":return Mediasite.Player.MediaState.Error;case"opening":return Mediasite.Player.MediaState.Opening;case"paused":return Mediasite.Player.MediaState.Paused;case"playing":return Mediasite.Player.MediaState.Playing;case"stopped":return Mediasite.Player.MediaState.Stopped;default:return Mediasite.Player.MediaState.Undefined}}function notifyMediaLoaded(){var t=getStrobeApi(),n;t&&(n=makeMediaInfo(t),e.UpdateMediaInfo(n),i.fire(r.MediaLoaded,n))}function makeMediaInfo(i){var u=0,r;return i.getVideoHeight()>0&&i.getVideoWidth()>0&&(u=i.getVideoWidth()/i.getVideoHeight()),r={AspectRatio:u,Duration:t.GetDuration(),AudioOnly:i.getVideoHeight()===0,CanChangeSpeed:!1,CanFullScreen:!1,CurrentLanguageIndex:t.GetCurrentAudioLanguageIndex(),Languages:t.GetAudioLanguages(),StreamType:n.streamType,IsMainStream:n.isMainStream}}function getStrobeApi(){return u&&u.jsBridgeInitialized?u:!1}function notifyPlayerStateChange(n){i.fire(r.PositionChanged,t.GetPosition()),a.setMediaState(n),i.fire(r.StateChanged,n)}function jsBridge(n,t,i){var r={onJavaScriptBridgeCreated:handle_onJavaScriptBridgeCreated,loadstart:handle_loadstart,emptied:handle_emptied,complete:handle_complete,durationchange:handle_durationchange,progress:handle_progress,timeupdate:handle_timeupdate,waiting:handle_waiting,play:handle_play,pause:handle_pause,seeking:handle_seeking,seeked:handle_seeked,loadedmetadata:handle_loadedmetadata};typeof r[t]=="function"&&r[t](i)}function handle_onJavaScriptBridgeCreated(){toConsole("onJavaScriptBridgeCreated called");var i=u;i.jsBridgeInitialized=!0,i.setSrc(w),k.Info("Media element source set",w,"of type",ot,"on server type",et),!0&&a.setAllowedReconnectAttempts(at),t.SetVolume(tt),ut&&t.Mute()}function handle_loadedmetadata(n){var t,u;(toConsole("loadedmetadata "+n.videoWidth+"x"+n.videoHeight),t=getStrobeApi(),t)&&(d=!0,u=n.videoWidth/n.videoHeight,l?(t.play2(),l=!1,notifyMediaLoaded()):(ft=!0,e.MediaLoadStart(),i.fire(r.MediaLoadStart),notifyMediaLoaded()))}function handle_loadstart(n){toConsole("loadstart "+n.currentSrc);var t=getStrobeApi();!t}function handle_emptied(n){toConsole("emptied ended: "+n.ended);var i=!!o,t=getEffectiveState()==Mediasite.Player.MediaState.MediaEnded;d&&(t||(i?setEffectiveState(Mediasite.Player.MediaState.Stopped):setEffectiveState(Mediasite.Player.MediaState.MediaEnded)))}function handle_complete(){toConsole("complete"),i.fire(r.PositionChanged,t.GetPosition()),s=0,i.fire(r.PositionChanged,0),setEffectiveState(Mediasite.Player.MediaState.MediaEnded)}function handle_durationchange(){}function handle_progress(){}function handle_timeupdate(){i.fire(r.PositionChanged,t.GetPosition())}function handle_waiting(){(toConsole("waiting"),getEffectiveState()!=Mediasite.Player.MediaState.MediaEnded)&&setEffectiveState(Mediasite.Player.MediaState.Buffering)}function handle_play(){toConsole("handle_play");var t=getStrobeApi();t&&(setEffectiveState(Mediasite.Player.MediaState.Playing),y++)}function getEffectiveState(){return g}function setEffectiveState(n){toConsole("SET EFFECTIVE STATE TO "+n),g=n,notifyPlayerStateChange(n)}function handle_pause(){toConsole("pause blah");var t=getStrobeApi();t&&getEffectiveState()!=Mediasite.Player.MediaState.MediaEnded&&(o||setEffectiveState(Mediasite.Player.MediaState.Paused))}function handle_seeking(){return toConsole("seeking"),!1}function handle_seeked(){toConsole("seeked")}function onMediaPlaybackError(n,t,u,f){if(toConsole("%% onMediaPlaybackError %% playerId: "+n+", code: "+t+", message: "+u+", detail: "+f),h.css("visibility","hidden"),a.HandleLiveMediaOpenFailure(reconnectOnLiveMediaOpenFailure)){toConsole("ERROR will be handled by liveMediaOpenReconnector");return}var e;switch(t){default:e=Mediasite.Player.Localization.MediaPlayer.GeneralError+" ("+t+" - "+u+")"}i.fire(r.MediaError,e)}function globalMediaPlaybackErrorFunction(n,t,i,r){var u=getMediaPlaybackErrorFunction(n);toConsole("onMediaPlaybackError function found"),u(n,t,i,r)}function setMediaPlaybackErrorFunction(n,t){if(typeof n!="string")throw{name:"Invalid Argument",message:"playerId must be a string."};if(typeof t!="function")throw{name:"Invalid Argument",message:"func must be a function."};window.strobeMediaErrorFunctions=window.strobeMediaErrorFunctions||{},window.strobeMediaErrorFunctions[n]=t,window.onMediaPlaybackError=window.onMediaPlaybackError||globalMediaPlaybackErrorFunction}function getMediaPlaybackErrorFunction(n){return window.strobeMediaErrorFunctions&&window.strobeMediaErrorFunctions[n]}function makeJsBridgeFunctionGlobalName(n){if(typeof n!="string")throw{name:"Invalid Argument",message:"elementId must be a string."};return window.strobeJsBridgeFunctions=window.strobeJsBridgeFunctions||{},window.strobeJsBridgeFunctions[n]=jsBridge,"window.strobeJsBridgeFunctions."+n}function makeUniqueSwfObjectId(){return"swf_"+getUniqueString()}function getUniqueString(){return""+ +new Date}function cueNextSource(){var n=c.shift();w=n.Location,et=n.ServerType,ot=n.MimeType}function getNextPlaybackRate(n,i){var u,r,e;return n=n!==!1,i=i!==!1,u=Math.round(t.GetPlaybackRate()*100)/100,r=f.extend([],p),r.length==0&&(r=[1]),e=n?1:-1,r.sort(function(n,t){return e*(n-t)}),i&&0>=e*(r[r.length-1]-u)?u=r[0]:f.each(r,function(n,t){if(0>=e*(t-u)&&00&&cueNextSource(),typeof w=="undefined"){i.fire(r.MediaError,Mediasite.Player.Localization.MediaPlayer.NoCompatibleMediaError),k.Error("Media - no compatible media source");return}s=makeUniqueSwfObjectId(),a=makeJsBridgeFunctionGlobalName(s),e=f.extend({},new Mediasite.MediaPlayer.BaseView,new it(n)),h=e.CreateMediaElement(s,a),nt=e.Wrapper,u=h.get(0),setMediaPlaybackErrorFunction(s,onMediaPlaybackError),f(window).unload(function(){h.remove()})},this.GetMediaWrapper=function(){return nt},this.SupportsPlayAsVideo=function(){return!1},this.AddEventHandler=function(n,t){i.addHandler(n,t)},this.UpdateOptions=function(n){tt=n.Volume},this.LiveStatusChange=function(n){var i=Mediasite.Player.PresentationStatus;yt=n==i.Live||n==i.LivePaused||n==i.OpenForLive||n==i.ScheduledForLive,a.setLiveStatus(n),n===Mediasite.Player.PresentationStatus.LiveEnded&&(t.Stop(),setEffectiveState(Mediasite.Player.MediaState.MediaEnded))},this.InactivityExceeded=function(){rt=!0},this.SetPosition=function(n){var u=getStrobeApi();u&&n>=0&&n0?n.pause():t.Stop())},this.Play=function(){toConsole("Play called");var n=getStrobeApi();if(n)if(rt===!0)window.location.reload();else if(toConsole("PLAYCOUNT = "+y),isLive()&&y>0&&n.wasStopped)resetLiveMedia();else try{n.play2()}catch(t){}},this.Stop=function(){toConsole("Stop called");var n=getStrobeApi();if(n)try{n.wasStopped=!0,n.stop2()}catch(t){}},this.GetPosition=function(){var i=getStrobeApi(),t,n;if(i)try{return(t=i.getCurrentTime()*1e3+b,s>0&&(n=t-s,bt.2?this.SetVolume((n.getVolume()-.2)*100):this.SetVolume(0)))},this.ToggleMute=function(){v||(t.IsMuted()?t.UnMute():t.Mute())},this.Mute=function(){var n=getStrobeApi();n&&(n.setMuted(!0),t.IsMuted()&&i.fire(r.VolumeChanged,0))},this.UnMute=function(){var n=getStrobeApi();n&&(v||(n.setMuted(!1),t.GetVolume()===0?this.SetVolume(50):i.fire(r.VolumeChanged,Math.round(t.GetVolume()))))},this.IsMuted=function(){var n=getStrobeApi();if(n)return n.getMuted()},this.TogglePlayPause=function(){var n=getStrobeApi();n&&(toConsole("TogglePlayPause "+n.getState()),convertState(n.getState())===Mediasite.Player.MediaState.Playing?t.Pause():t.Play())},this.SetPlaybackRate=function(){return},this.GetPlaybackRate=function(){return 1},this.GetCurrentAudioLanguageIndex=function(){return 1},this.GetAudioLanguages=function(){return[]},this.SetAudioLanguage=function(){},this.SetLiveStartTime=function(n){o=n},this.RetrieveBookmark=function(n){st=n},it=function(n){function makeFlashVars(n){var i={autoPlay:!0,plugin_AdaptiveStreamingPlugin:encodeURIComponent(getSSPluginPath()),AdaptiveStreamingPlugin_retryLive:!0,AdaptiveStreamingPlugin_retryInterval:45,controlBarMode:"none",playButtonOverlay:!1,bufferingOverlay:!1,javascriptCallbackFunction:n},r=[],t;for(t in i)i.hasOwnProperty(t)&&r.push(t+"="+i[t]);return r.join("&")}function makeVideoObject(n,t){var i,r;return i=document.createElement("object"),i.setAttribute("id",n),i.setAttribute("name",n),i.setAttribute("class","MediaElement"),i.setAttribute("type","application/x-shockwave-flash"),i.setAttribute("data",getSwfPath()),i.setAttribute("width","100%"),i.setAttribute("height","100%"),r=makeFlashVars(t),addParam(i,"flashvars",r),addParam(i,"allowFullScreen","false"),addParam(i,"allowscriptaccess","always"),addParam(i,"wmode","direct"),addParam(i,"SCALE","exactfit"),i}function addParam(n,t,i){var r=document.createElement("param");r.setAttribute("name",t),r.setAttribute("value",i),n.appendChild(r)}function getSwfPath(){var n=i?"StrobeMediaPlayback.2.0.swf":"Javascript/ClientBin/StrobeMediaPlayback.2.0.swf";return getClientBinPath()+n}function getSSPluginPath(){var n=i?"MSAdaptiveStreamingPlugin-v1.0.12-osmf2.0.swf":"Javascript/ClientBin/MSAdaptiveStreamingPlugin-v1.0.12-osmf2.0.swf";return getClientBinPath()+n}function getClientBinPath(){var t,i="",n=f('script[src*="/Javascript"]').attr("src");return n&&(t=n.lastIndexOf("/Javascript"),i=n.substring(0,t)+"/"),i}var r,u,i=n&&n.isStandAlone?n.isStandAlone:!1,t;this.Wrapper=undefined,this.CreateMediaElement=function(i,r){var e;n.mediaContainer.find(".MediaWrapper").remove(),e=f('
').appendTo(n.mediaContainer),this.Wrapper=e;var o=f(n.backgroundElement.selector),s=o.css("background-color",o.css("background-color")).css("background-color"),u=makeVideoObject(i,r);return n.height&&n.width&&f(u).css({height:n.height,width:n.width}),e.append(u),t&&t.destroy&&t.destroy(),t=Mediasite.MediaPlayer.UserActivation.Create(this,n),f(u)},this.UpdateMediaInfo=function(n){n.AudioOnly&&r.css("height","0px")},this.SetIsStandAlone=function(n){i=n}}}