video.dev.min.js 75 KB

123
  1. document.createElement("video");document.createElement("audio");document.createElement("track");var vjs=function(d,b,c){var a;if(typeof d==="string"){if(d.indexOf("#")===0){d=d.slice(1)}if(vjs.players[d]){return vjs.players[d]}else{a=vjs.el(d)}}else{a=d}if(!a||!a.nodeName){throw new TypeError("The element or ID supplied is not valid. (videojs)")}return a.player||new vjs.Player(a,b,c)};var videojs=vjs;window.videojs=window.vjs=vjs;vjs.CDN_VERSION="4.3";vjs.ACCESS_PROTOCOL=("https:"==document.location.protocol?"https://":"http://");vjs.options={techOrder:["html5","flash"],html5:{},flash:{},width:300,height:150,defaultVolume:0,children:{mediaLoader:{},posterImage:{},textTrackDisplay:{},loadingSpinner:{},bigPlayButton:{},controlBar:{}},notSupportedMessage:'Sorry, no compatible source and playback technology were found for this video. Try using another browser like <a href="http://bit.ly/ccMUEC">Chrome</a> or download the latest <a href="http://adobe.ly/mwfN1">Adobe Flash Player</a>.'};if(vjs.CDN_VERSION!=="GENERATED_CDN_VSN"){videojs.options.flash["swf"]=vjs.ACCESS_PROTOCOL+"vjs.zencdn.net/"+vjs.CDN_VERSION+"/video-js.swf"}vjs.players={};vjs.CoreObject=vjs.CoreObject=function(){};vjs.CoreObject.extend=function(c){var d,a;c=c||{};d=c.init||c.init||this.prototype.init||this.prototype.init||function(){};a=function(){d.apply(this,arguments)};a.prototype=vjs.obj.create(this.prototype);a.prototype.constructor=a;a.extend=vjs.CoreObject.extend;a.create=vjs.CoreObject.create;for(var b in c){if(c.hasOwnProperty(b)){a.prototype[b]=c[b]}}return a};vjs.CoreObject.create=function(){var a=vjs.obj.create(this.prototype);this.apply(a,arguments);return a};vjs.on=function(c,b,a){var d=vjs.getData(c);if(!d.handlers){d.handlers={}}if(!d.handlers[b]){d.handlers[b]=[]}if(!a.guid){a.guid=vjs.guid++}d.handlers[b].push(a);if(!d.dispatcher){d.disabled=false;d.dispatcher=function(g){if(d.disabled){return}g=vjs.fixEvent(g);var f=d.handlers[g.type];if(f){var h=f.slice(0);for(var e=0,j=h.length;e<j;e++){if(g.isImmediatePropagationStopped()){break}else{h[e].call(c,g)}}}}}if(d.handlers[b].length==1){if(document.addEventListener){c.addEventListener(b,d.dispatcher,false)}else{if(document.attachEvent){c.attachEvent("on"+b,d.dispatcher)}}}};vjs.off=function(e,d,c){if(!vjs.hasData(e)){return}var f=vjs.getData(e);if(!f.handlers){return}var g=function(j){f.handlers[j]=[];vjs.cleanUpEvents(e,j)};if(!d){for(var b in f.handlers){g(b)}return}var a=f.handlers[d];if(!a){return}if(!c){g(d);return}if(c.guid){for(var h=0;h<a.length;h++){if(a[h].guid===c.guid){a.splice(h--,1)}}}vjs.cleanUpEvents(e,d)};vjs.cleanUpEvents=function(b,a){var c=vjs.getData(b);if(c.handlers[a].length===0){delete c.handlers[a];if(document.removeEventListener){b.removeEventListener(a,c.dispatcher,false)}else{if(document.detachEvent){b.detachEvent("on"+a,c.dispatcher)}}}if(vjs.isEmpty(c.handlers)){delete c.handlers;delete c.dispatcher;delete c.disabled}if(vjs.isEmpty(c)){vjs.removeData(b)}};vjs.fixEvent=function(e){function g(){return true}function d(){return false}if(!e||!e.isPropagationStopped){var b=e||window.event;e={};for(var c in b){if(c!=="layerX"&&c!=="layerY"){e[c]=b[c]}}if(!e.target){e.target=e.srcElement||document}e.relatedTarget=e.fromElement===e.target?e.toElement:e.fromElement;e.preventDefault=function(){if(b.preventDefault){b.preventDefault()}e.returnValue=false;e.isDefaultPrevented=g};e.isDefaultPrevented=d;e.stopPropagation=function(){if(b.stopPropagation){b.stopPropagation()}e.cancelBubble=true;e.isPropagationStopped=g};e.isPropagationStopped=d;e.stopImmediatePropagation=function(){if(b.stopImmediatePropagation){b.stopImmediatePropagation()}e.isImmediatePropagationStopped=g;e.stopPropagation()};e.isImmediatePropagationStopped=d;if(e.clientX!=null){var f=document.documentElement,a=document.body;e.pageX=e.clientX+(f&&f.scrollLeft||a&&a.scrollLeft||0)-(f&&f.clientLeft||a&&a.clientLeft||0);e.pageY=e.clientY+(f&&f.scrollTop||a&&a.scrollTop||0)-(f&&f.clientTop||a&&a.clientTop||0)}e.which=e.charCode||e.keyCode;if(e.button!=null){e.button=(e.button&1?0:(e.button&4?1:(e.button&2?2:0)))}}return e};vjs.trigger=function(d,c){var a=(vjs.hasData(d))?vjs.getData(d):{};var b=d.parentNode||d.ownerDocument;if(typeof c==="string"){c={type:c,target:d}}c=vjs.fixEvent(c);if(a.dispatcher){a.dispatcher.call(d,c)}if(b&&!c.isPropagationStopped()&&c.bubbles!==false){vjs.trigger(b,c)}else{if(!b&&!c.isDefaultPrevented()){var e=vjs.getData(c.target);if(c.target[c.type]){e.disabled=true;if(typeof c.target[c.type]==="function"){c.target[c.type]()}e.disabled=false}}}return !c.isDefaultPrevented()};vjs.one=function(d,b,a){var c=function(){vjs.off(d,b,c);a.apply(this,arguments)};c.guid=a.guid=a.guid||vjs.guid++;vjs.on(d,b,c)};var hasOwnProp=Object.prototype.hasOwnProperty;vjs.createEl=function(b,a){var c,d;c=document.createElement(b||"div");for(d in a){if(hasOwnProp.call(a,d)){if(d.indexOf("aria-")!==-1||d=="role"){c.setAttribute(d,a[d])}else{c[d]=a[d]}}}return c};vjs.capitalize=function(a){return a.charAt(0).toUpperCase()+a.slice(1)};vjs.obj={};vjs.obj.create=Object.create||function(b){function a(){}a.prototype=b;return new a()};vjs.obj.each=function(d,c,b){for(var a in d){if(hasOwnProp.call(d,a)){c.call(b||this,a,d[a])}}};vjs.obj.merge=function(c,b){if(!b){return c}for(var a in b){if(hasOwnProp.call(b,a)){c[a]=b[a]}}return c};vjs.obj.deepMerge=function(e,d){var a,c,b;e=vjs.obj.copy(e);for(a in d){if(hasOwnProp.call(d,a)){c=e[a];b=d[a];if(vjs.obj.isPlain(c)&&vjs.obj.isPlain(b)){e[a]=vjs.obj.deepMerge(c,b)}else{e[a]=d[a]}}}return e};vjs.obj.copy=function(a){return vjs.obj.merge({},a)};vjs.obj.isPlain=function(a){return !!a&&typeof a==="object"&&a.toString()==="[object Object]"&&a.constructor===Object};vjs.bind=function(c,d,b){if(!d.guid){d.guid=vjs.guid++}var a=function(){return d.apply(c,arguments)};a.guid=(b)?b+"_"+d.guid:d.guid;return a};vjs.cache={};vjs.guid=1;vjs.expando="vdata"+(new Date()).getTime();vjs.getData=function(a){var b=a[vjs.expando];if(!b){b=a[vjs.expando]=vjs.guid++;vjs.cache[b]={}}return vjs.cache[b]};vjs.hasData=function(a){var b=a[vjs.expando];return !(!b||vjs.isEmpty(vjs.cache[b]))};vjs.removeData=function(a){var c=a[vjs.expando];if(!c){return}delete vjs.cache[c];try{delete a[vjs.expando]}catch(b){if(a.removeAttribute){a.removeAttribute(vjs.expando)}else{a[vjs.expando]=null}}};vjs.isEmpty=function(a){for(var b in a){if(a[b]!==null){return false}}return true};vjs.addClass=function(a,b){if((" "+a.className+" ").indexOf(" "+b+" ")==-1){a.className=a.className===""?b:a.className+" "+b}};vjs.removeClass=function(c,a){var d,b;if(c.className.indexOf(a)==-1){return}d=c.className.split(" ");for(b=d.length-1;b>=0;b--){if(d[b]===a){d.splice(b,1)}}c.className=d.join(" ")};vjs.TEST_VID=vjs.createEl("video");vjs.USER_AGENT=navigator.userAgent;vjs.IS_IPHONE=(/iPhone/i).test(vjs.USER_AGENT);vjs.IS_IPAD=(/iPad/i).test(vjs.USER_AGENT);vjs.IS_IPOD=(/iPod/i).test(vjs.USER_AGENT);vjs.IS_IOS=vjs.IS_IPHONE||vjs.IS_IPAD||vjs.IS_IPOD;vjs.IOS_VERSION=(function(){var a=vjs.USER_AGENT.match(/OS (\d+)_/i);if(a&&a[1]){return a[1]}})();vjs.IS_ANDROID=(/Android/i).test(vjs.USER_AGENT);vjs.ANDROID_VERSION=(function(){var b=vjs.USER_AGENT.match(/Android (\d+)(?:\.(\d+))?(?:\.(\d+))*/i),a,c;if(!b){return null}a=b[1]&&parseFloat(b[1]);c=b[2]&&parseFloat(b[2]);if(a&&c){return parseFloat(b[1]+"."+b[2])}else{if(a){return a}else{return null}}})();vjs.IS_OLD_ANDROID=vjs.IS_ANDROID&&(/webkit/i).test(vjs.USER_AGENT)&&vjs.ANDROID_VERSION<2.3;vjs.IS_FIREFOX=(/Firefox/i).test(vjs.USER_AGENT);vjs.IS_CHROME=(/Chrome/i).test(vjs.USER_AGENT);vjs.TOUCH_ENABLED=!!(("ontouchstart" in window)||window.DocumentTouch&&document instanceof window.DocumentTouch);vjs.getAttributeValues=function(a){var g,b,d,f,c;g={};b=",autoplay,controls,loop,muted,default,";if(a&&a.attributes&&a.attributes.length>0){d=a.attributes;for(var e=d.length-1;e>=0;e--){f=d[e].name;c=d[e].value;if(typeof a[f]==="boolean"||b.indexOf(","+f+",")!==-1){c=(c!==null)?true:false}g[f]=c}}return g};vjs.getComputedDimension=function(a,b){var c="";if(document.defaultView&&document.defaultView.getComputedStyle){c=document.defaultView.getComputedStyle(a,"").getPropertyValue(b)}else{if(a.currentStyle){c=a["client"+b.substr(0,1).toUpperCase()+b.substr(1)]+"px"}}return c};vjs.insertFirst=function(b,a){if(a.firstChild){a.insertBefore(b,a.firstChild)}else{a.appendChild(b)}};vjs.support={};vjs.el=function(a){if(a.indexOf("#")===0){a=a.slice(1)}return document.getElementById(a)};vjs.formatTime=function(g,b){b=b||g;var e=Math.floor(g%60),a=Math.floor(g/60%60),d=Math.floor(g/3600),f=Math.floor(b/60%60),c=Math.floor(b/3600);if(isNaN(g)||g===Infinity){d=a=e="-"}d=(d>0||c>0)?d+":":"";a=(((d||f>=10)&&a<10)?"0"+a:a)+":";e=(e<10)?"0"+e:e;return d+a+e};vjs.blockTextSelection=function(){document.body.focus();document.onselectstart=function(){return false}};vjs.unblockTextSelection=function(){document.onselectstart=function(){return true}};vjs.trim=function(a){return(a+"").replace(/^\s+|\s+$/g,"")};vjs.round=function(a,b){if(!b){b=0}return Math.round(a*Math.pow(10,b))/Math.pow(10,b)};vjs.createTimeRange=function(b,a){return{length:1,start:function(){return b},end:function(){return a}}};vjs.get=function(a,g,d){var b,c;if(typeof XMLHttpRequest==="undefined"){window.XMLHttpRequest=function(){try{return new window.ActiveXObject("Msxml2.XMLHTTP.6.0")}catch(k){}try{return new window.ActiveXObject("Msxml2.XMLHTTP.3.0")}catch(j){}try{return new window.ActiveXObject("Msxml2.XMLHTTP")}catch(h){}throw new Error("This browser does not support XMLHttpRequest.")}}c=new XMLHttpRequest();try{c.open("GET",a)}catch(f){d(f)}b=(a.indexOf("file:")===0||(window.location.href.indexOf("file:")===0&&a.indexOf("http")===-1));c.onreadystatechange=function(){if(c.readyState===4){if(c.status===200||b&&c.status===0){g(c.responseText)}else{if(d){d()}}}};try{c.send()}catch(f){if(d){d(f)}}};vjs.setLocalStorage=function(b,c){try{var a=window.localStorage||false;if(!a){return}a[b]=c}catch(d){if(d.code==22||d.code==1014){vjs.log("LocalStorage Full (VideoJS)",d)}else{if(d.code==18){vjs.log("LocalStorage not allowed (VideoJS)",d)}else{vjs.log("LocalStorage Error (VideoJS)",d)}}}};vjs.getAbsoluteURL=function(a){if(!a.match(/^https?:\/\//)){a=vjs.createEl("div",{innerHTML:'<a href="'+a+'">x</a>'}).firstChild.href}return a};vjs.log=function(){vjs.log.history=vjs.log.history||[];vjs.log.history.push(arguments);if(window.console){window.console.log(Array.prototype.slice.call(arguments))}};vjs.findPosition=function(c){var g,b,h,j,e,d,f,a,k;if(c.getBoundingClientRect&&c.parentNode){g=c.getBoundingClientRect()}if(!g){return{left:0,top:0}}b=document.documentElement;h=document.body;j=b.clientLeft||h.clientLeft||0;e=window.pageXOffset||h.scrollLeft;d=g.left+e-j;f=b.clientTop||h.clientTop||0;a=window.pageYOffset||h.scrollTop;k=g.top+a-f;return{left:d,top:k}};vjs.Component=vjs.CoreObject.extend({init:function(b,a,c){this.player_=b;this.options_=vjs.obj.copy(this.options_);a=this.options(a);this.id_=a.id||((a.el&&a.el["id"])?a.el["id"]:b.id()+"_component_"+vjs.guid++);this.name_=a.name||null;this.el_=a.el||this.createEl();this.children_=[];this.childIndex_={};this.childNameIndex_={};this.initChildren();this.ready(c)}});vjs.Component.prototype.dispose=function(){this.trigger("dispose");if(this.children_){for(var a=this.children_.length-1;a>=0;a--){if(this.children_[a].dispose){this.children_[a].dispose()}}}this.children_=null;this.childIndex_=null;this.childNameIndex_=null;this.off();if(this.el_.parentNode){this.el_.parentNode.removeChild(this.el_)}vjs.removeData(this.el_);this.el_=null};vjs.Component.prototype.player_=true;vjs.Component.prototype.player=function(){return this.player_};vjs.Component.prototype.options_;vjs.Component.prototype.options=function(a){if(a===undefined){return this.options_}return this.options_=vjs.obj.deepMerge(this.options_,a)};vjs.Component.prototype.el_;vjs.Component.prototype.createEl=function(b,a){return vjs.createEl(b,a)};vjs.Component.prototype.el=function(){return this.el_};vjs.Component.prototype.contentEl_;vjs.Component.prototype.contentEl=function(){return this.contentEl_||this.el_};vjs.Component.prototype.id_;vjs.Component.prototype.id=function(){return this.id_};vjs.Component.prototype.name_;vjs.Component.prototype.name=function(){return this.name_};vjs.Component.prototype.children_;vjs.Component.prototype.children=function(){return this.children_};vjs.Component.prototype.childIndex_;vjs.Component.prototype.getChildById=function(a){return this.childIndex_[a]};vjs.Component.prototype.childNameIndex_;vjs.Component.prototype.getChild=function(a){return this.childNameIndex_[a]};vjs.Component.prototype.addChild=function(f,d){var c,e,a,b;if(typeof f==="string"){a=f;d=d||{};e=d.componentClass||vjs.capitalize(a);d.name=a;c=new window.videojs[e](this.player_||this,d)}else{c=f}this.children_.push(c);if(typeof c.id==="function"){this.childIndex_[c.id()]=c}a=a||(c.name&&c.name());if(a){this.childNameIndex_[a]=c}if(typeof c.el==="function"&&c.el()){this.contentEl().appendChild(c.el())}return c};vjs.Component.prototype.removeChild=function(b){if(typeof b==="string"){b=this.getChild(b)}if(!b||!this.children_){return}var a=false;for(var c=this.children_.length-1;c>=0;c--){if(this.children_[c]===b){a=true;this.children_.splice(c,1);break}}if(!a){return}this.childIndex_[b.id]=null;this.childNameIndex_[b.name]=null;var d=b.el();if(d&&d.parentNode===this.contentEl()){this.contentEl().removeChild(b.el())}};vjs.Component.prototype.initChildren=function(){var b=this.options_;if(b&&b.children){var a=this;vjs.obj.each(b.children,function(d,e){if(e===false){return}var c=function(){a[d]=a.addChild(d,e)};if(e.loadEvent){}else{c()}})}};vjs.Component.prototype.buildCSSClass=function(){return""};vjs.Component.prototype.on=function(b,a){vjs.on(this.el_,b,vjs.bind(this,a));return this};vjs.Component.prototype.off=function(b,a){vjs.off(this.el_,b,a);return this};vjs.Component.prototype.one=function(b,a){vjs.one(this.el_,b,vjs.bind(this,a));return this};vjs.Component.prototype.trigger=function(a,b){vjs.trigger(this.el_,a,b);return this};vjs.Component.prototype.isReady_;vjs.Component.prototype.isReadyOnInitFinish_=true;vjs.Component.prototype.readyQueue_;vjs.Component.prototype.ready=function(a){if(a){if(this.isReady_){a.call(this)}else{if(this.readyQueue_===undefined){this.readyQueue_=[]}this.readyQueue_.push(a)}}return this};vjs.Component.prototype.triggerReady=function(){this.isReady_=true;var c=this.readyQueue_;if(c&&c.length>0){for(var b=0,a=c.length;b<a;b++){c[b].call(this)}this.readyQueue_=[];this.trigger("ready")}};vjs.Component.prototype.addClass=function(a){vjs.addClass(this.el_,a);return this};vjs.Component.prototype.removeClass=function(a){vjs.removeClass(this.el_,a);return this};vjs.Component.prototype.show=function(){this.el_.style.display="block";return this};vjs.Component.prototype.hide=function(){this.el_.style.display="none";return this};vjs.Component.prototype.lockShowing=function(){this.addClass("vjs-lock-showing");return this};vjs.Component.prototype.unlockShowing=function(){this.removeClass("vjs-lock-showing");return this};vjs.Component.prototype.disable=function(){this.hide();this.show=function(){}};vjs.Component.prototype.width=function(a,b){return this.dimension("width",a,b)};vjs.Component.prototype.height=function(a,b){return this.dimension("height",a,b)};vjs.Component.prototype.dimensions=function(b,a){return this.width(b,true).height(a)};vjs.Component.prototype.dimension=function(e,a,d){if(a!==undefined){if((""+a).indexOf("%")!==-1||(""+a).indexOf("px")!==-1){this.el_.style[e]=a}else{if(a==="auto"){this.el_.style[e]=""}else{this.el_.style[e]=a+"px"}}if(!d){this.trigger("resize")}return this}if(!this.el_){return 0}var c=this.el_.style[e];var b=c.indexOf("px");if(b!==-1){return parseInt(c.slice(0,b),10)}else{return parseInt(this.el_["offset"+vjs.capitalize(e)],10)}};vjs.Component.prototype.onResize;vjs.Component.prototype.emitTapEvents=function(){var a,b,d,c;a=0;this.on("touchstart",function(e){a=new Date().getTime();d=true});c=function(){d=false};this.on("touchmove",c);this.on("touchleave",c);this.on("touchcancel",c);this.on("touchend",function(){if(d===true){b=new Date().getTime()-a;if(b<250){this.trigger("tap")}}})};vjs.Button=vjs.Component.extend({init:function(c,b){vjs.Component.call(this,c,b);var d=false;this.on("touchstart",function(e){e.preventDefault();d=true});this.on("touchmove",function(){d=false});var a=this;this.on("touchend",function(e){if(d){a.onClick(e)}e.preventDefault()});this.on("click",this.onClick);this.on("focus",this.onFocus);this.on("blur",this.onBlur)}});vjs.Button.prototype.createEl=function(b,a){a=vjs.obj.merge({className:this.buildCSSClass(),innerHTML:'<div class="vjs-control-content"><span class="vjs-control-text">'+(this.buttonText||"Need Text")+"</span></div>",role:"button","aria-live":"polite",tabIndex:0},a);return vjs.Component.prototype.createEl.call(this,b,a)};vjs.Button.prototype.buildCSSClass=function(){return"vjs-control "+vjs.Component.prototype.buildCSSClass.call(this)};vjs.Button.prototype.onClick=function(){};vjs.Button.prototype.onFocus=function(){vjs.on(document,"keyup",vjs.bind(this,this.onKeyPress))};vjs.Button.prototype.onKeyPress=function(a){if(a.which==32||a.which==13){a.preventDefault();this.onClick()}};vjs.Button.prototype.onBlur=function(){vjs.off(document,"keyup",vjs.bind(this,this.onKeyPress))};vjs.Slider=vjs.Component.extend({init:function(b,a){vjs.Component.call(this,b,a);this.bar=this.getChild(this.options_.barName);this.handle=this.getChild(this.options_.handleName);b.on(this.playerEvent,vjs.bind(this,this.update));this.on("mousedown",this.onMouseDown);this.on("touchstart",this.onMouseDown);this.on("focus",this.onFocus);this.on("blur",this.onBlur);this.on("click",this.onClick);this.player_.on("controlsvisible",vjs.bind(this,this.update));b.ready(vjs.bind(this,this.update));this.boundEvents={}}});vjs.Slider.prototype.createEl=function(b,a){a=a||{};a.className=a.className+" vjs-slider";a=vjs.obj.merge({role:"slider","aria-valuenow":0,"aria-valuemin":0,"aria-valuemax":100,tabIndex:0},a);return vjs.Component.prototype.createEl.call(this,b,a)};vjs.Slider.prototype.onMouseDown=function(a){a.preventDefault();vjs.blockTextSelection();this.boundEvents.move=vjs.bind(this,this.onMouseMove);this.boundEvents.end=vjs.bind(this,this.onMouseUp);vjs.on(document,"mousemove",this.boundEvents.move);vjs.on(document,"mouseup",this.boundEvents.end);vjs.on(document,"touchmove",this.boundEvents.move);vjs.on(document,"touchend",this.boundEvents.end);this.onMouseMove(a)};vjs.Slider.prototype.onMouseUp=function(){vjs.unblockTextSelection();vjs.off(document,"mousemove",this.boundEvents.move,false);vjs.off(document,"mouseup",this.boundEvents.end,false);vjs.off(document,"touchmove",this.boundEvents.move,false);vjs.off(document,"touchend",this.boundEvents.end,false);this.update()};vjs.Slider.prototype.update=function(){if(!this.el_){return}var b,a=this.getPercent(),f=this.handle,g=this.bar;if(isNaN(a)){a=0}b=a;if(f){var d=this.el_,e=d.offsetWidth,j=f.el().offsetWidth,k=(j)?j/e:0,c=1-k,h=a*c;b=h+(k/2);f.el().style.left=vjs.round(h*100,2)+"%"}g.el().style.width=vjs.round(b*100,2)+"%"};vjs.Slider.prototype.calculateDistance=function(b){var d,g,m,l,a,j,h,f,e;d=this.el_;g=vjs.findPosition(d);a=j=d.offsetWidth;h=this.handle;if(this.options_.vertical){l=g.top;if(b.changedTouches){e=b.changedTouches[0].pageY}else{e=b.pageY}if(h){var k=h.el().offsetHeight;l=l+(k/2);j=j-k}return Math.max(0,Math.min(1,((l-e)+j)/j))}else{m=g.left;if(b.changedTouches){f=b.changedTouches[0].pageX}else{f=b.pageX}if(h){var c=h.el().offsetWidth;m=m+(c/2);a=a-c}return Math.max(0,Math.min(1,(f-m)/a))}};vjs.Slider.prototype.onFocus=function(){vjs.on(document,"keyup",vjs.bind(this,this.onKeyPress))};vjs.Slider.prototype.onKeyPress=function(a){if(a.which==37){a.preventDefault();this.stepBack()}else{if(a.which==39){a.preventDefault();this.stepForward()}}};vjs.Slider.prototype.onBlur=function(){vjs.off(document,"keyup",vjs.bind(this,this.onKeyPress))};vjs.Slider.prototype.onClick=function(a){a.stopImmediatePropagation();a.preventDefault()};vjs.SliderHandle=vjs.Component.extend();vjs.SliderHandle.prototype.defaultValue=0;vjs.SliderHandle.prototype.createEl=function(b,a){a=a||{};a.className=a.className+" vjs-slider-handle";a=vjs.obj.merge({innerHTML:'<span class="vjs-control-text">'+this.defaultValue+"</span>"},a);return vjs.Component.prototype.createEl.call(this,"div",a)};vjs.Menu=vjs.Component.extend();vjs.Menu.prototype.addItem=function(a){this.addChild(a);a.on("click",vjs.bind(this,function(){this.unlockShowing()}))};vjs.Menu.prototype.createEl=function(){var b=this.options().contentElType||"ul";this.contentEl_=vjs.createEl(b,{className:"vjs-menu-content"});var a=vjs.Component.prototype.createEl.call(this,"div",{append:this.contentEl_,className:"vjs-menu"});a.appendChild(this.contentEl_);vjs.on(a,"click",function(c){c.preventDefault();c.stopImmediatePropagation()});return a};vjs.MenuItem=vjs.Button.extend({init:function(b,a){vjs.Button.call(this,b,a);this.selected(a.selected)}});vjs.MenuItem.prototype.createEl=function(b,a){return vjs.Button.prototype.createEl.call(this,"li",vjs.obj.merge({className:"vjs-menu-item",innerHTML:this.options_.label},a))};vjs.MenuItem.prototype.onClick=function(){this.selected(true)};vjs.MenuItem.prototype.selected=function(a){if(a){this.addClass("vjs-selected");this.el_.setAttribute("aria-selected",true)}else{this.removeClass("vjs-selected");this.el_.setAttribute("aria-selected",false)}};vjs.MenuButton=vjs.Button.extend({init:function(b,a){vjs.Button.call(this,b,a);this.menu=this.createMenu();this.addChild(this.menu);if(this.items&&this.items.length===0){this.hide()}this.on("keyup",this.onKeyPress);this.el_.setAttribute("aria-haspopup",true);this.el_.setAttribute("role","button")}});vjs.MenuButton.prototype.buttonPressed_=false;vjs.MenuButton.prototype.createMenu=function(){var b=new vjs.Menu(this.player_);if(this.options().title){b.el().appendChild(vjs.createEl("li",{className:"vjs-menu-title",innerHTML:vjs.capitalize(this.kind_),tabindex:-1}))}this.items=this["createItems"]();if(this.items){for(var a=0;a<this.items.length;a++){b.addItem(this.items[a])}}return b};vjs.MenuButton.prototype.createItems=function(){};vjs.MenuButton.prototype.buildCSSClass=function(){return this.className+" vjs-menu-button "+vjs.Button.prototype.buildCSSClass.call(this)};vjs.MenuButton.prototype.onFocus=function(){};vjs.MenuButton.prototype.onBlur=function(){};vjs.MenuButton.prototype.onClick=function(){this.one("mouseout",vjs.bind(this,function(){this.menu.unlockShowing();this.el_.blur()}));if(this.buttonPressed_){this.unpressButton()}else{this.pressButton()}};vjs.MenuButton.prototype.onKeyPress=function(a){a.preventDefault();if(a.which==32||a.which==13){if(this.buttonPressed_){this.unpressButton()}else{this.pressButton()}}else{if(a.which==27){if(this.buttonPressed_){this.unpressButton()}}}};vjs.MenuButton.prototype.pressButton=function(){this.buttonPressed_=true;this.menu.lockShowing();this.el_.setAttribute("aria-pressed",true);if(this.items&&this.items.length>0){this.items[0].el().focus()}};vjs.MenuButton.prototype.unpressButton=function(){this.buttonPressed_=false;this.menu.unlockShowing();this.el_.setAttribute("aria-pressed",false)};vjs.Player=vjs.Component.extend({init:function(a,b,c){this.tag=a;b=vjs.obj.merge(this.getTagSettings(a),b);this.cache_={};this.poster_=b.poster;this.controls_=b.controls;a.controls=false;vjs.Component.call(this,this,b,c);if(this.controls()){this.addClass("vjs-controls-enabled")}else{this.addClass("vjs-controls-disabled")}this.one("play",function(g){var d={type:"firstplay",target:this.el_};var f=vjs.trigger(this.el_,d);if(!f){g.preventDefault();g.stopPropagation();g.stopImmediatePropagation()}});this.on("ended",this.onEnded);this.on("play",this.onPlay);this.on("firstplay",this.onFirstPlay);this.on("pause",this.onPause);this.on("progress",this.onProgress);this.on("durationchange",this.onDurationChange);this.on("error",this.onError);this.on("fullscreenchange",this.onFullscreenChange);vjs.players[this.id_]=this;if(b.plugins){vjs.obj.each(b.plugins,function(d,e){this[d](e)},this)}this.listenForUserActivity()}});vjs.Player.prototype.options_=vjs.options;vjs.Player.prototype.dispose=function(){this.trigger("dispose");this.off("dispose");vjs.players[this.id_]=null;if(this.tag&&this.tag.player){this.tag.player=null}if(this.el_&&this.el_.player){this.el_.player=null}this.stopTrackingProgress();this.stopTrackingCurrentTime();if(this.tech){this.tech.dispose()}vjs.Component.prototype.dispose.call(this)};vjs.Player.prototype.getTagSettings=function(a){var d={sources:[],tracks:[]};vjs.obj.merge(d,vjs.getAttributeValues(a));if(a.hasChildNodes()){var f,g,b,e,c;f=a.childNodes;for(e=0,c=f.length;e<c;e++){g=f[e];b=g.nodeName.toLowerCase();if(b==="source"){d.sources.push(vjs.getAttributeValues(g))}else{if(b==="track"){d.tracks.push(vjs.getAttributeValues(g))}}}}return d};vjs.Player.prototype.createEl=function(){var e=this.el_=vjs.Component.prototype.createEl.call(this,"div");var a=this.tag;a.removeAttribute("width");a.removeAttribute("height");if(a.hasChildNodes()){var b,g,d,f,h,c;b=a.childNodes;g=b.length;c=[];while(g--){f=b[g];h=f.nodeName.toLowerCase();if(h==="track"){c.push(f)}}for(d=0;d<c.length;d++){a.removeChild(c[d])}}a.id=a.id||"vjs_video_"+vjs.guid++;e.id=a.id;e.className=a.className;a.id+="_html5_api";a.className="vjs-tech";a.player=e.player=this;this.addClass("vjs-paused");this.width(this.options_.width,true);this.height(this.options_.height,true);if(a.parentNode){a.parentNode.insertBefore(e,a)}vjs.insertFirst(a,e);return e};vjs.Player.prototype.loadTech=function(d,b){if(this.tech){this.unloadTech()}else{if(d!=="Html5"&&this.tag){vjs.Html5.disposeMediaElement(this.tag);this.tag=null}}this.techName=d;this.isReady_=false;var a=function(){this.player_.triggerReady();if(!this.features.progressEvents){this.player_.manualProgressOn()}if(!this.features.timeupdateEvents){this.player_.manualTimeUpdatesOn()}};var c=vjs.obj.merge({source:b,parentEl:this.el_},this.options_[d.toLowerCase()]);if(b){if(b.src==this.cache_.src&&this.cache_.currentTime>0){c.startTime=this.cache_.currentTime}this.cache_.src=b.src}this.tech=new window.videojs[d](this,c);this.tech.ready(a)};vjs.Player.prototype.unloadTech=function(){this.isReady_=false;this.tech.dispose();if(this.manualProgress){this.manualProgressOff()}if(this.manualTimeUpdates){this.manualTimeUpdatesOff()}this.tech=false};vjs.Player.prototype.manualProgressOn=function(){this.manualProgress=true;this.trackProgress();this.tech.one("progress",function(){this.features.progressEvents=true;this.player_.manualProgressOff()})};vjs.Player.prototype.manualProgressOff=function(){this.manualProgress=false;this.stopTrackingProgress()};vjs.Player.prototype.trackProgress=function(){this.progressInterval=setInterval(vjs.bind(this,function(){if(this.cache_.bufferEnd<this.buffered().end(0)){this.trigger("progress")}else{if(this.bufferedPercent()==1){this.stopTrackingProgress();this.trigger("progress")}}}),500)};vjs.Player.prototype.stopTrackingProgress=function(){clearInterval(this.progressInterval)};
  2. /*! Time Tracking -------------------------------------------------------------- */
  3. ;vjs.Player.prototype.manualTimeUpdatesOn=function(){this.manualTimeUpdates=true;this.on("play",this.trackCurrentTime);this.on("pause",this.stopTrackingCurrentTime);this.tech.one("timeupdate",function(){this.features.timeupdateEvents=true;this.player_.manualTimeUpdatesOff()})};vjs.Player.prototype.manualTimeUpdatesOff=function(){this.manualTimeUpdates=false;this.stopTrackingCurrentTime();this.off("play",this.trackCurrentTime);this.off("pause",this.stopTrackingCurrentTime)};vjs.Player.prototype.trackCurrentTime=function(){if(this.currentTimeInterval){this.stopTrackingCurrentTime()}this.currentTimeInterval=setInterval(vjs.bind(this,function(){this.trigger("timeupdate")}),250)};vjs.Player.prototype.stopTrackingCurrentTime=function(){clearInterval(this.currentTimeInterval)};vjs.Player.prototype.onLoadStart;vjs.Player.prototype.onLoadedMetaData;vjs.Player.prototype.onLoadedData;vjs.Player.prototype.onLoadedAllData;vjs.Player.prototype.onPlay=function(){vjs.removeClass(this.el_,"vjs-paused");vjs.addClass(this.el_,"vjs-playing")};vjs.Player.prototype.onFirstPlay=function(){if(this.options_.starttime){this.currentTime(this.options_.starttime)}this.addClass("vjs-has-started")};vjs.Player.prototype.onPause=function(){vjs.removeClass(this.el_,"vjs-playing");vjs.addClass(this.el_,"vjs-paused")};vjs.Player.prototype.onTimeUpdate;vjs.Player.prototype.onProgress=function(){if(this.bufferedPercent()==1){this.trigger("loadedalldata")}};vjs.Player.prototype.onEnded=function(){if(this.options_.loop){this.currentTime(0);this.play()}};vjs.Player.prototype.onDurationChange=function(){this.duration(this.techGet("duration"))};vjs.Player.prototype.onVolumeChange;vjs.Player.prototype.onFullscreenChange=function(){if(this.isFullScreen){this.addClass("vjs-fullscreen")}else{this.removeClass("vjs-fullscreen")}};vjs.Player.prototype.onError=function(a){vjs.log("Video Error",a)};vjs.Player.prototype.cache_;vjs.Player.prototype.getCache=function(){return this.cache_};vjs.Player.prototype.techCall=function(c,a){if(this.tech&&!this.tech.isReady_){this.tech.ready(function(){this[c](a)})}else{try{this.tech[c](a)}catch(b){vjs.log(b);throw b}}};vjs.Player.prototype.techGet=function(b){if(this.tech&&this.tech.isReady_){try{return this.tech[b]()}catch(a){if(this.tech[b]===undefined){vjs.log("Video.js: "+b+" method not defined for "+this.techName+" playback technology.",a)}else{if(a.name=="TypeError"){vjs.log("Video.js: "+b+" unavailable on "+this.techName+" playback technology element.",a);this.tech.isReady_=false}else{vjs.log(a)}}throw a}}return};vjs.Player.prototype.play=function(){this.techCall("play");return this};vjs.Player.prototype.pause=function(){this.techCall("pause");return this};vjs.Player.prototype.paused=function(){return(this.techGet("paused")===false)?false:true};vjs.Player.prototype.currentTime=function(a){if(a!==undefined){this.cache_.lastSetCurrentTime=a;this.techCall("setCurrentTime",a);if(this.manualTimeUpdates){this.trigger("timeupdate")}return this}return this.cache_.currentTime=(this.techGet("currentTime")||0)};vjs.Player.prototype.duration=function(a){if(a!==undefined){this.cache_.duration=parseFloat(a);return this}if(this.cache_.duration===undefined){this.onDurationChange()}return this.cache_.duration};vjs.Player.prototype.remainingTime=function(){return this.duration()-this.currentTime()};vjs.Player.prototype.buffered=function(){var c=this.techGet("buffered"),d=0,a=c.length-1,b=this.cache_.bufferEnd=this.cache_.bufferEnd||0;if(c&&a>=0&&c.end(a)!==b){b=c.end(a);this.cache_.bufferEnd=b}return vjs.createTimeRange(d,b)};vjs.Player.prototype.bufferedPercent=function(){return(this.duration())?this.buffered().end(0)/this.duration():0};vjs.Player.prototype.volume=function(a){var b;if(a!==undefined){b=Math.max(0,Math.min(1,parseFloat(a)));this.cache_.volume=b;this.techCall("setVolume",b);vjs.setLocalStorage("volume",b);return this}b=parseFloat(this.techGet("volume"));return(isNaN(b))?1:b};vjs.Player.prototype.muted=function(a){if(a!==undefined){this.techCall("setMuted",a);return this}return this.techGet("muted")||false};vjs.Player.prototype.supportsFullScreen=function(){return this.techGet("supportsFullScreen")||false};vjs.Player.prototype.requestFullScreen=function(){var a=vjs.support.requestFullScreen;this.isFullScreen=true;if(a){vjs.on(document,a.eventName,vjs.bind(this,function(b){this.isFullScreen=document[a.isFullScreen];if(this.isFullScreen===false){vjs.off(document,a.eventName,arguments.callee)}this.trigger("fullscreenchange")}));this.el_[a.requestFn]()}else{if(this.tech.supportsFullScreen()){this.techCall("enterFullScreen")}else{this.enterFullWindow();this.trigger("fullscreenchange")}}return this};vjs.Player.prototype.cancelFullScreen=function(){var a=vjs.support.requestFullScreen;this.isFullScreen=false;if(a){document[a.cancelFn]()}else{if(this.tech.supportsFullScreen()){this.techCall("exitFullScreen")}else{this.exitFullWindow();this.trigger("fullscreenchange")}}return this};vjs.Player.prototype.enterFullWindow=function(){this.isFullWindow=true;this.docOrigOverflow=document.documentElement.style.overflow;vjs.on(document,"keydown",vjs.bind(this,this.fullWindowOnEscKey));document.documentElement.style.overflow="hidden";vjs.addClass(document.body,"vjs-full-window");this.trigger("enterFullWindow")};vjs.Player.prototype.fullWindowOnEscKey=function(a){if(a.keyCode===27){if(this.isFullScreen===true){this.cancelFullScreen()}else{this.exitFullWindow()}}};vjs.Player.prototype.exitFullWindow=function(){this.isFullWindow=false;vjs.off(document,"keydown",this.fullWindowOnEscKey);document.documentElement.style.overflow=this.docOrigOverflow;vjs.removeClass(document.body,"vjs-full-window");this.trigger("exitFullWindow")};vjs.Player.prototype.selectSource=function(g){for(var h=0,f=this.options_.techOrder;h<f.length;h++){var l=vjs.capitalize(f[h]),e=window.videojs[l];if(e.isSupported()){for(var d=0,c=g;d<c.length;d++){var k=c[d];if(e.canPlaySource(k)){return{source:k,tech:l}}}}}return false};vjs.Player.prototype.src=function(b){if(b instanceof Array){var a=this.selectSource(b),c;if(a){b=a.source;c=a.tech;if(c==this.techName){this.src(b)}else{this.loadTech(c,b)}}else{this.el_.appendChild(vjs.createEl("p",{innerHTML:this.options()["notSupportedMessage"]}))}}else{if(b instanceof Object){if(window.videojs[this.techName]["canPlaySource"](b)){this.src(b.src)}else{this.src([b])}}else{this.cache_.src=b;if(!this.isReady_){this.ready(function(){this.src(b)})}else{this.techCall("src",b);if(this.options_.preload=="auto"){this.load()}if(this.options_.autoplay){this.play()}}}}return this};vjs.Player.prototype.load=function(){this.techCall("load");return this};vjs.Player.prototype.currentSrc=function(){return this.techGet("currentSrc")||this.cache_.src||""};vjs.Player.prototype.preload=function(a){if(a!==undefined){this.techCall("setPreload",a);this.options_.preload=a;return this}return this.techGet("preload")};vjs.Player.prototype.autoplay=function(a){if(a!==undefined){this.techCall("setAutoplay",a);this.options_.autoplay=a;return this}return this.techGet("autoplay",a)};vjs.Player.prototype.loop=function(a){if(a!==undefined){this.techCall("setLoop",a);this.options_.loop=a;return this}return this.techGet("loop")};vjs.Player.prototype.poster_;vjs.Player.prototype.poster=function(a){if(a!==undefined){this.poster_=a;return this}return this.poster_};vjs.Player.prototype.controls_;vjs.Player.prototype.controls=function(a){if(a!==undefined){a=!!a;if(this.controls_!==a){this.controls_=a;if(a){this.removeClass("vjs-controls-disabled");this.addClass("vjs-controls-enabled");this.trigger("controlsenabled")}else{this.removeClass("vjs-controls-enabled");this.addClass("vjs-controls-disabled");this.trigger("controlsdisabled")}}return this}return this.controls_};vjs.Player.prototype.usingNativeControls_;vjs.Player.prototype.usingNativeControls=function(a){if(a!==undefined){a=!!a;if(this.usingNativeControls_!==a){this.usingNativeControls_=a;if(a){this.addClass("vjs-using-native-controls");this.trigger("usingnativecontrols")}else{this.removeClass("vjs-using-native-controls");this.trigger("usingcustomcontrols")}}return this}return this.usingNativeControls_};vjs.Player.prototype.error=function(){return this.techGet("error")};vjs.Player.prototype.ended=function(){return this.techGet("ended")};vjs.Player.prototype.seeking=function(){return this.techGet("seeking")};vjs.Player.prototype.userActivity_=true;vjs.Player.prototype.reportUserActivity=function(a){this.userActivity_=true};vjs.Player.prototype.userActive_=true;vjs.Player.prototype.userActive=function(a){if(a!==undefined){a=!!a;if(a!==this.userActive_){this.userActive_=a;if(a){this.userActivity_=true;this.removeClass("vjs-user-inactive");this.addClass("vjs-user-active");this.trigger("useractive")}else{this.userActivity_=false;this.tech.one("mousemove",function(b){b.stopPropagation();b.preventDefault()});this.removeClass("vjs-user-active");this.addClass("vjs-user-inactive");this.trigger("userinactive")}}return this}return this.userActive_};vjs.Player.prototype.listenForUserActivity=function(){var c,e,f,b,a,d;c=this.reportUserActivity;e=function(){c();clearInterval(f);f=setInterval(vjs.bind(this,c),250)};b=function(g){c();clearInterval(f)};this.on("mousedown",e);this.on("mousemove",c);this.on("mouseup",b);this.on("keydown",c);this.on("keyup",c);this.on("touchstart",e);this.on("touchmove",c);this.on("touchend",b);this.on("touchcancel",b);a=setInterval(vjs.bind(this,function(){if(this.userActivity_){this.userActivity_=false;this.userActive(true);clearTimeout(d);d=setTimeout(vjs.bind(this,function(){if(!this.userActivity_){this.userActive(false)}}),2000)}}),250);this.on("dispose",function(){clearInterval(a);clearTimeout(d)})};(function(){var a,b,c;c=document.createElement("div");b={};if(c.cancelFullscreen!==undefined){b.requestFn="requestFullscreen";b.cancelFn="exitFullscreen";b.eventName="fullscreenchange";b.isFullScreen="fullScreen"}else{if(document.mozCancelFullScreen){a="moz";b.isFullScreen=a+"FullScreen"}else{a="webkit";b.isFullScreen=a+"IsFullScreen"}if(c[a+"RequestFullScreen"]){b.requestFn=a+"RequestFullScreen";b.cancelFn=a+"CancelFullScreen"}b.eventName=a+"fullscreenchange"}if(document[b.cancelFn]){vjs.support.requestFullScreen=b}})();vjs.ControlBar=vjs.Component.extend();vjs.ControlBar.prototype.options_={loadEvent:"play",children:{playToggle:{},currentTimeDisplay:{},timeDivider:{},durationDisplay:{},remainingTimeDisplay:{},progressControl:{},fullscreenToggle:{},volumeControl:{},muteToggle:{}}};vjs.ControlBar.prototype.createEl=function(){return vjs.createEl("div",{className:"vjs-control-bar"})};vjs.PlayToggle=vjs.Button.extend({init:function(b,a){vjs.Button.call(this,b,a);b.on("play",vjs.bind(this,this.onPlay));b.on("pause",vjs.bind(this,this.onPause))}});vjs.PlayToggle.prototype.buttonText="Play";vjs.PlayToggle.prototype.buildCSSClass=function(){return"vjs-play-control "+vjs.Button.prototype.buildCSSClass.call(this)};vjs.PlayToggle.prototype.onClick=function(){if(this.player_.paused()){this.player_.play()}else{this.player_.pause()}};vjs.PlayToggle.prototype.onPlay=function(){vjs.removeClass(this.el_,"vjs-paused");vjs.addClass(this.el_,"vjs-playing");this.el_.children[0].children[0].innerHTML="Pause"};vjs.PlayToggle.prototype.onPause=function(){vjs.removeClass(this.el_,"vjs-playing");vjs.addClass(this.el_,"vjs-paused");this.el_.children[0].children[0].innerHTML="Play"};vjs.CurrentTimeDisplay=vjs.Component.extend({init:function(b,a){vjs.Component.call(this,b,a);b.on("timeupdate",vjs.bind(this,this.updateContent))}});vjs.CurrentTimeDisplay.prototype.createEl=function(){var a=vjs.Component.prototype.createEl.call(this,"div",{className:"vjs-current-time vjs-time-controls vjs-control"});this.content=vjs.createEl("div",{className:"vjs-current-time-display",innerHTML:'<span class="vjs-control-text">Current Time </span>0:00',"aria-live":"off"});a.appendChild(vjs.createEl("div").appendChild(this.content));return a};vjs.CurrentTimeDisplay.prototype.updateContent=function(){var a=(this.player_.scrubbing)?this.player_.getCache().currentTime:this.player_.currentTime();this.content.innerHTML='<span class="vjs-control-text">Current Time </span>'+vjs.formatTime(a,this.player_.duration())};vjs.DurationDisplay=vjs.Component.extend({init:function(b,a){vjs.Component.call(this,b,a);b.on("timeupdate",vjs.bind(this,this.updateContent))}});vjs.DurationDisplay.prototype.createEl=function(){var a=vjs.Component.prototype.createEl.call(this,"div",{className:"vjs-duration vjs-time-controls vjs-control"});this.content=vjs.createEl("div",{className:"vjs-duration-display",innerHTML:'<span class="vjs-control-text">Duration Time </span>0:00',"aria-live":"off"});a.appendChild(vjs.createEl("div").appendChild(this.content));return a};vjs.DurationDisplay.prototype.updateContent=function(){var a=this.player_.duration();if(a){this.content.innerHTML='<span class="vjs-control-text">Duration Time </span>'+vjs.formatTime(a)}};vjs.TimeDivider=vjs.Component.extend({init:function(b,a){vjs.Component.call(this,b,a)}});vjs.TimeDivider.prototype.createEl=function(){return vjs.Component.prototype.createEl.call(this,"div",{className:"vjs-time-divider",innerHTML:"<div><span>/</span></div>"})};vjs.RemainingTimeDisplay=vjs.Component.extend({init:function(b,a){vjs.Component.call(this,b,a);b.on("timeupdate",vjs.bind(this,this.updateContent))}});vjs.RemainingTimeDisplay.prototype.createEl=function(){var a=vjs.Component.prototype.createEl.call(this,"div",{className:"vjs-remaining-time vjs-time-controls vjs-control"});this.content=vjs.createEl("div",{className:"vjs-remaining-time-display",innerHTML:'<span class="vjs-control-text">Remaining Time </span>-0:00',"aria-live":"off"});a.appendChild(vjs.createEl("div").appendChild(this.content));return a};vjs.RemainingTimeDisplay.prototype.updateContent=function(){if(this.player_.duration()){this.content.innerHTML='<span class="vjs-control-text">Remaining Time </span>-'+vjs.formatTime(this.player_.remainingTime())}};vjs.FullscreenToggle=vjs.Button.extend({init:function(b,a){vjs.Button.call(this,b,a)}});vjs.FullscreenToggle.prototype.buttonText="Fullscreen";vjs.FullscreenToggle.prototype.buildCSSClass=function(){return"vjs-fullscreen-control "+vjs.Button.prototype.buildCSSClass.call(this)};vjs.FullscreenToggle.prototype.onClick=function(){if(!this.player_.isFullScreen){this.player_.requestFullScreen();this.el_.children[0].children[0].innerHTML="Non-Fullscreen"}else{this.player_.cancelFullScreen();this.el_.children[0].children[0].innerHTML="Fullscreen"}};vjs.ProgressControl=vjs.Component.extend({init:function(b,a){vjs.Component.call(this,b,a)}});vjs.ProgressControl.prototype.options_={children:{seekBar:{}}};vjs.ProgressControl.prototype.createEl=function(){return vjs.Component.prototype.createEl.call(this,"div",{className:"vjs-progress-control vjs-control"})};vjs.SeekBar=vjs.Slider.extend({init:function(b,a){vjs.Slider.call(this,b,a);b.on("timeupdate",vjs.bind(this,this.updateARIAAttributes));b.ready(vjs.bind(this,this.updateARIAAttributes))}});vjs.SeekBar.prototype.options_={children:{loadProgressBar:{},playProgressBar:{},seekHandle:{}},barName:"playProgressBar",handleName:"seekHandle"};vjs.SeekBar.prototype.playerEvent="timeupdate";vjs.SeekBar.prototype.createEl=function(){return vjs.Slider.prototype.createEl.call(this,"div",{className:"vjs-progress-holder","aria-label":"video progress bar"})};vjs.SeekBar.prototype.updateARIAAttributes=function(){var a=(this.player_.scrubbing)?this.player_.getCache().currentTime:this.player_.currentTime();this.el_.setAttribute("aria-valuenow",vjs.round(this.getPercent()*100,2));this.el_.setAttribute("aria-valuetext",vjs.formatTime(a,this.player_.duration()))};vjs.SeekBar.prototype.getPercent=function(){var b;if(this.player_.techName==="Flash"&&this.player_.seeking()){var a=this.player_.getCache();if(a.lastSetCurrentTime){b=a.lastSetCurrentTime}else{b=this.player_.currentTime()}}else{b=this.player_.currentTime()}return b/this.player_.duration()};vjs.SeekBar.prototype.onMouseDown=function(a){vjs.Slider.prototype.onMouseDown.call(this,a);this.player_.scrubbing=true;this.videoWasPlaying=!this.player_.paused();this.player_.pause()};vjs.SeekBar.prototype.onMouseMove=function(b){var a=this.calculateDistance(b)*this.player_.duration();if(a==this.player_.duration()){a=a-0.1}this.player_.currentTime(a)};vjs.SeekBar.prototype.onMouseUp=function(a){;vjs.Slider.prototype.onMouseUp.call(this,a);this.player_.scrubbing=false;if(this.videoWasPlaying){;this.player_.play()}};vjs.SeekBar.prototype.stepForward=function(){this.player_.currentTime(this.player_.currentTime()+5)};vjs.SeekBar.prototype.stepBack=function(){this.player_.currentTime(this.player_.currentTime()-5)};vjs.LoadProgressBar=vjs.Component.extend({init:function(b,a){vjs.Component.call(this,b,a);b.on("progress",vjs.bind(this,this.update))}});vjs.LoadProgressBar.prototype.createEl=function(){return vjs.Component.prototype.createEl.call(this,"div",{className:"vjs-load-progress",innerHTML:'<span class="vjs-control-text">Loaded: 0%</span>'})};vjs.LoadProgressBar.prototype.update=function(){if(this.el_.style){this.el_.style.width=vjs.round(this.player_.bufferedPercent()*100,2)+"%"}};vjs.PlayProgressBar=vjs.Component.extend({init:function(b,a){vjs.Component.call(this,b,a)}});vjs.PlayProgressBar.prototype.createEl=function(){return vjs.Component.prototype.createEl.call(this,"div",{className:"vjs-play-progress",innerHTML:'<span class="vjs-control-text">Progress: 0%</span>'})};vjs.SeekHandle=vjs.SliderHandle.extend();vjs.SeekHandle.prototype.defaultValue="00:00";vjs.SeekHandle.prototype.createEl=function(){return vjs.SliderHandle.prototype.createEl.call(this,"div",{className:"vjs-seek-handle"})};vjs.VolumeControl=vjs.Component.extend({init:function(b,a){vjs.Component.call(this,b,a);if(b.tech&&b.tech.features&&b.tech.features.volumeControl===false){this.addClass("vjs-hidden")}b.on("loadstart",vjs.bind(this,function(){if(b.tech.features&&b.tech.features.volumeControl===false){this.addClass("vjs-hidden")}else{this.removeClass("vjs-hidden")}}))}});vjs.VolumeControl.prototype.options_={children:{volumeBar:{}}};vjs.VolumeControl.prototype.createEl=function(){return vjs.Component.prototype.createEl.call(this,"div",{className:"vjs-volume-control vjs-control"})};vjs.VolumeBar=vjs.Slider.extend({init:function(b,a){vjs.Slider.call(this,b,a);b.on("volumechange",vjs.bind(this,this.updateARIAAttributes));b.ready(vjs.bind(this,this.updateARIAAttributes));setTimeout(vjs.bind(this,this.update),0)}});vjs.VolumeBar.prototype.updateARIAAttributes=function(){this.el_.setAttribute("aria-valuenow",vjs.round(this.player_.volume()*100,2));this.el_.setAttribute("aria-valuetext",vjs.round(this.player_.volume()*100,2)+"%")};vjs.VolumeBar.prototype.options_={children:{volumeLevel:{},volumeHandle:{}},barName:"volumeLevel",handleName:"volumeHandle"};vjs.VolumeBar.prototype.playerEvent="volumechange";vjs.VolumeBar.prototype.createEl=function(){return vjs.Slider.prototype.createEl.call(this,"div",{className:"vjs-volume-bar","aria-label":"volume level"})};vjs.VolumeBar.prototype.onMouseMove=function(a){if(this.player_.muted()){this.player_.muted(false)}this.player_.volume(this.calculateDistance(a))};vjs.VolumeBar.prototype.getPercent=function(){if(this.player_.muted()){return 0}else{return this.player_.volume()}};vjs.VolumeBar.prototype.stepForward=function(){this.player_.volume(this.player_.volume()+0.1)};vjs.VolumeBar.prototype.stepBack=function(){this.player_.volume(this.player_.volume()-0.1)};vjs.VolumeLevel=vjs.Component.extend({init:function(b,a){vjs.Component.call(this,b,a)}});vjs.VolumeLevel.prototype.createEl=function(){return vjs.Component.prototype.createEl.call(this,"div",{className:"vjs-volume-level",innerHTML:'<span class="vjs-control-text"></span>'})};vjs.VolumeHandle=vjs.SliderHandle.extend();vjs.VolumeHandle.prototype.defaultValue="00:00";vjs.VolumeHandle.prototype.createEl=function(){return vjs.SliderHandle.prototype.createEl.call(this,"div",{className:"vjs-volume-handle"})};vjs.MuteToggle=vjs.Button.extend({init:function(b,a){vjs.Button.call(this,b,a);b.on("volumechange",vjs.bind(this,this.update));if(b.tech&&b.tech.features&&b.tech.features.volumeControl===false){this.addClass("vjs-hidden")}b.on("loadstart",vjs.bind(this,function(){if(b.tech.features&&b.tech.features.volumeControl===false){this.addClass("vjs-hidden")}else{this.removeClass("vjs-hidden")}}))}});vjs.MuteToggle.prototype.createEl=function(){return vjs.Button.prototype.createEl.call(this,"div",{className:"vjs-mute-control vjs-control",innerHTML:'<div><span class="vjs-control-text">Mute</span></div>'})};vjs.MuteToggle.prototype.onClick=function(){this.player_.muted(this.player_.muted()?false:true)};vjs.MuteToggle.prototype.update=function(){var b=this.player_.volume(),c=3;if(b===0||this.player_.muted()){c=0}else{if(b<0.33){c=1}else{if(b<0.67){c=2}}}if(this.player_.muted()){if(this.el_.children[0].children[0].innerHTML!="Unmute"){this.el_.children[0].children[0].innerHTML="Unmute"}}else{if(this.el_.children[0].children[0].innerHTML!="Mute"){this.el_.children[0].children[0].innerHTML="Mute"}}for(var a=0;a<4;a++){vjs.removeClass(this.el_,"vjs-vol-"+a)}vjs.addClass(this.el_,"vjs-vol-"+c)};vjs.VolumeMenuButton=vjs.MenuButton.extend({init:function(b,a){vjs.MenuButton.call(this,b,a);b.on("volumechange",vjs.bind(this,this.update));if(b.tech&&b.tech.features&&b.tech.features.volumeControl===false){this.addClass("vjs-hidden")}b.on("loadstart",vjs.bind(this,function(){if(b.tech.features&&b.tech.features.volumeControl===false){this.addClass("vjs-hidden")}else{this.removeClass("vjs-hidden")}}));this.addClass("vjs-menu-button")}});vjs.VolumeMenuButton.prototype.createMenu=function(){var b=new vjs.Menu(this.player_,{contentElType:"div"});var a=new vjs.VolumeBar(this.player_,vjs.obj.merge({vertical:true},this.options_.volumeBar));b.addChild(a);return b};vjs.VolumeMenuButton.prototype.onClick=function(){vjs.MuteToggle.prototype.onClick.call(this);vjs.MenuButton.prototype.onClick.call(this)};vjs.VolumeMenuButton.prototype.createEl=function(){return vjs.Button.prototype.createEl.call(this,"div",{className:"vjs-volume-menu-button vjs-menu-button vjs-control",innerHTML:'<div><span class="vjs-control-text">Mute</span></div>'})};vjs.VolumeMenuButton.prototype.update=vjs.MuteToggle.prototype.update;vjs.PosterImage=vjs.Button.extend({init:function(b,a){vjs.Button.call(this,b,a);if(!b.poster()||!b.controls()){this.hide()}b.on("play",vjs.bind(this,this.hide))}});vjs.PosterImage.prototype.createEl=function(){var a=vjs.createEl("div",{className:"vjs-poster",tabIndex:-1}),b=this.player_.poster();if(b){if("backgroundSize" in a.style){a.style.backgroundImage='url("'+b+'")'}else{a.appendChild(vjs.createEl("img",{src:b}))}}return a};vjs.PosterImage.prototype.onClick=function(){if(this.player().controls()){this.player_.play()}};vjs.LoadingSpinner=vjs.Component.extend({init:function(b,a){vjs.Component.call(this,b,a);b.on("canplay",vjs.bind(this,this.hide));b.on("canplaythrough",vjs.bind(this,this.hide));b.on("playing",vjs.bind(this,this.hide));b.on("seeked",vjs.bind(this,this.hide));b.on("seeking",vjs.bind(this,this.show));b.on("seeked",vjs.bind(this,this.hide));b.on("error",vjs.bind(this,this.show));b.on("waiting",vjs.bind(this,this.show))}});vjs.LoadingSpinner.prototype.createEl=function(){return vjs.Component.prototype.createEl.call(this,"div",{className:"vjs-loading-spinner"})};vjs.BigPlayButton=vjs.Button.extend();vjs.BigPlayButton.prototype.createEl=function(){return vjs.Button.prototype.createEl.call(this,"div",{className:"vjs-big-play-button",innerHTML:'<span aria-hidden="true"></span>',"aria-label":"play video"})};vjs.BigPlayButton.prototype.onClick=function(){this.player_.play()};vjs.MediaTechController=vjs.Component.extend({init:function(b,a,c){vjs.Component.call(this,b,a,c);this.initControlsListeners()}});vjs.MediaTechController.prototype.initControlsListeners=function(){var c,b,a,d;b=this;c=this.player();var a=function(){if(c.controls()&&!c.usingNativeControls()){b.addControlsListeners()}};d=vjs.bind(b,b.removeControlsListeners);this.ready(a);c.on("controlsenabled",a);c.on("controlsdisabled",d)};vjs.MediaTechController.prototype.addControlsListeners=function(){var a,b;this.on("mousedown",this.onClick);this.on("touchstart",function(c){c.preventDefault();c.stopPropagation();b=this.player_.userActive()});a=function(c){c.stopPropagation();if(b){this.player_.reportUserActivity()}};this.on("touchmove",a);this.on("touchleave",a);this.on("touchcancel",a);this.on("touchend",a);this.emitTapEvents();this.on("tap",this.onTap)};vjs.MediaTechController.prototype.removeControlsListeners=function(){this.off("tap");this.off("touchstart");this.off("touchmove");this.off("touchleave");this.off("touchcancel");this.off("touchend");this.off("click");this.off("mousedown")};vjs.MediaTechController.prototype.onClick=function(a){if(a.button!==0){return}if(this.player().controls()){if(this.player().paused()){this.player().play()}else{this.player().pause()}}};vjs.MediaTechController.prototype.onTap=function(){this.player().userActive(!this.player().userActive())};vjs.MediaTechController.prototype.features={volumeControl:true,fullscreenResize:false,progressEvents:false,timeupdateEvents:false};vjs.media={};vjs.media.ApiMethods="play,pause,paused,currentTime,setCurrentTime,duration,buffered,volume,setVolume,muted,setMuted,width,height,supportsFullScreen,enterFullScreen,src,load,currentSrc,preload,setPreload,autoplay,setAutoplay,loop,setLoop,error,networkState,readyState,seeking,initialTime,startOffsetTime,played,seekable,ended,videoTracks,audioTracks,videoWidth,videoHeight,textTracks,defaultPlaybackRate,playbackRate,mediaGroup,controller,controls,defaultMuted".split(",");function createMethod(a){return function(){throw new Error('The "'+a+"\" method is not available on the playback technology's API")}}for(var i=vjs.media.ApiMethods.length-1;i>=0;i--){var methodName=vjs.media.ApiMethods[i];vjs.MediaTechController.prototype[vjs.media.ApiMethods[i]]=createMethod(methodName)}vjs.Html5=vjs.MediaTechController.extend({init:function(b,a,c){this.features.volumeControl=vjs.Html5.canControlVolume();this.features.movingMediaElementInDOM=!vjs.IS_IOS;this.features.fullscreenResize=true;vjs.MediaTechController.call(this,b,a,c);var d=a.source;if(d&&this.el_.currentSrc===d.src&&this.el_.networkState>0){b.trigger("loadstart")}else{if(d){this.el_.src=d.src}}if(vjs.TOUCH_ENABLED&&b.options()["nativeControlsForTouch"]!==false){this.useNativeControls()}b.ready(function(){if(this.tag&&this.options_.autoplay&&this.paused()){delete this.tag.poster;this.play()}});this.setupTriggers();this.triggerReady()}});vjs.Html5.prototype.dispose=function(){vjs.MediaTechController.prototype.dispose.call(this)};vjs.Html5.prototype.createEl=function(){var d=this.player_,e=d.tag,f,g;if(!e||this.features.movingMediaElementInDOM===false){if(e){g=e.cloneNode(false);vjs.Html5.disposeMediaElement(e);e=g;d.tag=null}else{e=vjs.createEl("video",{id:d.id()+"_html5_api",className:"vjs-tech"})}e.player=d;vjs.insertFirst(e,d.el())}var b=["autoplay","preload","loop","muted"];for(var c=b.length-1;c>=0;c--){var a=b[c];if(d.options_[a]!==null){e[a]=d.options_[a]}}return e};vjs.Html5.prototype.setupTriggers=function(){for(var a=vjs.Html5.Events.length-1;a>=0;a--){vjs.on(this.el_,vjs.Html5.Events[a],vjs.bind(this.player_,this.eventHandler))}};vjs.Html5.prototype.eventHandler=function(a){this.trigger(a);a.stopPropagation()};vjs.Html5.prototype.useNativeControls=function(){var a,b,e,d,c;a=this;b=this.player();a.setControls(b.controls());e=function(){a.setControls(true)};d=function(){a.setControls(false)};b.on("controlsenabled",e);b.on("controlsdisabled",d);c=function(){b.off("controlsenabled",e);b.off("controlsdisabled",d)};a.on("dispose",c);b.on("usingcustomcontrols",c);b.usingNativeControls(true)};vjs.Html5.prototype.play=function(){this.el_.play()};vjs.Html5.prototype.pause=function(){this.el_.pause()};vjs.Html5.prototype.paused=function(){return this.el_.paused};vjs.Html5.prototype.currentTime=function(){return this.el_.currentTime};vjs.Html5.prototype.setCurrentTime=function(b){try{this.el_.currentTime=b}catch(a){vjs.log(a,"Video is not ready. (Video.js)")}};vjs.Html5.prototype.duration=function(){return this.el_.duration||0};vjs.Html5.prototype.buffered=function(){return this.el_.buffered};vjs.Html5.prototype.volume=function(){return this.el_.volume};vjs.Html5.prototype.setVolume=function(a){this.el_.volume=a};vjs.Html5.prototype.muted=function(){return this.el_.muted};vjs.Html5.prototype.setMuted=function(a){this.el_.muted=a};vjs.Html5.prototype.width=function(){return this.el_.offsetWidth};vjs.Html5.prototype.height=function(){return this.el_.offsetHeight};vjs.Html5.prototype.supportsFullScreen=function(){if(typeof this.el_.webkitEnterFullScreen=="function"){if(/Android/.test(vjs.USER_AGENT)||!/Chrome|Mac OS X 10.5/.test(vjs.USER_AGENT)){return true}}return false};vjs.Html5.prototype.enterFullScreen=function(){var a=this.el_;if(a.paused&&a.networkState<=a.HAVE_METADATA){this.el_.play();setTimeout(function(){a.pause();a.webkitEnterFullScreen()},0)}else{a.webkitEnterFullScreen()}};vjs.Html5.prototype.exitFullScreen=function(){this.el_.webkitExitFullScreen()};vjs.Html5.prototype.src=function(a){this.el_.src=a};vjs.Html5.prototype.load=function(){this.el_.load()};vjs.Html5.prototype.currentSrc=function(){return this.el_.currentSrc};vjs.Html5.prototype.preload=function(){return this.el_.preload};vjs.Html5.prototype.setPreload=function(a){this.el_.preload=a};vjs.Html5.prototype.autoplay=function(){return this.el_.autoplay};vjs.Html5.prototype.setAutoplay=function(a){this.el_.autoplay=a};vjs.Html5.prototype.controls=function(){return this.el_.controls};vjs.Html5.prototype.setControls=function(a){this.el_.controls=!!a};vjs.Html5.prototype.loop=function(){return this.el_.loop};vjs.Html5.prototype.setLoop=function(a){this.el_.loop=a};vjs.Html5.prototype.error=function(){return this.el_.error};vjs.Html5.prototype.seeking=function(){return this.el_.seeking};vjs.Html5.prototype.ended=function(){return this.el_.ended};vjs.Html5.prototype.defaultMuted=function(){return this.el_.defaultMuted};vjs.Html5.isSupported=function(){return !!vjs.TEST_VID.canPlayType};vjs.Html5.canPlaySource=function(a){try{return !!vjs.TEST_VID.canPlayType(a.type)}catch(b){return""}};vjs.Html5.canControlVolume=function(){var a=vjs.TEST_VID.volume;vjs.TEST_VID.volume=(a/2)+0.1;return a!==vjs.TEST_VID.volume};vjs.Html5.Events="loadstart,suspend,abort,error,emptied,stalled,loadedmetadata,loadeddata,canplay,canplaythrough,playing,waiting,seeking,seeked,ended,durationchange,timeupdate,progress,play,pause,ratechange,volumechange".split(",");vjs.Html5.disposeMediaElement=function(a){if(!a){return}a.player=null;if(a.parentNode){a.parentNode.removeChild(a)}while(a.hasChildNodes()){a.removeChild(a.firstChild)}a.removeAttribute("src");if(typeof a.load==="function"){a.load()}};if(vjs.IS_OLD_ANDROID){document.createElement("video").constructor.prototype.canPlayType=function(a){return(a&&a.toLowerCase().indexOf("video/mp4")!=-1)?"maybe":""}}vjs.Flash=vjs.MediaTechController.extend({init:function(m,n,k){vjs.MediaTechController.call(this,m,n,k);var a=n.source,h=n.parentEl,l=this.el_=vjs.createEl("div",{id:m.id()+"_temp_flash"}),b=m.id()+"_flash_api",c=m.options_,j=vjs.obj.merge({readyFunction:"videojs.Flash.onReady",eventProxyFunction:"videojs.Flash.onEvent",errorEventProxyFunction:"videojs.Flash.onError",autoplay:c.autoplay,preload:c.preload,loop:c.loop,muted:c.muted},n.flashVars),d=vjs.obj.merge({wmode:"opaque",bgcolor:"#000000"},n.params),f=vjs.obj.merge({id:b,name:b,"class":"vjs-tech"},n.attributes);if(a){if(a.type&&vjs.Flash.isStreamingType(a.type)){var e=vjs.Flash.streamToParts(a.src);j.rtmpConnection=encodeURIComponent(e.connection);j.rtmpStream=encodeURIComponent(e.stream)}else{j.src=encodeURIComponent(vjs.getAbsoluteURL(a.src))}}vjs.insertFirst(l,h);if(n.startTime){this.ready(function(){this.load();this.play();this.currentTime(n.startTime)})}if(n.iFrameMode===true&&!vjs.IS_FIREFOX){var g=vjs.createEl("iframe",{id:b+"_iframe",name:b+"_iframe",className:"vjs-tech",scrolling:"no",marginWidth:0,marginHeight:0,frameBorder:0});j.readyFunction="ready";j.eventProxyFunction="events";j.errorEventProxyFunction="errors";vjs.on(g,"load",vjs.bind(this,function(){var p,o=g.contentWindow;p=g.contentDocument?g.contentDocument:g.contentWindow.document;p.write(vjs.Flash.getEmbedCode(n.swf,j,d,f));o.player=this.player_;o.ready=vjs.bind(this.player_,function(r){var t=p.getElementById(r),s=this,q=s.tech;q.el_=t;vjs.Flash.checkReady(q)});o.events=vjs.bind(this.player_,function(r,q){var s=this;if(s&&s.techName==="flash"){s.trigger(q)}});o.errors=vjs.bind(this.player_,function(r,q){vjs.log("Flash Error",q)})}));l.parentNode.replaceChild(g,l)}else{vjs.Flash.embed(n.swf,l,j,d,f)}}});vjs.Flash.prototype.dispose=function(){vjs.MediaTechController.prototype.dispose.call(this)};vjs.Flash.prototype.play=function(){this.el_.vjs_play()};vjs.Flash.prototype.pause=function(){this.el_.vjs_pause()};vjs.Flash.prototype.src=function(b){if(vjs.Flash.isStreamingSrc(b)){b=vjs.Flash.streamToParts(b);this.setRtmpConnection(b.connection);this.setRtmpStream(b.stream)}else{b=vjs.getAbsoluteURL(b);this.el_.vjs_src(b)}if(this.player_.autoplay()){var a=this;setTimeout(function(){a.play()},0)}};vjs.Flash.prototype.currentSrc=function(){var c=this.el_.vjs_getProperty("currentSrc");if(c==null){var a=this.rtmpConnection(),b=this.rtmpStream();if(a&&b){c=vjs.Flash.streamFromParts(a,b)}}return c};vjs.Flash.prototype.load=function(){this.el_.vjs_load()};vjs.Flash.prototype.poster=function(){this.el_.vjs_getProperty("poster")};vjs.Flash.prototype.buffered=function(){return vjs.createTimeRange(0,this.el_.vjs_getProperty("buffered"))};vjs.Flash.prototype.supportsFullScreen=function(){return false};vjs.Flash.prototype.enterFullScreen=function(){return false};var api=vjs.Flash.prototype,readWrite="rtmpConnection,rtmpStream,preload,currentTime,defaultPlaybackRate,playbackRate,autoplay,loop,mediaGroup,controller,controls,volume,muted,defaultMuted".split(","),readOnly="error,currentSrc,networkState,readyState,seeking,initialTime,duration,startOffsetTime,paused,played,seekable,ended,videoTracks,audioTracks,videoWidth,videoHeight,textTracks".split(",");var createSetter=function(a){var b=a.charAt(0).toUpperCase()+a.slice(1);api["set"+b]=function(c){return this.el_.vjs_setProperty(a,c)}};var createGetter=function(a){api[a]=function(){return this.el_.vjs_getProperty(a)}};(function(){var a;for(a=0;a<readWrite.length;a++){createGetter(readWrite[a]);createSetter(readWrite[a])}for(a=0;a<readOnly.length;a++){createGetter(readOnly[a])}})();vjs.Flash.isSupported=function(){return vjs.Flash.version()[0]>=10};vjs.Flash.canPlaySource=function(a){var b;if(!a.type){return""}b=a.type.replace(/;.*/,"").toLowerCase();if(b in vjs.Flash.formats||b in vjs.Flash.streamingFormats){return"maybe"}};vjs.Flash.formats={"video/flv":"FLV","video/x-flv":"FLV","video/mp4":"MP4","video/m4v":"MP4"};vjs.Flash.streamingFormats={"rtmp/mp4":"MP4","rtmp/flv":"FLV"};vjs.Flash.onReady=function(b){var d=vjs.el(b);var c=d.player||d.parentNode.player,a=c.tech;d.player=c;a.el_=d;vjs.Flash.checkReady(a)};vjs.Flash.checkReady=function(a){if(a.el().vjs_getProperty){a.triggerReady()}else{setTimeout(function(){vjs.Flash.checkReady(a)},50)}};vjs.Flash.onEvent=function(b,a){var c=vjs.el(b)["player"];c.trigger(a)};vjs.Flash.onError=function(a,c){var b=vjs.el(a)["player"];b.trigger("error");vjs.log("Flash Error",c,a)};vjs.Flash.version=function(){var a="0,0,0";try{a=new window.ActiveXObject("ShockwaveFlash.ShockwaveFlash").GetVariable("$version").replace(/\D+/g,",").match(/^,?(.+),?$/)[1]}catch(c){try{if(navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin){a=(navigator.plugins["Shockwave Flash 2.0"]||navigator.plugins["Shockwave Flash"]).description.replace(/\D+/g,",").match(/^,?(.+),?$/)[1]}}catch(b){}}return a.split(",")};vjs.Flash.embed=function(b,j,g,c,e){var a=vjs.Flash.getEmbedCode(b,g,c,e),f=vjs.createEl("div",{innerHTML:a}).childNodes[0],h=j.parentNode;j.parentNode.replaceChild(f,j);var d=h.childNodes[0];setTimeout(function(){d.style.display="block"},1000);return f};vjs.Flash.getEmbedCode=function(e,h,g,b){var c='<object type="application/x-shockwave-flash"',a="",f="",d="";if(h){vjs.obj.each(h,function(j,k){a+=(j+"="+k+"&amp;")})}g=vjs.obj.merge({movie:e,flashvars:a,allowScriptAccess:"always",allowNetworking:"all"},g);vjs.obj.each(g,function(j,k){f+='<param name="'+j+'" value="'+k+'" />'});b=vjs.obj.merge({data:e,width:"100%",height:"100%"},b);vjs.obj.each(b,function(j,k){d+=(j+'="'+k+'" ')});return c+d+">"+f+"</object>"};vjs.Flash.streamFromParts=function(a,b){return a+"&"+b};vjs.Flash.streamToParts=function(d){var c={connection:"",stream:""};if(!d){return c}var b=d.indexOf("&");var a;if(b!==-1){a=b+1}else{b=a=d.lastIndexOf("/")+1;if(b===0){b=a=d.length}}c.connection=d.substring(0,b);c.stream=d.substring(a,d.length);return c};vjs.Flash.isStreamingType=function(a){return a in vjs.Flash.streamingFormats};vjs.Flash.RTMP_RE=/^rtmp[set]?:\/\//i;vjs.Flash.isStreamingSrc=function(a){return vjs.Flash.RTMP_RE.test(a)};vjs.MediaLoader=vjs.Component.extend({init:function(e,c,f){vjs.Component.call(this,e,c,f);if(!e.options_.sources||e.options_.sources.length===0){for(var d=0,b=e.options_.techOrder;d<b.length;d++){var g=vjs.capitalize(b[d]),a=window.videojs[g];if(a&&a.isSupported()){e.loadTech(g);break}}}else{e.src(e.options_.sources)}}});vjs.Player.prototype.textTracks_;vjs.Player.prototype.textTracks=function(){this.textTracks_=this.textTracks_||[];return this.textTracks_};vjs.Player.prototype.addTextTrack=function(f,e,g,d){var c=this.textTracks_=this.textTracks_||[];d=d||{};d.kind=f;d.label=e;d.language=g;var b=vjs.capitalize(f||"subtitles");var a=new window.videojs[b+"Track"](this,d);c.push(a);return a};vjs.Player.prototype.addTextTracks=function(b){var c;for(var a=0;a<b.length;a++){c=b[a];this.addTextTrack(c.kind,c.label,c.language,c)}return this};vjs.Player.prototype.showTextTrack=function(h,f){var c=this.textTracks_,d=0,b=c.length,a,g,e;for(;d<b;d++){a=c[d];if(a.id()===h){a.show();g=a}else{if(f&&a.kind()==f&&a.mode()>0){a.disable()}}}e=(g)?g.kind():((f)?f:false);if(e){this.trigger(e+"trackchange")}return this};vjs.TextTrack=vjs.Component.extend({init:function(b,a){vjs.Component.call(this,b,a);this.id_=a.id||("vjs_"+a.kind+"_"+a.language+"_"+vjs.guid++);this.src_=a.src;this.dflt_=a["default"]||a.dflt;this.title_=a.title;this.language_=a.srclang;this.label_=a.label;this.cues_=[];this.activeCues_=[];this.readyState_=0;this.mode_=0;this.player_.on("fullscreenchange",vjs.bind(this,this.adjustFontSize))}});vjs.TextTrack.prototype.kind_;vjs.TextTrack.prototype.kind=function(){return this.kind_};vjs.TextTrack.prototype.src_;vjs.TextTrack.prototype.src=function(){return this.src_};vjs.TextTrack.prototype.dflt_;vjs.TextTrack.prototype.dflt=function(){return this.dflt_};vjs.TextTrack.prototype.title_;vjs.TextTrack.prototype.title=function(){return this.title_};vjs.TextTrack.prototype.language_;vjs.TextTrack.prototype.language=function(){return this.language_};vjs.TextTrack.prototype.label_;vjs.TextTrack.prototype.label=function(){return this.label_};vjs.TextTrack.prototype.cues_;vjs.TextTrack.prototype.cues=function(){return this.cues_};vjs.TextTrack.prototype.activeCues_;vjs.TextTrack.prototype.activeCues=function(){return this.activeCues_};vjs.TextTrack.prototype.readyState_;vjs.TextTrack.prototype.readyState=function(){return this.readyState_};vjs.TextTrack.prototype.mode_;vjs.TextTrack.prototype.mode=function(){return this.mode_};vjs.TextTrack.prototype.adjustFontSize=function(){if(this.player_.isFullScreen){this.el_.style.fontSize=screen.width/this.player_.width()*1.4*100+"%"}else{this.el_.style.fontSize=""}};vjs.TextTrack.prototype.createEl=function(){return vjs.Component.prototype.createEl.call(this,"div",{className:"vjs-"+this.kind_+" vjs-text-track"})};vjs.TextTrack.prototype.show=function(){this.activate();this.mode_=2;vjs.Component.prototype.show.call(this)};vjs.TextTrack.prototype.hide=function(){this.activate();this.mode_=1;vjs.Component.prototype.hide.call(this)};vjs.TextTrack.prototype.disable=function(){if(this.mode_==2){this.hide()}this.deactivate();this.mode_=0};vjs.TextTrack.prototype.activate=function(){if(this.readyState_===0){this.load()}if(this.mode_===0){this.player_.on("timeupdate",vjs.bind(this,this.update,this.id_));this.player_.on("ended",vjs.bind(this,this.reset,this.id_));if(this.kind_==="captions"||this.kind_==="subtitles"){this.player_.getChild("textTrackDisplay").addChild(this)}}};vjs.TextTrack.prototype.deactivate=function(){this.player_.off("timeupdate",vjs.bind(this,this.update,this.id_));this.player_.off("ended",vjs.bind(this,this.reset,this.id_));this.reset();this.player_.getChild("textTrackDisplay").removeChild(this)};vjs.TextTrack.prototype.load=function(){if(this.readyState_===0){this.readyState_=1;vjs.get(this.src_,vjs.bind(this,this.parseCues),vjs.bind(this,this.onError))}};vjs.TextTrack.prototype.onError=function(a){this.error=a;this.readyState_=3;this.trigger("error")};vjs.TextTrack.prototype.parseCues=function(b){var f,c,g,h=b.split("\n"),k="",a;for(var e=1,d=h.length;e<d;e++){k=vjs.trim(h[e]);if(k){if(k.indexOf("-->")==-1){a=k;k=vjs.trim(h[++e])}else{a=this.cues_.length}f={id:a,index:this.cues_.length};c=k.split(" --> ");f.startTime=this.parseCueTime(c[0]);f.endTime=this.parseCueTime(c[1]);g=[];while(h[++e]&&(k=vjs.trim(h[e]))){g.push(k)}f.text=g.join("<br/>");this.cues_.push(f)}}this.readyState_=2;this.trigger("loaded")};vjs.TextTrack.prototype.parseCueTime=function(b){var g=b.split(":"),f=0,c,e,a,h,d;if(g.length==3){c=g[0];e=g[1];a=g[2]}else{c=0;e=g[0];a=g[1]}a=a.split(/\s+/);h=a.splice(0,1)[0];h=h.split(/\.|,/);d=parseFloat(h[1]);h=h[0];f+=parseFloat(c)*3600;f+=parseFloat(e)*60;f+=parseFloat(h);if(d){f+=d/1000}return f};vjs.TextTrack.prototype.update=function(){if(this.cues_.length>0){var b=this.player_.currentTime();if(this.prevChange===undefined||b<this.prevChange||this.nextChange<=b){var f=this.cues_,k=this.player_.duration(),j=0,g=false,a=[],h,e,d,c;if(b>=this.nextChange||this.nextChange===undefined){c=(this.firstActiveIndex!==undefined)?this.firstActiveIndex:0}else{g=true;c=(this.lastActiveIndex!==undefined)?this.lastActiveIndex:f.length-1}while(true){d=f[c];if(d.endTime<=b){j=Math.max(j,d.endTime);if(d.active){d.active=false}}else{if(b<d.startTime){k=Math.min(k,d.startTime);if(d.active){d.active=false}if(!g){break}}else{if(g){a.splice(0,0,d);if(e===undefined){e=c}h=c}else{a.push(d);if(h===undefined){h=c}e=c}k=Math.min(k,d.endTime);j=Math.max(j,d.startTime);d.active=true}}if(g){if(c===0){break}else{c--}}else{if(c===f.length-1){break}else{c++}}}this.activeCues_=a;this.nextChange=k;this.prevChange=j;this.firstActiveIndex=h;this.lastActiveIndex=e;this.updateDisplay();this.trigger("cuechange")}}};vjs.TextTrack.prototype.updateDisplay=function(){var b=this.activeCues_,d="",c=0,a=b.length;for(;c<a;c++){d+='<span class="vjs-tt-cue">'+b[c].text+"</span>"}this.el_.innerHTML=d};vjs.TextTrack.prototype.reset=function(){this.nextChange=0;this.prevChange=this.player_.duration();this.firstActiveIndex=0;this.lastActiveIndex=0};vjs.CaptionsTrack=vjs.TextTrack.extend();vjs.CaptionsTrack.prototype.kind_="captions";vjs.SubtitlesTrack=vjs.TextTrack.extend();vjs.SubtitlesTrack.prototype.kind_="subtitles";vjs.ChaptersTrack=vjs.TextTrack.extend();vjs.ChaptersTrack.prototype.kind_="chapters";vjs.TextTrackDisplay=vjs.Component.extend({init:function(b,a,c){vjs.Component.call(this,b,a,c);if(b.options_.tracks&&b.options_.tracks.length>0){this.player_.addTextTracks(b.options_.tracks)}}});vjs.TextTrackDisplay.prototype.createEl=function(){return vjs.Component.prototype.createEl.call(this,"div",{className:"vjs-text-track-display"})};vjs.TextTrackMenuItem=vjs.MenuItem.extend({init:function(c,b){var a=this.track=b.track;b.label=a.label();b.selected=a.dflt();vjs.MenuItem.call(this,c,b);this.player_.on(a.kind()+"trackchange",vjs.bind(this,this.update))}});vjs.TextTrackMenuItem.prototype.onClick=function(){vjs.MenuItem.prototype.onClick.call(this);this.player_.showTextTrack(this.track.id_,this.track.kind())};vjs.TextTrackMenuItem.prototype.update=function(){this.selected(this.track.mode()==2)};vjs.OffTextTrackMenuItem=vjs.TextTrackMenuItem.extend({init:function(b,a){a.track={kind:function(){return a.kind},player:b,label:function(){return a.kind+" off"},dflt:function(){return false},mode:function(){return false}};vjs.TextTrackMenuItem.call(this,b,a);this.selected(true)}});vjs.OffTextTrackMenuItem.prototype.onClick=function(){vjs.TextTrackMenuItem.prototype.onClick.call(this);this.player_.showTextTrack(this.track.id_,this.track.kind())};vjs.OffTextTrackMenuItem.prototype.update=function(){var c=this.player_.textTracks(),d=0,b=c.length,a,e=true;for(;d<b;d++){a=c[d];if(a.kind()==this.track.kind()&&a.mode()==2){e=false}}this.selected(e)};vjs.TextTrackButton=vjs.MenuButton.extend({init:function(b,a){vjs.MenuButton.call(this,b,a);if(this.items.length<=1){this.hide()}}});vjs.TextTrackButton.prototype.createItems=function(){var b=[],a;b.push(new vjs.OffTextTrackMenuItem(this.player_,{kind:this.kind_}));for(var c=0;c<this.player_.textTracks().length;c++){a=this.player_.textTracks()[c];if(a.kind()===this.kind_){b.push(new vjs.TextTrackMenuItem(this.player_,{track:a}))}}return b};vjs.CaptionsButton=vjs.TextTrackButton.extend({init:function(b,a,c){vjs.TextTrackButton.call(this,b,a,c);this.el_.setAttribute("aria-label","Captions Menu")}});vjs.CaptionsButton.prototype.kind_="captions";vjs.CaptionsButton.prototype.buttonText="Captions";vjs.CaptionsButton.prototype.className="vjs-captions-button";vjs.SubtitlesButton=vjs.TextTrackButton.extend({init:function(b,a,c){vjs.TextTrackButton.call(this,b,a,c);this.el_.setAttribute("aria-label","Subtitles Menu")}});vjs.SubtitlesButton.prototype.kind_="subtitles";vjs.SubtitlesButton.prototype.buttonText="Subtitles";vjs.SubtitlesButton.prototype.className="vjs-subtitles-button";vjs.ChaptersButton=vjs.TextTrackButton.extend({init:function(b,a,c){vjs.TextTrackButton.call(this,b,a,c);this.el_.setAttribute("aria-label","Chapters Menu")}});vjs.ChaptersButton.prototype.kind_="chapters";vjs.ChaptersButton.prototype.buttonText="Chapters";vjs.ChaptersButton.prototype.className="vjs-chapters-button";vjs.ChaptersButton.prototype.createItems=function(){var b=[],a;for(var c=0;c<this.player_.textTracks().length;c++){a=this.player_.textTracks()[c];if(a.kind()===this.kind_){b.push(new vjs.TextTrackMenuItem(this.player_,{track:a}))}}return b};vjs.ChaptersButton.prototype.createMenu=function(){var h=this.player_.textTracks(),e=0,c=h.length,b,l,k=this.items=[];for(;e<c;e++){b=h[e];if(b.kind()==this.kind_&&b.dflt()){if(b.readyState()<2){this.chaptersTrack=b;b.on("loaded",vjs.bind(this,this.createMenu));return}else{l=b;break}}}var a=this.menu=new vjs.Menu(this.player_);a.el_.appendChild(vjs.createEl("li",{className:"vjs-menu-title",innerHTML:vjs.capitalize(this.kind_),tabindex:-1}));if(l){var f=l.cues_,d,g;e=0;c=f.length;for(;e<c;e++){d=f[e];g=new vjs.ChaptersTrackMenuItem(this.player_,{track:l,cue:d});k.push(g);a.addChild(g)}}if(this.items.length>0){this.show()}return a};vjs.ChaptersTrackMenuItem=vjs.MenuItem.extend({init:function(d,c){var b=this.track=c.track,a=this.cue=c.cue,e=d.currentTime();c.label=a.text;c.selected=(a.startTime<=e&&e<a.endTime);vjs.MenuItem.call(this,d,c);b.on("cuechange",vjs.bind(this,this.update))}});vjs.ChaptersTrackMenuItem.prototype.onClick=function(){vjs.MenuItem.prototype.onClick.call(this);this.player_.currentTime(this.cue.startTime);this.update(this.cue.startTime)};vjs.ChaptersTrackMenuItem.prototype.update=function(){var a=this.cue,b=this.player_.currentTime();this.selected(a.startTime<=b&&b<a.endTime)};vjs.obj.merge(vjs.ControlBar.prototype.options_.children,{subtitlesButton:{},captionsButton:{},chaptersButton:{}});vjs.JSON;if(typeof window.JSON!=="undefined"&&window.JSON.parse==="function"){vjs.JSON=window.JSON}else{vjs.JSON={};var cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g;vjs.JSON.parse=function(text,reviver){var j;function walk(holder,key){var k,v,value=holder[key];if(value&&typeof value==="object"){for(k in value){if(Object.prototype.hasOwnProperty.call(value,k)){v=walk(value,k);if(v!==undefined){value[k]=v}else{delete value[k]}}}}return reviver.call(holder,key,value)}text=String(text);cx.lastIndex=0;if(cx.test(text)){text=text.replace(cx,function(a){return"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)})}if(/^[\],:{}\s]*$/.test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,""))){j=eval("("+text+")");return typeof reviver==="function"?walk({"":j},""):j}throw new SyntaxError("JSON.parse(): invalid or malformed JSON data")}}vjs.autoSetup=function(){var d,a,f,c=document.getElementsByTagName("video");if(c&&c.length>0){for(var e=0,b=c.length;e<b;e++){a=c[e];if(a&&a.getAttribute){if(a.player===undefined){d=a.getAttribute("data-setup");if(d!==null){d=vjs.JSON.parse(d||"{}");f=videojs(a,d)}}}else{vjs.autoSetupTimeout(1);break}}}else{if(!vjs.windowLoaded){vjs.autoSetupTimeout(1)}}};vjs.autoSetupTimeout=function(a){setTimeout(vjs.autoSetup,a)};if(document.readyState==="complete"){vjs.windowLoaded=true}else{vjs.one(window,"load",function(){vjs.windowLoaded=true})}vjs.autoSetupTimeout(1);vjs.plugin=function(a,b){vjs.Player.prototype[a]=b};