1
0
mirror of https://github.com/videojs/video.js.git synced 2024-12-27 02:43:45 +02:00

Changed this.player to this.player_ to be more consistent with other private vars.

This commit is contained in:
Steve Heffernan 2013-01-16 20:24:38 -05:00
parent e17d1a2d85
commit 0b3e240999
13 changed files with 231 additions and 223 deletions

View File

@ -50,8 +50,8 @@ module.exports = function(grunt) {
grunt.registerTask('default', ['build', 'jshint', 'compile', 'dist']); grunt.registerTask('default', ['build', 'jshint', 'compile', 'dist']);
// Development watch task // Development watch task
grunt.registerTask('dev', ['jshint','build']); grunt.registerTask('dev', ['jshint','build']);
grunt.registerTask('test', ['jshint','compile','qunit']);
grunt.registerTask('test', ['jshint','build','qunit']);
var fs = require('fs'), var fs = require('fs'),
gzip = require('zlib').gzip; gzip = require('zlib').gzip;

View File

@ -15,7 +15,7 @@ goog.require('vjs.dom');
* @constructor * @constructor
*/ */
vjs.Component = function(player, options, ready){ vjs.Component = function(player, options, ready){
this.player = player; this.player_ = player;
// // Allow for overridding default component options // // Allow for overridding default component options
options = this.options = this.mergeOptions(this.options, options); options = this.options = this.mergeOptions(this.options, options);
@ -68,6 +68,13 @@ vjs.Component.prototype.dispose = function(){
this.el_ = null; this.el_ = null;
}; };
/**
* Reference to main player instance.
* @type {vjs.Player}
* @private
*/
vjs.Component.prototype.player_;
/** /**
* Component options object. * Component options object.
* @type {Object} * @type {Object}
@ -275,10 +282,10 @@ vjs.Component.prototype.addChild = function(child, options){
options.name = componentName; options.name = componentName;
// Create a new object & element for this controls set // Create a new object & element for this controls set
// If there's no .player, this is a player // If there's no .player_, this is a player
// Closure Compiler throws an 'incomplete alias' warning if we use the vjs variable directly. // Closure Compiler throws an 'incomplete alias' warning if we use the vjs variable directly.
// Every class should be exported, so this should never be a problem here. // Every class should be exported, so this should never be a problem here.
component = new window['videojs'][componentClass](this.player || this, options); component = new window['videojs'][componentClass](this.player_ || this, options);
// child is a component instance // child is a component instance
} else { } else {

102
src/js/controls.js vendored
View File

@ -36,8 +36,8 @@ vjs.ControlBar = function(player, options){
player.one('play', vjs.bind(this, function(){ player.one('play', vjs.bind(this, function(){
this.fadeIn(); this.fadeIn();
this.player.on('mouseover', vjs.bind(this, this.fadeIn)); this.player_.on('mouseover', vjs.bind(this, this.fadeIn));
this.player.on('mouseout', vjs.bind(this, this.fadeOut)); this.player_.on('mouseout', vjs.bind(this, this.fadeOut));
})); }));
}; };
goog.inherits(vjs.ControlBar, vjs.Component); goog.inherits(vjs.ControlBar, vjs.Component);
@ -65,12 +65,12 @@ vjs.ControlBar.prototype.createEl = function(){
vjs.ControlBar.prototype.fadeIn = function(){ vjs.ControlBar.prototype.fadeIn = function(){
goog.base(this, 'fadeIn'); goog.base(this, 'fadeIn');
this.player.trigger('controlsvisible'); this.player_.trigger('controlsvisible');
}; };
vjs.ControlBar.prototype.fadeOut = function(){ vjs.ControlBar.prototype.fadeOut = function(){
goog.base(this, 'fadeOut'); goog.base(this, 'fadeOut');
this.player.trigger('controlshidden'); this.player_.trigger('controlshidden');
}; };
vjs.ControlBar.prototype.lockShowing = function(){ vjs.ControlBar.prototype.lockShowing = function(){
@ -148,7 +148,7 @@ vjs.PlayButton.prototype.buildCSSClass = function(){
}; };
vjs.PlayButton.prototype.onClick = function(){ vjs.PlayButton.prototype.onClick = function(){
this.player.play(); this.player_.play();
}; };
/* Pause Button /* Pause Button
@ -171,7 +171,7 @@ vjs.PauseButton.prototype.buildCSSClass = function(){
}; };
vjs.PauseButton.prototype.onClick = function(){ vjs.PauseButton.prototype.onClick = function(){
this.player.pause(); this.player_.pause();
}; };
/* Play Toggle - Play or Pause Media /* Play Toggle - Play or Pause Media
@ -198,10 +198,10 @@ vjs.PlayToggle.prototype.buildCSSClass = function(){
// OnClick - Toggle between play and pause // OnClick - Toggle between play and pause
vjs.PlayToggle.prototype.onClick = function(){ vjs.PlayToggle.prototype.onClick = function(){
if (this.player.paused()) { if (this.player_.paused()) {
this.player.play(); this.player_.play();
} else { } else {
this.player.pause(); this.player_.pause();
} }
}; };
@ -238,10 +238,10 @@ vjs.FullscreenToggle.prototype.buildCSSClass = function(){
}; };
vjs.FullscreenToggle.prototype.onClick = function(){ vjs.FullscreenToggle.prototype.onClick = function(){
if (!this.player.isFullScreen) { if (!this.player_.isFullScreen) {
this.player.requestFullScreen(); this.player_.requestFullScreen();
} else { } else {
this.player.cancelFullScreen(); this.player_.cancelFullScreen();
} }
}; };
@ -272,10 +272,10 @@ vjs.BigPlayButton.prototype.createEl = function(){
vjs.BigPlayButton.prototype.onClick = function(){ vjs.BigPlayButton.prototype.onClick = function(){
// Go back to the beginning if big play button is showing at the end. // Go back to the beginning if big play button is showing at the end.
// Have to check for current time otherwise it might throw a 'not ready' error. // Have to check for current time otherwise it might throw a 'not ready' error.
if(this.player.currentTime()) { if(this.player_.currentTime()) {
this.player.currentTime(0); this.player_.currentTime(0);
} }
this.player.play(); this.player_.play();
}; };
/* Loading Spinner /* Loading Spinner
@ -314,10 +314,10 @@ goog.inherits(vjs.LoadingSpinner, vjs.Component);
vjs.LoadingSpinner.prototype.createEl = function(){ vjs.LoadingSpinner.prototype.createEl = function(){
var classNameSpinner, innerHtmlSpinner; var classNameSpinner, innerHtmlSpinner;
if ( typeof this.player.el().style.WebkitBorderRadius == 'string' if ( typeof this.player_.el().style.WebkitBorderRadius == 'string'
|| typeof this.player.el().style.MozBorderRadius == 'string' || typeof this.player_.el().style.MozBorderRadius == 'string'
|| typeof this.player.el().style.KhtmlBorderRadius == 'string' || typeof this.player_.el().style.KhtmlBorderRadius == 'string'
|| typeof this.player.el().style.borderRadius == 'string') || typeof this.player_.el().style.borderRadius == 'string')
{ {
classNameSpinner = 'vjs-loading-spinner'; classNameSpinner = 'vjs-loading-spinner';
innerHtmlSpinner = '<div class="ball1"></div><div class="ball2"></div><div class="ball3"></div><div class="ball4"></div><div class="ball5"></div><div class="ball6"></div><div class="ball7"></div><div class="ball8"></div>'; innerHtmlSpinner = '<div class="ball1"></div><div class="ball2"></div><div class="ball3"></div><div class="ball4"></div><div class="ball5"></div><div class="ball6"></div><div class="ball7"></div><div class="ball8"></div>';
@ -364,8 +364,8 @@ vjs.CurrentTimeDisplay.prototype.createEl = function(){
vjs.CurrentTimeDisplay.prototype.updateContent = function(){ vjs.CurrentTimeDisplay.prototype.updateContent = function(){
// Allows for smooth scrubbing, when player can't keep up. // Allows for smooth scrubbing, when player can't keep up.
var time = (this.player.scrubbing) ? this.player.getCache().currentTime : this.player.currentTime(); var time = (this.player_.scrubbing) ? this.player_.getCache().currentTime : this.player_.currentTime();
this.content.innerHTML = vjs.formatTime(time, this.player.duration()); this.content.innerHTML = vjs.formatTime(time, this.player_.duration());
}; };
/** /**
@ -396,7 +396,7 @@ vjs.DurationDisplay.prototype.createEl = function(){
}; };
vjs.DurationDisplay.prototype.updateContent = function(){ vjs.DurationDisplay.prototype.updateContent = function(){
if (this.player.duration()) { this.content.innerHTML = vjs.formatTime(this.player.duration()); } if (this.player_.duration()) { this.content.innerHTML = vjs.formatTime(this.player_.duration()); }
}; };
/** /**
@ -446,11 +446,11 @@ vjs.RemainingTimeDisplay.prototype.createEl = function(){
}; };
vjs.RemainingTimeDisplay.prototype.updateContent = function(){ vjs.RemainingTimeDisplay.prototype.updateContent = function(){
if (this.player.duration()) { this.content.innerHTML = '-'+vjs.formatTime(this.player.remainingTime()); } if (this.player_.duration()) { this.content.innerHTML = '-'+vjs.formatTime(this.player_.remainingTime()); }
// Allows for smooth scrubbing, when player can't keep up. // Allows for smooth scrubbing, when player can't keep up.
// var time = (this.player.scrubbing) ? this.player.getCache().currentTime : this.player.currentTime(); // var time = (this.player_.scrubbing) ? this.player_.getCache().currentTime : this.player_.currentTime();
// this.content.innerHTML = vjs.formatTime(time, this.player.duration()); // this.content.innerHTML = vjs.formatTime(time, this.player_.duration());
}; };
/* Slider /* Slider
@ -476,10 +476,10 @@ vjs.Slider = function(player, options){
this.on('focus', this.onFocus); this.on('focus', this.onFocus);
this.on('blur', this.onBlur); this.on('blur', this.onBlur);
this.player.on('controlsvisible', vjs.bind(this, this.update)); this.player_.on('controlsvisible', vjs.bind(this, this.update));
// This is actually to fix the volume handle position. http://twitter.com/#!/gerritvanaaken/status/159046254519787520 // This is actually to fix the volume handle position. http://twitter.com/#!/gerritvanaaken/status/159046254519787520
// this.player.one('timeupdate', vjs.bind(this, this.update)); // this.player_.one('timeupdate', vjs.bind(this, this.update));
player.ready(vjs.bind(this, this.update)); player.ready(vjs.bind(this, this.update));
}; };
@ -518,7 +518,7 @@ vjs.Slider.prototype.onMouseUp = function() {
vjs.Slider.prototype.update = function(){ vjs.Slider.prototype.update = function(){
// If scrubbing, we could use a cached value to make the handle keep up with the user's mouse. // If scrubbing, we could use a cached value to make the handle keep up with the user's mouse.
// On HTML5 browsers scrubbing is really smooth, but some flash players are slow, so we might want to utilize this later. // On HTML5 browsers scrubbing is really smooth, but some flash players are slow, so we might want to utilize this later.
// var progress = (this.player.scrubbing) ? this.player.getCache().currentTime / this.player.duration() : this.player.currentTime() / this.player.duration(); // var progress = (this.player_.scrubbing) ? this.player_.getCache().currentTime / this.player_.duration() : this.player_.currentTime() / this.player_.duration();
var barProgress, var barProgress,
progress = this.getPercent(), progress = this.getPercent(),
@ -654,43 +654,43 @@ vjs.SeekBar.prototype.createEl = function(){
}; };
vjs.SeekBar.prototype.getPercent = function(){ vjs.SeekBar.prototype.getPercent = function(){
return this.player.currentTime() / this.player.duration(); return this.player_.currentTime() / this.player_.duration();
}; };
vjs.SeekBar.prototype.onMouseDown = function(event){ vjs.SeekBar.prototype.onMouseDown = function(event){
goog.base(this, 'onMouseDown', event); goog.base(this, 'onMouseDown', event);
this.player.scrubbing = true; this.player_.scrubbing = true;
this.videoWasPlaying = !this.player.paused(); this.videoWasPlaying = !this.player_.paused();
this.player.pause(); this.player_.pause();
}; };
vjs.SeekBar.prototype.onMouseMove = function(event){ vjs.SeekBar.prototype.onMouseMove = function(event){
var newTime = this.calculateDistance(event) * this.player.duration(); var newTime = this.calculateDistance(event) * this.player_.duration();
// Don't let video end while scrubbing. // Don't let video end while scrubbing.
if (newTime == this.player.duration()) { newTime = newTime - 0.1; } if (newTime == this.player_.duration()) { newTime = newTime - 0.1; }
// Set new time (tell player to seek to new time) // Set new time (tell player to seek to new time)
this.player.currentTime(newTime); this.player_.currentTime(newTime);
}; };
vjs.SeekBar.prototype.onMouseUp = function(event){ vjs.SeekBar.prototype.onMouseUp = function(event){
goog.base(this, 'onMouseUp', event); goog.base(this, 'onMouseUp', event);
this.player.scrubbing = false; this.player_.scrubbing = false;
if (this.videoWasPlaying) { if (this.videoWasPlaying) {
this.player.play(); this.player_.play();
} }
}; };
vjs.SeekBar.prototype.stepForward = function(){ vjs.SeekBar.prototype.stepForward = function(){
this.player.currentTime(this.player.currentTime() + 1); this.player_.currentTime(this.player_.currentTime() + 1);
}; };
vjs.SeekBar.prototype.stepBack = function(){ vjs.SeekBar.prototype.stepBack = function(){
this.player.currentTime(this.player.currentTime() - 1); this.player_.currentTime(this.player_.currentTime() - 1);
}; };
@ -714,7 +714,7 @@ vjs.LoadProgressBar.prototype.createEl = function(){
}; };
vjs.LoadProgressBar.prototype.update = function(){ vjs.LoadProgressBar.prototype.update = function(){
if (this.el_.style) { this.el_.style.width = vjs.round(this.player.bufferedPercent() * 100, 2) + '%'; } if (this.el_.style) { this.el_.style.width = vjs.round(this.player_.bufferedPercent() * 100, 2) + '%'; }
}; };
@ -807,19 +807,19 @@ vjs.VolumeBar.prototype.createEl = function(){
}; };
vjs.VolumeBar.prototype.onMouseMove = function(event) { vjs.VolumeBar.prototype.onMouseMove = function(event) {
this.player.volume(this.calculateDistance(event)); this.player_.volume(this.calculateDistance(event));
}; };
vjs.VolumeBar.prototype.getPercent = function(){ vjs.VolumeBar.prototype.getPercent = function(){
return this.player.volume(); return this.player_.volume();
}; };
vjs.VolumeBar.prototype.stepForward = function(){ vjs.VolumeBar.prototype.stepForward = function(){
this.player.volume(this.player.volume() + 0.1); this.player_.volume(this.player_.volume() + 0.1);
}; };
vjs.VolumeBar.prototype.stepBack = function(){ vjs.VolumeBar.prototype.stepBack = function(){
this.player.volume(this.player.volume() - 0.1); this.player_.volume(this.player_.volume() - 0.1);
}; };
/** /**
@ -881,14 +881,14 @@ vjs.MuteToggle.prototype.createEl = function(){
}; };
vjs.MuteToggle.prototype.onClick = function(){ vjs.MuteToggle.prototype.onClick = function(){
this.player.muted( this.player.muted() ? false : true ); this.player_.muted( this.player_.muted() ? false : true );
}; };
vjs.MuteToggle.prototype.update = function(){ vjs.MuteToggle.prototype.update = function(){
var vol = this.player.volume(), var vol = this.player_.volume(),
level = 3; level = 3;
if (vol === 0 || this.player.muted()) { if (vol === 0 || this.player_.muted()) {
level = 0; level = 0;
} else if (vol < 0.33) { } else if (vol < 0.33) {
level = 1; level = 1;
@ -914,7 +914,7 @@ vjs.MuteToggle.prototype.update = function(){
vjs.PosterImage = function(player, options){ vjs.PosterImage = function(player, options){
goog.base(this, player, options); goog.base(this, player, options);
if (!this.player.options.poster) { if (!this.player_.options.poster) {
this.hide(); this.hide();
} }
@ -931,14 +931,14 @@ vjs.PosterImage.prototype.createEl = function(){
}); });
// src throws errors if no poster was defined. // src throws errors if no poster was defined.
if (this.player.options.poster) { if (this.player_.options.poster) {
el.src = this.player.options.poster; el.src = this.player_.options.poster;
} }
return el; return el;
}; };
vjs.PosterImage.prototype.onClick = function(){ vjs.PosterImage.prototype.onClick = function(){
this.player.play(); this.player_.play();
}; };
/* Menu /* Menu

View File

@ -50,7 +50,7 @@ vjs = function(id, options, ready){
// Element may have a player attr referring to an already created player instance. // Element may have a player attr referring to an already created player instance.
// If not, set up a new player and return the instance. // If not, set up a new player and return the instance.
return tag.player || new vjs.Player(tag, options, ready); return tag['player'] || new vjs.Player(tag, options, ready);
}; };
// Extended name, also available externally, window.videojs // Extended name, also available externally, window.videojs

View File

@ -173,16 +173,16 @@ vjs.Flash = function(player, options, ready){
// Setting variables on the window needs to come after the doc write because otherwise they can get reset in some browsers // Setting variables on the window needs to come after the doc write because otherwise they can get reset in some browsers
// So far no issues with swf ready event being called before it's set on the window. // So far no issues with swf ready event being called before it's set on the window.
iWin.player = this.player; iWin['player'] = this.player_;
// Create swf ready function for iFrame window // Create swf ready function for iFrame window
iWin.ready = vjs.bind(this.player, function(currSwf){ iWin['ready'] = vjs.bind(this.player_, function(currSwf){
var el = iDoc.getElementById(currSwf), var el = iDoc.getElementById(currSwf),
player = this, player = this,
tech = player.tech; tech = player.tech;
// Update reference to playback technology element // Update reference to playback technology element
tech.el = el; tech.el_ = el;
// Now that the element is ready, make a click on the swf play the video // Now that the element is ready, make a click on the swf play the video
vjs.on(el, 'click', tech.bind(tech.onClick)); vjs.on(el, 'click', tech.bind(tech.onClick));
@ -192,7 +192,7 @@ vjs.Flash = function(player, options, ready){
}); });
// Create event listener for all swf events // Create event listener for all swf events
iWin.events = vjs.bind(this.player, function(swfID, eventName){ iWin['events'] = vjs.bind(this.player_, function(swfID, eventName){
var player = this; var player = this;
if (player && player.techName === 'flash') { if (player && player.techName === 'flash') {
player.trigger(eventName); player.trigger(eventName);
@ -200,7 +200,7 @@ vjs.Flash = function(player, options, ready){
}); });
// Create error listener for all swf errors // Create error listener for all swf errors
iWin.errors = vjs.bind(this.player, function(swfID, eventName){ iWin['errors'] = vjs.bind(this.player_, function(swfID, eventName){
vjs.log('Flash Error', eventName); vjs.log('Flash Error', eventName);
}); });
@ -237,7 +237,7 @@ vjs.Flash.prototype.src = function(src){
// Currently the SWF doesn't autoplay if you load a source later. // Currently the SWF doesn't autoplay if you load a source later.
// e.g. Load player w/ no source, wait 2s, set src. // e.g. Load player w/ no source, wait 2s, set src.
if (this.player.autoplay()) { if (this.player_.autoplay()) {
var tech = this; var tech = this;
setTimeout(function(){ tech.play(); }, 0); setTimeout(function(){ tech.play(); }, 0);
} }
@ -332,11 +332,11 @@ vjs.Flash['onReady'] = function(currSwf){
// Get player from box // Get player from box
// On firefox reloads, el might already have a player // On firefox reloads, el might already have a player
var player = el.player || el.parentNode.player, var player = el['player'] || el.parentNode['player'],
tech = player.tech; tech = player.tech;
// Reference player on tech element // Reference player on tech element
el.player = player; el['player'] = player;
// Update reference to playback technology element // Update reference to playback technology element
tech.el_ = el; tech.el_ = el;
@ -369,13 +369,13 @@ vjs.Flash.checkReady = function(tech){
// Trigger events from the swf on the player // Trigger events from the swf on the player
vjs.Flash['onEvent'] = function(swfID, eventName){ vjs.Flash['onEvent'] = function(swfID, eventName){
var player = vjs.el(swfID).player; var player = vjs.el(swfID)['player'];
player.trigger(eventName); player.trigger(eventName);
}; };
// Log errors from the swf // Log errors from the swf
vjs.Flash['onError'] = function(swfID, err){ vjs.Flash['onError'] = function(swfID, err){
var player = vjs.el(swfID).player; var player = vjs.el(swfID)['player'];
player.trigger('error'); player.trigger('error');
vjs.log('Flash Error', err, swfID); vjs.log('Flash Error', err, swfID);
}; };

View File

@ -48,14 +48,14 @@ vjs.Html5 = function(player, options, ready){
goog.inherits(vjs.Html5, vjs.MediaTechController); goog.inherits(vjs.Html5, vjs.MediaTechController);
vjs.Html5.prototype.dispose = function(){ vjs.Html5.prototype.dispose = function(){
// this.player.tag = false; // this.player_.tag = false;
this.removeTriggers(); this.removeTriggers();
goog.base(this, 'dispose'); goog.base(this, 'dispose');
}; };
vjs.Html5.prototype.createEl = function(){ vjs.Html5.prototype.createEl = function(){
var player = this.player, var player = this.player_,
// If possible, reuse original tag for HTML5 playback technology element // If possible, reuse original tag for HTML5 playback technology element
el = player.tag, el = player.tag,
newEl; newEl;
@ -96,12 +96,12 @@ vjs.Html5.prototype.createEl = function(){
// May seem verbose here, but makes other APIs possible. // May seem verbose here, but makes other APIs possible.
vjs.Html5.prototype.setupTriggers = function(){ vjs.Html5.prototype.setupTriggers = function(){
for (var i = vjs.Html5.Events.length - 1; i >= 0; i--) { for (var i = vjs.Html5.Events.length - 1; i >= 0; i--) {
vjs.on(this.el_, vjs.Html5.Events[i], vjs.bind(this.player, this.eventHandler)); vjs.on(this.el_, vjs.Html5.Events[i], vjs.bind(this.player_, this.eventHandler));
} }
}; };
vjs.Html5.prototype.removeTriggers = function(){ vjs.Html5.prototype.removeTriggers = function(){
for (var i = vjs.Html5.Events.length - 1; i >= 0; i--) { for (var i = vjs.Html5.Events.length - 1; i >= 0; i--) {
vjs.off(this.el_, vjs.Html5.Events[i], vjs.bind(this.player, this.eventHandler)); vjs.off(this.el_, vjs.Html5.Events[i], vjs.bind(this.player_, this.eventHandler));
} }
// console.log('removeTriggers', vjs.getData(this.el_)); // console.log('removeTriggers', vjs.getData(this.el_));
}; };
@ -197,7 +197,7 @@ vjs.Html5.prototype.ended = function(){ return this.el_.ended; };
// playbackRate: function(){ return this.el_.playbackRate; }, // playbackRate: function(){ return this.el_.playbackRate; },
// mediaGroup: function(){ return this.el_.mediaGroup; }, // mediaGroup: function(){ return this.el_.mediaGroup; },
// controller: function(){ return this.el_.controller; }, // controller: function(){ return this.el_.controller; },
vjs.Html5.prototype.controls = function(){ return this.player.options.controls; }; vjs.Html5.prototype.controls = function(){ return this.player_.options.controls; };
vjs.Html5.prototype.defaultMuted = function(){ return this.el_.defaultMuted; }; vjs.Html5.prototype.defaultMuted = function(){ return this.el_.defaultMuted; };
/* HTML5 Support Testing ---------------------------------------------------- */ /* HTML5 Support Testing ---------------------------------------------------- */

View File

@ -29,11 +29,11 @@ goog.inherits(vjs.MediaTechController, vjs.Component);
* Handle a click on the media element. By default will play the media. * Handle a click on the media element. By default will play the media.
*/ */
vjs.MediaTechController.prototype.onClick = function(){ vjs.MediaTechController.prototype.onClick = function(){
if (this.player.options.controls) { if (this.player_.options.controls) {
if (this.player.paused()) { if (this.player_.paused()) {
this.player.play(); this.player_.play();
} else { } else {
this.player.pause(); this.player_.pause();
} }
} }
}; };

View File

@ -47,8 +47,8 @@ vjs.Player.prototype.dispose = function(){
// Kill reference to this player // Kill reference to this player
vjs.players[this.id_] = null; vjs.players[this.id_] = null;
if (this.tag && this.tag.player) { this.tag.player = null; } if (this.tag && this.tag['player']) { this.tag['player'] = null; }
if (this.el_ && this.el_.player) { this.el_.player = null; } if (this.el_ && this.el_['player']) { this.el_['player'] = null; }
// Ensure that tracking progress and time progress will stop and plater deleted // Ensure that tracking progress and time progress will stop and plater deleted
this.stopTrackingProgress(); this.stopTrackingProgress();
@ -133,7 +133,7 @@ vjs.Player.prototype.createEl = function(){
tag.className = 'vjs-tech'; tag.className = 'vjs-tech';
// Make player findable on elements // Make player findable on elements
tag.player = el.player = this; tag['player'] = el['player'] = this;
// Default state of video is paused // Default state of video is paused
this.addClass('vjs-paused'); this.addClass('vjs-paused');
@ -175,16 +175,16 @@ vjs.Player.prototype.loadTech = function(techName, source){
this.isReady_ = false; this.isReady_ = false;
var techReady = function(){ var techReady = function(){
this.player.triggerReady(); this.player_.triggerReady();
// Manually track progress in cases where the browser/flash player doesn't report it. // Manually track progress in cases where the browser/flash player doesn't report it.
if (!this.features.progressEvents) { if (!this.features.progressEvents) {
this.player.manualProgressOn(); this.player_.manualProgressOn();
} }
// Manually track timeudpates in cases where the browser/flash player doesn't report it. // Manually track timeudpates in cases where the browser/flash player doesn't report it.
if (!this.features.timeupdateEvents) { if (!this.features.timeupdateEvents) {
this.player.manualTimeUpdatesOn(); this.player_.manualTimeUpdatesOn();
} }
}; };
@ -250,7 +250,7 @@ vjs.Player.prototype.manualProgressOn = function(){
this.features.progressEvents = true; this.features.progressEvents = true;
// Turn off manual progress tracking // Turn off manual progress tracking
this.player.manualProgressOff(); this.player_.manualProgressOff();
}); });
}; };
@ -288,7 +288,7 @@ vjs.Player.prototype.manualTimeUpdatesOn = function(){
// Update known progress support for this playback technology // Update known progress support for this playback technology
this.features.timeupdateEvents = true; this.features.timeupdateEvents = true;
// Turn off manual progress tracking // Turn off manual progress tracking
this.player.manualTimeUpdatesOff(); this.player_.manualTimeUpdatesOff();
}); });
}; };

View File

@ -24,7 +24,7 @@ vjs.autoSetup = function(){
if (vid && vid.getAttribute) { if (vid && vid.getAttribute) {
// Make sure this player hasn't already been set up. // Make sure this player hasn't already been set up.
if (vid.player === undefined) { if (vid['player'] === undefined) {
options = vid.getAttribute('data-setup'); options = vid.getAttribute('data-setup');
// Check if data-setup attr exists. // Check if data-setup attr exists.

View File

@ -373,14 +373,14 @@ vjs.TextTrack.prototype.activate = function(){
if (this.mode_ === 0) { if (this.mode_ === 0) {
// Update current cue on timeupdate // Update current cue on timeupdate
// Using unique ID for bind function so other tracks don't remove listener // Using unique ID for bind function so other tracks don't remove listener
this.player.on('timeupdate', vjs.bind(this, this.update, this.id_)); this.player_.on('timeupdate', vjs.bind(this, this.update, this.id_));
// Reset cue time on media end // Reset cue time on media end
this.player.on('ended', vjs.bind(this, this.reset, this.id_)); this.player_.on('ended', vjs.bind(this, this.reset, this.id_));
// Add to display // Add to display
if (this.kind_ === 'captions' || this.kind_ === 'subtitles') { if (this.kind_ === 'captions' || this.kind_ === 'subtitles') {
this.player.getChild('textTrackDisplay').addChild(this); this.player_.getChild('textTrackDisplay').addChild(this);
} }
} }
}; };
@ -390,12 +390,12 @@ vjs.TextTrack.prototype.activate = function(){
*/ */
vjs.TextTrack.prototype.deactivate = function(){ vjs.TextTrack.prototype.deactivate = function(){
// Using unique ID for bind function so other tracks don't remove listener // Using unique ID for bind function so other tracks don't remove listener
this.player.off('timeupdate', vjs.bind(this, this.update, this.id_)); this.player_.off('timeupdate', vjs.bind(this, this.update, this.id_));
this.player.off('ended', vjs.bind(this, this.reset, this.id_)); this.player_.off('ended', vjs.bind(this, this.reset, this.id_));
this.reset(); // Reset this.reset(); // Reset
// Remove from display // Remove from display
this.player.getChild('textTrackDisplay').removeChild(this); this.player_.getChild('textTrackDisplay').removeChild(this);
}; };
// A readiness state // A readiness state
@ -529,14 +529,14 @@ vjs.TextTrack.prototype.update = function(){
if (this.cues_.length > 0) { if (this.cues_.length > 0) {
// Get curent player time // Get curent player time
var time = this.player.currentTime(); var time = this.player_.currentTime();
// Check if the new time is outside the time box created by the the last update. // Check if the new time is outside the time box created by the the last update.
if (this.prevChange === undefined || time < this.prevChange || this.nextChange <= time) { if (this.prevChange === undefined || time < this.prevChange || this.nextChange <= time) {
var cues = this.cues_, var cues = this.cues_,
// Create a new time box for this state. // Create a new time box for this state.
newNextChange = this.player.duration(), // Start at beginning of the timeline newNextChange = this.player_.duration(), // Start at beginning of the timeline
newPrevChange = 0, // Start at end newPrevChange = 0, // Start at end
reverse = false, // Set the direction of the loop through the cues. Optimized the cue check. reverse = false, // Set the direction of the loop through the cues. Optimized the cue check.
@ -648,7 +648,7 @@ vjs.TextTrack.prototype.updateDisplay = function(){
// Set all loop helper values back // Set all loop helper values back
vjs.TextTrack.prototype.reset = function(){ vjs.TextTrack.prototype.reset = function(){
this.nextChange = 0; this.nextChange = 0;
this.prevChange = this.player.duration(); this.prevChange = this.player_.duration();
this.firstActiveIndex = 0; this.firstActiveIndex = 0;
this.lastActiveIndex = 0; this.lastActiveIndex = 0;
}; };
@ -699,7 +699,7 @@ vjs.TextTrackDisplay = function(player, options, ready){
// Should probably be moved to an external track loader when we support // Should probably be moved to an external track loader when we support
// tracks that don't need a display. // tracks that don't need a display.
if (player.options['tracks'] && player.options['tracks'].length > 0) { if (player.options['tracks'] && player.options['tracks'].length > 0) {
this.player.addTextTracks(player.options['tracks']); this.player_.addTextTracks(player.options['tracks']);
} }
}; };
goog.inherits(vjs.TextTrackDisplay, vjs.Component); goog.inherits(vjs.TextTrackDisplay, vjs.Component);
@ -724,13 +724,13 @@ vjs.TextTrackMenuItem = function(player, options){
options['selected'] = track.dflt(); options['selected'] = track.dflt();
goog.base(this, player, options); goog.base(this, player, options);
this.player.on(track.kind() + 'trackchange', vjs.bind(this, this.update)); this.player_.on(track.kind() + 'trackchange', vjs.bind(this, this.update));
}; };
goog.inherits(vjs.TextTrackMenuItem, vjs.MenuItem); goog.inherits(vjs.TextTrackMenuItem, vjs.MenuItem);
vjs.TextTrackMenuItem.prototype.onClick = function(){ vjs.TextTrackMenuItem.prototype.onClick = function(){
goog.base(this, 'onClick'); goog.base(this, 'onClick');
this.player.showTextTrack(this.track.id(), this.track.kind()); this.player_.showTextTrack(this.track.id(), this.track.kind());
}; };
vjs.TextTrackMenuItem.prototype.update = function(){ vjs.TextTrackMenuItem.prototype.update = function(){
@ -760,11 +760,11 @@ goog.inherits(vjs.OffTextTrackMenuItem, vjs.TextTrackMenuItem);
vjs.OffTextTrackMenuItem.prototype.onClick = function(){ vjs.OffTextTrackMenuItem.prototype.onClick = function(){
goog.base(this, 'onClick'); goog.base(this, 'onClick');
this.player.showTextTrack(this.track.id(), this.track.kind()); this.player_.showTextTrack(this.track.id(), this.track.kind());
}; };
vjs.OffTextTrackMenuItem.prototype.update = function(){ vjs.OffTextTrackMenuItem.prototype.update = function(){
var tracks = this.player.textTracks(), var tracks = this.player_.textTracks(),
i=0, j=tracks.length, track, i=0, j=tracks.length, track,
off = true; off = true;
@ -799,7 +799,7 @@ vjs.TextTrackButton = function(player, options){
goog.inherits(vjs.TextTrackButton, vjs.Button); goog.inherits(vjs.TextTrackButton, vjs.Button);
vjs.TextTrackButton.prototype.createMenu = function(){ vjs.TextTrackButton.prototype.createMenu = function(){
var menu = new vjs.Menu(this.player); var menu = new vjs.Menu(this.player_);
// Add a title list item to the top // Add a title list item to the top
menu.el().appendChild(vjs.createEl('li', { menu.el().appendChild(vjs.createEl('li', {
@ -808,7 +808,7 @@ vjs.TextTrackButton.prototype.createMenu = function(){
})); }));
// Add an OFF menu item to turn all tracks off // Add an OFF menu item to turn all tracks off
menu.addItem(new vjs.OffTextTrackMenuItem(this.player, { 'kind': this.kind_ })); menu.addItem(new vjs.OffTextTrackMenuItem(this.player_, { 'kind': this.kind_ }));
this.items = this.createItems(); this.items = this.createItems();
@ -827,10 +827,10 @@ vjs.TextTrackButton.prototype.createMenu = function(){
vjs.TextTrackButton.prototype.createItems = function(){ vjs.TextTrackButton.prototype.createItems = function(){
var items = [], track; var items = [], track;
for (var i = 0; i < this.player.textTracks().length; i++) { for (var i = 0; i < this.player_.textTracks().length; i++) {
track = this.player.textTracks()[i]; track = this.player_.textTracks()[i];
if (track.kind() === this.kind_) { if (track.kind() === this.kind_) {
items.push(new vjs.TextTrackMenuItem(this.player, { items.push(new vjs.TextTrackMenuItem(this.player_, {
'track': track 'track': track
})); }));
} }
@ -906,10 +906,10 @@ vjs.ChaptersButton.prototype.className = 'vjs-chapters-button';
vjs.ChaptersButton.prototype.createItems = function(){ vjs.ChaptersButton.prototype.createItems = function(){
var items = [], track; var items = [], track;
for (var i = 0; i < this.player.textTracks().length; i++) { for (var i = 0; i < this.player_.textTracks().length; i++) {
track = this.player.textTracks()[i]; track = this.player_.textTracks()[i];
if (track.kind() === this.kind_) { if (track.kind() === this.kind_) {
items.push(new vjs.TextTrackMenuItem(this.player, { items.push(new vjs.TextTrackMenuItem(this.player_, {
'track': track 'track': track
})); }));
} }
@ -919,7 +919,7 @@ vjs.ChaptersButton.prototype.createItems = function(){
}; };
vjs.ChaptersButton.prototype.createMenu = function(){ vjs.ChaptersButton.prototype.createMenu = function(){
var tracks = this.player.textTracks(), var tracks = this.player_.textTracks(),
i = 0, i = 0,
j = tracks.length, j = tracks.length,
track, chaptersTrack, track, chaptersTrack,
@ -939,7 +939,7 @@ vjs.ChaptersButton.prototype.createMenu = function(){
} }
} }
var menu = this.menu = new vjs.Menu(this.player); var menu = this.menu = new vjs.Menu(this.player_);
menu.el_.appendChild(vjs.createEl('li', { menu.el_.appendChild(vjs.createEl('li', {
className: 'vjs-menu-title', className: 'vjs-menu-title',
@ -954,7 +954,7 @@ vjs.ChaptersButton.prototype.createMenu = function(){
for (;i<j;i++) { for (;i<j;i++) {
cue = cues[i]; cue = cues[i];
mi = new vjs.ChaptersTrackMenuItem(this.player, { mi = new vjs.ChaptersTrackMenuItem(this.player_, {
'track': chaptersTrack, 'track': chaptersTrack,
'cue': cue 'cue': cue
}); });
@ -995,13 +995,13 @@ goog.inherits(vjs.ChaptersTrackMenuItem, vjs.MenuItem);
vjs.ChaptersTrackMenuItem.prototype.onClick = function(){ vjs.ChaptersTrackMenuItem.prototype.onClick = function(){
goog.base(this, 'onClick'); goog.base(this, 'onClick');
this.player.currentTime(this.cue.startTime); this.player_.currentTime(this.cue.startTime);
this.update(this.cue.startTime); this.update(this.cue.startTime);
}; };
vjs.ChaptersTrackMenuItem.prototype.update = function(){ vjs.ChaptersTrackMenuItem.prototype.update = function(){
var cue = this.cue, var cue = this.cue,
currentTime = this.player.currentTime(); currentTime = this.player_.currentTime();
// vjs.log(currentTime, cue.startTime); // vjs.log(currentTime, cue.startTime);
if (cue.startTime <= currentTime && currentTime < cue.endTime) { if (cue.startTime <= currentTime && currentTime < cue.endTime) {

View File

@ -50,7 +50,6 @@ test('should do a deep merge of child options', function(){
var children = mergedOptions['children']; var children = mergedOptions['children'];
ok(children['childOne']['foo'] === 'baz', 'value three levels deep overridden'); ok(children['childOne']['foo'] === 'baz', 'value three levels deep overridden');
console.log(children['childOne']['asdf'])
ok(children['childOne']['asdf'] === 'fdsa', 'value three levels deep maintained'); ok(children['childOne']['asdf'] === 'fdsa', 'value three levels deep maintained');
ok(children['childOne']['abc'] === '123', 'value three levels deep added'); ok(children['childOne']['abc'] === '123', 'value three levels deep added');
ok(children['childTwo'], 'object two levels deep maintained'); ok(children['childTwo'], 'object two levels deep maintained');

View File

@ -119,14 +119,14 @@ test('should get tag, source, and track settings', function(){
ok(player.el().className.indexOf('video-js') !== -1, 'transferred class from tag to player div'); ok(player.el().className.indexOf('video-js') !== -1, 'transferred class from tag to player div');
ok(player.el().id === 'example_1', 'transferred id from tag to player div'); ok(player.el().id === 'example_1', 'transferred id from tag to player div');
ok(tag.player === player, 'player referenceable on original tag'); ok(tag['player'] === player, 'player referenceable on original tag');
ok(vjs.players[player.id()] === player, 'player referenceable from global list'); ok(vjs.players[player.id()] === player, 'player referenceable from global list');
ok(tag.id !== player.id, 'tag ID no longer is the same as player ID'); ok(tag.id !== player.id, 'tag ID no longer is the same as player ID');
ok(tag.className !== player.el().className, 'tag classname updated'); ok(tag.className !== player.el().className, 'tag classname updated');
player.dispose(); player.dispose();
ok(tag.player === null, 'tag player ref killed') ok(tag['player'] === null, 'tag player ref killed')
ok(!vjs.players['example_1'], 'global player ref killed') ok(!vjs.players['example_1'], 'global player ref killed')
ok(player.el() === null, 'player el killed') ok(player.el() === null, 'player el killed')
}); });

View File

@ -1,117 +1,119 @@
(function() {var c=void 0,f=!0,h=null,j=!1;function k(a){return function(){return this[a]}}function l(a){return function(){return a}}var n,aa=this;aa.$b=f;function s(a,b){var d=a.split("."),e=aa;!(d[0]in e)&&e.execScript&&e.execScript("var "+d[0]);for(var g;d.length&&(g=d.shift());)!d.length&&b!==c?e[g]=b:e=e[g]?e[g]:e[g]={}}function t(a,b){function d(){}d.prototype=b.prototype;a.h=b.prototype;a.prototype=new d;a.prototype.constructor=a};document.createElement("video");document.createElement("audio");function u(a,b,d){if("string"===typeof a){0===a.indexOf("#")&&(a=a.slice(1));if(u.P[a])return u.P[a];a=u.f(a)}if(!a||!a.nodeName)throw new TypeError("The element or ID supplied is not valid. (videojs)");return a.a||new v(a,b,d)}var x=u; (function() {var c=void 0,f=!0,h=null,k=!1;function l(a){return function(){return this[a]}}function m(a){return function(){return a}}var n,aa=this;aa.Yb=f;function s(a,b){var d=a.split("."),e=aa;!(d[0]in e)&&e.execScript&&e.execScript("var "+d[0]);for(var g;d.length&&(g=d.shift());)!d.length&&b!==c?e[g]=b:e=e[g]?e[g]:e[g]={}}function t(a,b){function d(){}d.prototype=b.prototype;a.h=b.prototype;a.prototype=new d;a.prototype.constructor=a};document.createElement("video");document.createElement("audio");function u(a,b,d){if("string"===typeof a){0===a.indexOf("#")&&(a=a.slice(1));if(u.O[a])return u.O[a];a=u.f(a)}if(!a||!a.nodeName)throw new TypeError("The element or ID supplied is not valid. (videojs)");return a.player||new v(a,b,d)}var x=u;
u.options={techOrder:["html5","flash"],html5:{},flash:{sc:"http://vjs.zencdn.net/c/video-js.swf"},width:300,height:150,defaultVolume:0,children:{mediaLoader:{},posterImage:{},textTrackDisplay:{},loadingSpinner:{},bigPlayButton:{},controlBar:{}}};u.P={};u.zb={};u.e=function(a,b,d){var e=u.getData(a);e.q||(e.q={});e.q[b]||(e.q[b]=[]);d.p||(d.p=u.p++);e.q[b].push(d);e.J||(e.disabled=j,e.J=function(b){if(!e.disabled){b=u.Ua(b);var d=e.q[b.type];if(d){for(var m=[],r=0,p=d.length;r<p;r++)m[r]=d[r];d=0;for(r=m.length;d<r;d++)m[d].call(a,b)}}});1==e.q[b].length&&(document.addEventListener?a.addEventListener(b,e.J,j):document.attachEvent&&a.attachEvent("on"+b,e.J))}; u.options={techOrder:["html5","flash"],html5:{},flash:{rc:"http://vjs.zencdn.net/c/video-js.swf"},width:300,height:150,defaultVolume:0,children:{mediaLoader:{},posterImage:{},textTrackDisplay:{},loadingSpinner:{},bigPlayButton:{},controlBar:{}}};u.O={};u.hc={};u.e=function(a,b,d){var e=u.getData(a);e.q||(e.q={});e.q[b]||(e.q[b]=[]);d.p||(d.p=u.p++);e.q[b].push(d);e.I||(e.disabled=k,e.I=function(b){if(!e.disabled){b=u.Ta(b);var d=e.q[b.type];if(d){for(var j=[],r=0,q=d.length;r<q;r++)j[r]=d[r];d=0;for(r=j.length;d<r;d++)j[d].call(a,b)}}});1==e.q[b].length&&(document.addEventListener?a.addEventListener(b,e.I,k):document.attachEvent&&a.attachEvent("on"+b,e.I))};
u.j=function(a,b,d){if(u.Ya(a)){var e=u.getData(a);if(e.q)if(b){var g=e.q[b];if(g){if(d){if(d.p)for(e=0;e<g.length;e++)g[e].p===d.p&&g.splice(e--,1)}else e.q[b]=[];u.Qa(a,b)}}else for(g in e.q)b=g,e.q[b]=[],u.Qa(a,b)}};u.Qa=function(a,b){var d=u.getData(a);0===d.q[b].length&&(delete d.q[b],document.removeEventListener?a.removeEventListener(b,d.J,j):document.detachEvent&&a.detachEvent("on"+b,d.J));u.ja(d.q)&&(delete d.q,delete d.J,delete d.disabled);u.ja(d)&&u.Ma(a)}; u.j=function(a,b,d){if(u.Xa(a)){var e=u.getData(a);if(e.q)if(b){var g=e.q[b];if(g){if(d){if(d.p)for(e=0;e<g.length;e++)g[e].p===d.p&&g.splice(e--,1)}else e.q[b]=[];u.Pa(a,b)}}else for(g in e.q)b=g,e.q[b]=[],u.Pa(a,b)}};u.Pa=function(a,b){var d=u.getData(a);0===d.q[b].length&&(delete d.q[b],document.removeEventListener?a.removeEventListener(b,d.I,k):document.detachEvent&&a.detachEvent("on"+b,d.I));u.ia(d.q)&&(delete d.q,delete d.I,delete d.disabled);u.ia(d)&&u.La(a)};
u.Ua=function(a){function b(){return f}function d(){return j}if(!a||!a.Da){var e=a||window.event,g;for(g in e)a[g]=e[g];a.target||(a.target=a.srcElement||document);a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement;a.preventDefault=function(){a.returnValue=j;a.Za=b};a.Za=d;a.stopPropagation=function(){a.cancelBubble=f;a.Da=b};a.Da=d;a.stopImmediatePropagation=function(){a.Db=b;a.stopPropagation()};a.Db=d;a.clientX!=h&&(e=document.documentElement,g=document.body,a.pageX=a.clientX+(e&& u.Ta=function(a){function b(){return f}function d(){return k}if(!a||!a.Ca){var e=a||window.event,g;for(g in e)a[g]=e[g];a.target||(a.target=a.srcElement||document);a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement;a.preventDefault=function(){a.returnValue=k;a.Ya=b};a.Ya=d;a.stopPropagation=function(){a.cancelBubble=f;a.Ca=b};a.Ca=d;a.stopImmediatePropagation=function(){a.Bb=b;a.stopPropagation()};a.Bb=d;a.clientX!=h&&(e=document.documentElement,g=document.body,a.pageX=a.clientX+(e&&
e.scrollLeft||g&&g.scrollLeft||0)-(e&&e.clientLeft||g&&g.clientLeft||0),a.pageY=a.clientY+(e&&e.scrollTop||g&&g.scrollTop||0)-(e&&e.clientTop||g&&g.clientTop||0));a.which=a.charCode||a.keyCode;a.button!=h&&(a.button=a.button&1?0:a.button&4?1:a.button&2?2:0)}return a}; e.scrollLeft||g&&g.scrollLeft||0)-(e&&e.clientLeft||g&&g.clientLeft||0),a.pageY=a.clientY+(e&&e.scrollTop||g&&g.scrollTop||0)-(e&&e.clientTop||g&&g.clientTop||0));a.which=a.charCode||a.keyCode;a.button!=h&&(a.button=a.button&1?0:a.button&4?1:a.button&2?2:0)}return a};
u.g=function(a,b){var d=u.Ya(a)?u.getData(a):{},e=a.parentNode||a.ownerDocument;"string"===typeof b&&(b={type:b,target:a});b=u.Ua(b);d.J&&d.J.call(a,b);if(e&&!b.Da())u.g(e,b);else if(!e&&!b.Za()&&(d=u.getData(b.target),b.target[b.type])){d.disabled=f;if("function"===typeof b.target[b.type])b.target[b.type]();d.disabled=j}};u.z=function(a,b,d){u.e(a,b,function(){u.j(a,b,arguments.callee);d.apply(this,arguments)})};u.ic={};u.d=function(a,b){var d=document.createElement(a||"div"),e;for(e in b)b.hasOwnProperty(e)&&(d[e]=b[e]);return d};u.I=function(a){return a.charAt(0).toUpperCase()+a.slice(1)};u.Y=function(a,b){if(a)for(var d in a)a.hasOwnProperty(d)&&b.call(this,d,a[d])};u.s=function(a,b){if(!b)return a;for(var d in b)b.hasOwnProperty(d)&&(a[d]=b[d]);return a};u.bind=function(a,b,d){function e(){return b.apply(a,arguments)}b.p||(b.p=u.p++);e.p=d?d+"_"+b.p:b.p;return e};u.M={};u.p=1;u.expando="vdata"+(new Date).getTime(); u.g=function(a,b){var d=u.Xa(a)?u.getData(a):{},e=a.parentNode||a.ownerDocument;"string"===typeof b&&(b={type:b,target:a});b=u.Ta(b);d.I&&d.I.call(a,b);if(e&&!b.Ca())u.g(e,b);else if(!e&&!b.Ya()&&(d=u.getData(b.target),b.target[b.type])){d.disabled=f;if("function"===typeof b.target[b.type])b.target[b.type]();d.disabled=k}};u.z=function(a,b,d){u.e(a,b,function(){u.j(a,b,arguments.callee);d.apply(this,arguments)})};u.gc={};u.d=function(a,b){var d=document.createElement(a||"div"),e;for(e in b)b.hasOwnProperty(e)&&(d[e]=b[e]);return d};u.H=function(a){return a.charAt(0).toUpperCase()+a.slice(1)};u.S=function(a,b){if(a)for(var d in a)a.hasOwnProperty(d)&&b.call(this,d,a[d])};u.t=function(a,b){if(!b)return a;for(var d in b)b.hasOwnProperty(d)&&(a[d]=b[d]);return a};u.bind=function(a,b,d){function e(){return b.apply(a,arguments)}b.p||(b.p=u.p++);e.p=d?d+"_"+b.p:b.p;return e};u.L={};u.p=1;u.expando="vdata"+(new Date).getTime();
u.getData=function(a){var b=a[u.expando];b||(b=a[u.expando]=u.p++,u.M[b]={});return u.M[b]};u.Ya=function(a){a=a[u.expando];return!(!a||u.ja(u.M[a]))};u.Ma=function(a){var b=a[u.expando];if(b){delete u.M[b];try{delete a[u.expando]}catch(d){a.removeAttribute?a.removeAttribute(u.expando):a[u.expando]=h}}};u.ja=function(a){for(var b in a)if(a[b]!==h)return j;return f};u.m=function(a,b){-1==(" "+a.className+" ").indexOf(" "+b+" ")&&(a.className=""===a.className?b:a.className+" "+b)}; u.getData=function(a){var b=a[u.expando];b||(b=a[u.expando]=u.p++,u.L[b]={});return u.L[b]};u.Xa=function(a){a=a[u.expando];return!(!a||u.ia(u.L[a]))};u.La=function(a){var b=a[u.expando];if(b){delete u.L[b];try{delete a[u.expando]}catch(d){a.removeAttribute?a.removeAttribute(u.expando):a[u.expando]=h}}};u.ia=function(a){for(var b in a)if(a[b]!==h)return k;return f};u.m=function(a,b){-1==(" "+a.className+" ").indexOf(" "+b+" ")&&(a.className=""===a.className?b:a.className+" "+b)};
u.u=function(a,b){if(-1!=a.className.indexOf(b)){var d=a.className.split(" ");d.splice(d.indexOf(b),1);a.className=d.join(" ")}};u.qb=u.d("video");u.A=navigator.userAgent;u.ob=!!u.A.match(/iPad/i);u.nb=!!u.A.match(/iPhone/i);u.pb=!!u.A.match(/iPod/i);u.mb=u.ob||u.nb||u.pb;var ba=u,ca;var da=u.A.match(/OS (\d+)_/i);ca=da&&da[1]?da[1]:c;ba.bc=ca;u.kb=!!u.A.match(/Android.*AppleWebKit/i);var ea=u,fa=u.A.match(/Android (\d+)\./i);ea.jb=fa&&fa[1]?fa[1]:h;u.lb=function(){return!!u.A.match("Firefox")}; u.u=function(a,b){if(-1!=a.className.indexOf(b)){var d=a.className.split(" ");d.splice(d.indexOf(b),1);a.className=d.join(" ")}};u.pb=u.d("video");u.A=navigator.userAgent;u.nb=!!u.A.match(/iPad/i);u.mb=!!u.A.match(/iPhone/i);u.ob=!!u.A.match(/iPod/i);u.lb=u.nb||u.mb||u.ob;var ba=u,ca;var da=u.A.match(/OS (\d+)_/i);ca=da&&da[1]?da[1]:c;ba.$b=ca;u.jb=!!u.A.match(/Android.*AppleWebKit/i);var ea=u,fa=u.A.match(/Android (\d+)\./i);ea.ib=fa&&fa[1]?fa[1]:h;u.kb=function(){return!!u.A.match("Firefox")};
u.N=function(a){var b={};if(a&&a.attributes&&0<a.attributes.length)for(var d=a.attributes,e,g,q=d.length-1;0<=q;q--){e=d[q].name;g=d[q].value;if("boolean"===typeof a[e]||-1!==",autoplay,controls,loop,muted,default,".indexOf(","+e+","))g=g!==h?f:j;b[e]=g}return b}; u.M=function(a){var b={};if(a&&a.attributes&&0<a.attributes.length)for(var d=a.attributes,e,g,p=d.length-1;0<=p;p--){e=d[p].name;g=d[p].value;if("boolean"===typeof a[e]||-1!==",autoplay,controls,loop,muted,default,".indexOf(","+e+","))g=g!==h?f:k;b[e]=g}return b};
u.Ca=function(a,b){var d="";document.defaultView&&document.defaultView.getComputedStyle?d=document.defaultView.getComputedStyle(a,"").getPropertyValue(b):a.currentStyle&&(b=b.replace(/\-(\w)/g,function(a,b){return b.toUpperCase()}),d=a.currentStyle[b]);return d};u.$=function(a,b){b.firstChild?b.insertBefore(a,b.firstChild):b.appendChild(a)};u.Na={};u.f=function(a){0===a.indexOf("#")&&(a=a.slice(1));return document.getElementById(a)}; u.Ba=function(a,b){var d="";document.defaultView&&document.defaultView.getComputedStyle?d=document.defaultView.getComputedStyle(a,"").getPropertyValue(b):a.currentStyle&&(b=b.replace(/\-(\w)/g,function(a,b){return b.toUpperCase()}),d=a.currentStyle[b]);return d};u.Z=function(a,b){b.firstChild?b.insertBefore(a,b.firstChild):b.appendChild(a)};u.Ma={};u.f=function(a){0===a.indexOf("#")&&(a=a.slice(1));return document.getElementById(a)};
u.o=function(a,b){b=b||a;var d=Math.floor(a%60),e=Math.floor(a/60%60),g=Math.floor(a/3600),q=Math.floor(b/60%60),m=Math.floor(b/3600),g=0<g||0<m?g+":":"";return g+(((g||10<=q)&&10>e?"0"+e:e)+":")+(10>d?"0"+d:d)};u.ub=function(){document.body.focus();document.onselectstart=l(j)};u.Wb=function(){document.onselectstart=l(f)};u.trim=function(a){return a.toString().replace(/^\s+/,"").replace(/\s+$/,"")};u.round=function(a,b){b||(b=0);return Math.round(a*Math.pow(10,b))/Math.pow(10,b)}; u.o=function(a,b){b=b||a;var d=Math.floor(a%60),e=Math.floor(a/60%60),g=Math.floor(a/3600),p=Math.floor(b/60%60),j=Math.floor(b/3600),g=0<g||0<j?g+":":"";return g+(((g||10<=p)&&10>e?"0"+e:e)+":")+(10>d?"0"+d:d)};u.tb=function(){document.body.focus();document.onselectstart=m(k)};u.Ub=function(){document.onselectstart=m(f)};u.trim=function(a){return a.toString().replace(/^\s+/,"").replace(/\s+$/,"")};u.round=function(a,b){b||(b=0);return Math.round(a*Math.pow(10,b))/Math.pow(10,b)};
u.ya=function(a){return{length:1,start:l(0),end:function(){return a}}}; u.xa=function(a){return{length:1,start:m(0),end:function(){return a}}};
u.get=function(a,b,d){var e=0===a.indexOf("file:")||0===window.location.href.indexOf("file:")&&-1===a.indexOf("http");"undefined"===typeof XMLHttpRequest&&(window.XMLHttpRequest=function(){try{return new window.ActiveXObject("Msxml2.XMLHTTP.6.0")}catch(a){}try{return new window.ActiveXObject("Msxml2.XMLHTTP.3.0")}catch(b){}try{return new window.ActiveXObject("Msxml2.XMLHTTP")}catch(d){}throw Error("This browser does not support XMLHttpRequest.");});var g=new XMLHttpRequest;try{g.open("GET",a)}catch(q){d(q)}g.onreadystatechange= u.get=function(a,b,d){var e=0===a.indexOf("file:")||0===window.location.href.indexOf("file:")&&-1===a.indexOf("http");"undefined"===typeof XMLHttpRequest&&(window.XMLHttpRequest=function(){try{return new window.ActiveXObject("Msxml2.XMLHTTP.6.0")}catch(a){}try{return new window.ActiveXObject("Msxml2.XMLHTTP.3.0")}catch(b){}try{return new window.ActiveXObject("Msxml2.XMLHTTP")}catch(d){}throw Error("This browser does not support XMLHttpRequest.");});var g=new XMLHttpRequest;try{g.open("GET",a)}catch(p){d(p)}g.onreadystatechange=
function(){4===g.readyState&&(200===g.status||e&&0===g.status?b(g.responseText):d&&d())};try{g.send()}catch(m){d&&d(m)}};u.Rb=function(a){var b=window.localStorage||j;if(b)try{b.volume=a}catch(d){22==d.code||1014==d.code?u.log("LocalStorage Full (VideoJS)",d):u.log("LocalStorage Error (VideoJS)",d)}};u.ia=function(a){a.match(/^https?:\/\//)||(a=u.d("div",{innerHTML:'<a href="'+a+'">x</a>'}).firstChild.href);return a}; function(){4===g.readyState&&(200===g.status||e&&0===g.status?b(g.responseText):d&&d())};try{g.send()}catch(j){d&&d(j)}};u.Pb=function(a){var b=window.localStorage||k;if(b)try{b.volume=a}catch(d){22==d.code||1014==d.code?u.log("LocalStorage Full (VideoJS)",d):u.log("LocalStorage Error (VideoJS)",d)}};u.ha=function(a){a.match(/^https?:\/\//)||(a=u.d("div",{innerHTML:'<a href="'+a+'">x</a>'}).firstChild.href);return a};
u.log=function(){u.log.history=u.log.history||[];u.log.history.push(arguments);window.console&&window.console.log(Array.prototype.slice.call(arguments))};u.Ab="getBoundingClientRect"in document.documentElement?function(a){var b;try{b=a.getBoundingClientRect()}catch(d){}if(!b)return 0;a=document.body;return b.left+(window.pageXOffset||a.scrollLeft)-(document.documentElement.clientLeft||a.clientLeft||0)}:function(a){for(var b=a.offsetLeft;a=a.offsetParent;)b+=a.offsetLeft;return b};function y(a,b,d){this.a=a;b=this.options=u.s(this.options||{},b);this.K=b.id||(b.f&&b.f.id?b.f.id:a.id+"_component_"+u.p++);this.Hb=b.name||h;this.b=b.f?b.f:this.d();this.B=[];this.ga={};this.D={};if((a=this.options)&&a.children){var e=this;u.Y(a.children,function(a,b){b!==j&&!b.Fb&&(e[a]=e.C(a,b))})}this.G(d)}n=y.prototype; u.log=function(){u.log.history=u.log.history||[];u.log.history.push(arguments);window.console&&window.console.log(Array.prototype.slice.call(arguments))};u.yb="getBoundingClientRect"in document.documentElement?function(a){var b;try{b=a.getBoundingClientRect()}catch(d){}if(!b)return 0;a=document.body;return b.left+(window.pageXOffset||a.scrollLeft)-(document.documentElement.clientLeft||a.clientLeft||0)}:function(a){for(var b=a.offsetLeft;a=a.offsetParent;)b+=a.offsetLeft;return b};function y(a,b,d){this.a=a;b=this.options=ga(this,this.options,b);this.J=b.id||(b.f&&b.f.id?b.f.id:a.id+"_component_"+u.p++);this.Fb=b.name||h;this.b=b.f?b.f:this.d();this.B=[];this.fa={};this.D={};if((a=this.options)&&a.children){var e=this;u.S(a.children,function(a,b){b!==k&&!b.Db&&(e[a]=e.C(a,b))})}z(this,d)}n=y.prototype;
n.l=function(){if(this.B)for(var a=this.B.length-1;0<=a;a--)this.B[a].l();this.D=this.ga=this.B=h;this.j();this.b.parentNode&&this.b.parentNode.removeChild(this.b);u.Ma(this.b);this.b=h};n.d=function(a,b){return u.d(a,b)};n.f=k("b");n.id=k("K");n.name=k("Hb");n.children=k("B"); n.l=function(){if(this.B)for(var a=this.B.length-1;0<=a;a--)this.B[a].l();this.D=this.fa=this.B=h;this.j();this.b.parentNode&&this.b.parentNode.removeChild(this.b);u.La(this.b);this.b=h};function ga(a,b,d){var e,g,p,j,r;p=Object.prototype.hasOwnProperty;g=Object.prototype.toString;b=b||{};e={};u.S(b,function(a,b){e[a]=b});if(!d)return e;for(j in d)p.call(d,j)&&(b=e[j],r=d[j],e[j]="[object Object]"===g.call(b)&&"[object Object]"===g.call(r)?ga(a,b,r):d[j]);return e}n.d=function(a,b){return u.d(a,b)};
n.C=function(a,b){var d,e,g;"string"===typeof a?(e=a,b=b||{},d=b.hc||u.I(e),b.name=e,d=new window.videojs[d](this.a||this,b)):d=a;e=d.name();g=d.id();this.B.push(d);g&&(this.ga[g]=d);e&&(this.D[e]=d);this.b.appendChild(d.f());return d};n.removeChild=function(a){"string"===typeof a&&(a=this.D[a]);if(a&&this.B){for(var b=j,d=this.B.length-1;0<=d;d--)if(this.B[d]===a){b=f;this.B.splice(d,1);break}b&&(this.ga[a.id]=h,this.D[a.name]=h,(b=a.f())&&b.parentNode===this.b&&this.b.removeChild(a.f()))}}; n.f=l("b");n.id=l("J");n.name=l("Fb");n.children=l("B");n.C=function(a,b){var d,e,g;"string"===typeof a?(e=a,b=b||{},d=b.fc||u.H(e),b.name=e,d=new window.videojs[d](this.a||this,b)):d=a;e=d.name();g=d.id();this.B.push(d);g&&(this.fa[g]=d);e&&(this.D[e]=d);this.b.appendChild(d.f());return d};
n.v=l("");n.e=function(a,b){u.e(this.b,a,u.bind(this,b));return this};n.j=function(a,b){u.j(this.b,a,b);return this};n.z=function(a,b){u.z(this.b,a,u.bind(this,b));return this};n.g=function(a,b){u.g(this.b,a,b);return this};n.G=function(a){a&&(this.U?a.call(this):(this.qa===c&&(this.qa=[]),this.qa.push(a)));return this};function z(a){a.U=f;var b=a.qa;if(b&&0<b.length){for(var d=0,e=b.length;d<e;d++)b[d].call(a);a.qa=[];a.g("ready")}}n.m=function(a){u.m(this.b,a);return this}; n.removeChild=function(a){"string"===typeof a&&(a=this.D[a]);if(a&&this.B){for(var b=k,d=this.B.length-1;0<=d;d--)if(this.B[d]===a){b=f;this.B.splice(d,1);break}b&&(this.fa[a.id]=h,this.D[a.name]=h,(b=a.f())&&b.parentNode===this.b&&this.b.removeChild(a.f()))}};n.v=m("");n.e=function(a,b){u.e(this.b,a,u.bind(this,b));return this};n.j=function(a,b){u.j(this.b,a,b);return this};n.z=function(a,b){u.z(this.b,a,u.bind(this,b));return this};n.g=function(a,b){u.g(this.b,a,b);return this};
n.u=function(a){u.u(this.b,a);return this};n.show=function(){this.b.style.display="block";return this};n.t=function(){this.b.style.display="none";return this};n.ha=function(){this.u("vjs-fade-out");this.m("vjs-fade-in");return this};n.Aa=function(){this.u("vjs-fade-in");this.m("vjs-fade-out");return this};n.$a=function(){var a=this.b.style;a.display="block";a.opacity=1;a.Yb="visible";return this};function ga(a){a=a.b.style;a.display="";a.opacity="";a.Yb=""} function z(a,b){b&&(a.U?b.call(a):(a.pa===c&&(a.pa=[]),a.pa.push(b)))}function A(a){a.U=f;var b=a.pa;if(b&&0<b.length){for(var d=0,e=b.length;d<e;d++)b[d].call(a);a.pa=[];a.g("ready")}}n.m=function(a){u.m(this.b,a);return this};n.u=function(a){u.u(this.b,a);return this};n.show=function(){this.b.style.display="block";return this};n.s=function(){this.b.style.display="none";return this};n.ga=function(){this.u("vjs-fade-out");this.m("vjs-fade-in");return this};
n.width=function(a,b){return ha(this,"width",a,b)};n.height=function(a,b){return ha(this,"height",a,b)};n.xb=function(a,b){return this.width(a,f).height(b)};function ha(a,b,d,e){if(d!==c)return a.b.style[b]=-1!==(""+d).indexOf("%")||-1!==(""+d).indexOf("px")?d:d+"px",e||a.g("resize"),a;if(!a.b)return 0;d=a.b.style[b];e=d.indexOf("px");return-1!==e?parseInt(d.slice(0,e),10):parseInt(a.b["offset"+u.I(b)],10)};function v(a,b,d){this.H=a;var e={};u.s(e,u.options);u.s(e,ia(a));u.s(e,b);this.n={};y.call(this,this,e,d);this.e("ended",this.Jb);this.e("play",this.Ka);this.e("pause",this.Ja);this.e("progress",this.Kb);this.e("durationchange",this.Ib);this.e("error",this.Ha);u.P[this.K]=this}t(v,y);n=v.prototype;n.l=function(){u.P[this.K]=h;this.H&&this.H.a&&(this.H.a=h);this.b&&this.b.a&&(this.b.a=h);clearInterval(this.pa);this.i&&this.i.l();v.h.l.call(this)}; n.za=function(){this.u("vjs-fade-in");this.m("vjs-fade-out");return this};n.Za=function(){var a=this.b.style;a.display="block";a.opacity=1;a.Wb="visible";return this};function ha(a){a=a.b.style;a.display="";a.opacity="";a.Wb=""}n.width=function(a,b){return ia(this,"width",a,b)};n.height=function(a,b){return ia(this,"height",a,b)};n.wb=function(a,b){return this.width(a,f).height(b)};
function ia(a){var b={sources:[],tracks:[]};u.s(b,u.N(a));if(a.hasChildNodes())for(var d,e=a.childNodes,g=0,q=e.length;g<q;g++)a=e[g],d=a.nodeName.toLowerCase(),"source"===d?b.sources.push(u.N(a)):"track"===d&&b.tracks.push(u.N(a));return b} function ia(a,b,d,e){if(d!==c)return a.b.style[b]=-1!==(""+d).indexOf("%")||-1!==(""+d).indexOf("px")?d:d+"px",e||a.g("resize"),a;if(!a.b)return 0;d=a.b.style[b];e=d.indexOf("px");return-1!==e?parseInt(d.slice(0,e),10):parseInt(a.b["offset"+u.H(b)],10)};function v(a,b,d){this.G=a;var e={};u.t(e,u.options);u.t(e,ja(a));u.t(e,b);this.n={};y.call(this,this,e,d);this.e("ended",this.Hb);this.e("play",this.Ja);this.e("pause",this.Ia);this.e("progress",this.Ib);this.e("durationchange",this.Gb);this.e("error",this.Ga);u.O[this.J]=this}t(v,y);n=v.prototype;n.l=function(){u.O[this.J]=h;this.G&&this.G.player&&(this.G.player=h);this.b&&this.b.player&&(this.b.player=h);clearInterval(this.oa);this.i&&this.i.l();v.h.l.call(this)};
n.d=function(){var a=this.b=v.h.d.call(this,"div"),b=this.H;b.removeAttribute("controls");b.removeAttribute("poster");b.removeAttribute("width");b.removeAttribute("height");if(b.hasChildNodes())for(var d=b.childNodes.length,e=0,g=b.childNodes;e<d;e++)("source"==g[0].nodeName.toLowerCase()||"track"==g[0].nodeName.toLowerCase())&&b.removeChild(g[0]);b.id=b.id||"vjs_video_"+u.p++;a.id=b.id;a.className=b.className;b.id+="_html5_api";b.className="vjs-tech";b.a=a.a=this;this.m("vjs-paused");this.width(this.options.width, function ja(a){var b={sources:[],tracks:[]};u.t(b,u.M(a));if(a.hasChildNodes())for(var d,e=a.childNodes,g=0,p=e.length;g<p;g++)a=e[g],d=a.nodeName.toLowerCase(),"source"===d?b.sources.push(u.M(a)):"track"===d&&b.tracks.push(u.M(a));return b}
f);this.height(this.options.height,f);b.parentNode&&b.parentNode.insertBefore(a,b);u.$(b,a);return a}; n.d=function(){var a=this.b=v.h.d.call(this,"div"),b=this.G;b.removeAttribute("controls");b.removeAttribute("poster");b.removeAttribute("width");b.removeAttribute("height");if(b.hasChildNodes())for(var d=b.childNodes.length,e=0,g=b.childNodes;e<d;e++)("source"==g[0].nodeName.toLowerCase()||"track"==g[0].nodeName.toLowerCase())&&b.removeChild(g[0]);b.id=b.id||"vjs_video_"+u.p++;a.id=b.id;a.className=b.className;b.id+="_html5_api";b.className="vjs-tech";b.player=a.player=this;this.m("vjs-paused");this.width(this.options.width,
function ja(a,b,d){a.i?ka(a):"Html5"!==b&&a.H&&(a.b.removeChild(a.H),a.H=h);a.Q=b;a.U=j;var e=u.s({source:d,Lb:a.b},a.options[b.toLowerCase()]);d&&(d.src==a.n.src&&0<a.n.currentTime&&(e.startTime=a.n.currentTime),a.n.src=d.src);a.i=new window.videojs[b](a,e);a.i.G(function(){z(this.a);if(!this.F.bb){var a=this.a;a.Fa=f;a.pa=setInterval(u.bind(a,function(){this.n.wa<this.buffered().end(0)?this.g("progress"):1==la(this)&&(clearInterval(this.pa),this.g("progress"))}),500);a.i.z("progress",function(){this.F.bb= f);this.height(this.options.height,f);b.parentNode&&b.parentNode.insertBefore(a,b);u.Z(b,a);return a};
f;var a=this.a;a.Fa=j;clearInterval(a.pa)})}this.F.hb||(a=this.a,a.Ga=f,a.e("play",a.ib),a.e("pause",a.sa),a.i.z("timeupdate",function(){this.F.hb=f;ma(this.a)}))})}function ka(a){a.i.l();a.Fa&&(a.Fa=j,clearInterval(a.pa));a.Ga&&ma(a);a.i=j}function ma(a){a.Ga=j;a.sa();a.j("play",a.ib);a.j("pause",a.sa)}n.ib=function(){this.Sa&&this.sa();this.Sa=setInterval(u.bind(this,function(){this.g("timeupdate")}),250)};n.sa=function(){clearInterval(this.Sa)}; function ka(a,b,d){a.i?la(a):"Html5"!==b&&a.G&&(a.b.removeChild(a.G),a.G=h);a.P=b;a.U=k;var e=u.t({source:d,Jb:a.b},a.options[b.toLowerCase()]);d&&(d.src==a.n.src&&0<a.n.currentTime&&(e.startTime=a.n.currentTime),a.n.src=d.src);a.i=new window.videojs[b](a,e);z(a.i,function(){A(this.a);if(!this.F.ab){var a=this.a;a.Ea=f;a.oa=setInterval(u.bind(a,function(){this.n.va<this.buffered().end(0)?this.g("progress"):1==ma(this)&&(clearInterval(this.oa),this.g("progress"))}),500);a.i.z("progress",function(){this.F.ab=
n.Jb=function(){this.options.loop&&(this.currentTime(0),this.play())};n.Ka=function(){u.u(this.b,"vjs-paused");u.m(this.b,"vjs-playing")};n.Ja=function(){u.u(this.b,"vjs-playing");u.m(this.b,"vjs-paused")};n.Kb=function(){1==la(this)&&this.g("loadedalldata")};n.Ib=function(){this.duration(A(this,"duration"))};n.Ha=function(a){u.log("Video Error",a)};function B(a,b,d){if(a.i.U)try{a.i[b](d)}catch(e){u.log(e)}else a.i.G(function(){this[b](d)})} f;var a=this.a;a.Ea=k;clearInterval(a.oa)})}this.F.gb||(a=this.a,a.Fa=f,a.e("play",a.hb),a.e("pause",a.ra),a.i.z("timeupdate",function(){this.F.gb=f;na(this.a)}))})}function la(a){a.i.l();a.Ea&&(a.Ea=k,clearInterval(a.oa));a.Fa&&na(a);a.i=k}function na(a){a.Fa=k;a.ra();a.j("play",a.hb);a.j("pause",a.ra)}n.hb=function(){this.Ra&&this.ra();this.Ra=setInterval(u.bind(this,function(){this.g("timeupdate")}),250)};n.ra=function(){clearInterval(this.Ra)};
function A(a,b){if(a.i.U)try{return a.i[b]()}catch(d){if(a.i[b]===c)u.log("Video.js: "+b+" method not defined for "+a.Q+" playback technology.",d);else{if("TypeError"==d.name)throw u.log("Video.js: "+b+" unavailable on "+a.Q+" playback technology element.",d),a.i.U=j,d;u.log(d)}}}n.play=function(){B(this,"play");return this};n.pause=function(){B(this,"pause");return this};n.paused=function(){return A(this,"paused")===j?j:f}; n.Hb=function(){this.options.loop&&(this.currentTime(0),this.play())};n.Ja=function(){u.u(this.b,"vjs-paused");u.m(this.b,"vjs-playing")};n.Ia=function(){u.u(this.b,"vjs-playing");u.m(this.b,"vjs-paused")};n.Ib=function(){1==ma(this)&&this.g("loadedalldata")};n.Gb=function(){this.duration(B(this,"duration"))};n.Ga=function(a){u.log("Video Error",a)};function C(a,b,d){if(a.i.U)try{a.i[b](d)}catch(e){u.log(e)}else z(a.i,function(){this[b](d)})}
n.currentTime=function(a){return a!==c?(this.n.pc=a,B(this,"setCurrentTime",a),this.Ga&&this.g("timeupdate"),this):this.n.currentTime=A(this,"currentTime")||0};n.duration=function(a){return a!==c?(this.n.duration=parseFloat(a),this):this.n.duration};n.buffered=function(){var a=A(this,"buffered"),b=this.n.wa=this.n.wa||0;a&&(0<a.length&&a.end(0)!==b)&&(b=a.end(0),this.n.wa=b);return u.ya(b)};function la(a){return a.duration()?a.buffered().end(0)/a.duration():0} function B(a,b){if(a.i.U)try{return a.i[b]()}catch(d){if(a.i[b]===c)u.log("Video.js: "+b+" method not defined for "+a.P+" playback technology.",d);else{if("TypeError"==d.name)throw u.log("Video.js: "+b+" unavailable on "+a.P+" playback technology element.",d),a.i.U=k,d;u.log(d)}}}n.play=function(){C(this,"play");return this};n.pause=function(){C(this,"pause");return this};n.paused=function(){return B(this,"paused")===k?k:f};
n.volume=function(a){if(a!==c)return a=Math.max(0,Math.min(1,parseFloat(a))),this.n.volume=a,B(this,"setVolume",a),u.Rb(a),this;a=parseFloat(A(this,"volume"));return isNaN(a)?1:a};n.muted=function(a){return a!==c?(B(this,"setMuted",a),this):A(this,"muted")||j};n.ta=function(){return A(this,"supportsFullScreen")||j}; n.currentTime=function(a){return a!==c?(this.n.nc=a,C(this,"setCurrentTime",a),this.Fa&&this.g("timeupdate"),this):this.n.currentTime=B(this,"currentTime")||0};n.duration=function(a){return a!==c?(this.n.duration=parseFloat(a),this):this.n.duration};n.buffered=function(){var a=B(this,"buffered"),b=this.n.va=this.n.va||0;a&&(0<a.length&&a.end(0)!==b)&&(b=a.end(0),this.n.va=b);return u.xa(b)};function ma(a){return a.duration()?a.buffered().end(0)/a.duration():0}
n.ra=function(){var a=u.Na.ra;this.O=f;a?(u.e(document,a.T,u.bind(this,function(){this.O=document[a.O];this.O===j&&u.j(document,a.T,arguments.callee);this.g("fullscreenchange")})),this.i.F.Wa===j&&this.options.flash.iFrameMode!==f&&(this.pause(),ka(this),u.e(document,a.T,u.bind(this,function(){u.j(document,a.T,arguments.callee);ja(this,this.Q,{src:this.n.src})}))),this.b[a.Nb]()):this.i.ta()?(this.g("fullscreenchange"),B(this,"enterFullScreen")):(this.g("fullscreenchange"),this.Cb=f,this.yb=document.documentElement.style.overflow, n.volume=function(a){if(a!==c)return a=Math.max(0,Math.min(1,parseFloat(a))),this.n.volume=a,C(this,"setVolume",a),u.Pb(a),this;a=parseFloat(B(this,"volume"));return isNaN(a)?1:a};n.muted=function(a){return a!==c?(C(this,"setMuted",a),this):B(this,"muted")||k};n.sa=function(){return B(this,"supportsFullScreen")||k};
u.e(document,"keydown",u.bind(this,this.Va)),document.documentElement.style.overflow="hidden",u.m(document.body,"vjs-full-window"),u.m(this.b,"vjs-fullscreen"),this.g("enterFullWindow"));return this};function na(a){var b=u.Na.ra;a.O=j;b?(a.i.F.Wa===j&&a.options.flash.iFrameMode!==f&&(a.pause(),ka(a),u.e(document,b.T,u.bind(a,function(){u.j(document,b.T,arguments.callee);ja(this,this.Q,{src:this.n.src})}))),document[b.vb]()):(a.i.ta()?B(a,"exitFullScreen"):oa(a),a.g("fullscreenchange"))} n.qa=function(){var a=u.Ma.qa;this.N=f;a?(u.e(document,a.T,u.bind(this,function(){this.N=document[a.N];this.N===k&&u.j(document,a.T,arguments.callee);this.g("fullscreenchange")})),this.i.F.Va===k&&this.options.flash.iFrameMode!==f&&(this.pause(),la(this),u.e(document,a.T,u.bind(this,function(){u.j(document,a.T,arguments.callee);ka(this,this.P,{src:this.n.src})}))),this.b[a.Lb]()):this.i.sa()?(this.g("fullscreenchange"),C(this,"enterFullScreen")):(this.g("fullscreenchange"),this.Ab=f,this.xb=document.documentElement.style.overflow,
n.Va=function(a){27===a.keyCode&&(this.O===f?na(this):oa(this))};function oa(a){a.Cb=j;u.j(document,"keydown",a.Va);document.documentElement.style.overflow=a.yb;u.u(document.body,"vjs-full-window");u.u(a.b,"vjs-fullscreen");a.g("exitFullWindow")} u.e(document,"keydown",u.bind(this,this.Ua)),document.documentElement.style.overflow="hidden",u.m(document.body,"vjs-full-window"),u.m(this.b,"vjs-fullscreen"),this.g("enterFullWindow"));return this};function oa(a){var b=u.Ma.qa;a.N=k;b?(a.i.F.Va===k&&a.options.flash.iFrameMode!==f&&(a.pause(),la(a),u.e(document,b.T,u.bind(a,function(){u.j(document,b.T,arguments.callee);ka(this,this.P,{src:this.n.src})}))),document[b.ub]()):(a.i.sa()?C(a,"exitFullScreen"):pa(a),a.g("fullscreenchange"))}
n.src=function(a){if(a instanceof Array){var b;a:{b=a;for(var d=0,e=this.options.techOrder;d<e.length;d++){var g=u.I(e[d]),q=window.videojs[g];if(q.isSupported())for(var m=0,r=b;m<r.length;m++){var p=r[m];if(q.canPlaySource(p)){b={source:p,i:g};break a}}}b=j}b?(a=b.source,b=b.i,b==this.Q?this.src(a):ja(this,b,a)):this.b.appendChild(u.d("p",{innerHTML:'Sorry, no compatible source and playback technology were found for this video. Try using another browser like <a href="http://www.google.com/chrome">Google Chrome</a> or download the latest <a href="http://get.adobe.com/flashplayer/">Adobe Flash Player</a>.'}))}else a instanceof n.Ua=function(a){27===a.keyCode&&(this.N===f?oa(this):pa(this))};function pa(a){a.Ab=k;u.j(document,"keydown",a.Ua);document.documentElement.style.overflow=a.xb;u.u(document.body,"vjs-full-window");u.u(a.b,"vjs-fullscreen");a.g("exitFullWindow")}
Object?window.videojs[this.Q].canPlaySource(a)?this.src(a.src):this.src([a]):(this.n.src=a,this.U?(B(this,"src",a),"auto"==this.options.preload&&this.load(),this.options.autoplay&&this.play()):this.G(function(){this.src(a)}));return this};n.load=function(){B(this,"load");return this};n.currentSrc=function(){return A(this,"currentSrc")||this.n.src||""};n.ca=function(a){return a!==c?(B(this,"setPreload",a),this.options.preload=a,this):A(this,"preload")}; n.src=function(a){if(a instanceof Array){var b;a:{b=a;for(var d=0,e=this.options.techOrder;d<e.length;d++){var g=u.H(e[d]),p=window.videojs[g];if(p.isSupported())for(var j=0,r=b;j<r.length;j++){var q=r[j];if(p.canPlaySource(q)){b={source:q,i:g};break a}}}b=k}b?(a=b.source,b=b.i,b==this.P?this.src(a):ka(this,b,a)):this.b.appendChild(u.d("p",{innerHTML:'Sorry, no compatible source and playback technology were found for this video. Try using another browser like <a href="http://www.google.com/chrome">Google Chrome</a> or download the latest <a href="http://get.adobe.com/flashplayer/">Adobe Flash Player</a>.'}))}else a instanceof
n.autoplay=function(a){return a!==c?(B(this,"setAutoplay",a),this.options.autoplay=a,this):A(this,"autoplay")};n.loop=function(a){return a!==c?(B(this,"setLoop",a),this.options.loop=a,this):A(this,"loop")};n.controls=function(){return this.options.controls};n.poster=function(){return A(this,"poster")};n.error=function(){return A(this,"error")};var pa,qa,ra,sa; Object?window.videojs[this.P].canPlaySource(a)?this.src(a.src):this.src([a]):(this.n.src=a,this.U?(C(this,"src",a),"auto"==this.options.preload&&this.load(),this.options.autoplay&&this.play()):z(this,function(){this.src(a)}));return this};n.load=function(){C(this,"load");return this};n.currentSrc=function(){return B(this,"currentSrc")||this.n.src||""};n.ba=function(a){return a!==c?(C(this,"setPreload",a),this.options.preload=a,this):B(this,"preload")};
if(document.fc!==c)pa="requestFullscreen",qa="exitFullscreen",ra="fullscreenchange",sa="fullScreen";else for(var ta=["moz","webkit"],ua=ta.length-1;0<=ua;ua--){var C=ta[ua];if(("moz"!=C||document.mozFullScreenEnabled)&&document[C+"CancelFullScreen"]!==c)pa=C+"RequestFullScreen",qa=C+"CancelFullScreen",ra=C+"fullscreenchange",sa="webkit"==C?C+"IsFullScreen":C+"FullScreen"}pa&&(u.Na.ra={Nb:pa,vb:qa,T:ra,O:sa}); n.autoplay=function(a){return a!==c?(C(this,"setAutoplay",a),this.options.autoplay=a,this):B(this,"autoplay")};n.loop=function(a){return a!==c?(C(this,"setLoop",a),this.options.loop=a,this):B(this,"loop")};n.controls=function(){return this.options.controls};n.poster=function(){return B(this,"poster")};n.error=function(){return B(this,"error")};var qa,ra,sa,ta;
function va(a,b,d){y.call(this,a,b,d);if(!a.options.sources||0===a.options.sources.length){b=0;for(d=a.options.techOrder;b<d.length;b++){var e=u.I(d[b]),g=window.videojs[e];if(g&&g.isSupported()){ja(a,e);break}}}else a.src(a.options.sources)}t(va,y);function D(a,b){y.call(this,a,b)}t(D,y);D.prototype.v=function(){return"vjs-control "+D.h.v.call(this)};function E(a,b){y.call(this,a,b);a.z("play",u.bind(this,function(){this.ha();this.a.e("mouseover",u.bind(this,this.ha));this.a.e("mouseout",u.bind(this,this.Aa))}))}t(E,y);n=E.prototype;n.options={Fb:"play",children:{playToggle:{},fullscreenToggle:{},currentTimeDisplay:{},timeDivider:{},durationDisplay:{},remainingTimeDisplay:{},progressControl:{},volumeControl:{},muteToggle:{}}}; if(document.dc!==c)qa="requestFullscreen",ra="exitFullscreen",sa="fullscreenchange",ta="fullScreen";else for(var ua=["moz","webkit"],va=ua.length-1;0<=va;va--){var D=ua[va];if(("moz"!=D||document.mozFullScreenEnabled)&&document[D+"CancelFullScreen"]!==c)qa=D+"RequestFullScreen",ra=D+"CancelFullScreen",sa=D+"fullscreenchange",ta="webkit"==D?D+"IsFullScreen":D+"FullScreen"}qa&&(u.Ma.qa={Lb:qa,ub:ra,T:sa,N:ta});
n.d=function(){return u.d("div",{className:"vjs-control-bar"})};n.ha=function(){E.h.ha.call(this);this.a.g("controlsvisible")};n.Aa=function(){E.h.Aa.call(this);this.a.g("controlshidden")};n.$a=function(){this.b.style.opacity="1"};function F(a,b){y.call(this,a,b);this.e("click",this.k);this.e("focus",this.ma);this.e("blur",this.la)}t(F,D);n=F.prototype; function wa(a,b,d){y.call(this,a,b,d);if(!a.options.sources||0===a.options.sources.length){b=0;for(d=a.options.techOrder;b<d.length;b++){var e=u.H(d[b]),g=window.videojs[e];if(g&&g.isSupported()){ka(a,e);break}}}else a.src(a.options.sources)}t(wa,y);function E(a,b){y.call(this,a,b)}t(E,y);E.prototype.v=function(){return"vjs-control "+E.h.v.call(this)};function F(a,b){y.call(this,a,b);a.z("play",u.bind(this,function(){this.ga();this.a.e("mouseover",u.bind(this,this.ga));this.a.e("mouseout",u.bind(this,this.za))}))}t(F,y);n=F.prototype;n.options={Db:"play",children:{playToggle:{},fullscreenToggle:{},currentTimeDisplay:{},timeDivider:{},durationDisplay:{},remainingTimeDisplay:{},progressControl:{},volumeControl:{},muteToggle:{}}};
n.d=function(a,b){b=u.s({className:this.v(),innerHTML:'<div><span class="vjs-control-text">'+(this.L||"Need Text")+"</span></div>",Ob:"button",tabIndex:0},b);return F.h.d.call(this,a,b)};n.k=function(){};n.ma=function(){u.e(document,"keyup",u.bind(this,this.ba))};n.ba=function(a){if(32==a.which||13==a.which)a.preventDefault(),this.k()};n.la=function(){u.j(document,"keyup",u.bind(this,this.ba))};function G(a,b){F.call(this,a,b)}t(G,F);G.prototype.L="Play"; n.d=function(){return u.d("div",{className:"vjs-control-bar"})};n.ga=function(){F.h.ga.call(this);this.a.g("controlsvisible")};n.za=function(){F.h.za.call(this);this.a.g("controlshidden")};n.Za=function(){this.b.style.opacity="1"};function G(a,b){y.call(this,a,b);this.e("click",this.k);this.e("focus",this.la);this.e("blur",this.ka)}t(G,E);n=G.prototype;
G.prototype.v=function(){return"vjs-play-button "+G.h.v.call(this)};G.prototype.k=function(){this.a.play()};function H(a,b){F.call(this,a,b)}t(H,F);H.prototype.L="Play";H.prototype.v=function(){return"vjs-pause-button "+H.h.v.call(this)};H.prototype.k=function(){this.a.pause()};function wa(a,b){F.call(this,a,b);a.e("play",u.bind(this,this.Ka));a.e("pause",u.bind(this,this.Ja))}t(wa,F);n=wa.prototype;n.L="Play";n.v=function(){return"vjs-play-control "+wa.h.v.call(this)}; n.d=function(a,b){b=u.t({className:this.v(),innerHTML:'<div><span class="vjs-control-text">'+(this.K||"Need Text")+"</span></div>",Mb:"button",tabIndex:0},b);return G.h.d.call(this,a,b)};n.k=function(){};n.la=function(){u.e(document,"keyup",u.bind(this,this.aa))};n.aa=function(a){if(32==a.which||13==a.which)a.preventDefault(),this.k()};n.ka=function(){u.j(document,"keyup",u.bind(this,this.aa))};function H(a,b){G.call(this,a,b)}t(H,G);H.prototype.K="Play";
n.k=function(){this.a.paused()?this.a.play():this.a.pause()};n.Ka=function(){u.u(this.b,"vjs-paused");u.m(this.b,"vjs-playing")};n.Ja=function(){u.u(this.b,"vjs-playing");u.m(this.b,"vjs-paused")};function I(a,b){F.call(this,a,b)}t(I,F);I.prototype.L="Fullscreen";I.prototype.v=function(){return"vjs-fullscreen-control "+I.h.v.call(this)};I.prototype.k=function(){this.a.O?na(this.a):this.a.ra()};function J(a,b){F.call(this,a,b);a.e("play",u.bind(this,this.t));a.e("ended",u.bind(this,this.show))} H.prototype.v=function(){return"vjs-play-button "+H.h.v.call(this)};H.prototype.k=function(){this.a.play()};function I(a,b){G.call(this,a,b)}t(I,G);I.prototype.K="Play";I.prototype.v=function(){return"vjs-pause-button "+I.h.v.call(this)};I.prototype.k=function(){this.a.pause()};function xa(a,b){G.call(this,a,b);a.e("play",u.bind(this,this.Ja));a.e("pause",u.bind(this,this.Ia))}t(xa,G);n=xa.prototype;n.K="Play";n.v=function(){return"vjs-play-control "+xa.h.v.call(this)};
t(J,F);J.prototype.d=function(){return J.h.d.call(this,"div",{className:"vjs-big-play-button",innerHTML:"<span></span>"})};J.prototype.k=function(){this.a.currentTime()&&this.a.currentTime(0);this.a.play()}; n.k=function(){this.a.paused()?this.a.play():this.a.pause()};n.Ja=function(){u.u(this.b,"vjs-paused");u.m(this.b,"vjs-playing")};n.Ia=function(){u.u(this.b,"vjs-playing");u.m(this.b,"vjs-paused")};function J(a,b){G.call(this,a,b)}t(J,G);J.prototype.K="Fullscreen";J.prototype.v=function(){return"vjs-fullscreen-control "+J.h.v.call(this)};J.prototype.k=function(){this.a.N?oa(this.a):this.a.qa()};function K(a,b){G.call(this,a,b);a.e("play",u.bind(this,this.s));a.e("ended",u.bind(this,this.show))}
function K(a,b){y.call(this,a,b);a.e("canplay",u.bind(this,this.t));a.e("canplaythrough",u.bind(this,this.t));a.e("playing",u.bind(this,this.t));a.e("seeked",u.bind(this,this.t));a.e("seeking",u.bind(this,this.show));a.e("seeked",u.bind(this,this.t));a.e("error",u.bind(this,this.show));a.e("waiting",u.bind(this,this.show))}t(K,y); t(K,G);K.prototype.d=function(){return K.h.d.call(this,"div",{className:"vjs-big-play-button",innerHTML:"<span></span>"})};K.prototype.k=function(){this.a.currentTime()&&this.a.currentTime(0);this.a.play()};
K.prototype.d=function(){var a,b;"string"==typeof this.a.f().style.WebkitBorderRadius||"string"==typeof this.a.f().style.MozBorderRadius||"string"==typeof this.a.f().style.cc||"string"==typeof this.a.f().style.ec?(a="vjs-loading-spinner",b='<div class="ball1"></div><div class="ball2"></div><div class="ball3"></div><div class="ball4"></div><div class="ball5"></div><div class="ball6"></div><div class="ball7"></div><div class="ball8"></div>'):(a="vjs-loading-spinner-fallback",b="");return K.h.d.call(this, function L(a,b){y.call(this,a,b);a.e("canplay",u.bind(this,this.s));a.e("canplaythrough",u.bind(this,this.s));a.e("playing",u.bind(this,this.s));a.e("seeked",u.bind(this,this.s));a.e("seeking",u.bind(this,this.show));a.e("seeked",u.bind(this,this.s));a.e("error",u.bind(this,this.show));a.e("waiting",u.bind(this,this.show))}t(L,y);
"div",{className:a,innerHTML:b})};function L(a,b){y.call(this,a,b);a.e("timeupdate",u.bind(this,this.ea))}t(L,y);L.prototype.d=function(){var a=L.h.d.call(this,"div",{className:"vjs-current-time vjs-time-controls vjs-control"});this.content=u.d("div",{className:"vjs-current-time-display",innerHTML:"0:00"});a.appendChild(u.d("div").appendChild(this.content));return a};L.prototype.ea=function(){var a=this.a.cb?this.a.n.currentTime:this.a.currentTime();this.content.innerHTML=u.o(a,this.a.duration())}; L.prototype.d=function(){var a,b;"string"==typeof this.a.f().style.WebkitBorderRadius||"string"==typeof this.a.f().style.MozBorderRadius||"string"==typeof this.a.f().style.ac||"string"==typeof this.a.f().style.cc?(a="vjs-loading-spinner",b='<div class="ball1"></div><div class="ball2"></div><div class="ball3"></div><div class="ball4"></div><div class="ball5"></div><div class="ball6"></div><div class="ball7"></div><div class="ball8"></div>'):(a="vjs-loading-spinner-fallback",b="");return L.h.d.call(this,
function M(a,b){y.call(this,a,b);a.e("timeupdate",u.bind(this,this.ea))}t(M,y);M.prototype.d=function(){var a=M.h.d.call(this,"div",{className:"vjs-duration vjs-time-controls vjs-control"});this.content=u.d("div",{className:"vjs-duration-display",innerHTML:"0:00"});a.appendChild(u.d("div").appendChild(this.content));return a};M.prototype.ea=function(){this.a.duration()&&(this.content.innerHTML=u.o(this.a.duration()))};function xa(a,b){y.call(this,a,b)}t(xa,y); "div",{className:a,innerHTML:b})};function M(a,b){y.call(this,a,b);a.e("timeupdate",u.bind(this,this.da))}t(M,y);M.prototype.d=function(){var a=M.h.d.call(this,"div",{className:"vjs-current-time vjs-time-controls vjs-control"});this.content=u.d("div",{className:"vjs-current-time-display",innerHTML:"0:00"});a.appendChild(u.d("div").appendChild(this.content));return a};M.prototype.da=function(){var a=this.a.bb?this.a.n.currentTime:this.a.currentTime();this.content.innerHTML=u.o(a,this.a.duration())};
xa.prototype.d=function(){return xa.h.d.call(this,"div",{className:"vjs-time-divider",innerHTML:"<div><span>/</span></div>"})};function N(a,b){y.call(this,a,b);a.e("timeupdate",u.bind(this,this.ea))}t(N,y);N.prototype.d=function(){var a=N.h.d.call(this,"div",{className:"vjs-remaining-time vjs-time-controls vjs-control"});this.content=u.d("div",{className:"vjs-remaining-time-display",innerHTML:"-0:00"});a.appendChild(u.d("div").appendChild(this.content));return a}; function N(a,b){y.call(this,a,b);a.e("timeupdate",u.bind(this,this.da))}t(N,y);N.prototype.d=function(){var a=N.h.d.call(this,"div",{className:"vjs-duration vjs-time-controls vjs-control"});this.content=u.d("div",{className:"vjs-duration-display",innerHTML:"0:00"});a.appendChild(u.d("div").appendChild(this.content));return a};N.prototype.da=function(){this.a.duration()&&(this.content.innerHTML=u.o(this.a.duration()))};function ya(a,b){y.call(this,a,b)}t(ya,y);
N.prototype.ea=function(){this.a.duration()&&(this.content.innerHTML="-"+u.o(this.a.duration()-this.a.currentTime()))};function O(a,b){y.call(this,a,b);this.tb=this.D[this.options.barName];this.handle=this.D[this.options.handleName];a.e(this.ab,u.bind(this,this.update));this.e("mousedown",this.Ia);this.e("focus",this.ma);this.e("blur",this.la);this.a.e("controlsvisible",u.bind(this,this.update));a.G(u.bind(this,this.update))}t(O,y);n=O.prototype; ya.prototype.d=function(){return ya.h.d.call(this,"div",{className:"vjs-time-divider",innerHTML:"<div><span>/</span></div>"})};function O(a,b){y.call(this,a,b);a.e("timeupdate",u.bind(this,this.da))}t(O,y);O.prototype.d=function(){var a=O.h.d.call(this,"div",{className:"vjs-remaining-time vjs-time-controls vjs-control"});this.content=u.d("div",{className:"vjs-remaining-time-display",innerHTML:"-0:00"});a.appendChild(u.d("div").appendChild(this.content));return a};
n.d=function(a,b){b=u.s({Ob:"slider","aria-valuenow":0,"aria-valuemin":0,"aria-valuemax":100,tabIndex:0},b);return O.h.d.call(this,a,b)};n.Ia=function(a){a.preventDefault();u.ub();u.e(document,"mousemove",u.bind(this,this.na));u.e(document,"mouseup",u.bind(this,this.oa));this.na(a)};n.oa=function(){u.Wb();u.j(document,"mousemove",this.na,j);u.j(document,"mouseup",this.oa,j);this.update()}; O.prototype.da=function(){this.a.duration()&&(this.content.innerHTML="-"+u.o(this.a.duration()-this.a.currentTime()))};function P(a,b){y.call(this,a,b);this.sb=this.D[this.options.barName];this.handle=this.D[this.options.handleName];a.e(this.$a,u.bind(this,this.update));this.e("mousedown",this.Ha);this.e("focus",this.la);this.e("blur",this.ka);this.a.e("controlsvisible",u.bind(this,this.update));z(a,u.bind(this,this.update))}t(P,y);n=P.prototype;
n.update=function(){var a,b=this.Xa(),d=this.handle,e=this.tb;isNaN(b)&&(b=0);a=b;if(d){a=this.b.offsetWidth;var g=d.f().offsetWidth;a=g?g/a:0;b*=1-a;a=b+a/2;d.f().style.left=u.round(100*b,2)+"%"}e.f().style.width=u.round(100*a,2)+"%"};function ya(a,b){var d=a.b,e=u.Ab(d),d=d.offsetWidth,g=a.handle;g&&(g=g.f().offsetWidth,e+=g/2,d-=g);return Math.max(0,Math.min(1,(b.pageX-e)/d))}n.ma=function(){u.e(document,"keyup",u.bind(this,this.ba))}; n.d=function(a,b){b=u.t({Mb:"slider","aria-valuenow":0,"aria-valuemin":0,"aria-valuemax":100,tabIndex:0},b);return P.h.d.call(this,a,b)};n.Ha=function(a){a.preventDefault();u.tb();u.e(document,"mousemove",u.bind(this,this.ma));u.e(document,"mouseup",u.bind(this,this.na));this.ma(a)};n.na=function(){u.Ub();u.j(document,"mousemove",this.ma,k);u.j(document,"mouseup",this.na,k);this.update()};
n.ba=function(a){37==a.which?(a.preventDefault(),this.fb()):39==a.which&&(a.preventDefault(),this.gb())};n.la=function(){u.j(document,"keyup",u.bind(this,this.ba))};function P(a,b){y.call(this,a,b)}t(P,y);P.prototype.options={children:{seekBar:{}}};P.prototype.d=function(){return P.h.d.call(this,"div",{className:"vjs-progress-control vjs-control"})};function Q(a,b){O.call(this,a,b)}t(Q,O);n=Q.prototype; n.update=function(){var a,b=this.Wa(),d=this.handle,e=this.sb;isNaN(b)&&(b=0);a=b;if(d){a=this.b.offsetWidth;var g=d.f().offsetWidth;a=g?g/a:0;b*=1-a;a=b+a/2;d.f().style.left=u.round(100*b,2)+"%"}e.f().style.width=u.round(100*a,2)+"%"};function za(a,b){var d=a.b,e=u.yb(d),d=d.offsetWidth,g=a.handle;g&&(g=g.f().offsetWidth,e+=g/2,d-=g);return Math.max(0,Math.min(1,(b.pageX-e)/d))}n.la=function(){u.e(document,"keyup",u.bind(this,this.aa))};
n.options={children:{loadProgressBar:{},playProgressBar:{},seekHandle:{}},barName:"playProgressBar",handleName:"seekHandle"};n.ab="timeupdate";n.d=function(){return Q.h.d.call(this,"div",{className:"vjs-progress-holder"})};n.Xa=function(){return this.a.currentTime()/this.a.duration()};n.Ia=function(a){Q.h.Ia.call(this,a);this.a.cb=f;this.Xb=!this.a.paused();this.a.pause()};n.na=function(a){a=ya(this,a)*this.a.duration();a==this.a.duration()&&(a-=0.1);this.a.currentTime(a)}; n.aa=function(a){37==a.which?(a.preventDefault(),this.eb()):39==a.which&&(a.preventDefault(),this.fb())};n.ka=function(){u.j(document,"keyup",u.bind(this,this.aa))};function Aa(a,b){y.call(this,a,b)}t(Aa,y);Aa.prototype.options={children:{seekBar:{}}};Aa.prototype.d=function(){return Aa.h.d.call(this,"div",{className:"vjs-progress-control vjs-control"})};function Q(a,b){P.call(this,a,b)}t(Q,P);n=Q.prototype;
n.oa=function(a){Q.h.oa.call(this,a);this.a.cb=j;this.Xb&&this.a.play()};n.gb=function(){this.a.currentTime(this.a.currentTime()+1)};n.fb=function(){this.a.currentTime(this.a.currentTime()-1)};function za(a,b){y.call(this,a,b);a.e("progress",u.bind(this,this.update))}t(za,y);za.prototype.d=function(){return za.h.d.call(this,"div",{className:"vjs-load-progress",innerHTML:'<span class="vjs-control-text">Loaded: 0%</span>'})}; n.options={children:{loadProgressBar:{},playProgressBar:{},seekHandle:{}},barName:"playProgressBar",handleName:"seekHandle"};n.$a="timeupdate";n.d=function(){return Q.h.d.call(this,"div",{className:"vjs-progress-holder"})};n.Wa=function(){return this.a.currentTime()/this.a.duration()};n.Ha=function(a){Q.h.Ha.call(this,a);this.a.bb=f;this.Vb=!this.a.paused();this.a.pause()};n.ma=function(a){a=za(this,a)*this.a.duration();a==this.a.duration()&&(a-=0.1);this.a.currentTime(a)};
za.prototype.update=function(){this.b.style&&(this.b.style.width=u.round(100*la(this.a),2)+"%")};function Aa(a,b){y.call(this,a,b)}t(Aa,y);Aa.prototype.d=function(){return Aa.h.d.call(this,"div",{className:"vjs-play-progress",innerHTML:'<span class="vjs-control-text">Progress: 0%</span>'})};function Ba(a,b){y.call(this,a,b)}t(Ba,y);Ba.prototype.d=function(){return Ba.h.d.call(this,"div",{className:"vjs-seek-handle",innerHTML:'<span class="vjs-control-text">00:00</span>'})}; n.na=function(a){Q.h.na.call(this,a);this.a.bb=k;this.Vb&&this.a.play()};n.fb=function(){this.a.currentTime(this.a.currentTime()+1)};n.eb=function(){this.a.currentTime(this.a.currentTime()-1)};function Ba(a,b){y.call(this,a,b);a.e("progress",u.bind(this,this.update))}t(Ba,y);Ba.prototype.d=function(){return Ba.h.d.call(this,"div",{className:"vjs-load-progress",innerHTML:'<span class="vjs-control-text">Loaded: 0%</span>'})};
function Ca(a,b){y.call(this,a,b)}t(Ca,y);Ca.prototype.options={children:{volumeBar:{}}};Ca.prototype.d=function(){return Ca.h.d.call(this,"div",{className:"vjs-volume-control vjs-control"})};function Da(a,b){O.call(this,a,b)}t(Da,O);n=Da.prototype;n.options={children:{volumeLevel:{},volumeHandle:{}},barName:"volumeLevel",handleName:"volumeHandle"};n.ab="volumechange";n.d=function(){return Da.h.d.call(this,"div",{className:"vjs-volume-bar"})};n.na=function(a){this.a.volume(ya(this,a))};n.Xa=function(){return this.a.volume()}; Ba.prototype.update=function(){this.b.style&&(this.b.style.width=u.round(100*ma(this.a),2)+"%")};function Ca(a,b){y.call(this,a,b)}t(Ca,y);Ca.prototype.d=function(){return Ca.h.d.call(this,"div",{className:"vjs-play-progress",innerHTML:'<span class="vjs-control-text">Progress: 0%</span>'})};function Da(a,b){y.call(this,a,b)}t(Da,y);Da.prototype.d=function(){return Da.h.d.call(this,"div",{className:"vjs-seek-handle",innerHTML:'<span class="vjs-control-text">00:00</span>'})};
n.gb=function(){this.a.volume(this.a.volume()+0.1)};n.fb=function(){this.a.volume(this.a.volume()-0.1)};function Ea(a,b){y.call(this,a,b)}t(Ea,y);Ea.prototype.d=function(){return Ea.h.d.call(this,"div",{className:"vjs-volume-level",innerHTML:'<span class="vjs-control-text"></span>'})};function Fa(a,b){y.call(this,a,b)}t(Fa,y);Fa.prototype.d=function(){return Fa.h.d.call(this,"div",{className:"vjs-volume-handle",innerHTML:'<span class="vjs-control-text"></span>'})}; function Ea(a,b){y.call(this,a,b)}t(Ea,y);Ea.prototype.options={children:{volumeBar:{}}};Ea.prototype.d=function(){return Ea.h.d.call(this,"div",{className:"vjs-volume-control vjs-control"})};function Fa(a,b){P.call(this,a,b)}t(Fa,P);n=Fa.prototype;n.options={children:{volumeLevel:{},volumeHandle:{}},barName:"volumeLevel",handleName:"volumeHandle"};n.$a="volumechange";n.d=function(){return Fa.h.d.call(this,"div",{className:"vjs-volume-bar"})};n.ma=function(a){this.a.volume(za(this,a))};n.Wa=function(){return this.a.volume()};
function R(a,b){F.call(this,a,b);a.e("volumechange",u.bind(this,this.update))}t(R,F);R.prototype.d=function(){return R.h.d.call(this,"div",{className:"vjs-mute-control vjs-control",innerHTML:'<div><span class="vjs-control-text">Mute</span></div>'})};R.prototype.k=function(){this.a.muted(this.a.muted()?j:f)};R.prototype.update=function(){var a=this.a.volume(),b=3;0===a||this.a.muted()?b=0:0.33>a?b=1:0.67>a&&(b=2);for(a=0;4>a;a++)u.u(this.b,"vjs-vol-"+a);u.m(this.b,"vjs-vol-"+b)}; n.fb=function(){this.a.volume(this.a.volume()+0.1)};n.eb=function(){this.a.volume(this.a.volume()-0.1)};function Ga(a,b){y.call(this,a,b)}t(Ga,y);Ga.prototype.d=function(){return Ga.h.d.call(this,"div",{className:"vjs-volume-level",innerHTML:'<span class="vjs-control-text"></span>'})};function Ha(a,b){y.call(this,a,b)}t(Ha,y);Ha.prototype.d=function(){return Ha.h.d.call(this,"div",{className:"vjs-volume-handle",innerHTML:'<span class="vjs-control-text"></span>'})};
function Ga(a,b){F.call(this,a,b);this.a.options.poster||this.t();a.e("play",u.bind(this,this.t))}t(Ga,F);Ga.prototype.d=function(){var a=u.d("img",{className:"vjs-poster",tabIndex:-1});this.a.options.poster&&(a.src=this.a.options.poster);return a};Ga.prototype.k=function(){this.a.play()};function S(a,b){y.call(this,a,b)}t(S,y);function Ha(a,b){a.C(b);b.e("click",u.bind(a,function(){ga(this)}))}S.prototype.d=function(){return S.h.d.call(this,"ul",{className:"vjs-menu"})}; function R(a,b){G.call(this,a,b);a.e("volumechange",u.bind(this,this.update))}t(R,G);R.prototype.d=function(){return R.h.d.call(this,"div",{className:"vjs-mute-control vjs-control",innerHTML:'<div><span class="vjs-control-text">Mute</span></div>'})};R.prototype.k=function(){this.a.muted(this.a.muted()?k:f)};R.prototype.update=function(){var a=this.a.volume(),b=3;0===a||this.a.muted()?b=0:0.33>a?b=1:0.67>a&&(b=2);for(a=0;4>a;a++)u.u(this.b,"vjs-vol-"+a);u.m(this.b,"vjs-vol-"+b)};
function T(a,b){F.call(this,a,b);b.selected&&this.m("vjs-selected")}t(T,F);T.prototype.d=function(a,b){return T.h.d.call(this,"li",u.s({className:"vjs-menu-item",innerHTML:this.options.label},b))};T.prototype.k=function(){this.selected(f)};T.prototype.selected=function(a){a?this.m("vjs-selected"):this.u("vjs-selected")};function U(a,b,d){y.call(this,a,b,d)}t(U,y);U.prototype.k=function(){this.a.options.controls&&(this.a.paused()?this.a.play():this.a.pause())};u.media={};u.media.ua="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 Ia(a,b){G.call(this,a,b);this.a.options.poster||this.s();a.e("play",u.bind(this,this.s))}t(Ia,G);Ia.prototype.d=function(){var a=u.d("img",{className:"vjs-poster",tabIndex:-1});this.a.options.poster&&(a.src=this.a.options.poster);return a};Ia.prototype.k=function(){this.a.play()};function S(a,b){y.call(this,a,b)}t(S,y);function Ja(a,b){a.C(b);b.e("click",u.bind(a,function(){ha(this)}))}S.prototype.d=function(){return S.h.d.call(this,"ul",{className:"vjs-menu"})};
function Ia(){var a=u.media.ua[i];return function(){throw Error('The "'+a+"\" method is not available on the playback technology's API");}}for(var i=u.media.ua.length-1;0<=i;i--)U.prototype[u.media.ua[i]]=Ia();function V(a,b,d){y.call(this,a,b,d);(b=b.source)&&this.b.currentSrc==b.src?a.g("loadstart"):b&&(this.b.src=b.src);a.G(function(){this.options.autoplay&&this.paused()&&(this.H.poster=h,this.play())});this.e("click",this.k);for(a=Ja.length-1;0<=a;a--)u.e(this.b,Ja[a],u.bind(this.a,this.Ta));z(this)}t(V,U);n=V.prototype;n.l=function(){for(var a=Ja.length-1;0<=a;a--)u.j(this.b,Ja[a],u.bind(this.a,this.Ta));V.h.l.call(this)}; function T(a,b){G.call(this,a,b);b.selected&&this.m("vjs-selected")}t(T,G);T.prototype.d=function(a,b){return T.h.d.call(this,"li",u.t({className:"vjs-menu-item",innerHTML:this.options.label},b))};T.prototype.k=function(){this.selected(f)};T.prototype.selected=function(a){a?this.m("vjs-selected"):this.u("vjs-selected")};function U(a,b,d){y.call(this,a,b,d)}t(U,y);U.prototype.k=function(){this.a.options.controls&&(this.a.paused()?this.a.play():this.a.pause())};u.media={};u.media.ta="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(" ");
n.d=function(){var a=this.a,b=a.H;if(!b||this.F.Gb===j)b&&a.f().removeChild(b),b=u.createElement("video",{id:b.id||a.id+"_html5_api",className:b.className||"vjs-tech"}),u.$(b,a.f);for(var d=["autoplay","preload","loop","muted"],e=d.length-1;0<=e;e--){var g=d[e];a.options[g]!==h&&(b[g]=a.options[g])}return b};n.Ta=function(a){this.g(a);a.stopPropagation()};n.play=function(){this.b.play()};n.pause=function(){this.b.pause()};n.paused=function(){return this.b.paused};n.currentTime=function(){return this.b.currentTime}; function Ka(){var a=u.media.ta[i];return function(){throw Error('The "'+a+"\" method is not available on the playback technology's API");}}for(var i=u.media.ta.length-1;0<=i;i--)U.prototype[u.media.ta[i]]=Ka();function V(a,b,d){y.call(this,a,b,d);(b=b.source)&&this.b.currentSrc==b.src?a.g("loadstart"):b&&(this.b.src=b.src);z(a,function(){this.options.autoplay&&this.paused()&&(this.G.poster=h,this.play())});this.e("click",this.k);for(a=La.length-1;0<=a;a--)u.e(this.b,La[a],u.bind(this.a,this.Sa));A(this)}t(V,U);n=V.prototype;n.l=function(){for(var a=La.length-1;0<=a;a--)u.j(this.b,La[a],u.bind(this.a,this.Sa));V.h.l.call(this)};
n.Qb=function(a){try{this.b.currentTime=a}catch(b){u.log(b,"Video is not ready. (Video.js)")}};n.duration=function(){return this.b.duration||0};n.buffered=function(){return this.b.buffered};n.volume=function(){return this.b.volume};n.Vb=function(a){this.b.volume=a};n.muted=function(){return this.b.muted};n.Tb=function(a){this.b.muted=a};n.width=function(){return this.b.offsetWidth};n.height=function(){return this.b.offsetHeight}; n.d=function(){var a=this.a,b=a.G;if(!b||this.F.Eb===k)b&&a.f().removeChild(b),b=u.createElement("video",{id:b.id||a.id+"_html5_api",className:b.className||"vjs-tech"}),u.Z(b,a.f);for(var d=["autoplay","preload","loop","muted"],e=d.length-1;0<=e;e--){var g=d[e];a.options[g]!==h&&(b[g]=a.options[g])}return b};n.Sa=function(a){this.g(a);a.stopPropagation()};n.play=function(){this.b.play()};n.pause=function(){this.b.pause()};n.paused=function(){return this.b.paused};n.currentTime=function(){return this.b.currentTime};
n.ta=function(){return"function"==typeof this.b.webkitEnterFullScreen&&!navigator.userAgent.match("Chrome")&&!navigator.userAgent.match("Mac OS X 10.5")?f:j};n.src=function(a){this.b.src=a};n.load=function(){this.b.load()};n.currentSrc=function(){return this.b.currentSrc};n.ca=function(){return this.b.ca};n.Ub=function(a){this.b.ca=a};n.autoplay=function(){return this.b.autoplay};n.Pb=function(a){this.b.autoplay=a};n.loop=function(){return this.b.loop};n.Sb=function(a){this.b.loop=a};n.error=function(){return this.b.error}; n.Ob=function(a){try{this.b.currentTime=a}catch(b){u.log(b,"Video is not ready. (Video.js)")}};n.duration=function(){return this.b.duration||0};n.buffered=function(){return this.b.buffered};n.volume=function(){return this.b.volume};n.Tb=function(a){this.b.volume=a};n.muted=function(){return this.b.muted};n.Rb=function(a){this.b.muted=a};n.width=function(){return this.b.offsetWidth};n.height=function(){return this.b.offsetHeight};
n.controls=function(){return this.a.options.controls};var Ja="loadstart suspend abort error emptied stalled loadedmetadata loadeddata canplay canplaythrough playing waiting seeking seeked ended durationchange timeupdate progress play pause ratechange volumechange".split(" ");V.prototype.F={kc:u.qb.webkitEnterFullScreen?!u.A.match("Chrome")&&!u.A.match("Mac OS X 10.5")?f:j:j,Gb:!u.mb}; n.sa=function(){return"function"==typeof this.b.webkitEnterFullScreen&&!navigator.userAgent.match("Chrome")&&!navigator.userAgent.match("Mac OS X 10.5")?f:k};n.src=function(a){this.b.src=a};n.load=function(){this.b.load()};n.currentSrc=function(){return this.b.currentSrc};n.ba=function(){return this.b.ba};n.Sb=function(a){this.b.ba=a};n.autoplay=function(){return this.b.autoplay};n.Nb=function(a){this.b.autoplay=a};n.loop=function(){return this.b.loop};n.Qb=function(a){this.b.loop=a};n.error=function(){return this.b.error};
u.kb&&3>u.jb&&(document.createElement("video").constructor.prototype.canPlayType=function(a){return a&&-1!=a.toLowerCase().indexOf("video/mp4")?"maybe":""});function W(a,b,d){y.call(this,a,b,d);var e=b.source,g=b.Lb;d=this.b=u.d("div",{id:a.id()+"_temp_flash"});var q=a.id()+"_flash_api";a=a.options;var m=u.s({readyFunction:"videojs.Flash.onReady",eventProxyFunction:"videojs.Flash.onEvent",errorEventProxyFunction:"videojs.Flash.onError",autoplay:a.autoplay,preload:a.ca,loop:a.loop,muted:a.muted},b.flashVars),r=u.s({wmode:"opaque",bgcolor:"#000000"},b.params),p=u.s({id:q,name:q,"class":"vjs-tech"},b.attributes);e&&(m.src=encodeURIComponent(u.ia(e.src))); n.controls=function(){return this.a.options.controls};var La="loadstart suspend abort error emptied stalled loadedmetadata loadeddata canplay canplaythrough playing waiting seeking seeked ended durationchange timeupdate progress play pause ratechange volumechange".split(" ");V.prototype.F={ic:u.pb.webkitEnterFullScreen?!u.A.match("Chrome")&&!u.A.match("Mac OS X 10.5")?f:k:k,Eb:!u.lb};
u.$(d,g);b.startTime&&this.G(function(){this.load();this.play();this.currentTime(b.startTime)});if(b.nc===f&&!u.lb){var w=u.d("iframe",{id:q+"_iframe",name:q+"_iframe",className:"vjs-tech",scrolling:"no",marginWidth:0,marginHeight:0,frameBorder:0});m.readyFunction="ready";m.eventProxyFunction="events";m.errorEventProxyFunction="errors";u.e(w,"load",u.bind(this,function(){var a,d=w.contentWindow;a=w.contentDocument?w.contentDocument:w.contentWindow.document;a.write(Ka(b.swf,m,r,p));d.a=this.a;d.G= u.jb&&3>u.ib&&(document.createElement("video").constructor.prototype.canPlayType=function(a){return a&&-1!=a.toLowerCase().indexOf("video/mp4")?"maybe":""});function W(a,b,d){y.call(this,a,b,d);var e=b.source,g=b.Jb;d=this.b=u.d("div",{id:a.id()+"_temp_flash"});var p=a.id()+"_flash_api";a=a.options;var j=u.t({readyFunction:"videojs.Flash.onReady",eventProxyFunction:"videojs.Flash.onEvent",errorEventProxyFunction:"videojs.Flash.onError",autoplay:a.autoplay,preload:a.ba,loop:a.loop,muted:a.muted},b.flashVars),r=u.t({wmode:"opaque",bgcolor:"#000000"},b.params),q=u.t({id:p,name:p,"class":"vjs-tech"},b.attributes);e&&(j.src=encodeURIComponent(u.ha(e.src)));
u.bind(this.a,function(b){b=a.getElementById(b);var d=this.i;d.f=b;u.e(b,"click",d.bind(d.k));La(d)});d.zb=u.bind(this.a,function(a,b){this&&"flash"===this.Q&&this.g(b)});d.jc=u.bind(this.a,function(a,b){u.log("Flash Error",b)})}));d.parentNode.replaceChild(w,d)}else{a=Ka(b.swf,m,r,p);a=u.d("div",{innerHTML:a}).childNodes[0];e=d.parentNode;d.parentNode.replaceChild(a,d);var eb=e.childNodes[0];setTimeout(function(){eb.style.display="block"},1E3)}}t(W,U);n=W.prototype;n.l=function(){W.h.l.call(this)}; u.Z(d,g);b.startTime&&z(this,function(){this.load();this.play();this.currentTime(b.startTime)});if(b.lc===f&&!u.kb){var w=u.d("iframe",{id:p+"_iframe",name:p+"_iframe",className:"vjs-tech",scrolling:"no",marginWidth:0,marginHeight:0,frameBorder:0});j.readyFunction="ready";j.eventProxyFunction="events";j.errorEventProxyFunction="errors";u.e(w,"load",u.bind(this,function(){var a,d=w.contentWindow;a=w.contentDocument?w.contentDocument:w.contentWindow.document;a.write(Ma(b.swf,j,r,q));d.player=this.a;
n.play=function(){this.b.vjs_play()};n.pause=function(){this.b.vjs_pause()};n.src=function(a){a=u.ia(a);this.b.vjs_src(a);if(this.a.autoplay()){var b=this;setTimeout(function(){b.play()},0)}};n.load=function(){this.b.vjs_load()};n.poster=function(){this.b.vjs_getProperty("poster")};n.buffered=function(){return u.ya(this.b.vjs_getProperty("buffered"))};n.ta=l(j); d.ready=u.bind(this.a,function(b){b=a.getElementById(b);var d=this.i;d.b=b;u.e(b,"click",d.bind(d.k));Na(d)});d.events=u.bind(this.a,function(a,b){this&&"flash"===this.P&&this.g(b)});d.errors=u.bind(this.a,function(a,b){u.log("Flash Error",b)})}));d.parentNode.replaceChild(w,d)}else{a=Ma(b.swf,j,r,q);a=u.d("div",{innerHTML:a}).childNodes[0];e=d.parentNode;d.parentNode.replaceChild(a,d);var gb=e.childNodes[0];setTimeout(function(){gb.style.display="block"},1E3)}}t(W,U);n=W.prototype;n.l=function(){W.h.l.call(this)};
var Ma=W.prototype,Na="preload currentTime defaultPlaybackRate playbackRate autoplay loop mediaGroup controller controls volume muted defaultMuted".split(" "),Oa="error currentSrc networkState readyState seeking initialTime duration startOffsetTime paused played seekable ended videoTracks audioTracks videoWidth videoHeight textTracks".split(" ");function Pa(){var a=Na[i],b=a.charAt(0).toUpperCase()+a.slice(1);Ma["set"+b]=function(b){return this.b.vjs_setProperty(a,b)}} n.play=function(){this.b.vjs_play()};n.pause=function(){this.b.vjs_pause()};n.src=function(a){a=u.ha(a);this.b.vjs_src(a);if(this.a.autoplay()){var b=this;setTimeout(function(){b.play()},0)}};n.load=function(){this.b.vjs_load()};n.poster=function(){this.b.vjs_getProperty("poster")};n.buffered=function(){return u.xa(this.b.vjs_getProperty("buffered"))};n.sa=m(k);
function Qa(a){Ma[a]=function(){return this.b.vjs_getProperty(a)}}for(i=0;i<Na.length;i++)Qa(Na[i]),Pa();for(i=0;i<Oa.length;i++)Qa(Oa[i]);W.prototype.F={Bb:{"video/flv":"FLV","video/x-flv":"FLV","video/mp4":"MP4","video/m4v":"MP4"},bb:j,hb:j,Wa:j,qc:!u.A.match("Firefox")};W.onReady=function(a){a=u.f(a);var b=a.a||a.parentNode.a,d=b.i;a.a=b;d.b=a;d.e("click",d.k);La(d)};function La(a){a.f().vjs_getProperty?z(a):setTimeout(function(){La(a)},50)}W.onEvent=function(a,b){u.f(a).a.g(b)}; var Oa=W.prototype,Pa="preload currentTime defaultPlaybackRate playbackRate autoplay loop mediaGroup controller controls volume muted defaultMuted".split(" "),Qa="error currentSrc networkState readyState seeking initialTime duration startOffsetTime paused played seekable ended videoTracks audioTracks videoWidth videoHeight textTracks".split(" ");function Ra(){var a=Pa[i],b=a.charAt(0).toUpperCase()+a.slice(1);Oa["set"+b]=function(b){return this.b.vjs_setProperty(a,b)}}
W.onError=function(a,b){u.f(a).a.g("error");u.log("Flash Error",b,a)};function Ka(a,b,d,e){var g="",q="",m="";b&&u.Y(b,function(a,b){g+=a+"="+b+"&amp;"});d=u.s({movie:a,flashvars:g,allowScriptAccess:"always",allowNetworking:"all"},d);u.Y(d,function(a,b){q+='<param name="'+a+'" value="'+b+'" />'});e=u.s({data:a,width:"100%",height:"100%"},e);u.Y(e,function(a,b){m+=a+'="'+b+'" '});return'<object type="application/x-shockwave-flash"'+m+">"+q+"</object>"};function X(a){a.da=a.da||[];return a.da}function Ra(a,b,d){for(var e=a.da,g=0,q=e.length,m,r;g<q;g++)m=e[g],m.id()===b?(m.show(),r=m):d&&(m.w()==d&&0<m.mode())&&m.disable();(b=r?r.w():d?d:j)&&a.g(b+"trackchange")}function Y(a,b){y.call(this,a,b);this.K=b.id||"vjs_"+b.kind+"_"+b.language+"_"+u.p++;this.eb=b.src;this.wb=b["default"]||b.dflt;this.tc=b.title;this.oc=b.srclang;this.Eb=b.label;this.S=[];this.Oa=[];this.W=this.X=0}t(Y,y);n=Y.prototype;n.w=k("r");n.src=k("eb");n.za=k("wb");n.label=k("Eb"); function Sa(a){Oa[a]=function(){return this.b.vjs_getProperty(a)}}for(i=0;i<Pa.length;i++)Sa(Pa[i]),Ra();for(i=0;i<Qa.length;i++)Sa(Qa[i]);W.prototype.F={zb:{"video/flv":"FLV","video/x-flv":"FLV","video/mp4":"MP4","video/m4v":"MP4"},ab:k,gb:k,Va:k,oc:!u.A.match("Firefox")};W.onReady=function(a){a=u.f(a);var b=a.player||a.parentNode.player,d=b.i;a.player=b;d.b=a;d.e("click",d.k);Na(d)};function Na(a){a.f().vjs_getProperty?A(a):setTimeout(function(){Na(a)},50)}W.onEvent=function(a,b){u.f(a).player.g(b)};
n.readyState=k("X");n.mode=k("W");n.d=function(){return Y.h.d.call(this,"div",{className:"vjs-"+this.r+" vjs-text-track"})};n.show=function(){Sa(this);this.W=2;Y.h.show.call(this)};n.t=function(){Sa(this);this.W=1;Y.h.t.call(this)};n.disable=function(){2==this.W&&this.t();this.a.j("timeupdate",u.bind(this,this.update,this.K));this.a.j("ended",u.bind(this,this.reset,this.K));this.reset();this.a.D.textTrackDisplay.removeChild(this);this.W=0}; W.onError=function(a,b){u.f(a).player.g("error");u.log("Flash Error",b,a)};function Ma(a,b,d,e){var g="",p="",j="";b&&u.S(b,function(a,b){g+=a+"="+b+"&amp;"});d=u.t({movie:a,flashvars:g,allowScriptAccess:"always",allowNetworking:"all"},d);u.S(d,function(a,b){p+='<param name="'+a+'" value="'+b+'" />'});e=u.t({data:a,width:"100%",height:"100%"},e);u.S(e,function(a,b){j+=a+'="'+b+'" '});return'<object type="application/x-shockwave-flash"'+j+">"+p+"</object>"};function X(a){a.ca=a.ca||[];return a.ca}function Ta(a,b,d){for(var e=a.ca,g=0,p=e.length,j,r;g<p;g++)j=e[g],j.id()===b?(j.show(),r=j):d&&(j.w()==d&&0<j.mode())&&j.disable();(b=r?r.w():d?d:k)&&a.g(b+"trackchange")}function Y(a,b){y.call(this,a,b);this.J=b.id||"vjs_"+b.kind+"_"+b.language+"_"+u.p++;this.cb=b.src;this.vb=b["default"]||b.dflt;this.sc=b.title;this.mc=b.srclang;this.Cb=b.label;this.R=[];this.Na=[];this.W=this.X=0}t(Y,y);n=Y.prototype;n.w=l("r");n.src=l("cb");n.ya=l("vb");n.label=l("Cb");
function Sa(a){0===a.X&&a.load();0===a.W&&(a.a.e("timeupdate",u.bind(a,a.update,a.K)),a.a.e("ended",u.bind(a,a.reset,a.K)),("captions"===a.r||"subtitles"===a.r)&&a.a.D.textTrackDisplay.C(a))}n.load=function(){0===this.X&&(this.X=1,u.get(this.eb,u.bind(this,this.Mb),u.bind(this,this.Ha)))};n.Ha=function(a){this.error=a;this.X=3;this.g("error")}; n.readyState=l("X");n.mode=l("W");n.d=function(){return Y.h.d.call(this,"div",{className:"vjs-"+this.r+" vjs-text-track"})};n.show=function(){Ua(this);this.W=2;Y.h.show.call(this)};n.s=function(){Ua(this);this.W=1;Y.h.s.call(this)};n.disable=function(){2==this.W&&this.s();this.a.j("timeupdate",u.bind(this,this.update,this.J));this.a.j("ended",u.bind(this,this.reset,this.J));this.reset();this.a.D.textTrackDisplay.removeChild(this);this.W=0};
n.Mb=function(a){var b,d;a=a.split("\n");for(var e="",g=1,q=a.length;g<q;g++)if(e=u.trim(a[g])){-1==e.indexOf("--\x3e")?(b=e,e=u.trim(a[++g])):b=this.S.length;b={id:b,index:this.S.length};d=e.split(" --\x3e ");b.startTime=Ta(d[0]);b.Z=Ta(d[1]);for(d=[];a[++g]&&(e=u.trim(a[g]));)d.push(e);b.text=d.join("<br/>");this.S.push(b)}this.X=2;this.g("loaded")}; function Ua(a){0===a.X&&a.load();0===a.W&&(a.a.e("timeupdate",u.bind(a,a.update,a.J)),a.a.e("ended",u.bind(a,a.reset,a.J)),("captions"===a.r||"subtitles"===a.r)&&a.a.D.textTrackDisplay.C(a))}n.load=function(){0===this.X&&(this.X=1,u.get(this.cb,u.bind(this,this.Kb),u.bind(this,this.Ga)))};n.Ga=function(a){this.error=a;this.X=3;this.g("error")};
function Ta(a){var b=a.split(":");a=0;var d,e,g;3==b.length?(d=b[0],e=b[1],b=b[2]):(d=0,e=b[0],b=b[1]);b=b.split(/\s+/);b=b.splice(0,1)[0];b=b.split(/\.|,/);g=parseFloat(b[1]);b=b[0];a+=3600*parseFloat(d);a+=60*parseFloat(e);a+=parseFloat(b);g&&(a+=g/1E3);return a} n.Kb=function(a){var b,d;a=a.split("\n");for(var e="",g=1,p=a.length;g<p;g++)if(e=u.trim(a[g])){-1==e.indexOf("--\x3e")?(b=e,e=u.trim(a[++g])):b=this.R.length;b={id:b,index:this.R.length};d=e.split(" --\x3e ");b.startTime=Va(d[0]);b.Y=Va(d[1]);for(d=[];a[++g]&&(e=u.trim(a[g]));)d.push(e);b.text=d.join("<br/>");this.R.push(b)}this.X=2;this.g("loaded")};
n.update=function(){if(0<this.S.length){var a=this.a.currentTime();if(this.La===c||a<this.La||this.ka<=a){var b=this.S,d=this.a.duration(),e=0,g=j,q=[],m,r,p,w;a>=this.ka||this.ka===c?w=this.Ba!==c?this.Ba:0:(g=f,w=this.Ea!==c?this.Ea:b.length-1);for(;;){p=b[w];if(p.Z<=a)e=Math.max(e,p.Z),p.fa&&(p.fa=j);else if(a<p.startTime){if(d=Math.min(d,p.startTime),p.fa&&(p.fa=j),!g)break}else g?(q.splice(0,0,p),r===c&&(r=w),m=w):(q.push(p),m===c&&(m=w),r=w),d=Math.min(d,p.Z),e=Math.max(e,p.startTime),p.fa= function Va(a){var b=a.split(":");a=0;var d,e,g;3==b.length?(d=b[0],e=b[1],b=b[2]):(d=0,e=b[0],b=b[1]);b=b.split(/\s+/);b=b.splice(0,1)[0];b=b.split(/\.|,/);g=parseFloat(b[1]);b=b[0];a+=3600*parseFloat(d);a+=60*parseFloat(e);a+=parseFloat(b);g&&(a+=g/1E3);return a}
f;if(g)if(0===w)break;else w--;else if(w===b.length-1)break;else w++}this.Oa=q;this.ka=d;this.La=e;this.Ba=m;this.Ea=r;a=this.Oa;b="";d=0;for(e=a.length;d<e;d++)b+='<span class="vjs-tt-cue">'+a[d].text+"</span>";this.b.innerHTML=b;this.g("cuechange")}}};n.reset=function(){this.ka=0;this.La=this.a.duration();this.Ea=this.Ba=0};function Ua(a,b){Y.call(this,a,b)}t(Ua,Y);Ua.prototype.r="captions";function Va(a,b){Y.call(this,a,b)}t(Va,Y);Va.prototype.r="subtitles";function Wa(a,b){Y.call(this,a,b)} n.update=function(){if(0<this.R.length){var a=this.a.currentTime();if(this.Ka===c||a<this.Ka||this.ja<=a){var b=this.R,d=this.a.duration(),e=0,g=k,p=[],j,r,q,w;a>=this.ja||this.ja===c?w=this.Aa!==c?this.Aa:0:(g=f,w=this.Da!==c?this.Da:b.length-1);for(;;){q=b[w];if(q.Y<=a)e=Math.max(e,q.Y),q.ea&&(q.ea=k);else if(a<q.startTime){if(d=Math.min(d,q.startTime),q.ea&&(q.ea=k),!g)break}else g?(p.splice(0,0,q),r===c&&(r=w),j=w):(p.push(q),j===c&&(j=w),r=w),d=Math.min(d,q.Y),e=Math.max(e,q.startTime),q.ea=
t(Wa,Y);Wa.prototype.r="chapters";function Xa(a,b,d){y.call(this,a,b,d);if(a.options.tracks&&0<a.options.tracks.length){b=this.a;a=a.options.tracks;var e;for(d=0;d<a.length;d++){e=a[d];var g=b,q=e.kind,m=e.label,r=e.language,p=e;e=g.da=g.da||[];p=p||{};p.kind=q;p.label=m;p.language=r;q=u.I(q||"subtitles");g=new window.videojs[q+"Track"](g,p);e.push(g)}}}t(Xa,y);Xa.prototype.d=function(){return Xa.h.d.call(this,"div",{className:"vjs-text-track-display"})}; f;if(g)if(0===w)break;else w--;else if(w===b.length-1)break;else w++}this.Na=p;this.ja=d;this.Ka=e;this.Aa=j;this.Da=r;a=this.Na;b="";d=0;for(e=a.length;d<e;d++)b+='<span class="vjs-tt-cue">'+a[d].text+"</span>";this.b.innerHTML=b;this.g("cuechange")}}};n.reset=function(){this.ja=0;this.Ka=this.a.duration();this.Da=this.Aa=0};function Wa(a,b){Y.call(this,a,b)}t(Wa,Y);Wa.prototype.r="captions";function Xa(a,b){Y.call(this,a,b)}t(Xa,Y);Xa.prototype.r="subtitles";function Ya(a,b){Y.call(this,a,b)}
function Z(a,b){var d=this.R=b.track;b.label=d.label();b.selected=d.za();T.call(this,a,b);this.a.e(d.w()+"trackchange",u.bind(this,this.update))}t(Z,T);Z.prototype.k=function(){Z.h.k.call(this);Ra(this.a,this.R.id(),this.R.w())};Z.prototype.update=function(){2==this.R.mode()?this.selected(f):this.selected(j)};function Ya(a,b){b.track={w:function(){return b.kind},a:a,label:l("Off"),za:l(j),mode:l(j)};Z.call(this,a,b)}t(Ya,Z);Ya.prototype.k=function(){Ya.h.k.call(this);Ra(this.a,this.R.id(),this.R.w())}; t(Ya,Y);Ya.prototype.r="chapters";function Za(a,b,d){y.call(this,a,b,d);if(a.options.tracks&&0<a.options.tracks.length){b=this.a;a=a.options.tracks;var e;for(d=0;d<a.length;d++){e=a[d];var g=b,p=e.kind,j=e.label,r=e.language,q=e;e=g.ca=g.ca||[];q=q||{};q.kind=p;q.label=j;q.language=r;p=u.H(p||"subtitles");g=new window.videojs[p+"Track"](g,q);e.push(g)}}}t(Za,y);Za.prototype.d=function(){return Za.h.d.call(this,"div",{className:"vjs-text-track-display"})};
Ya.prototype.update=function(){for(var a=X(this.a),b=0,d=a.length,e,g=f;b<d;b++)e=a[b],e.w()==this.R.w()&&2==e.mode()&&(g=j);g?this.selected(f):this.selected(j)};function $(a,b){F.call(this,a,b);this.V=this.xa();0===this.aa.length&&this.t()}t($,F);n=$.prototype;n.xa=function(){var a=new S(this.a);a.f().appendChild(u.d("li",{className:"vjs-menu-title",innerHTML:u.I(this.r)}));Ha(a,new Ya(this.a,{kind:this.r}));this.aa=this.Ra();for(var b=0;b<this.aa.length;b++)Ha(a,this.aa[b]);this.C(a);return a}; function Z(a,b){var d=this.Q=b.track;b.label=d.label();b.selected=d.ya();T.call(this,a,b);this.a.e(d.w()+"trackchange",u.bind(this,this.update))}t(Z,T);Z.prototype.k=function(){Z.h.k.call(this);Ta(this.a,this.Q.id(),this.Q.w())};Z.prototype.update=function(){2==this.Q.mode()?this.selected(f):this.selected(k)};function $a(a,b){b.track={w:function(){return b.kind},pc:a,label:m("Off"),ya:m(k),mode:m(k)};Z.call(this,a,b)}t($a,Z);$a.prototype.k=function(){$a.h.k.call(this);Ta(this.a,this.Q.id(),this.Q.w())};
n.Ra=function(){for(var a=[],b,d=0;d<X(this.a).length;d++)b=X(this.a)[d],b.w()===this.r&&a.push(new Z(this.a,{track:b}));return a};n.v=function(){return this.className+" vjs-menu-button "+$.h.v.call(this)};n.ma=function(){this.V.$a();u.z(this.V.b.childNodes[this.V.b.childNodes.length-1],"blur",u.bind(this,function(){ga(this.V)}))};n.la=function(){};n.k=function(){this.z("mouseout",u.bind(this,function(){ga(this.V);this.b.blur()}))};function Za(a,b){$.call(this,a,b)}t(Za,$);Za.prototype.r="captions"; $a.prototype.update=function(){for(var a=X(this.a),b=0,d=a.length,e,g=f;b<d;b++)e=a[b],e.w()==this.Q.w()&&2==e.mode()&&(g=k);g?this.selected(f):this.selected(k)};function $(a,b){G.call(this,a,b);this.V=this.wa();0===this.$.length&&this.s()}t($,G);n=$.prototype;n.wa=function(){var a=new S(this.a);a.f().appendChild(u.d("li",{className:"vjs-menu-title",innerHTML:u.H(this.r)}));Ja(a,new $a(this.a,{kind:this.r}));this.$=this.Qa();for(var b=0;b<this.$.length;b++)Ja(a,this.$[b]);this.C(a);return a};
Za.prototype.L="Captions";Za.prototype.className="vjs-captions-button";function $a(a,b){$.call(this,a,b)}t($a,$);$a.prototype.r="subtitles";$a.prototype.L="Subtitles";$a.prototype.className="vjs-subtitles-button";function ab(a,b){$.call(this,a,b)}t(ab,$);n=ab.prototype;n.r="chapters";n.L="Chapters";n.className="vjs-chapters-button";n.Ra=function(){for(var a=[],b,d=0;d<X(this.a).length;d++)b=X(this.a)[d],b.w()===this.r&&a.push(new Z(this.a,{track:b}));return a}; n.Qa=function(){for(var a=[],b,d=0;d<X(this.a).length;d++)b=X(this.a)[d],b.w()===this.r&&a.push(new Z(this.a,{track:b}));return a};n.v=function(){return this.className+" vjs-menu-button "+$.h.v.call(this)};n.la=function(){this.V.Za();u.z(this.V.b.childNodes[this.V.b.childNodes.length-1],"blur",u.bind(this,function(){ha(this.V)}))};n.ka=function(){};n.k=function(){this.z("mouseout",u.bind(this,function(){ha(this.V);this.b.blur()}))};function ab(a,b){$.call(this,a,b)}t(ab,$);ab.prototype.r="captions";
n.xa=function(){for(var a=X(this.a),b=0,d=a.length,e,g,q=this.aa=[];b<d;b++)if(e=a[b],e.w()==this.r&&e.za()){if(2>e.readyState()){this.gc=e;e.e("loaded",u.bind(this,this.xa));return}g=e;break}a=this.V=new S(this.a);a.b.appendChild(u.d("li",{className:"vjs-menu-title",innerHTML:u.I(this.r)}));if(g){e=g.S;for(var m,b=0,d=e.length;b<d;b++)m=e[b],m=new bb(this.a,{track:g,cue:m}),q.push(m),a.C(m)}this.C(a);0<this.aa.length&&this.show();return a}; ab.prototype.K="Captions";ab.prototype.className="vjs-captions-button";function bb(a,b){$.call(this,a,b)}t(bb,$);bb.prototype.r="subtitles";bb.prototype.K="Subtitles";bb.prototype.className="vjs-subtitles-button";function cb(a,b){$.call(this,a,b)}t(cb,$);n=cb.prototype;n.r="chapters";n.K="Chapters";n.className="vjs-chapters-button";n.Qa=function(){for(var a=[],b,d=0;d<X(this.a).length;d++)b=X(this.a)[d],b.w()===this.r&&a.push(new Z(this.a,{track:b}));return a};
function bb(a,b){var d=this.R=b.track,e=this.cue=b.cue,g=a.currentTime();b.label=e.text;b.selected=e.startTime<=g&&g<e.Z;T.call(this,a,b);d.e("cuechange",u.bind(this,this.update))}t(bb,T);bb.prototype.k=function(){bb.h.k.call(this);this.a.currentTime(this.cue.startTime);this.update(this.cue.startTime)};bb.prototype.update=function(){var a=this.cue,b=this.a.currentTime();a.startTime<=b&&b<a.Z?this.selected(f):this.selected(j)}; n.wa=function(){for(var a=X(this.a),b=0,d=a.length,e,g,p=this.$=[];b<d;b++)if(e=a[b],e.w()==this.r&&e.ya()){if(2>e.readyState()){this.ec=e;e.e("loaded",u.bind(this,this.wa));return}g=e;break}a=this.V=new S(this.a);a.b.appendChild(u.d("li",{className:"vjs-menu-title",innerHTML:u.H(this.r)}));if(g){e=g.R;for(var j,b=0,d=e.length;b<d;b++)j=e[b],j=new db(this.a,{track:g,cue:j}),p.push(j),a.C(j)}this.C(a);0<this.$.length&&this.show();return a};
u.s(E.prototype.options.children,{subtitlesButton:{},captionsButton:{},chaptersButton:{}});if(JSON&&"function"===JSON.parse)u.JSON=JSON;else{u.JSON={};var cb=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g;u.JSON.parse=function(a,b){function d(a,e){var m,r,p=a[e];if(p&&"object"===typeof p)for(m in p)Object.prototype.hasOwnProperty.call(p,m)&&(r=d(p,m),r!==c?p[m]=r:delete p[m]);return b.call(a,e,p)}var e;a=String(a);cb.lastIndex=0;cb.test(a)&&(a=a.replace(cb,function(a){return"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)})); function db(a,b){var d=this.Q=b.track,e=this.cue=b.cue,g=a.currentTime();b.label=e.text;b.selected=e.startTime<=g&&g<e.Y;T.call(this,a,b);d.e("cuechange",u.bind(this,this.update))}t(db,T);db.prototype.k=function(){db.h.k.call(this);this.a.currentTime(this.cue.startTime);this.update(this.cue.startTime)};db.prototype.update=function(){var a=this.cue,b=this.a.currentTime();a.startTime<=b&&b<a.Y?this.selected(f):this.selected(k)};
if(/^[\],:{}\s]*$/.test(a.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,"")))return e=eval("("+a+")"),"function"===typeof b?d({"":e},""):e;throw new SyntaxError("JSON.parse");}};u.va=function(){var a,b,d=document.getElementsByTagName("video");if(d&&0<d.length)for(var e=0,g=d.length;e<g;e++)if((b=d[e])&&b.getAttribute)b.a===c&&(a=b.getAttribute("data-setup"),a!==h&&(a=u.JSON.parse(a||"{}"),x(b,a)));else{u.Pa();break}else u.Zb||u.Pa()};u.Pa=function(){setTimeout(u.va,1)};u.z(window,"load",function(){u.Zb=f});u.va();s("videojs",u);s("_V_",u);s("videojs.options",u.options);s("videojs.cache",u.M);s("videojs.Component",y);y.prototype.dispose=y.prototype.l;y.prototype.createEl=y.prototype.d;y.prototype.getEl=y.prototype.mc;y.prototype.addChild=y.prototype.C;y.prototype.getChildren=y.prototype.lc;y.prototype.on=y.prototype.e;y.prototype.off=y.prototype.j;y.prototype.one=y.prototype.z;y.prototype.trigger=y.prototype.g;y.prototype.show=y.prototype.show;y.prototype.hide=y.prototype.t;y.prototype.width=y.prototype.width; u.t(F.prototype.options.children,{subtitlesButton:{},captionsButton:{},chaptersButton:{}});if(JSON&&"function"===JSON.parse)u.JSON=JSON;else{u.JSON={};var eb=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g;u.JSON.parse=function(a,b){function d(a,e){var j,r,q=a[e];if(q&&"object"===typeof q)for(j in q)Object.prototype.hasOwnProperty.call(q,j)&&(r=d(q,j),r!==c?q[j]=r:delete q[j]);return b.call(a,e,q)}var e;a=String(a);eb.lastIndex=0;eb.test(a)&&(a=a.replace(eb,function(a){return"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)}));
y.prototype.height=y.prototype.height;y.prototype.dimensions=y.prototype.xb;s("videojs.Player",v);s("videojs.MediaLoader",va);s("videojs.PosterImage",Ga);s("videojs.LoadingSpinner",K);s("videojs.BigPlayButton",J);s("videojs.ControlBar",E);s("videojs.TextTrackDisplay",Xa);s("videojs.Control",D);s("videojs.ControlBar",E);s("videojs.Button",F);s("videojs.PlayButton",G);s("videojs.PauseButton",H);s("videojs.PlayToggle",wa);s("videojs.FullscreenToggle",I);s("videojs.BigPlayButton",J); if(/^[\],:{}\s]*$/.test(a.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,"")))return e=eval("("+a+")"),"function"===typeof b?d({"":e},""):e;throw new SyntaxError("JSON.parse");}};u.ua=function(){var a,b,d=document.getElementsByTagName("video");if(d&&0<d.length)for(var e=0,g=d.length;e<g;e++)if((b=d[e])&&b.getAttribute)b.player===c&&(a=b.getAttribute("data-setup"),a!==h&&(a=u.JSON.parse(a||"{}"),x(b,a)));else{u.Oa();break}else u.Xb||u.Oa()};u.Oa=function(){setTimeout(u.ua,1)};u.z(window,"load",function(){u.Xb=f});u.ua();s("videojs",u);s("_V_",u);s("videojs.options",u.options);s("videojs.cache",u.L);s("videojs.Component",y);y.prototype.dispose=y.prototype.l;y.prototype.createEl=y.prototype.d;y.prototype.getEl=y.prototype.kc;y.prototype.addChild=y.prototype.C;y.prototype.getChildren=y.prototype.jc;y.prototype.on=y.prototype.e;y.prototype.off=y.prototype.j;y.prototype.one=y.prototype.z;y.prototype.trigger=y.prototype.g;y.prototype.show=y.prototype.show;y.prototype.hide=y.prototype.s;y.prototype.width=y.prototype.width;
s("videojs.LoadingSpinner",K);s("videojs.CurrentTimeDisplay",L);s("videojs.DurationDisplay",M);s("videojs.TimeDivider",xa);s("videojs.RemainingTimeDisplay",N);s("videojs.Slider",O);s("videojs.ProgressControl",P);s("videojs.SeekBar",Q);s("videojs.LoadProgressBar",za);s("videojs.PlayProgressBar",Aa);s("videojs.SeekHandle",Ba);s("videojs.VolumeControl",Ca);s("videojs.VolumeBar",Da);s("videojs.VolumeLevel",Ea);s("videojs.VolumeHandle",Fa);s("videojs.MuteToggle",R);s("videojs.PosterImage",Ga); y.prototype.height=y.prototype.height;y.prototype.dimensions=y.prototype.wb;s("videojs.Player",v);s("videojs.MediaLoader",wa);s("videojs.PosterImage",Ia);s("videojs.LoadingSpinner",L);s("videojs.BigPlayButton",K);s("videojs.ControlBar",F);s("videojs.TextTrackDisplay",Za);s("videojs.Control",E);s("videojs.ControlBar",F);s("videojs.Button",G);s("videojs.PlayButton",H);s("videojs.PauseButton",I);s("videojs.PlayToggle",xa);s("videojs.FullscreenToggle",J);s("videojs.BigPlayButton",K);
s("videojs.Menu",S);s("videojs.MenuItem",T);s("videojs.SubtitlesButton",$a);s("videojs.CaptionsButton",Za);s("videojs.ChaptersButton",ab);s("videojs.MediaTechController",U);s("videojs.Html5",V);V.Events=Ja;V.isSupported=function(){return!!document.createElement("video").canPlayType};V.canPlaySource=function(a){return!!document.createElement("video").canPlayType(a.type)};V.prototype.setCurrentTime=V.prototype.Qb;V.prototype.setVolume=V.prototype.Vb;V.prototype.setMuted=V.prototype.Tb; s("videojs.LoadingSpinner",L);s("videojs.CurrentTimeDisplay",M);s("videojs.DurationDisplay",N);s("videojs.TimeDivider",ya);s("videojs.RemainingTimeDisplay",O);s("videojs.Slider",P);s("videojs.ProgressControl",Aa);s("videojs.SeekBar",Q);s("videojs.LoadProgressBar",Ba);s("videojs.PlayProgressBar",Ca);s("videojs.SeekHandle",Da);s("videojs.VolumeControl",Ea);s("videojs.VolumeBar",Fa);s("videojs.VolumeLevel",Ga);s("videojs.VolumeHandle",Ha);s("videojs.MuteToggle",R);s("videojs.PosterImage",Ia);
V.prototype.setPreload=V.prototype.Ub;V.prototype.setAutoplay=V.prototype.Pb;V.prototype.setLoop=V.prototype.Sb;s("videojs.Flash",W);W.Events=W.ac; s("videojs.Menu",S);s("videojs.MenuItem",T);s("videojs.SubtitlesButton",bb);s("videojs.CaptionsButton",ab);s("videojs.ChaptersButton",cb);s("videojs.MediaTechController",U);s("videojs.Html5",V);V.Events=La;V.isSupported=function(){return!!document.createElement("video").canPlayType};V.canPlaySource=function(a){return!!document.createElement("video").canPlayType(a.type)};V.prototype.setCurrentTime=V.prototype.Ob;V.prototype.setVolume=V.prototype.Tb;V.prototype.setMuted=V.prototype.Rb;
W.isSupported=function(){var a="0,0,0";try{a=(new window.ActiveXObject("ShockwaveFlash.ShockwaveFlash")).GetVariable("$version").replace(/\D+/g,",").match(/^,?(.+),?$/)[1]}catch(b){try{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(d){}}return 10<=a.split(",")[0]};W.canPlaySource=function(a){if(a.type in W.prototype.F.Bb)return"maybe"}; V.prototype.setPreload=V.prototype.Sb;V.prototype.setAutoplay=V.prototype.Nb;V.prototype.setLoop=V.prototype.Qb;s("videojs.Flash",W);W.Events=W.Zb;
W.onReady=W.onReady;s("videojs.TextTrack",Y);Y.prototype.label=Y.prototype.label;s("videojs.CaptionsTrack",Ua);s("videojs.SubtitlesTrack",Va);s("videojs.ChaptersTrack",Wa);s("videojs.autoSetup",u.va);module("Component");test("should create an element",function(){var a=new y({},{});ok(a.f().nodeName)});test("should add a child component",function(){var a=new y({}),b=a.C("component");ok(1===a.children().length);ok(a.children()[0]===b);ok(a.f().childNodes[0]===b.f());ok(a.D.component===b);var d=ok,e=b.id();d(a.ga[e]===b)});test("should init child coponents from options",function(){var a=new y({},{children:{component:f}});ok(1===a.children().length);ok(1===a.f().childNodes.length)}); W.isSupported=function(){var a="0,0,0";try{a=(new window.ActiveXObject("ShockwaveFlash.ShockwaveFlash")).GetVariable("$version").replace(/\D+/g,",").match(/^,?(.+),?$/)[1]}catch(b){try{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(d){}}return 10<=a.split(",")[0]};W.canPlaySource=function(a){if(a.type in W.prototype.F.zb)return"maybe"};
test("should dispose of component and children",function(){var a=new y({}),b=a.C("Component");ok(1===a.children().length);a.e("click",l(f));var d=u.getData(a.f()),e=a.f()[u.expando];a.l();ok(!a.children(),"component children were deleted");ok(!a.f(),"component element was deleted");ok(!b.children(),"child children were deleted");ok(!b.f(),"child element was deleted");ok(!u.M[e],"listener cache nulled");ok(u.ja(d),"original listener cache object was emptied")}); W.onReady=W.onReady;s("videojs.TextTrack",Y);Y.prototype.label=Y.prototype.label;s("videojs.CaptionsTrack",Wa);s("videojs.SubtitlesTrack",Xa);s("videojs.ChaptersTrack",Ya);s("videojs.autoSetup",u.ua);module("Component");test("should create an element",function(){var a=new y({},{});ok(a.f().nodeName)});test("should add a child component",function(){var a=new y({}),b=a.C("component");ok(1===a.children().length);ok(a.children()[0]===b);ok(a.f().childNodes[0]===b.f());ok(a.D.component===b);var d=ok,e=b.id();d(a.fa[e]===b)});test("should init child coponents from options",function(){var a=new y({},{children:{component:f}});ok(1===a.children().length);ok(1===a.f().childNodes.length)});
test("should do a deep merge of child options",function(){var a=ga(y.prototype,{children:{childOne:{foo:"bar",asdf:"fdsa"},childTwo:{},childThree:{}}},{children:{childOne:{foo:"baz",abc:"123"},childThree:h,childFour:{}}}).children;ok("baz"===a.childOne.foo,"value three levels deep overridden");ok("fdsa"===a.childOne.asdf,"value three levels deep maintained");ok("123"===a.childOne.abc,"value three levels deep added");ok(a.childTwo,"object two levels deep maintained");ok(a.childThree===h,"object two levels deep removed");
ok(a.childFour,"object two levels deep added")});test("should dispose of component and children",function(){var a=new y({}),b=a.C("Component");ok(1===a.children().length);a.e("click",m(f));var d=u.getData(a.f()),e=a.f()[u.expando];a.l();ok(!a.children(),"component children were deleted");ok(!a.f(),"component element was deleted");ok(!b.children(),"child children were deleted");ok(!b.f(),"child element was deleted");ok(!u.L[e],"listener cache nulled");ok(u.ia(d),"original listener cache object was emptied")});
test("should add and remove event listeners to element",function(){function a(){ok(f,"fired event once");ok(this===b,"listener has the component as context")}var b=new y({},{});expect(2);b.e("test-event",a);b.g("test-event");b.j("test-event",a);b.g("test-event")});test("should trigger a listener once using one()",function(){var a=new y({},{});expect(1);a.z("test-event",function(){ok(f,"fired event once")});a.g("test-event");a.g("test-event")}); test("should add and remove event listeners to element",function(){function a(){ok(f,"fired event once");ok(this===b,"listener has the component as context")}var b=new y({},{});expect(2);b.e("test-event",a);b.g("test-event");b.j("test-event",a);b.g("test-event")});test("should trigger a listener once using one()",function(){var a=new y({},{});expect(1);a.z("test-event",function(){ok(f,"fired event once")});a.g("test-event");a.g("test-event")});
test("should trigger a listener when ready",function(){expect(2);var a=new y({},{},function(){ok(f,"options listener fired")});z(a);a.G(function(){ok(f,"ready method listener fired")});z(a)});test("should add and remove a CSS class",function(){var a=new y({},{});a.m("test-class");ok(-1!==a.f().className.indexOf("test-class"));a.u("test-class");ok(-1===a.f().className.indexOf("test-class"))}); test("should trigger a listener when ready",function(){expect(2);var a=new y({},{},function(){ok(f,"options listener fired")});A(a);z(a,function(){ok(f,"ready method listener fired")});A(a)});test("should add and remove a CSS class",function(){var a=new y({},{});a.m("test-class");ok(-1!==a.f().className.indexOf("test-class"));a.u("test-class");ok(-1===a.f().className.indexOf("test-class"))});
test("should show and hide an element",function(){var a=new y({},{});a.t();ok("none"===a.f().style.display);a.show();ok("block"===a.f().style.display)}); test("should show and hide an element",function(){var a=new y({},{});a.s();ok("none"===a.f().style.display);a.show();ok("block"===a.f().style.display)});
test("should change the width and height of a component",function(){var a=document.createElement("div"),b=new y({},{}),d=b.f();document.getElementById("qunit-fixture").appendChild(a);a.appendChild(d);a.style.width="1000px";a.style.height="1000px";b.width("50%");b.height("123px");ok(500===b.width(),"percent values working");ok(u.Ca(d,"width")===b.width()+"px","matches computed style");ok(123===b.height(),"px values working");b.width(321);ok(321===b.width(),"integer values working")});module("Core");test("should create a video tag and have access children in old IE",function(){document.getElementById("qunit-fixture").innerHTML+="<video id='test_vid_id'><source type='video/mp4'></video>";vid=document.getElementById("test_vid_id");ok(1===vid.childNodes.length);ok("video/mp4"===vid.childNodes[0].getAttribute("type"))}); test("should change the width and height of a component",function(){var a=document.createElement("div"),b=new y({},{}),d=b.f();document.getElementById("qunit-fixture").appendChild(a);a.appendChild(d);a.style.width="1000px";a.style.height="1000px";b.width("50%");b.height("123px");ok(500===b.width(),"percent values working");ok(u.Ba(d,"width")===b.width()+"px","matches computed style");ok(123===b.height(),"px values working");b.width(321);ok(321===b.width(),"integer values working")});module("Core");test("should create a video tag and have access children in old IE",function(){document.getElementById("qunit-fixture").innerHTML+="<video id='test_vid_id'><source type='video/mp4'></video>";vid=document.getElementById("test_vid_id");ok(1===vid.childNodes.length);ok("video/mp4"===vid.childNodes[0].getAttribute("type"))});
test("should return a video player instance",function(){document.getElementById("qunit-fixture").innerHTML+="<video id='test_vid_id'></video><video id='test_vid_id2'></video>";var a=x("test_vid_id");ok(a,"created player from tag");ok("test_vid_id"===a.id());ok(x.P.test_vid_id===a,"added player to global reference");var b=x("test_vid_id");ok(a===b,"did not create a second player from same tag");a=x(document.getElementById("test_vid_id2"));ok("test_vid_id2"===a.id(),"created player from element")});module("Events");test("should add and remove an event listener to an element",function(){function a(){ok(f,"Click Triggered")}expect(1);var b=document.createElement("div");u.e(b,"click",a);u.g(b,"click");u.j(b,"click",a);u.g(b,"click")});test("should remove all listeners of a type",function(){var a=document.createElement("div"),b=0;u.e(a,"click",function(){b++});u.e(a,"click",function(){b++});u.g(a,"click");ok(2===b,"both click listeners fired");u.j(a,"click");u.g(a,"click");ok(2===b,"no click listeners fired")}); test("should return a video player instance",function(){document.getElementById("qunit-fixture").innerHTML+="<video id='test_vid_id'></video><video id='test_vid_id2'></video>";var a=x("test_vid_id");ok(a,"created player from tag");ok("test_vid_id"===a.id());ok(x.O.test_vid_id===a,"added player to global reference");var b=x("test_vid_id");ok(a===b,"did not create a second player from same tag");a=x(document.getElementById("test_vid_id2"));ok("test_vid_id2"===a.id(),"created player from element")});module("Events");test("should add and remove an event listener to an element",function(){function a(){ok(f,"Click Triggered")}expect(1);var b=document.createElement("div");u.e(b,"click",a);u.g(b,"click");u.j(b,"click",a);u.g(b,"click")});test("should remove all listeners of a type",function(){var a=document.createElement("div"),b=0;u.e(a,"click",function(){b++});u.e(a,"click",function(){b++});u.g(a,"click");ok(2===b,"both click listeners fired");u.j(a,"click");u.g(a,"click");ok(2===b,"no click listeners fired")});
test("should remove all listeners from an element",function(){expect(2);var a=document.createElement("div");u.e(a,"fake1",function(){ok(f,"Fake1 Triggered")});u.e(a,"fake2",function(){ok(f,"Fake2 Triggered")});u.g(a,"fake1");u.g(a,"fake2");u.j(a);u.g(a,"fake1");u.g(a,"fake2")});test("should listen only once",function(){expect(1);var a=document.createElement("div");u.z(a,"click",function(){ok(f,"Click Triggered")});u.g(a,"click");u.g(a,"click")});module("Lib");test("should create an element",function(){var a=u.d(),b=u.d("span",{"data-test":"asdf",innerHTML:"fdsa"});ok("DIV"===a.nodeName);ok("SPAN"===b.nodeName);ok("asdf"===b["data-test"]);ok("fdsa"===b.innerHTML)});test("should make a string start with an uppercase letter",function(){var a=u.I("bar");ok("Bar"===a)});test("should loop through each property on an object",function(){var a={rb:1,sb:2,c:3};u.Y(a,function(b,d){a[b]=d+3});deepEqual(a,{rb:4,sb:5,c:6})}); test("should remove all listeners from an element",function(){expect(2);var a=document.createElement("div");u.e(a,"fake1",function(){ok(f,"Fake1 Triggered")});u.e(a,"fake2",function(){ok(f,"Fake2 Triggered")});u.g(a,"fake1");u.g(a,"fake2");u.j(a);u.g(a,"fake1");u.g(a,"fake2")});test("should listen only once",function(){expect(1);var a=document.createElement("div");u.z(a,"click",function(){ok(f,"Click Triggered")});u.g(a,"click");u.g(a,"click")});module("Lib");test("should create an element",function(){var a=u.d(),b=u.d("span",{"data-test":"asdf",innerHTML:"fdsa"});ok("DIV"===a.nodeName);ok("SPAN"===b.nodeName);ok("asdf"===b["data-test"]);ok("fdsa"===b.innerHTML)});test("should make a string start with an uppercase letter",function(){var a=u.H("bar");ok("Bar"===a)});test("should loop through each property on an object",function(){var a={qb:1,rb:2,c:3};u.S(a,function(b,d){a[b]=d+3});deepEqual(a,{qb:4,rb:5,c:6})});
test("should add context to a function",function(){var a={test:"obj"};u.bind(a,function(){ok(this===a)})()});test("should add and remove a class name on an element",function(){var a=document.createElement("div");u.m(a,"test-class");ok("test-class"===a.className,"class added");u.m(a,"test-class");ok("test-class"===a.className,"same class not duplicated");u.m(a,"test-class2");ok("test-class test-class2"===a.className,"added second class");u.u(a,"test-class");ok("test-class2"===a.className,"removed first class")}); test("should add context to a function",function(){var a={test:"obj"};u.bind(a,function(){ok(this===a)})()});test("should add and remove a class name on an element",function(){var a=document.createElement("div");u.m(a,"test-class");ok("test-class"===a.className,"class added");u.m(a,"test-class");ok("test-class"===a.className,"same class not duplicated");u.m(a,"test-class2");ok("test-class test-class2"===a.className,"added second class");u.u(a,"test-class");ok("test-class2"===a.className,"removed first class")});
test("should get and remove data from an element",function(){var a=document.createElement("div"),b=u.getData(a),d=a[u.expando];ok("object"===typeof b,"data object created");var e={dc:"fdsa"};b.test=e;ok(u.getData(a).test===e,"data added");u.Ma(a);ok(!u.M[d],"cached item nulled");ok(a[u.expando]===h||a[u.expando]===c,"element data id removed")}); test("should get and remove data from an element",function(){var a=document.createElement("div"),b=u.getData(a),d=a[u.expando];ok("object"===typeof b,"data object created");var e={bc:"fdsa"};b.test=e;ok(u.getData(a).test===e,"data added");u.La(a);ok(!u.L[d],"cached item nulled");ok(a[u.expando]===h||a[u.expando]===c,"element data id removed")});
test("should read tag attributes from elements, including HTML5 in all browsers",function(){var a=document.createElement("div"),b;b='<video id="vid1" controls autoplay loop muted preload="none" src="http://google.com" poster="http://www2.videojs.com/img/video-js-html5-video-player.png" data-test="asdf" data-empty-string=""></video><video id="vid2"><source id="source" src="http://google.com" type="video/mp4" media="fdsa" title="test" >';b+='<track id="track" default src="http://google.com" kind="captions" srclang="en" label="testlabel" title="test" >'; test("should read tag attributes from elements, including HTML5 in all browsers",function(){var a=document.createElement("div"),b;b='<video id="vid1" controls autoplay loop muted preload="none" src="http://google.com" poster="http://www2.videojs.com/img/video-js-html5-video-player.png" data-test="asdf" data-empty-string=""></video><video id="vid2"><source id="source" src="http://google.com" type="video/mp4" media="fdsa" title="test" >';b+='<track id="track" default src="http://google.com" kind="captions" srclang="en" label="testlabel" title="test" >';
a.innerHTML+=b;document.getElementById("qunit-fixture").appendChild(a);a=u.N(document.getElementById("vid2"));b=u.N(document.getElementById("source"));var d=u.N(document.getElementById("track"));deepEqual(u.N(document.getElementById("vid1")),{autoplay:f,controls:f,"data-test":"asdf","data-empty-string":"",id:"vid1",loop:f,muted:f,poster:"http://www2.videojs.com/img/video-js-html5-video-player.png",preload:"none",src:"http://google.com"});deepEqual(a,{id:"vid2"});deepEqual(b,{title:"test",media:"fdsa", a.innerHTML+=b;document.getElementById("qunit-fixture").appendChild(a);a=u.M(document.getElementById("vid2"));b=u.M(document.getElementById("source"));var d=u.M(document.getElementById("track"));deepEqual(u.M(document.getElementById("vid1")),{autoplay:f,controls:f,"data-test":"asdf","data-empty-string":"",id:"vid1",loop:f,muted:f,poster:"http://www2.videojs.com/img/video-js-html5-video-player.png",preload:"none",src:"http://google.com"});deepEqual(a,{id:"vid2"});deepEqual(b,{title:"test",media:"fdsa",
type:"video/mp4",src:"http://google.com",id:"source"});deepEqual(d,{"default":f,id:"track",kind:"captions",label:"testlabel",src:"http://google.com",srclang:"en",title:"test"})}); type:"video/mp4",src:"http://google.com",id:"source"});deepEqual(d,{"default":f,id:"track",kind:"captions",label:"testlabel",src:"http://google.com",srclang:"en",title:"test"})});
test("should get the right style values for an element",function(){var a=document.createElement("div"),b=document.createElement("div"),d=document.getElementById("qunit-fixture");b.appendChild(a);d.appendChild(b);b.style.width="1000px";b.style.height="1000px";a.style.height="100%";a.style.width="123px";ok("1000px"===u.Ca(a,"height"));ok("123px"===u.Ca(a,"width"))}); test("should get the right style values for an element",function(){var a=document.createElement("div"),b=document.createElement("div"),d=document.getElementById("qunit-fixture");b.appendChild(a);d.appendChild(b);b.style.width="1000px";b.style.height="1000px";a.style.height="100%";a.style.width="123px";ok("1000px"===u.Ba(a,"height"));ok("123px"===u.Ba(a,"width"))});
test("should insert an element first in another",function(){var a=document.createElement("div"),b=document.createElement("div"),d=document.createElement("div");u.$(a,d);ok(d.firstChild===a,"inserts first into empty parent");u.$(b,d);ok(d.firstChild===b,"inserts first into parent with child")}); test("should insert an element first in another",function(){var a=document.createElement("div"),b=document.createElement("div"),d=document.createElement("div");u.Z(a,d);ok(d.firstChild===a,"inserts first into empty parent");u.Z(b,d);ok(d.firstChild===b,"inserts first into parent with child")});
test("should return the element with the ID",function(){var a=document.createElement("div"),b=document.createElement("div"),d=document.getElementById("qunit-fixture");d.appendChild(a);d.appendChild(b);a.id="test_id1";b.id="test_id2";ok(u.f("test_id1")===a,"found element for ID");ok(u.f("#test_id2")===b,"found element for CSS ID")});test("should trim whitespace from a string",function(){ok("asdf asdf asdf"===u.trim(" asdf asdf asdf \t\n\r"))}); test("should return the element with the ID",function(){var a=document.createElement("div"),b=document.createElement("div"),d=document.getElementById("qunit-fixture");d.appendChild(a);d.appendChild(b);a.id="test_id1";b.id="test_id2";ok(u.f("test_id1")===a,"found element for ID");ok(u.f("#test_id2")===b,"found element for CSS ID")});test("should trim whitespace from a string",function(){ok("asdf asdf asdf"===u.trim(" asdf asdf asdf \t\n\r"))});
test("should round a number",function(){ok(1===u.round(1.01));ok(2===u.round(1.5));ok(1.55===u.round(1.55,2));ok(10.55===u.round(10.551,2))}); test("should round a number",function(){ok(1===u.round(1.01));ok(2===u.round(1.5));ok(1.55===u.round(1.55,2));ok(10.55===u.round(10.551,2))});
test("should format time as a string",function(){ok("0:01"===u.o(1));ok("0:10"===u.o(10));ok("1:00"===u.o(60));ok("10:00"===u.o(600));ok("1:00:00"===u.o(3600));ok("10:00:00"===u.o(36E3));ok("100:00:00"===u.o(36E4));ok("0:01"===u.o(1,1));ok("0:01"===u.o(1,10));ok("0:01"===u.o(1,60));ok("00:01"===u.o(1,600));ok("0:00:01"===u.o(1,3600));ok("0:00:01"===u.o(1,36E3));ok("0:00:01"===u.o(1,36E4))});test("should create a fake timerange",function(){var a=u.ya(10);ok(0===a.start());ok(10===a.end())}); test("should format time as a string",function(){ok("0:01"===u.o(1));ok("0:10"===u.o(10));ok("1:00"===u.o(60));ok("10:00"===u.o(600));ok("1:00:00"===u.o(3600));ok("10:00:00"===u.o(36E3));ok("100:00:00"===u.o(36E4));ok("0:01"===u.o(1,1));ok("0:01"===u.o(1,10));ok("0:01"===u.o(1,60));ok("00:01"===u.o(1,600));ok("0:00:01"===u.o(1,3600));ok("0:00:01"===u.o(1,36E3));ok("0:00:01"===u.o(1,36E4))});test("should create a fake timerange",function(){var a=u.xa(10);ok(0===a.start());ok(10===a.end())});
test("should get an absolute URL",function(){ok("http://asdf.com"===u.ia("http://asdf.com"));ok("https://asdf.com/index.html"===u.ia("https://asdf.com/index.html"))});module("HTML5");module("Player");function db(){var a=document.createElement("video");a.id="example_1";a.className="video-js vjs-default-skin";return a}function fb(a){var b=db();document.getElementById("qunit-fixture").appendChild(b);return player=new v(b,a)}test("should create player instance that inherits from component and dispose it",function(){var a=fb();ok("DIV"===a.f().nodeName);ok(a.e,"component function exists");a.l();ok(a.f()===h,"element disposed")}); test("should get an absolute URL",function(){ok("http://asdf.com"===u.ha("http://asdf.com"));ok("https://asdf.com/index.html"===u.ha("https://asdf.com/index.html"))});module("HTML5");module("Player");function fb(){var a=document.createElement("video");a.id="example_1";a.className="video-js vjs-default-skin";return a}function hb(a){var b=fb();document.getElementById("qunit-fixture").appendChild(b);return player=new v(b,a)}test("should create player instance that inherits from component and dispose it",function(){var a=hb();ok("DIV"===a.f().nodeName);ok(a.e,"component function exists");a.l();ok(a.f()===h,"element disposed")});
test("should accept options from multiple sources and override in correct order",function(){u.options.attr=1;var a=db(),a=new v(a);ok(1===a.options.attr,"global option was set");a.l();a=db();a.setAttribute("attr","asdf");a=new v(a);ok("asdf"===a.options.attr,"Tag options overrode global options");a.l();a=db();a.setAttribute("attr","asdf");a=new v(a,{attr:"fdsa"});ok("fdsa"===a.options.attr,"Init options overrode tag and global options");a.l()}); test("should accept options from multiple sources and override in correct order",function(){u.options.attr=1;var a=fb(),a=new v(a);ok(1===a.options.attr,"global option was set");a.l();a=fb();a.setAttribute("attr","asdf");a=new v(a);ok("asdf"===a.options.attr,"Tag options overrode global options");a.l();a=fb();a.setAttribute("attr","asdf");a=new v(a,{attr:"fdsa"});ok("fdsa"===a.options.attr,"Init options overrode tag and global options");a.l()});
test("should get tag, source, and track settings",function(){var a=document.getElementById("qunit-fixture"),b;b='<video id="example_1" class="video-js" autoplay preload="metadata"><source src="http://google.com" type="video/mp4"><source src="http://google.com" type="video/webm">';b+='<track src="http://google.com" kind="captions" default>';b+="</video>";a.innerHTML+=b;a=document.getElementById("example_1");b=new v(a);ok(b.options.autoplay===f);ok("metadata"===b.options.preload);ok("example_1"===b.options.id); test("should get tag, source, and track settings",function(){var a=document.getElementById("qunit-fixture"),b;b='<video id="example_1" class="video-js" autoplay preload="metadata"><source src="http://google.com" type="video/mp4"><source src="http://google.com" type="video/webm">';b+='<track src="http://google.com" kind="captions" default>';b+="</video>";a.innerHTML+=b;a=document.getElementById("example_1");b=new v(a);ok(b.options.autoplay===f);ok("metadata"===b.options.preload);ok("example_1"===b.options.id);
ok(2===b.options.sources.length);ok("http://google.com"===b.options.sources[0].src);ok("video/mp4"===b.options.sources[0].type);ok("video/webm"===b.options.sources[1].type);ok(1===b.options.tracks.length);ok("captions"===b.options.tracks[0].kind);ok(b.options.tracks[0]["default"]===f);ok(-1!==b.f().className.indexOf("video-js"),"transferred class from tag to player div");ok("example_1"===b.f().id,"transferred id from tag to player div");ok(a.a===b,"player referenceable on original tag");ok(u.P[b.id()]=== ok(2===b.options.sources.length);ok("http://google.com"===b.options.sources[0].src);ok("video/mp4"===b.options.sources[0].type);ok("video/webm"===b.options.sources[1].type);ok(1===b.options.tracks.length);ok("captions"===b.options.tracks[0].kind);ok(b.options.tracks[0]["default"]===f);ok(-1!==b.f().className.indexOf("video-js"),"transferred class from tag to player div");ok("example_1"===b.f().id,"transferred id from tag to player div");ok(a.player===b,"player referenceable on original tag");ok(u.O[b.id()]===
b,"player referenceable from global list");ok(a.id!==b.id,"tag ID no longer is the same as player ID");ok(a.className!==b.f().className,"tag classname updated");b.l();ok(a.a===h,"tag player ref killed");ok(!u.P.example_1,"global player ref killed");ok(b.f()===h,"player el killed")}); b,"player referenceable from global list");ok(a.id!==b.id,"tag ID no longer is the same as player ID");ok(a.className!==b.f().className,"tag classname updated");b.l();ok(a.player===h,"tag player ref killed");ok(!u.O.example_1,"global player ref killed");ok(b.f()===h,"player el killed")});
test("should set the width and height of the player",function(){var a=fb({width:123,height:"100%"});ok(123===a.width());ok("123px"===a.f().style.width);var b=document.getElementById("qunit-fixture"),d=document.createElement("div");b.appendChild(d);d.appendChild(a.f());d.style.height="1000px";ok(1E3===a.height());a.l()}); test("should set the width and height of the player",function(){var a=hb({width:123,height:"100%"});ok(123===a.width());ok("123px"===a.f().style.width);var b=document.getElementById("qunit-fixture"),d=document.createElement("div");b.appendChild(d);d.appendChild(a.f());d.style.height="1000px";ok(1E3===a.height());a.l()});
test("should accept options from multiple sources and override in correct order",function(){var a=db(),b=document.createElement("div"),d=document.getElementById("qunit-fixture");b.appendChild(a);d.appendChild(b);var d=new v(a),e=d.f();ok(e.parentNode===b,"player placed at same level as tag");ok(a.parentNode!==b,"tag removed from original place");d.l()}); test("should accept options from multiple sources and override in correct order",function(){var a=fb(),b=document.createElement("div"),d=document.getElementById("qunit-fixture");b.appendChild(a);d.appendChild(b);var d=new v(a),e=d.f();ok(e.parentNode===b,"player placed at same level as tag");ok(a.parentNode!==b,"tag removed from original place");d.l()});
test("should load a media controller",function(){var a=fb({ca:"none",rc:[{src:"http://google.com",type:"video/mp4"},{src:"http://google.com",type:"video/webm"}]});ok(-1!==a.f().children[0].className.indexOf("vjs-tech"),"media controller loaded");a.l()});module("Setup");})();//@ sourceMappingURL=video.js.map test("should load a media controller",function(){var a=hb({ba:"none",qc:[{src:"http://google.com",type:"video/mp4"},{src:"http://google.com",type:"video/webm"}]});ok(-1!==a.f().children[0].className.indexOf("vjs-tech"),"media controller loaded");a.l()});module("Setup");})();//@ sourceMappingURL=video.js.map