/** * Kaltura HTML5 Library v2.97 * http://html5video.org/kaltura-player/docs/ * * This is free software released under the GPL2 see README more info * http://html5video.org/kaltura-player/docs/readme * * Copyright 2023 Kaltura Inc. */ window['MWEMBED_VERSION'] = '2.97'; window['SCRIPT_LOADER_URL'] = 'https://cdnapisec.kaltura.com/html5/html5lib/v2.97/load.php'; (function($){"use strict";if(window.kWidget){return;}var kWidget={startTime:{},loadTime:{},readyWidgets:{},widgetOriginalSettings:{},readyCallbacks:[],destroyedWidgets:{},perWidgetCallback:{},readyCallbackPerWidget:{},listenerList:{},userAgentPlayerRules:{},alreadyAddedThumbRules:false,iframeAutoEmbedCache:{},iframeUrls:{},setup:function(){var _this=this;mw.setConfig('version',MWEMBED_VERSION);this.checkEnvironment();this.overrideFlashEmbedMethods();this.proxyJsCallbackready();this.domReady(function(){_this.domIsReady=true;_this.proxyJsCallbackready();});this.domReady(function(){_this.rewriteObjectTags();});},checkEnvironment:function(){if(document.URL.indexOf('forceMobileHTML5')!==-1&&!mw.getConfig('disableForceMobileHTML5')){mw.setConfig('forceMobileHTML5',true);}if(document.URL.indexOf('debugKalturaPlayer')!==-1){mw.setConfig('debug',true);}if(document.URL.indexOf('forceKPlayer')!==-1){mw.setConfig('EmbedPlayer.ForceKPlayer',true);}var ua=navigator.userAgent;var ieMatch=document. documentMode?['',document.documentMode]:ua.match(/MSIE\s([0-9]+)/);if((ieMatch&&parseInt(ieMatch[1])<9)||document.URL.indexOf('forceFlash')!==-1){mw.setConfig('Kaltura.ForceFlashOnDesktop',true);}if(ua.indexOf('BlackBerry')!=-1){mw.setConfig('EmbedPlayer.DisableVideoTagSupport',true);mw.setConfig('EmbedPlayer.NotPlayableDownloadLink',true);}if(ua.indexOf('kalturaNativeCordovaPlayer')!=-1){mw.setConfig('EmbedPlayer.ForceNativeComponent',true);if(!mw.getConfig('EmbedPlayer.IsIframeServer')){var cordovaPath;var cordovaKWidgetPath;if(this.isAndroid()){cordovaPath="/modules/EmbedPlayer/binPlayers/cordova/android/cordova.js";}else{cordovaPath="/modules/EmbedPlayer/binPlayers/cordova/ios/cordova.js";}cordovaKWidgetPath="/kWidget/cordova.kWidget.js";document.write(''+''+ '
'+'
'+'
'+''+'
'+'
'+'
'+'document.getElementById(\''+targetId+'\').play();'+'
'+''+'');newDoc.close();var cbName=this.getIframeCbName(targetId);window[cbName]=function(iframeParts){var head=iframeElm.contentDocument.getElementsByTagName("head")[0]||iframeElm.documentElement;head.innerHTML=iframeParts.rawHead;iframeElm.contentDocument.getElementById("scriptsHolder").innerHTML=iframeParts.rawScripts;var nodeName=function(elem,name){return elem.nodeName&&elem.nodeName.toUpperCase()===name.toUpperCase();} var evalScript=function(elem){var data=(elem.text||elem.textContent||elem.innerHTML||"");var head=iframeElm.contentDocument.getElementsByTagName("head")[0]||iframeElm.documentElement;var script=iframeElm.contentDocument.createElement("script");script.type="text/javascript";script.appendChild(document.createTextNode(data));head.insertBefore(script,head.firstChild);if(elem.parentNode){elem.parentNode.removeChild(elem);}} var scripts=[];var headElm=head.childNodes;var ret=iframeElm.contentDocument.getElementById("scriptsHolder").childNodes;for(var i=0;ret[i];i++){if(scripts&&nodeName(ret[i],"script")&&(!ret[i].type||ret[i].type.toLowerCase()==="text/javascript")){scripts.push(ret[i].parentNode?ret[i].parentNode.removeChild(ret[i]):ret[i]);}}for(var script in scripts){evalScript(scripts[script]);}};_this.appendScriptUrl(this.getIframeUrl()+'?'+this.getIframeRequest(widgetElm,settings)+'&callback='+cbName+'&parts=1');},isInlineScriptRequest:function(settings){if(mw.getConfig('debug')||this.isMobileDevice()){return false;}if(settings.flashvars['inlineScript']){return true;}return false;},getRuntimeSettings:function(settings){var runtimeSettings={};var allowedVars=mw.getConfig('Kaltura.AllowedVars');allowedVars=allowedVars.split(",");var allowedVarsKeyPartials=mw.getConfig('Kaltura.AllowedVarsKeyPartials');allowedVarsKeyPartials=allowedVarsKeyPartials.split(",");var allowedPluginVars=mw.getConfig( 'Kaltura.AllowedPluginVars');allowedPluginVars=allowedPluginVars.split(",");var allowedPluginVarsValPartials=mw.getConfig('Kaltura.AllowedPluginVarsValPartials');allowedPluginVarsValPartials=allowedPluginVarsValPartials.split(",");for(var settingsKey in settings){if(settingsKey=='entry_id'){continue;}if(settingsKey=='flashvars'){var runtimeFlashvars=runtimeSettings[settingsKey]={};var flashvars=settings[settingsKey];for(var flashvarKey in flashvars){if(typeof flashvars[flashvarKey]!='object'){var flashvar=flashvars[flashvarKey];if([].indexOf.call(allowedVars,flashvarKey,0)>-1){runtimeFlashvars[flashvarKey]=flashvar;continue;}for(var idx in allowedVarsKeyPartials){if(flashvarKey.indexOf(allowedVarsKeyPartials[idx])>-1){runtimeFlashvars[flashvarKey]=flashvar;continue;}}}if(typeof flashvars[flashvarKey]=='object'){var runtimePlugin=runtimeFlashvars[flashvarKey]={};var plugin=flashvars[flashvarKey];for(var pluginKey in plugin){var pluginVal=plugin[pluginKey];if([].indexOf.call( allowedPluginVars,pluginKey,0)>-1){runtimePlugin[pluginKey]=pluginVal;continue;}if(typeof pluginVal=="string"){for(var idx in allowedPluginVarsValPartials){if(pluginVal.indexOf(allowedPluginVarsValPartials[idx])>-1){runtimePlugin[pluginKey]=plugin[pluginKey];continue;}}}}}}continue;}runtimeSettings[settingsKey]=settings[settingsKey];}return runtimeSettings;},getIframeRequest:function(elm,settings){var iframeRequest=this.embedSettingsToUrl(settings);iframeRequest+='&playerId='+elm.id;if(mw.getConfig('debug')){iframeRequest+='&debug=true';}if(mw.getConfig('Kaltura.KWidgetPsPath')){iframeRequest+='&pskwidgetpath='+mw.getConfig('Kaltura.KWidgetPsPath');}if(mw.getConfig('Kaltura.AllowIframeRemoteService')&&(mw.getConfig("Kaltura.ServiceUrl").indexOf('kaltura.com')===-1&&mw.getConfig("Kaltura.ServiceUrl").indexOf('kaltura.org')===-1)){iframeRequest+=kWidget.serviceConfigToUrl();}if(mw.getConfig('Kaltura.NoApiCache')){iframeRequest+='&nocache=true';}if(this.isUiConfIdHTML5(settings.uiconf_id) ){iframeRequest+='&forceMobileHTML5=true';}iframeRequest+='&urid='+MWEMBED_VERSION;return iframeRequest;},getIframeUrl:function(){var path=this.getPath();if(mw.getConfig('Kaltura.ForceIframeEmbed')===true){path=path.replace('localhost','127.0.0.1');}return path+'mwEmbedFrame.php';},getPath:function(){return SCRIPT_LOADER_URL.replace('load.php','');},outputIframeWithoutApi:function(targetId,settings){var targetEl=document.getElementById(targetId);var iframeSrc=this.getIframeUrl()+'?'+this.getIframeRequest(targetEl,settings)+'&iframeembed=true';var targetNode=document.getElementById(targetId);var parentNode=targetNode.parentNode;var iframe=document.createElement('iframe');iframe.src=iframeSrc;iframe.id=targetId;iframe.width=(settings.width)?settings.width.replace(/px/,''):'100%';iframe.height=(settings.height)?settings.height.replace(/px/,''):'100%';iframe.className=targetNode.className?' '+targetNode.className:'';iframe.style.cssText=targetNode.style.cssText;iframe.style.border='0px'; iframe.style.overflow='hidden';parentNode.replaceChild(iframe,targetNode);},addReadyCallback:function(readyCallback){for(var widgetId in this.readyWidgets){if(document.getElementById(widgetId)){readyCallback(widgetId);}}this.readyCallbacks.push(readyCallback);this.proxyJsCallbackready();},rewriteObjectTags:function(){var playerList=this.getKalutaObjectList();var _this=this;if(!playerList.length){this.playerModeChecksDone();return;}if(this.isMissingUiConfJs(playerList)){this.loadUiConfJs(playerList,function(){_this.rewriteObjectTags();}) return;}var serviceUrl=mw.getConfig('Kaltura.ServiceUrl');if(!mw.getConfig('Kaltura.AllowIframeRemoteService')){if(!serviceUrl||serviceUrl.indexOf('kaltura.com')===-1){mw.setConfig('Kaltura.IframeRewrite',false);mw.setConfig('Kaltura.UseManifestUrls',false);}}if(this.isHTML5FallForward()){this.embedFromObjects(playerList);return;}for(var i=0;i4096){_this.log("Warning iframe requests ("+scriptUrl.length+") exceeds 4096 characters, won't cache on CDN.") $.ajax({type:"POST",dataType:'text',url:_this.getIframeUrl(),data:_this.embedSettingsToUrl(settings)}).done(function(data){var contentData={content:data};window[cbName](contentData);}).fail(function(e){_this.log("Error in player iframe request");});}else{_this.appendScriptUrl(scriptUrl);}}else{_this.uiConfScriptLoadListCallbacks[cbName].push(callback);}})(playerList[i].kEmbedSettings);}if(!foundPlayerMissingUiConfJs){callback();return;}},log:function(msg){if(typeof mw!='undefined'&&!mw.getConfig('debug')){return;}if(typeof console!='undefined'&&console.log){if(this.isIE8()){try{console.log("kWidget: "+msg);}catch(e){}}else{console.log("kWidget: "+msg);}}},supportsHTML5:function(){if(mw.getConfig('EmbedPlayer.DisableVideoTagSupport')){return false;}var dummyvid=document.createElement("video");if(dummyvid.canPlayType){return true;}return false;},supportsHTMLPlayerUI:function(){return this.supportsHTML5()||(this.isIE8()&&this.supportsFlash());},supportsFlash:function(){if(mw.getConfig( 'EmbedPlayer.DisableHTML5FlashFallback')){return false;}var version=this.getFlashVersion().split(',').shift();if(version<10){return false;}else{return true;}},getFlashVersion:function(){if(navigator.plugins&&navigator.plugins.length){try{if(navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin){return(navigator.plugins["Shockwave Flash 2.0"]||navigator.plugins["Shockwave Flash"]).description.replace(/\D+/g,",").match(/^,?(.+),?$/)[1];}}catch(e){}}try{try{if(typeof ActiveXObject!='undefined'){var axo=new ActiveXObject('ShockwaveFlash.ShockwaveFlash.6');try{axo.AllowScriptAccess='always';}catch(e){return'6,0,0';}}}catch(e){}return new ActiveXObject('ShockwaveFlash.ShockwaveFlash').GetVariable('$version').replace(/\D+/g,',').match(/^,?(.+),?$/)[1];}catch(e){}return'0,0,0';},isIOS:function(){return((navigator.userAgent.indexOf('iPhone')!=-1)||(navigator.userAgent.indexOf('iPod')!=-1)||(navigator.userAgent.indexOf('iPad')!=-1));},isFirefox:function(){return navigator.userAgent. indexOf('Firefox')!=-1;},isIE:function(){return/\bMSIE\b/.test(navigator.userAgent);},isIE8:function(){return document.documentMode===8;},isAndroid:function(){return(navigator.userAgent.indexOf('Android ')!==-1&&navigator.userAgent.indexOf('Windows')===-1);},isSafari:function(){return(/safari/).test(navigator.userAgent.toLowerCase());},isChrome:function(){return(/chrome/).test(navigator.userAgent.toLowerCase());},isWindowsDevice:function(){var appVer=navigator.appVersion;return((appVer.indexOf("Win")!=-1&&(navigator.appVersion.indexOf("Phone")!=-1||navigator.appVersion.indexOf("CE")!=-1)));},isMobileDevice:function(){return(this.isIOS()||this.isIpadOS()||this.isAndroid()||this.isWindowsDevice()||mw.getConfig("EmbedPlayer.ForceNativeComponent")||mw.getConfig("EmbedPlayer.SimulateMobile")===true);},isChromeCast:function(){return(/CrKey/.test(navigator.userAgent));},isIpadOS:function(){return(this.isSafari()&&this.isTouchDevice&&!this.isIOS());},isTouchDevice:function(){return!!( 'ontouchstart'in window)||(mw.getConfig("EmbedPlayer.EnableMobileSkin")===true&&mw.getConfig("EmbedPlayer.SimulateMobile")===true);},isUiConfIdHTML5:function(uiconf_id){var isHTML5=this.isHTML5FallForward();if(this.userAgentPlayerRules&&this.userAgentPlayerRules[uiconf_id]){var playerAction=this.checkUserAgentPlayerRules(this.userAgentPlayerRules[uiconf_id]);if(playerAction.mode=='leadWithHTML5'){isHTML5=this.supportsHTMLPlayerUI();}}return isHTML5;},isHTML5FallForward:function(){if(this.isIOS()||mw.getConfig('forceMobileHTML5')){return true;}if((mw.getConfig('KalturaSupport.LeadWithHTML5')||mw.getConfig('Kaltura.LeadWithHTML5'))&&this.supportsHTMLPlayerUI()){return true;}if(this.isAndroid()){if(mw.getConfig('EmbedPlayer.UseFlashOnAndroid')&&kWidget.supportsFlash()){return false;}else{return true;}}if(kWidget.supportsFlash()){return false;}if(mw.getConfig('Kaltura.ForceFlashOnIE10')){var ua=navigator.userAgent;var ie10Match=document.documentMode===10;if(ie10Match){return false;}}if(mw. getConfig('Kaltura.ForceFlashOnDesktop')){return false;}if(kWidget.supportsHTML5()){return true;}if(mw.getConfig('Kaltura.IframeRewrite')){return true;}return false;},getDownloadLink:function(settings){var _this=this;var baseUrl=_this.getPath();var downloadUrl=baseUrl+'modules/KalturaSupport/download.php/wid/'+settings.wid;if(settings.uiconf_id){downloadUrl+='/uiconf_id/'+settings.uiconf_id;}if(settings.entry_id){downloadUrl+='/entry_id/'+settings.entry_id;}var flashVarsString=this.flashVarsToString(settings.flashvars);var ks=settings.ks;if(ks){downloadUrl+='/?ks='+ks+flashVarsString;}else{downloadUrl+='/?'+flashVarsString.substr(1,flashVarsString.length);}return downloadUrl;},getKalturaThumbUrl:function(settings){if(settings.flashvars&&settings.flashvars.thumbnailUrl!==undefined){return settings.flashvars.thumbnailUrl;}var sizeParam='';if(settings.width!='100%'&&settings.width){sizeParam+='/width/'+parseInt(settings.width);}if(settings.height!='100%'&&settings.height){sizeParam+= '/height/'+parseInt(settings.height);}if(!settings.height&&!settings.width){sizeParam+='/height/480';}var vidParams='';if(settings.vid_sec){vidParams+='/vid_sec/'+settings.vid_sec;}if(settings.vid_slices){vidParams+='/vid_slices/'+settings.vid_slices;}if(settings.ks){vidParams+='/ks/'+settings.ks;}if(settings.flashvars&&settings.flashvars.ks){vidParams+='/ks/'+settings.flashvars.ks;}var flashVars={};if(settings.flashvars&&settings.flashvars.referenceId){flashVars['referenceId']=settings.flashvars.referenceId;}if(settings.p&&!settings.partner_id){settings.partner_id=settings.p;}if(!settings.partner_id&&settings.wid){settings.partner_id=settings.wid.replace('_','');}var entryId=(settings.entry_id)?'/entry_id/'+settings.entry_id:'';return this.getPath()+'modules/KalturaSupport/thumbnail.php'+'/p/'+settings.partner_id+'/uiconf_id/'+settings.uiconf_id+entryId+sizeParam+vidParams+'?'+this.flashVarsToUrl(flashVars);},getEmbedSettings:function(swfUrl,flashvars){var embedSettings={};if(typeof flashvars=='string'){flashvars=this.flashVars2Object(flashvars);}if(!flashvars){flashvars={};}if(!swfUrl){return{};}var trim=function(str){return str.replace(/^\s+|\s+$/g,"");} embedSettings.flashvars=flashvars;var dataUrlParts=swfUrl.split('/');var prevUrlPart=null;while(dataUrlParts.length){var curUrlPart=dataUrlParts.pop();switch(curUrlPart){case'p':embedSettings.wid='_'+prevUrlPart;embedSettings.p=prevUrlPart;break;case'wid':embedSettings.wid=prevUrlPart;embedSettings.p=prevUrlPart.replace(/_/,'');break;case'entry_id':embedSettings.entry_id=prevUrlPart;break;case'uiconf_id':case'ui_conf_id':embedSettings.uiconf_id=prevUrlPart;break;case'cache_st':embedSettings.cache_st=prevUrlPart;break;}prevUrlPart=trim(curUrlPart);}for(var key in flashvars){var val=flashvars[key];key=key.toLowerCase();if(key=='entryid'){embedSettings.entry_id=val;}if(key=='uiconfid'){embedSettings.uiconf_id=val;}if(key=='widgetid'||key=='widget_id'){embedSettings.wid=val;}if(key=='partnerid'||key=='partner_id'){embedSettings.wid='_'+val;embedSettings.p=val;}if(key=='referenceid'){embedSettings.reference_id=val;}}if(!embedSettings.cache_st){embedSettings.cache_st=1;}return embedSettings; },flashVars2Object:function(flashvarsString){var flashVarsSet=(flashvarsString)?flashvarsString.split('&'):[];var flashvars={};for(var i=0;i';doEmbedSettingsWrite(kEmbedSettings,attributes.id,attributes.width,attributes.height);}else{return originalFlashembed(targetId,attributes,flashvars);}});};var flashembedStaticMethods=['asString','getHTML','getVersion','isSupported'];for(var i=0;iparseInt(minVersionParts[i])){return true;}if(parseInt(clientVersionParts[i])/gm,'');}return str;};kWidget.getHashParam=function(key){var hash=window.location.hash;if(hash){var hashParams=hash.split("&");for(var i=0;i1&¶m['1:service']=='session'&&!withProxyData){_this.setKs(data[0].ks);if(data.length==2){ data=data[1];}else{data.shift();}}if(callback){callback(data);callback=null;}};var userAgent=navigator.userAgent.toLowerCase();var forceJSONP=document.documentMode&&document.documentMode<=10;try{if(forceJSONP){throw"forceJSONP";}this.xhrRequest(_this.getApiUrl(serviceType,apiHost),param,function(data){handleDataResult(data);});}catch(e){param['format']=9;delete param['kalsig'];var kalSig=this.hashCode(kWidget.param(param));param['kalsig']=kalSig;var requestURL=_this.getApiUrl(serviceType)+'&'+kWidget.param(param);globalCBName='kapi_'+kalSig;if(window[globalCBName]){this.callbackIndex++;globalCBName=globalCBName+this.callbackIndex;}window[globalCBName]=function(data){handleDataResult(data);window[globalCBName]=undefined;try{delete window[globalCBName];}catch(e){}} requestURL+='&callback='+globalCBName;kWidget.appendScriptUrl(requestURL);}},xhrRequest:function(url,param,callback){var requestMethod=this.type=="auto"?((kWidget.param(param).length>2000)?'xhrPost':'xhrGet'):((this.type=="GET")?'xhrGet':'xhrPost');this[requestMethod](url,param,callback);},parseResponse:function(data){var response=data;try{response=JSON.parse(data);}catch(e){}return response;},xhrGet:function(url,param,callback){var _this=this;var xmlhttp=new XMLHttpRequest();xmlhttp.onreadystatechange=function(){if(xmlhttp.readyState==4&&xmlhttp.status==200){callback(_this.parseResponse(xmlhttp.responseText));}} xmlhttp.open("GET",url+'&'+kWidget.param(param),true);xmlhttp.send();},xhrPost:function(url,param,callback,headers){var _this=this;var xmlhttp=new XMLHttpRequest();xmlhttp.onreadystatechange=function(){if(xmlhttp.readyState==4&&xmlhttp.status==200){callback(_this.parseResponse(xmlhttp.responseText));}} xmlhttp.open("POST",url,true);if(headers){for(var key in headers){if(headers.hasOwnProperty(key)){xmlhttp.setRequestHeader(key,headers[key]);}}xmlhttp.send(param);}else{xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");xmlhttp.send(kWidget.param(param));}},handleKsServiceRequest:function(requestObject){var param={};if(requestObject['ks']){this.ks=requestObject['ks'];}if(!requestObject.length&&!this.getKs()){requestObject=[requestObject];}if(requestObject.length){param['service']='multirequest';param['action']='null';var mulitRequestIndex=1;if(!this.getKs()){param[mulitRequestIndex+':service']='session';param[mulitRequestIndex+':action']='startWidgetSession';param[mulitRequestIndex+':widgetId']=this.wid;mulitRequestIndex=2;}for(var i=0;i