if(typeof jwplayer == "undefined") {
var jwplayer = function(b) {
if(jwplayer.api) {
return jwplayer.api.selectPlayer(b);
}
};
var $jw = jwplayer;
jwplayer.version = "5.8.2011 (Licensed version)";
jwplayer.vid = document.createElement("video");
jwplayer.audio = document.createElement("audio");
jwplayer.source = document.createElement("source");
(function(c) {
c.utils = function() {
};
c.utils.typeOf = function(a) {
var b = typeof a;
if(b === "object") {
if(a) {
if(a instanceof Array) {
b = "array";
}
} else {
b = "null";
}
}
return b;
};
c.utils.extend = function() {
var f = c.utils.extend["arguments"];
if(f.length > 1) {
for(var a = 1; a < f.length; a++) {
for(var b in f[a]) {
f[0][b] = f[a][b];
}
}
return f[0];
}
return null;
};
c.utils.clone = function(a) {
var h;
var g = c.utils.clone["arguments"];
if(g.length == 1) {
switch(c.utils.typeOf(g[0])) {
case"object":
h = {};
for(var b in g[0]) {
h[b] = c.utils.clone(g[0][b]);
}
break;
case"array":
h = [];
for(var b in g[0]) {
h[b] = c.utils.clone(g[0][b]);
}
break;
default:
return g[0];
break;
}
}
return h;
};
c.utils.extension = function(a) {
if(!a) {
return"";
}
a = a.substring(a.lastIndexOf("/") + 1, a.length);
a = a.split("?")[0];
if(a.lastIndexOf(".") > -1) {
return a.substr(a.lastIndexOf(".") + 1, a.length).toLowerCase();
}
return;
};
c.utils.html = function(b, a) {
b.innerHTML = a;
};
c.utils.wrap = function(b, a) {
if(b.parentNode) {
b.parentNode.replaceChild(a, b);
}
a.appendChild(b);
};
c.utils.ajax = function(a, b, k) {
var h;
if(window.XMLHttpRequest) {
h = new XMLHttpRequest();
} else {
h = new ActiveXObject("Microsoft.XMLHTTP");
}
h.onreadystatechange = function() {
if(h.readyState === 4) {
if(h.status === 200) {
if(b) {
if(!c.utils.exists(h.responseXML)) {
try {
if(window.DOMParser) {
var f = (new DOMParser()).parseFromString(h.responseText, "text/xml");
if(f) {
h = c.utils.extend({}, h, {responseXML: f});
}
} else {
f = new ActiveXObject("Microsoft.XMLDOM");
f.async = "false";
f.loadXML(h.responseText);
h = c.utils.extend({}, h, {responseXML: f});
}
} catch(e) {
if(k) {
k(a);
}
}
}
b(h);
}
} else {
if(k) {
k(a);
}
}
}
};
try {
h.open("GET", a, true);
h.send(null);
} catch(j) {
if(k) {
k(a);
}
}
return h;
};
c.utils.load = function(b, a, f) {
b.onreadystatechange = function() {
if(b.readyState === 4) {
if(b.status === 200) {
if(a) {
a();
}
} else {
if(f) {
f();
}
}
}
};
};
c.utils.find = function(a, b) {
return a.getElementsByTagName(b);
};
c.utils.append = function(b, a) {
b.appendChild(a);
};
c.utils.isIE = function() {
return((!+"\v1") || (typeof window.ActiveXObject != "undefined"));
};
c.utils.userAgentMatch = function(a) {
var b = navigator.userAgent.toLowerCase();
return(b.match(a) !== null);
};
c.utils.isIOS = function() {
return c.utils.userAgentMatch(/iP(hone|ad|od)/i);
};
c.utils.isIPad = function() {
return c.utils.userAgentMatch(/iPad/i);
};
c.utils.isIPod = function() {
return c.utils.userAgentMatch(/iP(hone|od)/i);
};
c.utils.isAndroid = function() {
return c.utils.userAgentMatch(/android/i);
};
c.utils.isLegacyAndroid = function() {
return c.utils.userAgentMatch(/android 2.[012]/i);
};
c.utils.isBlackberry = function() {
return c.utils.userAgentMatch(/blackberry/i);
};
c.utils.isMobile = function() {
return c.utils.isIOS();
};
c.utils.getFirstPlaylistItemFromConfig = function(f) {
var b = {};
var a;
if(f.playlist && f.playlist.length) {
a = f.playlist[0];
} else {
a = f;
}
b.file = a.file;
b.levels = a.levels;
b.streamer = a.streamer;
b.playlistfile = a.playlistfile;
b.provider = a.provider;
if(!b.provider) {
if(b.file && (b.file.toLowerCase().indexOf("youtube.com") > -1 || b.file.toLowerCase().indexOf("youtu.be") > -1)) {
b.provider = "youtube";
}
if(b.streamer && b.streamer.toLowerCase().indexOf("rtmp://") == 0) {
b.provider = "rtmp";
}
if(a.type) {
b.provider = a.type.toLowerCase();
}
}
if(b.provider == "audio") {
b.provider = "sound";
}
return b;
};
c.utils.getOuterHTML = function(b) {
if(b.outerHTML) {
return b.outerHTML;
} else {
try {
return new XMLSerializer().serializeToString(b);
} catch(a) {
return"";
}
}
};
c.utils.setOuterHTML = function(b, h) {
if(b.outerHTML) {
b.outerHTML = h;
} else {
var a = document.createElement("div");
a.innerHTML = h;
var k = document.createRange();
k.selectNodeContents(a);
var j = k.extractContents();
b.parentNode.insertBefore(j, b);
b.parentNode.removeChild(b);
}
};
c.utils.hasFlash = function() {
if(typeof navigator.plugins != "undefined" && typeof navigator.plugins["Shockwave Flash"] != "undefined") {
return true;
}
if(typeof window.ActiveXObject != "undefined") {
try {
new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
return true;
} catch(a) {
}
}
return false;
};
c.utils.getPluginName = function(a) {
if(a.lastIndexOf("/") >= 0) {
a = a.substring(a.lastIndexOf("/") + 1, a.length);
}
if(a.lastIndexOf("-") >= 0) {
a = a.substring(0, a.lastIndexOf("-"));
}
if(a.lastIndexOf(".swf") >= 0) {
a = a.substring(0, a.lastIndexOf(".swf"));
}
if(a.lastIndexOf(".js") >= 0) {
a = a.substring(0, a.lastIndexOf(".js"));
}
return a;
};
c.utils.getPluginVersion = function(a) {
if(a.lastIndexOf("-") >= 0) {
if(a.lastIndexOf(".js") >= 0) {
return a.substring(a.lastIndexOf("-") + 1, a.lastIndexOf(".js"));
} else {
if(a.lastIndexOf(".swf") >= 0) {
return a.substring(a.lastIndexOf("-") + 1, a.lastIndexOf(".swf"));
} else {
return a.substring(a.lastIndexOf("-") + 1);
}
}
}
return"";
};
c.utils.getAbsolutePath = function(b, l) {
if(!c.utils.exists(l)) {
l = document.location.href;
}
if(!c.utils.exists(b)) {
return undefined;
}
if(d(b)) {
return b;
}
var a = l.substring(0, l.indexOf("://") + 3);
var m = l.substring(a.length, l.indexOf("/", a.length + 1));
var p;
if(b.indexOf("/") === 0) {
p = b.split("/");
} else {
var o = l.split("?")[0];
o = o.substring(a.length + m.length + 1, o.lastIndexOf("/"));
p = o.split("/").concat(b.split("/"));
}
var q = [];
for(var n = 0; n < p.length; n++) {
if(!p[n] || !c.utils.exists(p[n]) || p[n] == ".") {
continue;
} else {
if(p[n] == "..") {
q.pop();
} else {
q.push(p[n]);
}
}
}
return a + m + "/" + q.join("/");
};
function d(b) {
if(!c.utils.exists(b)) {
return;
}
var a = b.indexOf("://");
var f = b.indexOf("?");
return(a > 0 && (f < 0 || (f > a)));
}
c.utils.pluginPathType = {ABSOLUTE: "ABSOLUTE", RELATIVE: "RELATIVE", CDN: "CDN"};
c.utils.getPluginPathType = function(g) {
if(typeof g != "string") {
return;
}
g = g.split("?")[0];
var b = g.indexOf("://");
if(b > 0) {
return c.utils.pluginPathType.ABSOLUTE;
}
var h = g.indexOf("/");
var a = c.utils.extension(g);
if(b < 0 && h < 0 && (!a || !isNaN(a))) {
return c.utils.pluginPathType.CDN;
}
return c.utils.pluginPathType.RELATIVE;
};
c.utils.mapEmpty = function(b) {
for(var a in b) {
return false;
}
return true;
};
c.utils.mapLength = function(b) {
var f = 0;
for(var a in b) {
f++;
}
return f;
};
c.utils.log = function(a, b) {
if(typeof console != "undefined" && typeof console.log != "undefined") {
if(b) {
console.log(a, b);
} else {
console.log(a);
}
}
};
c.utils.css = function(j, a, k) {
if(c.utils.exists(j)) {
for(var h in a) {
try {
if(typeof a[h] === "undefined") {
continue;
} else {
if(typeof a[h] == "number" && !(h == "zIndex" || h == "opacity")) {
if(isNaN(a[h])) {
continue;
}
if(h.match(/color/i)) {
a[h] = "#" + c.utils.strings.pad(a[h].toString(16), 6);
} else {
a[h] = Math.ceil(a[h]) + "px";
}
}
}
j.style[h] = a[h];
} catch(b) {
}
}
}
};
c.utils.isYouTube = function(a) {
return(a.indexOf("youtube.com") > -1 || a.indexOf("youtu.be") > -1);
};
c.utils.transform = function(k, l, m, b, a) {
if(!c.utils.exists(l)) {
l = 1;
}
if(!c.utils.exists(m)) {
m = 1;
}
if(!c.utils.exists(b)) {
b = 0;
}
if(!c.utils.exists(a)) {
a = 0;
}
if(l == 1 && m == 1 && b == 0 && a == 0) {
k.style.webkitTransform = "";
k.style.MozTransform = "";
k.style.OTransform = "";
} else {
var j = "scale(" + l + "," + m + ") translate(" + b + "px," + a + "px)";
k.style.webkitTransform = j;
k.style.MozTransform = j;
k.style.OTransform = j;
}
};
c.utils.stretch = function(u, a, b, x, r, w) {
if(typeof b == "undefined" || typeof x == "undefined" || typeof r == "undefined" || typeof w == "undefined") {
return;
}
var z = b / r;
var y = x / w;
var s = 0;
var t = 0;
var A = {};
if(a.parentElement) {
a.parentElement.style.overflow = "hidden";
}
c.utils.transform(a);
switch(u.toUpperCase()) {
case c.utils.stretching.NONE:
A.width = r;
A.height = w;
A.top = (x - A.height) / 2;
A.left = (b - A.width) / 2;
break;
case c.utils.stretching.UNIFORM:
if(z > y) {
A.width = r * y;
A.height = w * y;
} else {
A.width = r * z;
A.height = w * z;
}
A.top = (x - A.height) / 2;
A.left = (b - A.width) / 2;
break;
case c.utils.stretching.FILL:
if(z > y) {
A.width = r * z;
A.height = w * z;
} else {
A.width = r * y;
A.height = w * y;
}
A.top = (x - A.height) / 2;
A.left = (b - A.width) / 2;
break;
case c.utils.stretching.EXACTFIT:
A.width = r;
A.height = w;
var q = Math.round((r / 2) * (1 - 1 / z));
var v = Math.round((w / 2) * (1 - 1 / y));
c.utils.transform(a, z, y, q, v);
A.top = A.left = 0;
break;
default:
break;
}
c.utils.css(a, A);
};
c.utils.stretching = {NONE: "NONE", FILL: "FILL", UNIFORM: "UNIFORM", EXACTFIT: "EXACTFIT"};
c.utils.deepReplaceKeyName = function(a, k, m) {
switch(c.utils.typeOf(a)) {
case"array":
for(var b = 0; b < a.length; b++) {
a[b] = c.utils.deepReplaceKeyName(a[b], k, m);
}
break;
case"object":
for(var j in a) {
var l = j.replace(new RegExp(k, "g"), m);
a[l] = c.utils.deepReplaceKeyName(a[j], k, m);
if(j != l) {
delete a[j];
}
}
break;
}
return a;
};
c.utils.isInArray = function(a, b) {
if(!(a) || !(a instanceof Array)) {
return false;
}
for(var f = 0; f < a.length; f++) {
if(b === a[f]) {
return true;
}
}
return false;
};
c.utils.exists = function(a) {
switch(typeof(a)) {
case"string":
return(a.length > 0);
break;
case"object":
return(a !== null);
case"undefined":
return false;
}
return true;
};
c.utils.empty = function(a) {
if(typeof a.hasChildNodes == "function") {
while(a.hasChildNodes()) {
a.removeChild(a.firstChild);
}
}
};
c.utils.parseDimension = function(a) {
if(typeof a == "string") {
if(a === "") {
return 0;
} else {
if(a.lastIndexOf("%") > -1) {
return a;
} else {
return parseInt(a.replace("px", ""), 10);
}
}
}
return a;
};
c.utils.getDimensions = function(a) {
if(a && a.style) {
return{x: c.utils.parseDimension(a.style.left), y: c.utils.parseDimension(a.style.top), width: c.utils.parseDimension(a.style.width), height: c.utils.parseDimension(a.style.height)};
} else {
return{};
}
};
c.utils.getElementWidth = function(a) {
if(!a) {
return null;
} else {
if(a == document.body) {
return c.utils.parentNode(a).clientWidth;
} else {
if(a.clientWidth > 0) {
return a.clientWidth;
} else {
if(a.style) {
return c.utils.parseDimension(a.style.width);
} else {
return null;
}
}
}
}
};
c.utils.getElementHeight = function(a) {
if(!a) {
return null;
} else {
if(a == document.body) {
return c.utils.parentNode(a).clientHeight;
} else {
if(a.clientHeight > 0) {
return a.clientHeight;
} else {
if(a.style) {
return c.utils.parseDimension(a.style.height);
} else {
return null;
}
}
}
}
};
c.utils.timeFormat = function(a) {
str = "00:00";
if(a > 0) {
str = Math.floor(a / 60) < 10 ? "0" + Math.floor(a / 60) + ":" : Math.floor(a / 60) + ":";
str += Math.floor(a % 60) < 10 ? "0" + Math.floor(a % 60) : Math.floor(a % 60);
}
return str;
};
c.utils.useNativeFullscreen = function() {
return(navigator && navigator.vendor && navigator.vendor.indexOf("Apple") == 0);
};
c.utils.parentNode = function(a) {
if(!a) {
return docuemnt.body;
} else {
if(a.parentNode) {
return a.parentNode;
} else {
if(a.parentElement) {
return a.parentElement;
} else {
return a;
}
}
}
};
c.utils.getBoundingClientRect = function(a) {
if(typeof a.getBoundingClientRect == "function") {
return a.getBoundingClientRect();
} else {
return{left: a.offsetLeft + document.body.scrollLeft, top: a.offsetTop + document.body.scrollTop, width: a.offsetWidth, height: a.offsetHeight};
}
};
})(jwplayer);
(function(b) {
b.events = function() {
};
b.events.COMPLETE = "COMPLETE";
b.events.ERROR = "ERROR";
})(jwplayer);
(function(jwplayer) {
jwplayer.events.eventdispatcher = function(debug) {
var _debug = debug;
var _listeners;
var _globallisteners;
this.resetEventListeners = function() {
_listeners = {};
_globallisteners = [];
};
this.resetEventListeners();
this.addEventListener = function(type, listener, count) {
try {
if(!jwplayer.utils.exists(_listeners[type])) {
_listeners[type] = [];
}
if(typeof(listener) == "string") {
eval("listener = " + listener);
}
_listeners[type].push({listener: listener, count: count});
} catch(err) {
jwplayer.utils.log("error", err);
}
return false;
};
this.removeEventListener = function(type, listener) {
if(!_listeners[type]) {
return;
}
try {
for(var listenerIndex = 0; listenerIndex < _listeners[type].length; listenerIndex++) {
if(_listeners[type][listenerIndex].listener.toString() == listener.toString()) {
_listeners[type].splice(listenerIndex, 1);
break;
}
}
} catch(err) {
jwplayer.utils.log("error", err);
}
return false;
};
this.addGlobalListener = function(listener, count) {
try {
if(typeof(listener) == "string") {
eval("listener = " + listener);
}
_globallisteners.push({listener: listener, count: count});
} catch(err) {
jwplayer.utils.log("error", err);
}
return false;
};
this.removeGlobalListener = function(listener) {
if(!_globallisteners[type]) {
return;
}
try {
for(var globalListenerIndex = 0; globalListenerIndex < _globallisteners.length; globalListenerIndex++) {
if(_globallisteners[globalListenerIndex].listener.toString() == listener.toString()) {
_globallisteners.splice(globalListenerIndex, 1);
break;
}
}
} catch(err) {
jwplayer.utils.log("error", err);
}
return false;
};
this.sendEvent = function(type, data) {
if(!jwplayer.utils.exists(data)) {
data = {};
}
if(_debug) {
jwplayer.utils.log(type, data);
}
if(typeof _listeners[type] != "undefined") {
for(var listenerIndex = 0; listenerIndex < _listeners[type].length; listenerIndex++) {
try {
_listeners[type][listenerIndex].listener(data);
} catch(err) {
jwplayer.utils.log("There was an error while handling a listener: " + err.toString(), _listeners[type][listenerIndex].listener);
}
if(_listeners[type][listenerIndex]) {
if(_listeners[type][listenerIndex].count === 1) {
delete _listeners[type][listenerIndex];
} else {
if(_listeners[type][listenerIndex].count > 0) {
_listeners[type][listenerIndex].count = _listeners[type][listenerIndex].count - 1;
}
}
}
}
}
for(var globalListenerIndex = 0; globalListenerIndex < _globallisteners.length; globalListenerIndex++) {
try {
_globallisteners[globalListenerIndex].listener(data);
} catch(err) {
jwplayer.utils.log("There was an error while handling a listener: " + err.toString(), _globallisteners[globalListenerIndex].listener);
}
if(_globallisteners[globalListenerIndex]) {
if(_globallisteners[globalListenerIndex].count === 1) {
delete _globallisteners[globalListenerIndex];
} else {
if(_globallisteners[globalListenerIndex].count > 0) {
_globallisteners[globalListenerIndex].count = _globallisteners[globalListenerIndex].count - 1;
}
}
}
}
};
};
})(jwplayer);
(function(d) {
var c = {};
d.utils.animations = function() {
};
d.utils.animations.transform = function(b, a) {
b.style.webkitTransform = a;
b.style.MozTransform = a;
b.style.OTransform = a;
b.style.msTransform = a;
};
d.utils.animations.transformOrigin = function(b, a) {
b.style.webkitTransformOrigin = a;
b.style.MozTransformOrigin = a;
b.style.OTransformOrigin = a;
b.style.msTransformOrigin = a;
};
d.utils.animations.rotate = function(b, a) {
d.utils.animations.transform(b, ["rotate(", a, "deg)"].join(""));
};
d.utils.cancelAnimation = function(a) {
delete c[a.id];
};
d.utils.fadeTo = function(a, r, s, o, p, t) {
if(c[a.id] != t && d.utils.exists(t)) {
return;
}
if(a.style.opacity == r) {
return;
}
var u = new Date().getTime();
if(t > u) {
setTimeout(function() {
d.utils.fadeTo(a, r, s, o, 0, t);
}, t - u);
}
if(a.style.display == "none") {
a.style.display = "block";
}
if(!d.utils.exists(o)) {
o = a.style.opacity === "" ? 1 : a.style.opacity;
}
if(a.style.opacity == r && a.style.opacity !== "" && d.utils.exists(t)) {
if(r === 0) {
a.style.display = "none";
}
return;
}
if(!d.utils.exists(t)) {
t = u;
c[a.id] = t;
}
if(!d.utils.exists(p)) {
p = 0;
}
var n = (s > 0) ? ((u - t) / (s * 1000)) : 0;
n = n > 1 ? 1 : n;
var b = r - o;
var q = o + (n * b);
if(q > 1) {
q = 1;
} else {
if(q < 0) {
q = 0;
}
}
a.style.opacity = q;
if(p > 0) {
c[a.id] = t + p * 1000;
d.utils.fadeTo(a, r, s, o, 0, c[a.id]);
return;
}
setTimeout(function() {
d.utils.fadeTo(a, r, s, o, 0, t);
}, 10);
};
})(jwplayer);
(function(b) {
b.utils.arrays = function() {
};
b.utils.arrays.indexOf = function(f, e) {
for(var a = 0; a < f.length; a++) {
if(f[a] == e) {
return a;
}
}
return -1;
};
b.utils.arrays.remove = function(f, e) {
var a = b.utils.arrays.indexOf(f, e);
if(a > -1) {
f.splice(a, 1);
}
};
})(jwplayer);
(function(b) {
b.utils.extensionmap = {"3gp": {html5: "video/3gpp", flash: "video"}, "3gpp": {html5: "video/3gpp"}, "3g2": {html5: "video/3gpp2", flash: "video"}, "3gpp2": {html5: "video/3gpp2"}, flv: {flash: "video"}, f4a: {html5: "audio/mp4"}, f4b: {html5: "audio/mp4", flash: "video"}, f4v: {html5: "video/mp4", flash: "video"}, mov: {html5: "video/quicktime", flash: "video"}, m4a: {html5: "audio/mp4", flash: "video"}, m4b: {html5: "audio/mp4"}, m4p: {html5: "audio/mp4"}, m4v: {html5: "video/mp4", flash: "video"}, mp4: {html5: "video/mp4", flash: "video"}, rbs: {flash: "sound"}, aac: {html5: "audio/aac", flash: "video"}, mp3: {html5: "audio/mp3", flash: "sound"}, ogg: {html5: "audio/ogg"}, oga: {html5: "audio/ogg"}, ogv: {html5: "video/ogg"}, webm: {html5: "video/webm"}, m3u8: {html5: "audio/x-mpegurl"}, gif: {flash: "image"}, jpeg: {flash: "image"}, jpg: {flash: "image"}, swf: {flash: "image"}, png: {flash: "image"}, wav: {html5: "audio/x-wav"}};
})(jwplayer);
(function(o) {
o.utils.mediaparser = function() {
};
var m = {element: {width: "width", height: "height", id: "id", "class": "className", name: "name"}, media: {src: "file", preload: "preload", autoplay: "autostart", loop: "repeat", controls: "controls"}, source: {src: "file", type: "type", media: "media", "data-jw-width": "width", "data-jw-bitrate": "bitrate"}, video: {poster: "image"}};
var n = {};
o.utils.mediaparser.parseMedia = function(a) {
return p(a);
};
function q(a, b) {
if(!o.utils.exists(b)) {
b = m[a];
} else {
o.utils.extend(b, m[a]);
}
return b;
}
function p(f, d) {
if(n[f.tagName.toLowerCase()] && !o.utils.exists(d)) {
return n[f.tagName.toLowerCase()](f);
} else {
d = q("element", d);
var e = {};
for(var c in d) {
if(c != "length") {
var a = f.getAttribute(c);
if(o.utils.exists(a)) {
e[d[c]] = a;
}
}
}
var b = f.style["#background-color"];
if(b && !(b == "transparent" || b == "rgba(0, 0, 0, 0)")) {
e.screencolor = b;
}
return e;
}
}
function l(f, c) {
c = q("media", c);
var b = [];
var d = o.utils.selectors("source", f);
for(var a in d) {
if(!isNaN(a)) {
b.push(k(d[a]));
}
}
var e = p(f, c);
if(o.utils.exists(e.file)) {
b[0] = {file: e.file};
}
e.levels = b;
return e;
}
function k(a, b) {
b = q("source", b);
var c = p(a, b);
c.width = c.width ? c.width : 0;
c.bitrate = c.bitrate ? c.bitrate : 0;
return c;
}
function j(a, b) {
b = q("video", b);
var c = l(a, b);
return c;
}
n.media = l;
n.audio = l;
n.source = k;
n.video = j;
})(jwplayer);
(function(b) {
b.utils.loaderstatus = {NEW: "NEW", LOADING: "LOADING", ERROR: "ERROR", COMPLETE: "COMPLETE"};
b.utils.scriptloader = function(f) {
var e = b.utils.loaderstatus.NEW;
var a = new b.events.eventdispatcher();
b.utils.extend(this, a);
this.load = function() {
if(e == b.utils.loaderstatus.NEW) {
e = b.utils.loaderstatus.LOADING;
var c = document.createElement("script");
c.onload = function(d) {
e = b.utils.loaderstatus.COMPLETE;
a.sendEvent(b.events.COMPLETE);
};
c.onerror = function(d) {
e = b.utils.loaderstatus.ERROR;
a.sendEvent(b.events.ERROR);
};
c.onreadystatechange = function() {
if(c.readyState == "loaded" || c.readyState == "complete") {
e = b.utils.loaderstatus.COMPLETE;
a.sendEvent(b.events.COMPLETE);
}
};
document.getElementsByTagName("head")[0].appendChild(c);
c.src = f;
}
};
this.getStatus = function() {
return e;
};
};
})(jwplayer);
(function(b) {
b.utils.selectors = function(a, f) {
if(!b.utils.exists(f)) {
f = document;
}
a = b.utils.strings.trim(a);
var h = a.charAt(0);
if(h == "#") {
return f.getElementById(a.substr(1));
} else {
if(h == ".") {
if(f.getElementsByClassName) {
return f.getElementsByClassName(a.substr(1));
} else {
return b.utils.selectors.getElementsByTagAndClass("*", a.substr(1));
}
} else {
if(a.indexOf(".") > 0) {
var g = a.split(".");
return b.utils.selectors.getElementsByTagAndClass(g[0], g[1]);
} else {
return f.getElementsByTagName(a);
}
}
}
return null;
};
b.utils.selectors.getElementsByTagAndClass = function(o, l, m) {
var k = [];
if(!b.utils.exists(m)) {
m = document;
}
var n = m.getElementsByTagName(o);
for(var p = 0; p < n.length; p++) {
if(b.utils.exists(n[p].className)) {
var q = n[p].className.split(" ");
for(var a = 0; a < q.length; a++) {
if(q[a] == l) {
k.push(n[p]);
}
}
}
}
return k;
};
})(jwplayer);
(function(b) {
b.utils.strings = function() {
};
b.utils.strings.trim = function(a) {
return a.replace(/^\s*/, "").replace(/\s*$/, "");
};
b.utils.strings.pad = function(f, e, a) {
if(!a) {
a = "0";
}
while(f.length < e) {
f = a + f;
}
return f;
};
b.utils.strings.serialize = function(a) {
if(a == null) {
return null;
} else {
if(a == "true") {
return true;
} else {
if(a == "false") {
return false;
} else {
if(isNaN(Number(a)) || a.length > 5 || a.length == 0) {
return a;
} else {
return Number(a);
}
}
}
}
};
b.utils.strings.seconds = function(e) {
e = e.replace(",", ".");
var a = e.split(":");
var f = 0;
if(e.substr(-1) == "s") {
f = Number(e.substr(0, e.length - 1));
} else {
if(e.substr(-1) == "m") {
f = Number(e.substr(0, e.length - 1)) * 60;
} else {
if(e.substr(-1) == "h") {
f = Number(e.substr(0, e.length - 1)) * 3600;
} else {
if(a.length > 1) {
f = Number(a[a.length - 1]);
f += Number(a[a.length - 2]) * 60;
if(a.length == 3) {
f += Number(a[a.length - 3]) * 3600;
}
} else {
f = Number(e);
}
}
}
}
return f;
};
b.utils.strings.xmlAttribute = function(a, f) {
for(var e = 0; e < a.attributes.length; e++) {
if(a.attributes[e].name && a.attributes[e].name.toLowerCase() == f.toLowerCase()) {
return a.attributes[e].value.toString();
}
}
return"";
};
b.utils.strings.jsonToString = function(l) {
var j = j || {};
if(j && j.stringify) {
return j.stringify(l);
}
var o = typeof(l);
if(o != "object" || l === null) {
if(o == "string") {
l = '"' + l.replace(/"/g, '\\"') + '"';
} else {
return String(l);
}
} else {
var k = [],
a = (l && l.constructor == Array);
for(var n in l) {
var m = l[n];
switch(typeof(m)) {
case"string":
m = '"' + m.replace(/"/g, '\\"') + '"';
break;
case"object":
if(b.utils.exists(m)) {
m = b.utils.strings.jsonToString(m);
}
break;
}
if(a) {
if(typeof(m) != "function") {
k.push(String(m));
}
} else {
if(typeof(m) != "function") {
k.push('"' + n + '":' + String(m));
}
}
}
if(a) {
return"[" + String(k) + "]";
} else {
return"{" + String(k) + "}";
}
}
};
})(jwplayer);
(function(k) {
var j = new RegExp(/^(#|0x)[0-9a-fA-F]{3,6}/);
k.utils.typechecker = function(a, b) {
b = !k.utils.exists(b) ? f(a) : b;
return h(a, b);
};
function f(b) {
var a = ["true", "false", "t", "f"];
if(a.toString().indexOf(b.toLowerCase().replace(" ", "")) >= 0) {
return"boolean";
} else {
if(j.test(b)) {
return"color";
} else {
if(!isNaN(parseInt(b, 10)) && parseInt(b, 10).toString().length == b.length) {
return"integer";
} else {
if(!isNaN(parseFloat(b)) && parseFloat(b).toString().length == b.length) {
return"float";
}
}
}
}
return"string";
}
function h(a, b) {
if(!k.utils.exists(b)) {
return a;
}
switch(b) {
case"color":
if(a.length > 0) {
return g(a);
}
return null;
case"integer":
return parseInt(a, 10);
case"float":
return parseFloat(a);
case"boolean":
if(a.toLowerCase() == "true") {
return true;
} else {
if(a == "1") {
return true;
}
}
return false;
}
return a;
}
function g(a) {
switch(a.toLowerCase()) {
case"blue":
return parseInt("0000FF", 16);
case"green":
return parseInt("00FF00", 16);
case"red":
return parseInt("FF0000", 16);
case"cyan":
return parseInt("00FFFF", 16);
case"magenta":
return parseInt("FF00FF", 16);
case"yellow":
return parseInt("FFFF00", 16);
case"black":
return parseInt("000000", 16);
case"white":
return parseInt("FFFFFF", 16);
default:
a = a.replace(/(#|0x)?([0-9A-F]{3,6})$/gi, "$2");
if(a.length == 3) {
a = a.charAt(0) + a.charAt(0) + a.charAt(1) + a.charAt(1) + a.charAt(2) + a.charAt(2);
}
return parseInt(a, 16);
}
return parseInt("000000", 16);
}
})(jwplayer);
(function(b) {
b.utils.parsers = function() {
};
b.utils.parsers.localName = function(a) {
if(!a) {
return"";
} else {
if(a.localName) {
return a.localName;
} else {
if(a.baseName) {
return a.baseName;
} else {
return"";
}
}
}
};
b.utils.parsers.textContent = function(a) {
if(!a) {
return"";
} else {
if(a.textContent) {
return a.textContent;
} else {
if(a.text) {
return a.text;
} else {
return"";
}
}
}
};
})(jwplayer);
(function(b) {
b.utils.parsers.jwparser = function() {
};
b.utils.parsers.jwparser.PREFIX = "jwplayer";
b.utils.parsers.jwparser.parseEntry = function(f, e) {
for(var a = 0; a < f.childNodes.length; a++) {
if(f.childNodes[a].prefix == b.utils.parsers.jwparser.PREFIX) {
e[b.utils.parsers.localName(f.childNodes[a])] = b.utils.strings.serialize(b.utils.parsers.textContent(f.childNodes[a]));
}
if(!e.file && String(e.link).toLowerCase().indexOf("youtube") > -1) {
e.file = e.link;
}
}
return e;
};
b.utils.parsers.jwparser.getProvider = function(d) {
if(d.type) {
return d.type;
} else {
if(d.file.indexOf("youtube.com/w") > -1 || d.file.indexOf("youtube.com/v") > -1 || d.file.indexOf("youtu.be/") > -1) {
return"youtube";
} else {
if(d.streamer && d.streamer.indexOf("rtmp") == 0) {
return"rtmp";
} else {
if(d.streamer && d.streamer.indexOf("http") == 0) {
return"http";
} else {
var a = b.utils.strings.extension(d.file);
if(extensions.hasOwnProperty(a)) {
return extensions[a];
}
}
}
}
}
return"";
};
})(jwplayer);
(function(b) {
b.utils.parsers.mediaparser = function() {
};
b.utils.parsers.mediaparser.PREFIX = "media";
b.utils.parsers.mediaparser.parseGroup = function(j, g) {
var h = false;
for(var k = 0; k < j.childNodes.length; k++) {
if(j.childNodes[k].prefix == b.utils.parsers.mediaparser.PREFIX) {
if(!b.utils.parsers.localName(j.childNodes[k])) {
continue;
}
switch(b.utils.parsers.localName(j.childNodes[k]).toLowerCase()) {
case"content":
if(!h) {
g.file = b.utils.strings.xmlAttribute(j.childNodes[k], "url");
}
if(b.utils.strings.xmlAttribute(j.childNodes[k], "duration")) {
g.duration = b.utils.strings.seconds(b.utils.strings.xmlAttribute(j.childNodes[k], "duration"));
}
if(b.utils.strings.xmlAttribute(j.childNodes[k], "start")) {
g.start = b.utils.strings.seconds(b.utils.strings.xmlAttribute(j.childNodes[k], "start"));
}
if(j.childNodes[k].childNodes && j.childNodes[k].childNodes.length > 0) {
g = b.utils.parsers.mediaparser.parseGroup(j.childNodes[k], g);
}
if(b.utils.strings.xmlAttribute(j.childNodes[k], "width") || b.utils.strings.xmlAttribute(j.childNodes[k], "bitrate") || b.utils.strings.xmlAttribute(j.childNodes[k], "url")) {
if(!g.levels) {
g.levels = [];
}
g.levels.push({width: b.utils.strings.xmlAttribute(j.childNodes[k], "width"), bitrate: b.utils.strings.xmlAttribute(j.childNodes[k], "bitrate"), file: b.utils.strings.xmlAttribute(j.childNodes[k], "url")});
}
break;
case"title":
g.title = b.utils.parsers.textContent(j.childNodes[k]);
break;
case"description":
g.description = b.utils.parsers.textContent(j.childNodes[k]);
break;
case"keywords":
g.tags = b.utils.parsers.textContent(j.childNodes[k]);
break;
case"thumbnail":
g.image = b.utils.strings.xmlAttribute(j.childNodes[k], "url");
break;
case"credit":
g.author = b.utils.parsers.textContent(j.childNodes[k]);
break;
case"player":
var a = j.childNodes[k].url;
if(a.indexOf("youtube.com") >= 0 || a.indexOf("youtu.be") >= 0) {
h = true;
g.file = b.utils.strings.xmlAttribute(j.childNodes[k], "url");
}
break;
case"group":
b.utils.parsers.mediaparser.parseGroup(j.childNodes[k], g);
break;
}
}
}
return g;
};
})(jwplayer);
(function(c) {
c.utils.parsers.rssparser = function() {
};
c.utils.parsers.rssparser.parse = function(a) {
var h = [];
for(var b = 0; b < a.childNodes.length; b++) {
if(c.utils.parsers.localName(a.childNodes[b]).toLowerCase() == "channel") {
for(var g = 0; g < a.childNodes[b].childNodes.length; g++) {
if(c.utils.parsers.localName(a.childNodes[b].childNodes[g]).toLowerCase() == "item") {
h.push(d(a.childNodes[b].childNodes[g]));
}
}
}
}
return h;
};
function d(b) {
var a = {};
for(var f = 0; f < b.childNodes.length; f++) {
if(!c.utils.parsers.localName(b.childNodes[f])) {
continue;
}
switch(c.utils.parsers.localName(b.childNodes[f]).toLowerCase()) {
case"enclosure":
a.file = c.utils.strings.xmlAttribute(b.childNodes[f], "url");
break;
case"title":
a.title = c.utils.parsers.textContent(b.childNodes[f]);
break;
case"pubdate":
a.date = c.utils.parsers.textContent(b.childNodes[f]);
break;
case"description":
a.description = c.utils.parsers.textContent(b.childNodes[f]);
break;
case"link":
a.link = c.utils.parsers.textContent(b.childNodes[f]);
break;
case"category":
if(a.tags) {
a.tags += c.utils.parsers.textContent(b.childNodes[f]);
} else {
a.tags = c.utils.parsers.textContent(b.childNodes[f]);
}
break;
}
}
a = c.utils.parsers.mediaparser.parseGroup(b, a);
a = c.utils.parsers.jwparser.parseEntry(b, a);
return new c.html5.playlistitem(a);
}
})(jwplayer);
(function(e) {
var f = {};
var d = {};
e.plugins = function() {
};
e.plugins.loadPlugins = function(a, b) {
d[a] = new e.plugins.pluginloader(new e.plugins.model(f), b);
return d[a];
};
e.plugins.registerPlugin = function(a, c, j) {
var k = e.utils.getPluginName(a);
if(f[k]) {
f[k].registerPlugin(a, c, j);
} else {
e.utils.log("A plugin (" + a + ") was registered with the player that was not loaded. Please check your configuration.");
for(var b in d) {
d[b].pluginFailed();
}
}
};
})(jwplayer);
(function(b) {
b.plugins.model = function(a) {
this.addPlugin = function(f) {
var e = b.utils.getPluginName(f);
if(!a[e]) {
a[e] = new b.plugins.plugin(f);
}
return a[e];
};
};
})(jwplayer);
(function(b) {
b.plugins.pluginmodes = {FLASH: "FLASH", JAVASCRIPT: "JAVASCRIPT", HYBRID: "HYBRID"};
b.plugins.plugin = function(u) {
var s = "http://lp.longtailvideo.com";
var n = b.utils.loaderstatus.NEW;
var m;
var o;
var a;
var t = new b.events.eventdispatcher();
b.utils.extend(this, t);
function r() {
switch(b.utils.getPluginPathType(u)) {
case b.utils.pluginPathType.ABSOLUTE:
return u;
case b.utils.pluginPathType.RELATIVE:
return b.utils.getAbsolutePath(u, window.location.href);
case b.utils.pluginPathType.CDN:
var d = b.utils.getPluginName(u);
var e = b.utils.getPluginVersion(u);
var c = (window.location.href.indexOf("https://") == 0) ? s.replace("http://", "https://secure") : s;
return c + "/" + b.version.split(".")[0] + "/" + d + "/" + d + (e !== "" ? ("-" + e) : "") + ".js";
}
}
function p(c) {
a = setTimeout(function() {
n = b.utils.loaderstatus.COMPLETE;
t.sendEvent(b.events.COMPLETE);
}, 1000);
}
function q(c) {
n = b.utils.loaderstatus.ERROR;
t.sendEvent(b.events.ERROR);
}
this.load = function() {
if(n == b.utils.loaderstatus.NEW) {
if(u.lastIndexOf(".swf") > 0) {
m = u;
n = b.utils.loaderstatus.COMPLETE;
t.sendEvent(b.events.COMPLETE);
return;
}
n = b.utils.loaderstatus.LOADING;
var c = new b.utils.scriptloader(r());
c.addEventListener(b.events.COMPLETE, p);
c.addEventListener(b.events.ERROR, q);
c.load();
}
};
this.registerPlugin = function(d, e, c) {
if(a) {
clearTimeout(a);
a = undefined;
}
if(e && c) {
m = c;
o = e;
} else {
if(typeof e == "string") {
m = e;
} else {
if(typeof e == "function") {
o = e;
} else {
if(!e && !c) {
m = d;
}
}
}
}
n = b.utils.loaderstatus.COMPLETE;
t.sendEvent(b.events.COMPLETE);
};
this.getStatus = function() {
return n;
};
this.getPluginName = function() {
return b.utils.getPluginName(u);
};
this.getFlashPath = function() {
if(m) {
switch(b.utils.getPluginPathType(m)) {
case b.utils.pluginPathType.ABSOLUTE:
return m;
case b.utils.pluginPathType.RELATIVE:
if(u.lastIndexOf(".swf") > 0) {
return b.utils.getAbsolutePath(m, window.location.href);
}
return b.utils.getAbsolutePath(m, r());
case b.utils.pluginPathType.CDN:
if(m.indexOf("-") > -1) {
return m + "h";
}
return m + "-h";
}
}
return null;
};
this.getJS = function() {
return o;
};
this.getPluginmode = function() {
if(typeof m != "undefined" && typeof o != "undefined") {
return b.plugins.pluginmodes.HYBRID;
} else {
if(typeof m != "undefined") {
return b.plugins.pluginmodes.FLASH;
} else {
if(typeof o != "undefined") {
return b.plugins.pluginmodes.JAVASCRIPT;
}
}
}
};
this.getNewInstance = function(e, c, d) {
return new o(e, c, d);
};
this.getURL = function() {
return u;
};
};
})(jwplayer);
(function(b) {
b.plugins.pluginloader = function(m, p) {
var n = {};
var a = b.utils.loaderstatus.NEW;
var q = false;
var s = false;
var r = new b.events.eventdispatcher();
b.utils.extend(this, r);
function o() {
if(!s) {
s = true;
a = b.utils.loaderstatus.COMPLETE;
r.sendEvent(b.events.COMPLETE);
}
}
function l() {
if(!s) {
var c = 0;
for(plugin in n) {
var d = n[plugin].getStatus();
if(d == b.utils.loaderstatus.LOADING || d == b.utils.loaderstatus.NEW) {
c++;
}
}
if(c == 0) {
o();
}
}
}
this.setupPlugins = function(k, d, e) {
var c = {length: 0, plugins: {}};
var h = {length: 0, plugins: {}};
for(var j in n) {
var g = n[j].getPluginName();
if(n[j].getFlashPath()) {
c.plugins[n[j].getFlashPath()] = d.plugins[j];
c.plugins[n[j].getFlashPath()].pluginmode = n[j].getPluginmode();
c.length++;
}
if(n[j].getJS()) {
var f = document.createElement("div");
f.id = k.id + "_" + g;
f.style.position = "absolute";
f.style.zIndex = h.length + 10;
h.plugins[g] = n[j].getNewInstance(k, d.plugins[j], f);
h.length++;
if(typeof h.plugins[g].resize != "undefined") {
k.onReady(e(h.plugins[g], f, true));
k.onResize(e(h.plugins[g], f));
}
}
}
k.plugins = h.plugins;
return c;
};
this.load = function() {
a = b.utils.loaderstatus.LOADING;
q = true;
for(var c in p) {
if(b.utils.exists(c)) {
n[c] = m.addPlugin(c);
n[c].addEventListener(b.events.COMPLETE, l);
n[c].addEventListener(b.events.ERROR, l);
}
}
for(c in n) {
n[c].load();
}
q = false;
l();
};
this.pluginFailed = function() {
o();
};
this.getStatus = function() {
return a;
};
};
})(jwplayer);
(function(c) {
var d = [];
c.api = function(E) {
this.container = E;
this.id = E.id;
var v = {};
var G = {};
var b = {};
var F = [];
var A = undefined;
var x = false;
var z = [];
var t = c.utils.getOuterHTML(E);
var a = {};
var y = {};
this.getBuffer = function() {
return this.callInternal("jwGetBuffer");
};
this.getContainer = function() {
return this.container;
};
function D(e, f) {
return function(k, j, h, g) {
if(e.renderingMode == "flash" || e.renderingMode == "html5") {
var l;
if(j) {
y[k] = j;
l = "jwplayer('" + e.id + "').callback('" + k + "')";
} else {
if(!j && y[k]) {
delete y[k];
}
}
A.jwDockSetButton(k, l, h, g);
}
return f;
};
}
this.getPlugin = function(g) {
var e = this;
var f = {};
if(g == "dock") {
return c.utils.extend(f, {
setButton: D(e, f),
show: function() {
e.callInternal("jwDockShow");
return f;
},
hide: function() {
e.callInternal("jwDockHide");
return f;
},
onShow: function(h) {
e.componentListener("dock", c.api.events.JWPLAYER_COMPONENT_SHOW, h);
return f;
},
onHide: function(h) {
e.componentListener("dock", c.api.events.JWPLAYER_COMPONENT_HIDE, h);
return f;
}
});
} else {
if(g == "controlbar") {
return c.utils.extend(f, {
show: function() {
e.callInternal("jwControlbarShow");
return f;
},
hide: function() {
e.callInternal("jwControlbarHide");
return f;
},
onShow: function(h) {
e.componentListener("controlbar", c.api.events.JWPLAYER_COMPONENT_SHOW, h);
return f;
},
onHide: function(h) {
e.componentListener("controlbar", c.api.events.JWPLAYER_COMPONENT_HIDE, h);
return f;
}
});
} else {
if(g == "display") {
return c.utils.extend(f, {
show: function() {
e.callInternal("jwDisplayShow");
return f;
},
hide: function() {
e.callInternal("jwDisplayHide");
return f;
},
onShow: function(h) {
e.componentListener("display", c.api.events.JWPLAYER_COMPONENT_SHOW, h);
return f;
},
onHide: function(h) {
e.componentListener("display", c.api.events.JWPLAYER_COMPONENT_HIDE, h);
return f;
}
});
} else {
return this.plugins[g];
}
}
}
};
this.callback = function(e) {
if(y[e]) {
return y[e]();
}
};
this.getDuration = function() {
return this.callInternal("jwGetDuration");
};
this.getFullscreen = function() {
return this.callInternal("jwGetFullscreen");
};
this.getHeight = function() {
return this.callInternal("jwGetHeight");
};
this.getLockState = function() {
return this.callInternal("jwGetLockState");
};
this.getMeta = function() {
return this.getItemMeta();
};
this.getMute = function() {
return this.callInternal("jwGetMute");
};
this.getPlaylist = function() {
var e = this.callInternal("jwGetPlaylist");
if(this.renderingMode == "flash") {
c.utils.deepReplaceKeyName(e, "__dot__", ".");
}
for(var f = 0; f < e.length; f++) {
if(!c.utils.exists(e[f].index)) {
e[f].index = f;
}
}
return e;
};
this.getPlaylistItem = function(e) {
if(!c.utils.exists(e)) {
e = this.getCurrentItem();
}
return this.getPlaylist()[e];
};
this.getPosition = function() {
return this.callInternal("jwGetPosition");
};
this.getRenderingMode = function() {
return this.renderingMode;
};
this.getState = function() {
return this.callInternal("jwGetState");
};
this.getVolume = function() {
return this.callInternal("jwGetVolume");
};
this.getWidth = function() {
return this.callInternal("jwGetWidth");
};
this.setFullscreen = function(e) {
if(!c.utils.exists(e)) {
this.callInternal("jwSetFullscreen", !this.callInternal("jwGetFullscreen"));
} else {
this.callInternal("jwSetFullscreen", e);
}
return this;
};
this.setMute = function(e) {
if(!c.utils.exists(e)) {
this.callInternal("jwSetMute", !this.callInternal("jwGetMute"));
} else {
this.callInternal("jwSetMute", e);
}
return this;
};
this.lock = function() {
return this;
};
this.unlock = function() {
return this;
};
this.load = function(e) {
this.callInternal("jwLoad", e);
return this;
};
this.playlistItem = function(e) {
this.callInternal("jwPlaylistItem", e);
return this;
};
this.playlistPrev = function() {
this.callInternal("jwPlaylistPrev");
return this;
};
this.playlistNext = function() {
this.callInternal("jwPlaylistNext");
return this;
};
this.resize = function(f, g) {
if(this.renderingMode == "html5") {
A.jwResize(f, g);
} else {
this.container.width = f;
this.container.height = g;
var e = document.getElementById(this.id + "_wrapper");
if(e) {
e.style.width = f + "px";
e.style.height = g + "px";
}
}
return this;
};
this.play = function(e) {
if(typeof e == "undefined") {
e = this.getState();
if(e == c.api.events.state.PLAYING || e == c.api.events.state.BUFFERING) {
this.callInternal("jwPause");
} else {
this.callInternal("jwPlay");
}
} else {
this.callInternal("jwPlay", e);
}
return this;
};
this.pause = function(e) {
if(typeof e == "undefined") {
e = this.getState();
if(e == c.api.events.state.PLAYING || e == c.api.events.state.BUFFERING) {
this.callInternal("jwPause");
} else {
this.callInternal("jwPlay");
}
} else {
this.callInternal("jwPause", e);
}
return this;
};
this.stop = function() {
this.callInternal("jwStop");
return this;
};
this.seek = function(e) {
this.callInternal("jwSeek", e);
return this;
};
this.setVolume = function(e) {
this.callInternal("jwSetVolume", e);
return this;
};
this.onBufferChange = function(e) {
return this.eventListener(c.api.events.JWPLAYER_MEDIA_BUFFER, e);
};
this.onBufferFull = function(e) {
return this.eventListener(c.api.events.JWPLAYER_MEDIA_BUFFER_FULL, e);
};
this.onError = function(e) {
return this.eventListener(c.api.events.JWPLAYER_ERROR, e);
};
this.onFullscreen = function(e) {
return this.eventListener(c.api.events.JWPLAYER_FULLSCREEN, e);
};
this.onMeta = function(e) {
return this.eventListener(c.api.events.JWPLAYER_MEDIA_META, e);
};
this.onMute = function(e) {
return this.eventListener(c.api.events.JWPLAYER_MEDIA_MUTE, e);
};
this.onPlaylist = function(e) {
return this.eventListener(c.api.events.JWPLAYER_PLAYLIST_LOADED, e);
};
this.onPlaylistItem = function(e) {
return this.eventListener(c.api.events.JWPLAYER_PLAYLIST_ITEM, e);
};
this.onReady = function(e) {
return this.eventListener(c.api.events.API_READY, e);
};
this.onResize = function(e) {
return this.eventListener(c.api.events.JWPLAYER_RESIZE, e);
};
this.onComplete = function(e) {
return this.eventListener(c.api.events.JWPLAYER_MEDIA_COMPLETE, e);
};
this.onSeek = function(e) {
return this.eventListener(c.api.events.JWPLAYER_MEDIA_SEEK, e);
};
this.onTime = function(e) {
return this.eventListener(c.api.events.JWPLAYER_MEDIA_TIME, e);
};
this.onVolume = function(e) {
return this.eventListener(c.api.events.JWPLAYER_MEDIA_VOLUME, e);
};
this.onBuffer = function(e) {
return this.stateListener(c.api.events.state.BUFFERING, e);
};
this.onPause = function(e) {
return this.stateListener(c.api.events.state.PAUSED, e);
};
this.onPlay = function(e) {
return this.stateListener(c.api.events.state.PLAYING, e);
};
this.onIdle = function(e) {
return this.stateListener(c.api.events.state.IDLE, e);
};
this.remove = function() {
v = {};
z = [];
if(c.utils.getOuterHTML(this.container) != t) {
c.api.destroyPlayer(this.id, t);
}
};
this.setup = function(f) {
if(c.embed) {
var g = this.id;
this.remove();
var e = c(g);
e.config = f;
return new c.embed(e);
}
return this;
};
this.registerPlugin = function(e, f, g) {
c.plugins.registerPlugin(e, f, g);
};
this.setPlayer = function(f, e) {
A = f;
this.renderingMode = e;
};
this.stateListener = function(f, e) {
if(!G[f]) {
G[f] = [];
this.eventListener(c.api.events.JWPLAYER_PLAYER_STATE, B(f));
}
G[f].push(e);
return this;
};
this.detachMedia = function() {
if(this.renderingMode == "html5") {
return this.callInternal("jwDetachMedia");
}
};
this.attachMedia = function() {
if(this.renderingMode == "html5") {
return this.callInternal("jwAttachMedia");
}
};
function B(e) {
return function(h) {
var j = h.newstate,
f = h.oldstate;
if(j == e) {
var g = G[j];
if(g) {
for(var k = 0; k < g.length; k++) {
if(typeof g[k] == "function") {
g[k].call(this, {oldstate: f, newstate: j});
}
}
}
}
};
}
this.componentListener = function(g, f, e) {
if(!b[g]) {
b[g] = {};
}
if(!b[g][f]) {
b[g][f] = [];
this.eventListener(f, w(g, f));
}
b[g][f].push(e);
return this;
};
function w(f, e) {
return function(h) {
if(f == h.component) {
var j = b[f][e];
if(j) {
for(var g = 0; g < j.length; g++) {
if(typeof j[g] == "function") {
j[g].call(this, h);
}
}
}
}
};
}
this.addInternalListener = function(f, e) {
f.jwAddEventListener(e, 'function(dat) { jwplayer("' + this.id + '").dispatchEvent("' + e + '", dat); }');
};
this.eventListener = function(f, e) {
if(!v[f]) {
v[f] = [];
if(A && x) {
this.addInternalListener(A, f);
}
}
v[f].push(e);
return this;
};
this.dispatchEvent = function(e) {
if(v[e]) {
var f = C(e, arguments[1]);
for(var g = 0; g < v[e].length; g++) {
if(typeof v[e][g] == "function") {
v[e][g].call(this, f);
}
}
}
};
function C(g, j) {
var e = c.utils.extend({}, j);
if(g == c.api.events.JWPLAYER_FULLSCREEN && !e.fullscreen) {
e.fullscreen = e.message == "true" ? true : false;
delete e.message;
} else {
if(typeof e.data == "object") {
e = c.utils.extend(e, e.data);
delete e.data;
}
}
var h = ["position", "duration", "offset"];
for(var f in h) {
if(e[h[f]]) {
e[h[f]] = Math.round(e[h[f]] * 1000) / 1000;
}
}
return e;
}
this.callInternal = function(e, f) {
if(x) {
if(typeof A != "undefined" && typeof A[e] == "function") {
if(c.utils.exists(f)) {
return(A[e])(f);
} else {
return(A[e])();
}
}
return null;
} else {
z.push({method: e, parameters: f});
}
};
this.playerReady = function(e) {
x = true;
if(!A) {
this.setPlayer(document.getElementById(e.id));
}
this.container = document.getElementById(this.id);
for(var g in v) {
this.addInternalListener(A, g);
}
this.eventListener(c.api.events.JWPLAYER_PLAYLIST_ITEM, function(h) {
a = {};
});
this.eventListener(c.api.events.JWPLAYER_MEDIA_META, function(h) {
c.utils.extend(a, h.metadata);
});
this.dispatchEvent(c.api.events.API_READY);
while(z.length > 0) {
var f = z.shift();
this.callInternal(f.method, f.parameters);
}
};
this.getItemMeta = function() {
return a;
};
this.getCurrentItem = function() {
return this.callInternal("jwGetPlaylistIndex");
};
function u(g, e, f) {
var j = [];
if(!e) {
e = 0;
}
if(!f) {
f = g.length - 1;
}
for(var h = e; h <= f; h++) {
j.push(g[h]);
}
return j;
}
return this;
};
c.api.selectPlayer = function(b) {
var f;
if(!c.utils.exists(b)) {
b = 0;
}
if(b.nodeType) {
f = b;
} else {
if(typeof b == "string") {
f = document.getElementById(b);
}
}
if(f) {
var a = c.api.playerById(f.id);
if(a) {
return a;
} else {
return c.api.addPlayer(new c.api(f));
}
} else {
if(typeof b == "number") {
return c.getPlayers()[b];
}
}
return null;
};
c.api.events = {API_READY: "jwplayerAPIReady", JWPLAYER_READY: "jwplayerReady", JWPLAYER_FULLSCREEN: "jwplayerFullscreen", JWPLAYER_RESIZE: "jwplayerResize", JWPLAYER_ERROR: "jwplayerError", JWPLAYER_COMPONENT_SHOW: "jwplayerComponentShow", JWPLAYER_COMPONENT_HIDE: "jwplayerComponentHide", JWPLAYER_MEDIA_BUFFER: "jwplayerMediaBuffer", JWPLAYER_MEDIA_BUFFER_FULL: "jwplayerMediaBufferFull", JWPLAYER_MEDIA_ERROR: "jwplayerMediaError", JWPLAYER_MEDIA_LOADED: "jwplayerMediaLoaded", JWPLAYER_MEDIA_COMPLETE: "jwplayerMediaComplete", JWPLAYER_MEDIA_SEEK: "jwplayerMediaSeek", JWPLAYER_MEDIA_TIME: "jwplayerMediaTime", JWPLAYER_MEDIA_VOLUME: "jwplayerMediaVolume", JWPLAYER_MEDIA_META: "jwplayerMediaMeta", JWPLAYER_MEDIA_MUTE: "jwplayerMediaMute", JWPLAYER_PLAYER_STATE: "jwplayerPlayerState", JWPLAYER_PLAYLIST_LOADED: "jwplayerPlaylistLoaded", JWPLAYER_PLAYLIST_ITEM: "jwplayerPlaylistItem"};
c.api.events.state = {BUFFERING: "BUFFERING", IDLE: "IDLE", PAUSED: "PAUSED", PLAYING: "PLAYING"};
c.api.playerById = function(a) {
for(var b = 0; b < d.length; b++) {
if(d[b].id == a) {
return d[b];
}
}
return null;
};
c.api.addPlayer = function(b) {
for(var a = 0; a < d.length; a++) {
if(d[a] == b) {
return b;
}
}
d.push(b);
return b;
};
c.api.destroyPlayer = function(k, n) {
var l = -1;
for(var a = 0; a < d.length; a++) {
if(d[a].id == k) {
l = a;
continue;
}
}
if(l >= 0) {
var o = document.getElementById(d[l].id);
if(document.getElementById(d[l].id + "_wrapper")) {
o = document.getElementById(d[l].id + "_wrapper");
}
if(o) {
if(n) {
c.utils.setOuterHTML(o, n);
} else {
var b = document.createElement("div");
var m = o.id;
if(o.id.indexOf("_wrapper") == o.id.length - 8) {
newID = o.id.substring(0, o.id.length - 8);
}
b.setAttribute("id", m);
o.parentNode.replaceChild(b, o);
}
}
d.splice(l, 1);
}
return null;
};
c.getPlayers = function() {
return d.slice(0);
};
})(jwplayer);
var _userPlayerReady = (typeof playerReady == "function") ? playerReady : undefined;
playerReady = function(c) {
var d = jwplayer.api.playerById(c.id);
if(d) {
d.playerReady(c);
} else {
jwplayer.api.selectPlayer(c.id).playerReady(c);
}
if(_userPlayerReady) {
_userPlayerReady.call(this, c);
}
};
(function(e) {
var f = e.utils;
e.embed = function(c) {
var a = {width: 400, height: 300, components: {controlbar: {position: "over"}}};
var l = f.mediaparser.parseMedia(c.container);
var m = new e.embed.config(f.extend(a, l, c.config), this);
var b = e.plugins.loadPlugins(c.id, m.plugins);
function o(j, g) {
for(var h in g) {
if(typeof j[h] == "function") {
(j[h]).call(j, g[h]);
}
}
}
function n() {
if(b.getStatus() == f.loaderstatus.COMPLETE) {
for(var u = 0; u < m.modes.length; u++) {
if(m.modes[u].type && e.embed[m.modes[u].type]) {
var j = m.modes[u].config;
var x = m;
if(j) {
x = f.extend(f.clone(m), j);
var y = ["file", "levels", "playlist"];
for(var v = 0; v < y.length; v++) {
var h = y[v];
if(f.exists(j[h])) {
for(var w = 0; w < y.length; w++) {
if(w != v) {
var k = y[w];
if(f.exists(x[k]) && !f.exists(j[k])) {
delete x[k];
}
}
}
}
}
}
var g = new e.embed[m.modes[u].type](document.getElementById(c.id), m.modes[u], x, b, c);
if(g.supportsConfig()) {
g.embed();
o(c, m.events);
return c;
}
}
}
f.log("No suitable players found");
new e.embed.logo(f.extend({hide: true}, m.components.logo), "none", c.id);
}
}
b.addEventListener(e.events.COMPLETE, n);
b.addEventListener(e.events.ERROR, n);
b.load();
return c;
};
function d() {
if(!document.body) {
return setTimeout(d, 15);
}
var c = f.selectors.getElementsByTagAndClass("video", "jwplayer");
for(var b = 0; b < c.length; b++) {
var a = c[b];
if(a.id == "") {
a.id = "jwplayer_" + Math.round(Math.random() * 100000);
}
e(a.id).setup({});
}
}
d();
})(jwplayer);
(function(o) {
function l() {
return[{type: "flash", src: "/jwplayer/player.swf"}, {type: "html5"}, {type: "download"}];
}
var s = {players: "modes", autoplay: "autostart"};
function r(d) {
var a = d.toLowerCase();
var b = ["left", "right", "top", "bottom"];
for(var c = 0; c < b.length; c++) {
if(a == b[c]) {
return true;
}
}
return false;
}
function q(a) {
var b = false;
b = (a instanceof Array) || (typeof a == "object" && !a.position && !a.size);
return b;
}
function k(a) {
if(typeof a == "string") {
if(parseInt(a).toString() == a || a.toLowerCase().indexOf("px") > -1) {
return parseInt(a);
}
}
return a;
}
var m = ["playlist", "dock", "controlbar", "logo", "display"];
function n(c) {
var e = {};
switch(o.utils.typeOf(c.plugins)) {
case"object":
for(var a in c.plugins) {
e[o.utils.getPluginName(a)] = a;
}
break;
case"string":
var d = c.plugins.split(",");
for(var b = 0; b < d.length; b++) {
e[o.utils.getPluginName(d[b])] = d[b];
}
break;
}
return e;
}
function p(e, f, a, c) {
if(o.utils.typeOf(e[f]) != "object") {
e[f] = {};
}
var b = e[f][a];
if(o.utils.typeOf(b) != "object") {
e[f][a] = b = {};
}
if(c) {
if(f == "plugins") {
var d = o.utils.getPluginName(a);
b[c] = e[d + "." + c];
delete e[d + "." + c];
} else {
b[c] = e[a + "." + c];
delete e[a + "." + c];
}
}
}
o.embed.deserialize = function(b) {
var a = n(b);
for(var c in a) {
p(b, "plugins", a[c]);
}
for(var d in b) {
if(d.indexOf(".") > -1) {
var e = d.split(".");
var f = e[0];
var d = e[1];
if(o.utils.isInArray(m, f)) {
p(b, "components", f, d);
} else {
if(a[f]) {
p(b, "plugins", a[f], d);
}
}
}
}
return b;
};
o.embed.config = function(h, j) {
var v = o.utils.extend({}, h);
var a;
if(q(v.playlist)) {
a = v.playlist;
delete v.playlist;
}
v = o.embed.deserialize(v);
v.height = k(v.height);
v.width = k(v.width);
if(typeof v.plugins == "string") {
var g = v.plugins.split(",");
if(typeof v.plugins != "object") {
v.plugins = {};
}
for(var c = 0; c < g.length; c++) {
var b = o.utils.getPluginName(g[c]);
if(typeof v[b] == "object") {
v.plugins[g[c]] = v[b];
delete v[b];
} else {
v.plugins[g[c]] = {};
}
}
}
for(var w = 0; w < m.length; w++) {
var d = m[w];
if(o.utils.exists(v[d])) {
if(typeof v[d] != "object") {
if(!v.components[d]) {
v.components[d] = {};
}
if(d == "logo") {
v.components[d].file = v[d];
} else {
v.components[d].position = v[d];
}
delete v[d];
} else {
if(!v.components[d]) {
v.components[d] = {};
}
o.utils.extend(v.components[d], v[d]);
delete v[d];
}
}
if(typeof v[d + "size"] != "undefined") {
if(!v.components[d]) {
v.components[d] = {};
}
v.components[d].size = v[d + "size"];
delete v[d + "size"];
}
}
if(typeof v.icons != "undefined") {
if(!v.components.display) {
v.components.display = {};
}
v.components.display.icons = v.icons;
delete v.icons;
}
for(var e in s) {
if(v[e]) {
if(!v[s[e]]) {
v[s[e]] = v[e];
}
delete v[e];
}
}
var f;
if(v.flashplayer && !v.modes) {
f = l();
f[0].src = v.flashplayer;
delete v.flashplayer;
} else {
if(v.modes) {
if(typeof v.modes == "string") {
f = l();
f[0].src = v.modes;
} else {
if(v.modes instanceof Array) {
f = v.modes;
} else {
if(typeof v.modes == "object" && v.modes.type) {
f = [v.modes];
}
}
}
delete v.modes;
} else {
f = l();
}
}
v.modes = f;
if(a) {
v.playlist = a;
}
return v;
};
})(jwplayer);
(function(b) {
b.embed.download = function(m, h, a, l, j) {
this.embed = function() {
var x = b.utils.extend({}, a);
var d = {};
var y = a.width ? a.width : 480;
if(typeof y != "number") {
y = parseInt(y, 10);
}
var v = a.height ? a.height : 320;
if(typeof v != "number") {
v = parseInt(v, 10);
}
var A,
f,
g;
var C = {};
if(a.playlist && a.playlist.length) {
C.file = a.playlist[0].file;
f = a.playlist[0].image;
C.levels = a.playlist[0].levels;
} else {
C.file = a.file;
f = a.image;
C.levels = a.levels;
}
if(C.file) {
A = C.file;
} else {
if(C.levels && C.levels.length) {
A = C.levels[0].file;
}
}
g = A ? "pointer" : "auto";
var w = {display: {style: {cursor: g, width: y, height: v, backgroundColor: "#000", position: "relative", textDecoration: "none", border: "none", display: "block"}}, display_icon: {style: {cursor: g, position: "absolute", display: A ? "block" : "none", top: 0, left: 0, border: 0, margin: 0, padding: 0, zIndex: 3, width: 50, height: 50, backgroundImage: "url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAALdJREFUeNrs18ENgjAYhmFouDOCcQJGcARHgE10BDcgTOIosAGwQOuPwaQeuFRi2p/3Sb6EC5L3QCxZBgAAAOCorLW1zMn65TrlkH4NcV7QNcUQt7Gn7KIhxA+qNIR81spOGkL8oFJDyLJRdosqKDDkK+iX5+d7huzwM40xptMQMkjIOeRGo+VkEVvIPfTGIpKASfYIfT9iCHkHrBEzf4gcUQ56aEzuGK/mw0rHpy4AAACAf3kJMACBxjAQNRckhwAAAABJRU5ErkJggg==)"}}, display_iconBackground: {style: {cursor: g, position: "absolute", display: A ? "block" : "none", top: ((v - 50) / 2), left: ((y - 50) / 2), border: 0, width: 50, height: 50, margin: 0, padding: 0, zIndex: 2, backgroundImage: "url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAEpJREFUeNrszwENADAIA7DhX8ENoBMZ5KR10EryckCJiIiIiIiIiIiIiIiIiIiIiIh8GmkRERERERERERERERERERERERGRHSPAAPlXH1phYpYaAAAAAElFTkSuQmCC)"}}, display_image: {style: {width: y, height: v, display: f ? "block" : "none", position: "absolute", cursor: g, left: 0, top: 0, margin: 0, padding: 0, textDecoration: "none", zIndex: 1, border: "none"}}};
var z = function(p, n, q) {
var o = document.createElement(p);
if(q) {
o.id = q;
} else {
o.id = m.id + "_jwplayer_" + n;
}
b.utils.css(o, w[n].style);
return o;
};
d.display = z("a", "display", m.id);
if(A) {
d.display.setAttribute("href", b.utils.getAbsolutePath(A));
}
d.display_image = z("img", "display_image");
d.display_image.setAttribute("alt", "Click to download...");
if(f) {
d.display_image.setAttribute("src", b.utils.getAbsolutePath(f));
}
if(true) {
d.display_icon = z("div", "display_icon");
d.display_iconBackground = z("div", "display_iconBackground");
d.display.appendChild(d.display_image);
d.display_iconBackground.appendChild(d.display_icon);
d.display.appendChild(d.display_iconBackground);
}
_css = b.utils.css;
_hide = function(n) {
_css(n, {display: "none"});
};
function c(n) {
_imageWidth = d.display_image.naturalWidth;
_imageHeight = d.display_image.naturalHeight;
B();
}
function B() {
b.utils.stretch(b.utils.stretching.UNIFORM, d.display_image, y, v, _imageWidth, _imageHeight);
}
d.display_image.onerror = function(n) {
_hide(d.display_image);
};
d.display_image.onload = c;
m.parentNode.replaceChild(d.display, m);
var e = (a.plugins && a.plugins.logo) ? a.plugins.logo : {};
d.display.appendChild(new b.embed.logo(a.components.logo, "download", m.id));
j.container = document.getElementById(j.id);
j.setPlayer(d.display, "download");
};
this.supportsConfig = function() {
if(a) {
var c = b.utils.getFirstPlaylistItemFromConfig(a);
if(typeof c.file == "undefined" && typeof c.levels == "undefined") {
return true;
} else {
if(c.file) {
return k(c.file, c.provider, c.playlistfile);
} else {
if(c.levels && c.levels.length) {
for(var d = 0; d < c.levels.length; d++) {
if(c.levels[d].file && k(c.levels[d].file, c.provider, c.playlistfile)) {
return true;
}
}
}
}
}
} else {
return true;
}
};
function k(f, d, g) {
if(g) {
return false;
}
var e = ["image", "sound", "youtube", "http"];
if(d && (e.toString().indexOf(d) > -1)) {
return true;
}
if(!d || (d && d == "video")) {
var c = b.utils.extension(f);
if(c && b.utils.extensionmap[c]) {
return true;
}
}
return false;
}
};
})(jwplayer);
(function(b) {
b.embed.flash = function(s, r, n, t, p) {
function a(e, f, d) {
var c = document.createElement("param");
c.setAttribute("name", f);
c.setAttribute("value", d);
e.appendChild(c);
}
function o(d, c, e) {
return function(h) {
if(e) {
document.getElementById(p.id + "_wrapper").appendChild(c);
}
var f = document.getElementById(p.id).getPluginConfig("display");
d.resize(f.width, f.height);
var g = {left: f.x, top: f.y};
b.utils.css(c, g);
};
}
function u(e) {
if(!e) {
return{};
}
var c = {};
for(var f in e) {
var g = e[f];
for(var d in g) {
c[f + "." + d] = g[d];
}
}
return c;
}
function q(e, f) {
if(e[f]) {
var c = e[f];
for(var g in c) {
var h = c[g];
if(typeof h == "string") {
if(!e[g]) {
e[g] = h;
}
} else {
for(var d in h) {
if(!e[g + "." + d]) {
e[g + "." + d] = h[d];
}
}
}
}
delete e[f];
}
}
function w(f) {
if(!f) {
return{};
}
var c = {},
d = [];
for(var j in f) {
var g = b.utils.getPluginName(j);
var h = f[j];
d.push(j);
for(var e in h) {
c[g + "." + e] = h[e];
}
}
c.plugins = d.join(",");
return c;
}
function v(c) {
var e = c.netstreambasepath ? "" : "netstreambasepath=" + encodeURIComponent(window.location.href.split("#")[0]) + "&";
for(var d in c) {
if(typeof(c[d]) == "object") {
e += d + "=" + encodeURIComponent("[[JSON]]" + b.utils.strings.jsonToString(c[d])) + "&";
} else {
e += d + "=" + encodeURIComponent(c[d]) + "&";
}
}
return e.substring(0, e.length - 1);
}
this.embed = function() {
n.id = p.id;
var h;
var d = b.utils.extend({}, n);
var g = d.width;
var k = d.height;
if(s.id + "_wrapper" == s.parentNode.id) {
h = document.getElementById(s.id + "_wrapper");
} else {
h = document.createElement("div");
h.id = s.id + "_wrapper";
b.utils.wrap(s, h);
b.utils.css(h, {position: "relative", width: g, height: k});
}
var f = t.setupPlugins(p, d, o);
if(f.length > 0) {
b.utils.extend(d, w(f.plugins));
} else {
delete d.plugins;
}
var c = ["height", "width", "modes", "events"];
for(var m = 0; m < c.length; m++) {
delete d[c[m]];
}
var e = "opaque";
if(d.wmode) {
e = d.wmode;
}
q(d, "components");
q(d, "providers");
if(typeof d["dock.position"] != "undefined") {
if(d["dock.position"].toString().toLowerCase() == "false") {
d.dock = d["dock.position"];
delete d["dock.position"];
}
}
var j = "#000000";
var z;
if(b.utils.isIE()) {
var l = '";
b.utils.setOuterHTML(s, l);
z = document.getElementById(s.id);
} else {
var A = document.createElement("object");
A.setAttribute("type", "application/x-shockwave-flash");
A.setAttribute("data", r.src);
A.setAttribute("width", "100%");
A.setAttribute("height", "100%");
A.setAttribute("bgcolor", "#000000");
A.setAttribute("id", s.id);
A.setAttribute("name", s.id);
A.setAttribute("tabindex", 0);
a(A, "allowfullscreen", "true");
a(A, "allowscriptaccess", "always");
a(A, "seamlesstabbing", "true");
a(A, "wmode", e);
a(A, "flashvars", v(d));
s.parentNode.replaceChild(A, s);
z = A;
}
p.container = z;
p.setPlayer(z, "flash");
};
this.supportsConfig = function() {
if(b.utils.hasFlash()) {
if(n) {
var c = b.utils.getFirstPlaylistItemFromConfig(n);
if(typeof c.file == "undefined" && typeof c.levels == "undefined") {
return true;
} else {
if(c.file) {
return flashCanPlay(c.file, c.provider);
} else {
if(c.levels && c.levels.length) {
for(var d = 0; d < c.levels.length; d++) {
if(c.levels[d].file && flashCanPlay(c.levels[d].file, c.provider)) {
return true;
}
}
}
}
}
} else {
return true;
}
}
return false;
};
flashCanPlay = function(f, d) {
var e = ["video", "http", "sound", "image"];
if(d && (e.toString().indexOf(d < 0))) {
return true;
}
var c = b.utils.extension(f);
if(!c) {
return true;
}
if(b.utils.exists(b.utils.extensionmap[c]) && !b.utils.exists(b.utils.extensionmap[c].flash)) {
return false;
}
return true;
};
};
})(jwplayer);
(function(b) {
b.embed.html5 = function(m, h, a, l, j) {
function k(d, c, e) {
return function(g) {
var f = document.getElementById(m.id + "_displayarea");
if(e) {
f.appendChild(c);
}
d.resize(f.clientWidth, f.clientHeight);
c.left = f.style.left;
c.top = f.style.top;
};
}
this.embed = function() {
if(b.html5) {
l.setupPlugins(j, a, k);
m.innerHTML = "";
var e = b.utils.extend({screencolor: "0x000000"}, a);
var f = ["plugins", "modes", "events"];
for(var d = 0; d < f.length; d++) {
delete e[f[d]];
}
if(e.levels && !e.sources) {
e.sources = a.levels;
}
if(e.skin && e.skin.toLowerCase().indexOf(".zip") > 0) {
e.skin = e.skin.replace(/\.zip/i, ".xml");
}
var c = new (b.html5(m)).setup(e);
j.container = document.getElementById(j.id);
j.setPlayer(c, "html5");
} else {
return null;
}
};
this.supportsConfig = function() {
if(!!b.vid.canPlayType) {
if(a) {
var c = b.utils.getFirstPlaylistItemFromConfig(a);
if(typeof c.file == "undefined" && typeof c.levels == "undefined") {
return true;
} else {
if(c.file) {
return html5CanPlay(b.vid, c.file, c.provider, c.playlistfile);
} else {
if(c.levels && c.levels.length) {
for(var d = 0; d < c.levels.length; d++) {
if(c.levels[d].file && html5CanPlay(b.vid, c.levels[d].file, c.provider, c.playlistfile)) {
return true;
}
}
}
}
}
} else {
return true;
}
}
return false;
};
html5CanPlay = function(e, f, d, g) {
if(g) {
return false;
}
if(d && d == "youtube") {
return true;
}
if(d && d != "video" && d != "http" && d != "sound") {
return false;
}
var c = b.utils.extension(f);
if(!b.utils.exists(c) || !b.utils.exists(b.utils.extensionmap[c])) {
return true;
}
if(!b.utils.exists(b.utils.extensionmap[c].html5)) {
return false;
}
if(b.utils.isLegacyAndroid() && c.match(/m4v|mp4/)) {
return true;
}
return browserCanPlay(e, b.utils.extensionmap[c].html5);
};
browserCanPlay = function(c, d) {
if(!d) {
return true;
}
if(c.canPlayType(d)) {
return true;
} else {
if(d == "audio/mp3" && navigator.userAgent.match(/safari/i)) {
return c.canPlayType("audio/mpeg");
} else {
return false;
}
}
};
};
})(jwplayer);
(function(b) {
b.embed.logo = function(s, t, A) {
var v = {prefix: "http://l.longtailvideo.com/" + t + "/", file: "", link: "", margin: 8, out: 0.5, over: 1, timeout: 5, hide: false, position: "bottom-left"};
_css = b.utils.css;
var C;
var w;
u();
function u() {
q();
B();
y();
}
function q() {
if(v.prefix) {
var c = b.version.split(/\W/).splice(0, 2).join("/");
if(v.prefix.indexOf(c) < 0) {
v.prefix += c + "/";
}
}
w = b.utils.extend({}, v, s);
}
function a() {
var c = {border: "none", textDecoration: "none", position: "absolute", cursor: "pointer", zIndex: 10};
c.display = w.hide ? "none" : "block";
var d = w.position.toLowerCase().split("-");
for(var e in d) {
c[d[e]] = w.margin;
}
return c;
}
function B() {
C = document.createElement("img");
C.id = A + "_jwplayer_logo";
C.style.display = "none";
C.onload = function(c) {
_css(C, a());
z();
};
if(!w.file) {
return;
}
if(w.file.indexOf("http://") === 0) {
C.src = w.file;
} else {
C.src = w.prefix + w.file;
}
}
if(!w.file) {
return;
}
function y() {
if(w.link) {
C.onmouseover = x;
C.onmouseout = z;
C.onclick = r;
} else {
this.mouseEnabled = false;
}
}
function r(c) {
if(typeof c != "undefined") {
c.preventDefault();
c.stopPropagation();
}
if(w.link) {
window.open(w.link, "_blank");
}
return;
}
function z(c) {
if(w.link) {
C.style.opacity = w.out;
}
return;
}
function x(c) {
if(w.hide) {
C.style.opacity = w.over;
}
return;
}
return C;
};
})(jwplayer);
(function(b) {
b.html5 = function(a) {
var d = a;
this.setup = function(c) {
b.utils.extend(this, new b.html5.api(d, c));
return this;
};
return this;
};
})(jwplayer);
(function(e) {
var f = e.utils;
var d = f.css;
e.html5.view = function(R, T, ah) {
var J = R;
var aa = T;
var b = ah;
var c;
var ag;
var L;
var P;
var I;
var X;
var O;
var V = false;
var U,
Y;
function W() {
c = document.createElement("div");
c.id = aa.id;
c.className = aa.className;
_videowrapper = document.createElement("div");
_videowrapper.id = c.id + "_video_wrapper";
aa.id = c.id + "_video";
d(c, {position: "relative", height: b.height, width: b.width, padding: 0, backgroundColor: g(), zIndex: 0});
function g() {
if(J.skin.getComponentSettings("display") && J.skin.getComponentSettings("display").backgroundcolor) {
return J.skin.getComponentSettings("display").backgroundcolor;
}
return parseInt("000000", 16);
}
d(aa, {width: "100%", height: "100%", top: 0, left: 0, zIndex: 1, margin: "auto", display: "block"});
d(_videowrapper, {overflow: "hidden", position: "absolute", top: 0, left: 0, bottom: 0, right: 0});
f.wrap(aa, c);
f.wrap(aa, _videowrapper);
P = document.createElement("div");
P.id = c.id + "_displayarea";
c.appendChild(P);
}
function ad() {
for(var h = 0; h < b.plugins.order.length; h++) {
var g = b.plugins.order[h];
if(f.exists(b.plugins.object[g].getDisplayElement)) {
b.plugins.object[g].height = f.parseDimension(b.plugins.object[g].getDisplayElement().style.height);
b.plugins.object[g].width = f.parseDimension(b.plugins.object[g].getDisplayElement().style.width);
b.plugins.config[g].currentPosition = b.plugins.config[g].position;
}
}
K();
}
function ab(g) {
d(P, {display: (b.getMedia() && b.getMedia().hasChrome() && g.newstate != e.api.events.state.IDLE) ? "none" : "block"});
}
function K(j) {
var g = b.getMedia() ? b.getMedia().getDisplayElement() : null;
if(f.exists(g)) {
if(O != g) {
if(O && O.parentNode) {
O.parentNode.replaceChild(g, O);
}
O = g;
}
for(var k = 0; k < b.plugins.order.length; k++) {
var h = b.plugins.order[k];
if(f.exists(b.plugins.object[h].getDisplayElement)) {
b.plugins.config[h].currentPosition = b.plugins.config[h].position;
}
}
}
ae(b.width, b.height);
}
this.setup = function() {
if(b && b.getMedia()) {
aa = b.getMedia().getDisplayElement();
}
W();
ad();
J.jwAddEventListener(e.api.events.JWPLAYER_PLAYER_STATE, ab);
J.jwAddEventListener(e.api.events.JWPLAYER_MEDIA_LOADED, K);
J.jwAddEventListener(e.api.events.JWPLAYER_MEDIA_META, function() {
a();
});
var g;
if(f.exists(window.onresize)) {
g = window.onresize;
}
window.onresize = function(k) {
if(f.exists(g)) {
try {
g(k);
} catch(h) {
}
}
if(J.jwGetFullscreen()) {
if(!S()) {
var j = f.getBoundingClientRect(document.body);
b.width = Math.abs(j.left) + Math.abs(j.right);
b.height = window.innerHeight;
ae(b.width, b.height);
}
} else {
ae(b.width, b.height);
}
};
};
function af(g) {
switch(g.keyCode) {
case 27:
if(J.jwGetFullscreen()) {
J.jwSetFullscreen(false);
}
break;
case 32:
if(J.jwGetState() != e.api.events.state.IDLE && J.jwGetState() != e.api.events.state.PAUSED) {
J.jwPause();
} else {
J.jwPlay();
}
break;
}
}
function ae(g, k) {
if(c.style.display == "none") {
return;
}
var h = [].concat(b.plugins.order);
h.reverse();
I = h.length + 2;
if(S()) {
try {
if(b.fullscreen && !b.getMedia().getDisplayElement().webkitDisplayingFullscreen) {
b.fullscreen = false;
}
} catch(m) {
}
}
if(!b.fullscreen) {
ag = g;
L = k;
if(typeof g == "string" && g.indexOf("%") > 0) {
ag = f.getElementWidth(f.parentNode(c)) * parseInt(g.replace("%"), "") / 100;
} else {
ag = g;
}
if(typeof k == "string" && k.indexOf("%") > 0) {
L = f.getElementHeight(f.parentNode(c)) * parseInt(k.replace("%"), "") / 100;
} else {
L = k;
}
d(P, {top: 0, bottom: 0, left: 0, right: 0, width: ag, height: L, position: "absolute"});
d(c, {height: L, width: ag});
var j = Z(N, h);
if(j.length > 0) {
I += j.length;
var l = j.indexOf("playlist"),
n = j.indexOf("controlbar");
if(l >= 0 && n >= 0) {
j[l] = j.splice(n, 1, j[l])[0];
}
Z(ac, j, true);
}
U = f.getElementWidth(P);
Y = f.getElementHeight(P);
} else {
if(!S()) {
Z(M, h, true);
}
}
a();
}
function Z(h, m, l) {
var k = [];
for(var n = 0; n < m.length; n++) {
var j = m[n];
if(f.exists(b.plugins.object[j].getDisplayElement)) {
if(b.plugins.config[j].currentPosition != e.html5.view.positions.NONE) {
var p = h(j, I--);
if(!p) {
k.push(j);
} else {
var o = p.width;
var g = p.height;
if(l) {
delete p.width;
delete p.height;
}
d(b.plugins.object[j].getDisplayElement(), p);
b.plugins.object[j].resize(o, g);
}
} else {
d(b.plugins.object[j].getDisplayElement(), {display: "none"});
}
}
}
return k;
}
function N(h, g) {
if(f.exists(b.plugins.object[h].getDisplayElement)) {
if(b.plugins.config[h].position && Q(b.plugins.config[h].position)) {
if(!f.exists(b.plugins.object[h].getDisplayElement().parentNode)) {
c.appendChild(b.plugins.object[h].getDisplayElement());
}
var j = ai(h);
j.zIndex = g;
return j;
}
}
return false;
}
function ac(h, g) {
if(!f.exists(b.plugins.object[h].getDisplayElement().parentNode)) {
P.appendChild(b.plugins.object[h].getDisplayElement());
}
return{position: "absolute", width: (f.getElementWidth(P) - f.parseDimension(P.style.left) - f.parseDimension(P.style.right)), height: (f.getElementHeight(P) - f.parseDimension(P.style.top) - f.parseDimension(P.style.bottom)), zIndex: g};
}
function M(h, g) {
return{position: "fixed", width: b.width, height: b.height, zIndex: g};
}
function a() {
if(!f.exists(b.getMedia())) {
return;
}
P.style.position = "absolute";
var g = b.getMedia().getDisplayElement();
if(g && g.tagName.toLowerCase() == "video") {
g.style.position = "absolute";
if(g.parentNode) {
g.parentNode.style.left = P.style.left;
g.parentNode.style.top = P.style.top;
}
if(b.fullscreen && J.jwGetStretching() == e.utils.stretching.EXACTFIT && !f.isMobile()) {
var j = document.createElement("div");
f.stretch(e.utils.stretching.UNIFORM, j, f.getElementWidth(P), f.getElementHeight(P), U, Y);
f.stretch(e.utils.stretching.EXACTFIT, g, f.parseDimension(j.style.width), f.parseDimension(j.style.height), g.videoWidth ? g.videoWidth : 400, g.videoHeight ? g.videoHeight : 300);
d(g, {left: j.style.left, top: j.style.top});
} else {
f.stretch(J.jwGetStretching(), g, f.getElementWidth(P), f.getElementHeight(P), g.videoWidth ? g.videoWidth : 400, g.videoHeight ? g.videoHeight : 300);
}
} else {
var h = b.plugins.object.display.getDisplayElement();
if(h) {
b.getMedia().resize(f.parseDimension(h.style.width), f.parseDimension(h.style.height));
} else {
b.getMedia().resize(f.parseDimension(P.style.width), f.parseDimension(P.style.height));
}
}
}
function ai(h) {
var g = {position: "absolute", margin: 0, padding: 0, top: null};
var j = b.plugins.config[h].currentPosition.toLowerCase();
switch(j.toUpperCase()) {
case e.html5.view.positions.TOP:
g.top = f.parseDimension(P.style.top);
g.left = f.parseDimension(P.style.left);
g.width = f.getElementWidth(P) - f.parseDimension(P.style.left) - f.parseDimension(P.style.right);
g.height = b.plugins.object[h].height;
P.style[j] = f.parseDimension(P.style[j]) + b.plugins.object[h].height + "px";
P.style.height = f.getElementHeight(P) - g.height + "px";
break;
case e.html5.view.positions.RIGHT:
g.top = f.parseDimension(P.style.top);
g.right = f.parseDimension(P.style.right);
g.width = b.plugins.object[h].width;
g.height = f.getElementHeight(P) - f.parseDimension(P.style.top) - f.parseDimension(P.style.bottom);
P.style.width = f.getElementWidth(P) - g.width + "px";
break;
case e.html5.view.positions.BOTTOM:
g.bottom = f.parseDimension(P.style.bottom);
g.left = f.parseDimension(P.style.left);
g.width = f.getElementWidth(P) - f.parseDimension(P.style.left) - f.parseDimension(P.style.right);
g.height = b.plugins.object[h].height;
P.style.height = f.getElementHeight(P) - g.height + "px";
break;
case e.html5.view.positions.LEFT:
g.top = f.parseDimension(P.style.top);
g.left = f.parseDimension(P.style.left);
g.width = b.plugins.object[h].width;
g.height = f.getElementHeight(P) - f.parseDimension(P.style.top) - f.parseDimension(P.style.bottom);
P.style[j] = f.parseDimension(P.style[j]) + b.plugins.object[h].width + "px";
P.style.width = f.getElementWidth(P) - g.width + "px";
break;
default:
break;
}
return g;
}
this.resize = ae;
this.fullscreen = function(g) {
var l;
try {
l = b.getMedia().getDisplayElement();
} catch(m) {
}
if(S() && l && l.webkitSupportsFullscreen) {
if(g && !l.webkitDisplayingFullscreen) {
try {
f.transform(l);
l.webkitEnterFullscreen();
} catch(h) {
}
} else {
if(!g) {
a();
if(l.webkitDisplayingFullscreen) {
try {
l.webkitExitFullscreen();
} catch(h) {
}
}
}
}
V = false;
} else {
if(g) {
document.onkeydown = af;
clearInterval(X);
var j = f.getBoundingClientRect(document.body);
b.width = Math.abs(j.left) + Math.abs(j.right);
b.height = window.innerHeight;
var k = {position: "fixed", width: "100%", height: "100%", top: 0, left: 0, zIndex: 2147483000};
d(c, k);
k.zIndex = 1;
if(b.getMedia() && b.getMedia().getDisplayElement()) {
d(b.getMedia().getDisplayElement(), k);
}
k.zIndex = 2;
d(P, k);
V = true;
} else {
document.onkeydown = "";
b.width = ag;
b.height = L;
d(c, {position: "relative", height: b.height, width: b.width, zIndex: 0});
V = false;
}
ae(b.width, b.height);
}
};
function Q(g) {
return([e.html5.view.positions.TOP, e.html5.view.positions.RIGHT, e.html5.view.positions.BOTTOM, e.html5.view.positions.LEFT].toString().indexOf(g.toUpperCase()) > -1);
}
function S() {
if(J.jwGetState() != e.api.events.state.IDLE && !V && (b.getMedia() && b.getMedia().getDisplayElement() && b.getMedia().getDisplayElement().webkitSupportsFullscreen) && f.useNativeFullscreen()) {
return true;
}
return false;
}
};
e.html5.view.positions = {TOP: "TOP", RIGHT: "RIGHT", BOTTOM: "BOTTOM", LEFT: "LEFT", OVER: "OVER", NONE: "NONE"};
})(jwplayer);
(function(d) {
var c = {backgroundcolor: "", margin: 10, font: "Arial,sans-serif", fontsize: 10, fontcolor: parseInt("000000", 16), fontstyle: "normal", fontweight: "bold", buttoncolor: parseInt("ffffff", 16), position: d.html5.view.positions.BOTTOM, idlehide: false, hideplaylistcontrols: false, layout: {left: {position: "left", elements: [{name: "play", type: "button"}, {name: "divider", type: "divider"}, {name: "prev", type: "button"}, {name: "divider", type: "divider"}, {name: "next", type: "button"}, {name: "divider", type: "divider"}, {name: "elapsed", type: "text"}]}, center: {position: "center", elements: [{name: "time", type: "slider"}]}, right: {position: "right", elements: [{name: "duration", type: "text"}, {name: "blank", type: "button"}, {name: "divider", type: "divider"}, {name: "mute", type: "button"}, {name: "volume", type: "slider"}, {name: "divider", type: "divider"}, {name: "fullscreen", type: "button"}]}}};
_utils = d.utils;
_css = _utils.css;
_hide = function(a) {
_css(a, {display: "none"});
};
_show = function(a) {
_css(a, {display: "block"});
};
d.html5.controlbar = function(ba, am) {
window.controlbar = this;
var bb = ba;
var aP = _utils.extend({}, c, bb.skin.getComponentSettings("controlbar"), am);
if(aP.position == d.html5.view.positions.NONE || typeof d.html5.view.positions[aP.position] == "undefined") {
return;
}
if(_utils.mapLength(bb.skin.getComponentLayout("controlbar")) > 0) {
aP.layout = bb.skin.getComponentLayout("controlbar");
}
var aM;
var au;
var aO;
var aN;
var a0 = "none";
var be;
var bc;
var aL;
var bf;
var bg;
var aX;
var at = {};
var a6 = false;
var bj = {};
var aU;
var bd = false;
var a7;
var bi;
var ap = false;
var aJ = false;
var aH;
var a = new d.html5.eventdispatcher();
_utils.extend(this, a);
function aB() {
if(!aU) {
aU = bb.skin.getSkinElement("controlbar", "background");
if(!aU) {
aU = {width: 0, height: 0, src: null};
}
}
return aU;
}
function aw() {
aO = 0;
aN = 0;
au = 0;
if(!a6) {
var e = {height: aB().height, backgroundColor: aP.backgroundcolor};
aM = document.createElement("div");
aM.id = bb.id + "_jwplayer_controlbar";
_css(aM, e);
}
var f = (bb.skin.getSkinElement("controlbar", "capLeft"));
var g = (bb.skin.getSkinElement("controlbar", "capRight"));
if(f) {
aY("capLeft", "left", false, aM);
}
aT("background", aM, {position: "absolute", height: aB().height, left: (f ? f.width : 0), zIndex: 0}, "img");
if(aB().src) {
at.background.src = aB().src;
}
aT("elements", aM, {position: "relative", height: aB().height, zIndex: 1});
if(g) {
aY("capRight", "right", false, aM);
}
}
this.getDisplayElement = function() {
return aM;
};
this.resize = function(e, g) {
ar();
_utils.cancelAnimation(aM);
bg = e;
aX = g;
if(aJ != bb.jwGetFullscreen()) {
aJ = bb.jwGetFullscreen();
bi = undefined;
}
var f = aZ();
aC({id: bb.id, duration: aL, position: bc});
a1({id: bb.id, bufferPercent: bf});
return f;
};
this.show = function() {
if(bd) {
bd = false;
_show(aM);
ao();
}
};
this.hide = function() {
if(!bd) {
bd = true;
_hide(aM);
aR();
}
};
function a5() {
var f = ["timeSlider", "volumeSlider", "timeSliderRail", "volumeSliderRail"];
for(var e in f) {
var g = f[e];
if(typeof at[g] != "undefined") {
bj[g] = _utils.getBoundingClientRect(at[g]);
}
}
}
var bh;
function b(e) {
if(bd) {
return;
}
clearTimeout(a7);
if(aP.position == d.html5.view.positions.OVER || bb.jwGetFullscreen()) {
switch(bb.jwGetState()) {
case d.api.events.state.PAUSED:
case d.api.events.state.IDLE:
if(aM && aM.style.opacity < 1 && (!aP.idlehide || _utils.exists(e))) {
bh = false;
setTimeout(function() {
if(!bh) {
an();
}
}, 100);
}
if(aP.idlehide) {
a7 = setTimeout(function() {
aV();
}, 2000);
}
break;
default:
bh = true;
if(e) {
an();
}
a7 = setTimeout(function() {
aV();
}, 2000);
break;
}
} else {
an();
}
}
function aV() {
if(!bd) {
aR();
if(aM.style.opacity == 1) {
_utils.cancelAnimation(aM);
_utils.fadeTo(aM, 0, 0.1, 1, 0);
}
}
}
function an() {
if(!bd) {
ao();
if(aM.style.opacity == 0) {
_utils.cancelAnimation(aM);
_utils.fadeTo(aM, 1, 0.1, 0, 0);
}
}
}
function aF(e) {
return function() {
if(ap && bi != e) {
bi = e;
a.sendEvent(e, {component: "controlbar", boundingRect: av()});
}
};
}
var ao = aF(d.api.events.JWPLAYER_COMPONENT_SHOW);
var aR = aF(d.api.events.JWPLAYER_COMPONENT_HIDE);
function av() {
if(aP.position == d.html5.view.positions.OVER || bb.jwGetFullscreen()) {
return _utils.getDimensions(aM);
} else {
return{x: 0, y: 0, width: 0, height: 0};
}
}
function aT(e, f, g, j) {
var h;
if(!a6) {
if(!j) {
j = "div";
}
h = document.createElement(j);
at[e] = h;
h.id = aM.id + "_" + e;
f.appendChild(h);
} else {
h = document.getElementById(aM.id + "_" + e);
}
if(_utils.exists(g)) {
_css(h, g);
}
return h;
}
function ax() {
if(bb.jwGetHeight() <= 40) {
aP.layout = _utils.clone(aP.layout);
for(var e = 0; e < aP.layout.left.elements.length; e++) {
if(aP.layout.left.elements[e].name == "fullscreen") {
aP.layout.left.elements.splice(e, 1);
}
}
for(e = 0; e < aP.layout.right.elements.length; e++) {
if(aP.layout.right.elements[e].name == "fullscreen") {
aP.layout.right.elements.splice(e, 1);
}
}
a8();
}
aA(aP.layout.left);
aA(aP.layout.center);
aA(aP.layout.right);
}
function aA(f, j) {
var e = f.position == "right" ? "right" : "left";
var g = _utils.extend([], f.elements);
if(_utils.exists(j)) {
g.reverse();
}
var f = aT(f.position + "Group", at.elements, {"float": "left", styleFloat: "left", cssFloat: "left", height: "100%"});
for(var h = 0; h < g.length; h++) {
aQ(g[h], e, f);
}
}
function az() {
return au++;
}
function aQ(k, h, f) {
var l,
n,
m,
o,
e;
if(!f) {
f = at.elements;
}
if(k.type == "divider") {
aY("divider" + az(), h, true, f, undefined, k.width, k.element);
return;
}
switch(k.name) {
case"play":
aY("playButton", h, false, f);
aY("pauseButton", h, true, f);
aq("playButton", "jwPlay");
aq("pauseButton", "jwPause");
break;
case"prev":
aY("prevButton", h, true, f);
aq("prevButton", "jwPlaylistPrev");
break;
case"stop":
aY("stopButton", h, true, f);
aq("stopButton", "jwStop");
break;
case"next":
aY("nextButton", h, true, f);
aq("nextButton", "jwPlaylistNext");
break;
case"elapsed":
aY("elapsedText", h, true, f);
break;
case"time":
n = !_utils.exists(bb.skin.getSkinElement("controlbar", "timeSliderCapLeft")) ? 0 : bb.skin.getSkinElement("controlbar", "timeSliderCapLeft").width;
m = !_utils.exists(bb.skin.getSkinElement("controlbar", "timeSliderCapRight")) ? 0 : bb.skin.getSkinElement("controlbar", "timeSliderCapRight").width;
l = h == "left" ? n : m;
e = {height: aB().height, position: "relative", "float": "left", styleFloat: "left", cssFloat: "left"};
var j = aT("timeSlider", f, e);
aY("timeSliderCapLeft", h, true, j, "relative");
aY("timeSliderRail", h, false, j, "relative");
aY("timeSliderBuffer", h, false, j, "absolute");
aY("timeSliderProgress", h, false, j, "absolute");
aY("timeSliderThumb", h, false, j, "absolute");
aY("timeSliderCapRight", h, true, j, "relative");
aW("time");
break;
case"fullscreen":
aY("fullscreenButton", h, false, f);
aY("normalscreenButton", h, true, f);
aq("fullscreenButton", "jwSetFullscreen", true);
aq("normalscreenButton", "jwSetFullscreen", false);
break;
case"volume":
n = !_utils.exists(bb.skin.getSkinElement("controlbar", "volumeSliderCapLeft")) ? 0 : bb.skin.getSkinElement("controlbar", "volumeSliderCapLeft").width;
m = !_utils.exists(bb.skin.getSkinElement("controlbar", "volumeSliderCapRight")) ? 0 : bb.skin.getSkinElement("controlbar", "volumeSliderCapRight").width;
l = h == "left" ? n : m;
o = bb.skin.getSkinElement("controlbar", "volumeSliderRail").width + n + m;
e = {height: aB().height, position: "relative", width: o, "float": "left", styleFloat: "left", cssFloat: "left"};
var g = aT("volumeSlider", f, e);
aY("volumeSliderCapLeft", h, false, g, "relative");
aY("volumeSliderRail", h, false, g, "relative");
aY("volumeSliderProgress", h, false, g, "absolute");
aY("volumeSliderThumb", h, false, g, "absolute");
aY("volumeSliderCapRight", h, false, g, "relative");
aW("volume");
break;
case"mute":
aY("muteButton", h, false, f);
aY("unmuteButton", h, true, f);
aq("muteButton", "jwSetMute", true);
aq("unmuteButton", "jwSetMute", false);
break;
case"duration":
aY("durationText", h, true, f);
break;
}
}
function aY(m, j, o, f, l, p, n) {
if(_utils.exists(bb.skin.getSkinElement("controlbar", m)) || m.indexOf("Text") > 0 || m.indexOf("divider") === 0) {
var k = {height: "100%", position: l ? l : "relative", display: "block", "float": "left", styleFloat: "left", cssFloat: "left"};
if((m.indexOf("next") === 0 || m.indexOf("prev") === 0) && (bb.jwGetPlaylist().length < 2 || aP.hideplaylistcontrols)) {
o = false;
k.display = "none";
}
var e;
if(m.indexOf("Text") > 0) {
m.innerhtml = "00:00";
k.font = aP.fontsize + "px/" + (aB().height + 1) + "px " + aP.font;
k.color = aP.fontcolor;
k.textAlign = "center";
k.fontWeight = aP.fontweight;
k.fontStyle = aP.fontstyle;
k.cursor = "default";
e = 14 + 3 * aP.fontsize;
} else {
if(m.indexOf("divider") === 0) {
if(p) {
if(!isNaN(parseInt(p))) {
e = parseInt(p);
}
} else {
if(n) {
var h = bb.skin.getSkinElement("controlbar", n);
if(h) {
k.background = "url(" + h.src + ") repeat-x center left";
e = h.width;
}
} else {
k.background = "url(" + bb.skin.getSkinElement("controlbar", "divider").src + ") repeat-x center left";
e = bb.skin.getSkinElement("controlbar", "divider").width;
}
}
} else {
k.background = "url(" + bb.skin.getSkinElement("controlbar", m).src + ") repeat-x center left";
e = bb.skin.getSkinElement("controlbar", m).width;
}
}
if(j == "left") {
if(o) {
aO += e;
}
} else {
if(j == "right") {
if(o) {
aN += e;
}
}
}
if(_utils.typeOf(f) == "undefined") {
f = at.elements;
}
k.width = e;
if(a6) {
_css(at[m], k);
} else {
var g = aT(m, f, k);
if(_utils.exists(bb.skin.getSkinElement("controlbar", m + "Over"))) {
g.onmouseover = function(q) {
g.style.backgroundImage = ["url(", bb.skin.getSkinElement("controlbar", m + "Over").src, ")"].join("");
};
g.onmouseout = function(q) {
g.style.backgroundImage = ["url(", bb.skin.getSkinElement("controlbar", m).src, ")"].join("");
};
}
if(m.indexOf("divider") == 0) {
g.setAttribute("class", "divider");
}
}
}
}
function aK() {
bb.jwAddEventListener(d.api.events.JWPLAYER_PLAYLIST_LOADED, aS);
bb.jwAddEventListener(d.api.events.JWPLAYER_PLAYLIST_ITEM, a3);
bb.jwAddEventListener(d.api.events.JWPLAYER_MEDIA_BUFFER, a1);
bb.jwAddEventListener(d.api.events.JWPLAYER_PLAYER_STATE, a4);
bb.jwAddEventListener(d.api.events.JWPLAYER_MEDIA_TIME, aC);
bb.jwAddEventListener(d.api.events.JWPLAYER_MEDIA_MUTE, aD);
bb.jwAddEventListener(d.api.events.JWPLAYER_MEDIA_VOLUME, a9);
bb.jwAddEventListener(d.api.events.JWPLAYER_MEDIA_COMPLETE, ay);
}
function aS() {
if(!aP.hideplaylistcontrols) {
if(bb.jwGetPlaylist().length > 1) {
_show(at.nextButton);
_show(at.prevButton);
} else {
_hide(at.nextButton);
_hide(at.prevButton);
}
aZ();
aI();
}
}
function a3(e) {
aL = bb.jwGetPlaylist()[e.index].duration;
aC({id: bb.id, duration: aL, position: 0});
a1({id: bb.id, bufferProgress: 0});
}
function aI() {
aC({id: bb.id, duration: bb.jwGetDuration(), position: 0});
a1({id: bb.id, bufferProgress: 0});
aD({id: bb.id, mute: bb.jwGetMute()});
a4({id: bb.id, newstate: d.api.events.state.IDLE});
a9({id: bb.id, volume: bb.jwGetVolume()});
}
function aq(f, e, g) {
if(a6) {
return;
}
if(_utils.exists(bb.skin.getSkinElement("controlbar", f))) {
var h = at[f];
if(_utils.exists(h)) {
_css(h, {cursor: "pointer"});
if(e == "fullscreen") {
h.onmouseup = function(j) {
j.stopPropagation();
bb.jwSetFullscreen(!bb.jwGetFullscreen());
};
} else {
h.onmouseup = function(j) {
j.stopPropagation();
if(_utils.exists(g)) {
bb[e](g);
} else {
bb[e]();
}
};
}
}
}
}
function aW(f) {
if(a6) {
return;
}
var e = at[f + "Slider"];
_css(at.elements, {cursor: "pointer"});
_css(e, {cursor: "pointer"});
e.onmousedown = function(g) {
a0 = f;
};
e.onmouseup = function(g) {
g.stopPropagation();
aE(g.pageX);
};
e.onmousemove = function(h) {
if(a0 == "time") {
be = true;
var g = h.pageX - bj[f + "Slider"].left - window.pageXOffset;
_css(at[a0 + "SliderThumb"], {left: g});
}
};
}
function aE(g) {
be = false;
var h;
if(a0 == "time") {
h = g - bj.timeSliderRail.left + window.pageXOffset;
var e = h / bj.timeSliderRail.width * aL;
if(e < 0) {
e = 0;
} else {
if(e > aL) {
e = aL - 3;
}
}
if(bb.jwGetState() == d.api.events.state.PAUSED || bb.jwGetState() == d.api.events.state.IDLE) {
bb.jwPlay();
}
bb.jwSeek(e);
} else {
if(a0 == "volume") {
h = g - bj.volumeSliderRail.left - window.pageXOffset;
var f = Math.round(h / bj.volumeSliderRail.width * 100);
if(f < 0) {
f = 0;
} else {
if(f > 100) {
f = 100;
}
}
if(bb.jwGetMute()) {
bb.jwSetMute(false);
}
bb.jwSetVolume(f);
}
}
a0 = "none";
}
function a1(g) {
if(_utils.exists(g.bufferPercent)) {
bf = g.bufferPercent;
}
if(bj.timeSliderRail) {
var e = bb.skin.getSkinElement("controlbar", "timeSliderCapLeft");
var f = bj.timeSliderRail.width;
var h = isNaN(Math.round(f * bf / 100)) ? 0 : Math.round(f * bf / 100);
_css(at.timeSliderBuffer, {width: h, left: e ? e.width : 0});
}
}
function aD(e) {
if(e.mute) {
_hide(at.muteButton);
_show(at.unmuteButton);
_hide(at.volumeSliderProgress);
} else {
_show(at.muteButton);
_hide(at.unmuteButton);
_show(at.volumeSliderProgress);
}
}
function a4(e) {
if(e.newstate == d.api.events.state.BUFFERING || e.newstate == d.api.events.state.PLAYING) {
_show(at.pauseButton);
_hide(at.playButton);
} else {
_hide(at.pauseButton);
_show(at.playButton);
}
b();
if(e.newstate == d.api.events.state.IDLE) {
_hide(at.timeSliderBuffer);
_hide(at.timeSliderProgress);
_hide(at.timeSliderThumb);
aC({id: bb.id, duration: bb.jwGetDuration(), position: 0});
} else {
_show(at.timeSliderBuffer);
if(e.newstate != d.api.events.state.BUFFERING) {
_show(at.timeSliderProgress);
_show(at.timeSliderThumb);
}
}
}
function ay(e) {
a1({bufferPercent: 0});
aC(_utils.extend(e, {position: 0, duration: aL}));
}
function aC(g) {
if(_utils.exists(g.position)) {
bc = g.position;
}
if(_utils.exists(g.duration)) {
aL = g.duration;
}
var j = (bc === aL === 0) ? 0 : bc / aL;
var e = bj.timeSliderRail;
if(e) {
var k = isNaN(Math.round(e.width * j)) ? 0 : Math.round(e.width * j);
var f = bb.skin.getSkinElement("controlbar", "timeSliderCapLeft");
var h = k + (f ? f.width : 0);
if(at.timeSliderProgress) {
_css(at.timeSliderProgress, {width: k, left: f ? f.width : 0});
if(!be) {
if(at.timeSliderThumb) {
at.timeSliderThumb.style.left = h + "px";
}
}
}
}
if(at.durationText) {
at.durationText.innerHTML = _utils.timeFormat(aL);
}
if(at.elapsedText) {
at.elapsedText.innerHTML = _utils.timeFormat(bc);
}
}
function a8() {
var k = at.elements.childNodes;
var e,
g;
for(var h = 0; h < k.length; h++) {
var f = k[h].childNodes;
for(var j in f) {
if(isNaN(parseInt(j, 10))) {
continue;
}
if(f[j].id.indexOf(aM.id + "_divider") === 0 && g && g.id.indexOf(aM.id + "_divider") === 0 && f[j].style.backgroundImage == g.style.backgroundImage) {
f[j].style.display = "none";
} else {
if(f[j].id.indexOf(aM.id + "_divider") === 0 && e && e.style.display != "none") {
f[j].style.display = "block";
}
}
if(f[j].style.display != "none") {
g = f[j];
}
e = f[j];
}
}
}
function aG() {
if(bb.jwGetFullscreen()) {
_show(at.normalscreenButton);
_hide(at.fullscreenButton);
} else {
_hide(at.normalscreenButton);
_show(at.fullscreenButton);
}
if(bb.jwGetState() == d.api.events.state.BUFFERING || bb.jwGetState() == d.api.events.state.PLAYING) {
_show(at.pauseButton);
_hide(at.playButton);
} else {
_hide(at.pauseButton);
_show(at.playButton);
}
if(bb.jwGetMute() == true) {
_hide(at.muteButton);
_show(at.unmuteButton);
} else {
_show(at.muteButton);
_hide(at.unmuteButton);
}
}
function aZ() {
a8();
aG();
var m = {width: bg};
var e = {"float": "left", styleFloat: "left", cssFloat: "left"};
if(aP.position == d.html5.view.positions.OVER || bb.jwGetFullscreen()) {
m.left = aP.margin;
m.width -= 2 * aP.margin;
m.top = aX - aB().height - aP.margin;
m.height = aB().height;
}
var k = bb.skin.getSkinElement("controlbar", "capLeft");
var g = bb.skin.getSkinElement("controlbar", "capRight");
e.width = m.width - (k ? k.width : 0) - (g ? g.width : 0);
var l = _utils.getBoundingClientRect(at.leftGroup).width;
var h = _utils.getBoundingClientRect(at.rightGroup).width;
var j = e.width - l - h;
var n = j;
var o = bb.skin.getSkinElement("controlbar", "timeSliderCapLeft");
var f = bb.skin.getSkinElement("controlbar", "timeSliderCapRight");
if(_utils.exists(o)) {
n -= o.width;
}
if(_utils.exists(f)) {
n -= f.width;
}
at.timeSlider.style.width = j + "px";
at.timeSliderRail.style.width = n + "px";
_css(aM, m);
_css(at.elements, e);
_css(at.background, e);
a5();
return m;
}
function a9(f) {
if(_utils.exists(at.volumeSliderRail)) {
var j = isNaN(f.volume / 100) ? 1 : f.volume / 100;
var h = _utils.parseDimension(at.volumeSliderRail.style.width);
var l = isNaN(Math.round(h * j)) ? 0 : Math.round(h * j);
var e = _utils.parseDimension(at.volumeSliderRail.style.right);
var k = (!_utils.exists(bb.skin.getSkinElement("controlbar", "volumeSliderCapLeft"))) ? 0 : bb.skin.getSkinElement("controlbar", "volumeSliderCapLeft").width;
_css(at.volumeSliderProgress, {width: l, left: k});
if(at.volumeSliderThumb) {
var g = (l - Math.round(_utils.parseDimension(at.volumeSliderThumb.style.width) / 2));
g = Math.min(Math.max(g, 0), h - _utils.parseDimension(at.volumeSliderThumb.style.width));
_css(at.volumeSliderThumb, {left: g});
}
if(_utils.exists(at.volumeSliderCapLeft)) {
_css(at.volumeSliderCapLeft, {left: 0});
}
}
}
function ar() {
aH = document.getElementById(bb.id);
aH.addEventListener("mousemove", b);
}
function a2() {
aw();
ax();
a5();
a6 = true;
aK();
aP.idlehide = (aP.idlehide.toString().toLowerCase() == "true");
if(aP.position == d.html5.view.positions.OVER && aP.idlehide) {
aM.style.opacity = 0;
ap = true;
} else {
aM.style.opacity = 1;
setTimeout((function() {
ap = true;
ao();
}), 1);
}
ar();
aI();
}
a2();
return this;
};
})(jwplayer);
(function(d) {
var e = ["width", "height", "state", "playlist", "item", "position", "buffer", "duration", "volume", "mute", "fullscreen"];
var f = d.utils;
d.html5.controller = function(ap, U, ay, aw) {
var aq = ap;
var at = ay;
var av = aw;
var af = U;
var S = true;
var Y = -1;
var ad = f.exists(at.config.debug) && (at.config.debug.toString().toLowerCase() == "console");
var R = new d.html5.eventdispatcher(af.id, ad);
f.extend(this, R);
var ab = [];
var an = false;
function T(g) {
if(an) {
R.sendEvent(g.type, g);
} else {
ab.push(g);
}
}
function al(j) {
if(!an) {
an = true;
R.sendEvent(d.api.events.JWPLAYER_READY, j);
if(d.utils.exists(window.playerReady)) {
playerReady(j);
}
if(d.utils.exists(window[ay.config.playerReady])) {
window[ay.config.playerReady](j);
}
while(ab.length > 0) {
var g = ab.shift();
R.sendEvent(g.type, g);
}
if(ay.config.autostart && !d.utils.isIOS()) {
Q();
}
while(ag.length > 0) {
var h = ag.shift();
ac(h.method, h.arguments);
}
}
}
at.addGlobalListener(T);
at.addEventListener(d.api.events.JWPLAYER_MEDIA_BUFFER_FULL, function() {
at.getMedia().play();
});
at.addEventListener(d.api.events.JWPLAYER_MEDIA_TIME, function(g) {
if(g.position >= at.playlist[at.item].start && Y >= 0) {
at.playlist[at.item].start = Y;
Y = -1;
}
});
at.addEventListener(d.api.events.JWPLAYER_MEDIA_COMPLETE, function(g) {
setTimeout(aa, 25);
});
at.addEventListener(d.api.events.JWPLAYER_PLAYLIST_LOADED, Q);
at.addEventListener(d.api.events.JWPLAYER_FULLSCREEN, ao);
function Z() {
try {
ai(at.item);
if(at.playlist[at.item].levels[0].file.length > 0) {
if(S || at.state == d.api.events.state.IDLE) {
at.getMedia().load(at.playlist[at.item]);
S = false;
} else {
if(at.state == d.api.events.state.PAUSED) {
at.getMedia().play();
}
}
}
return true;
} catch(g) {
R.sendEvent(d.api.events.JWPLAYER_ERROR, g);
}
return false;
}
function az() {
try {
if(at.playlist[at.item].levels[0].file.length > 0) {
switch(at.state) {
case d.api.events.state.PLAYING:
case d.api.events.state.BUFFERING:
if(at.getMedia()) {
at.getMedia().pause();
}
break;
}
}
return true;
} catch(g) {
R.sendEvent(d.api.events.JWPLAYER_ERROR, g);
}
return false;
}
function ae(h) {
try {
if(at.playlist[at.item].levels[0].file.length > 0) {
if(typeof h != "number") {
h = parseFloat(h);
}
switch(at.state) {
case d.api.events.state.IDLE:
if(Y < 0) {
Y = at.playlist[at.item].start;
at.playlist[at.item].start = h;
}
Z();
break;
case d.api.events.state.PLAYING:
case d.api.events.state.PAUSED:
case d.api.events.state.BUFFERING:
at.seek(h);
break;
}
}
return true;
} catch(g) {
R.sendEvent(d.api.events.JWPLAYER_ERROR, g);
}
return false;
}
function ah(h) {
if(!f.exists(h)) {
h = true;
}
try {
if(at.getMedia()) {
at.getMedia().stop(h);
}
return true;
} catch(g) {
R.sendEvent(d.api.events.JWPLAYER_ERROR, g);
}
return false;
}
function au() {
try {
if(at.playlist[at.item].levels[0].file.length > 0) {
if(at.config.shuffle) {
ai(a());
} else {
if(at.item + 1 == at.playlist.length) {
ai(0);
} else {
ai(at.item + 1);
}
}
}
if(at.state != d.api.events.state.IDLE) {
var g = at.state;
at.state = d.api.events.state.IDLE;
R.sendEvent(d.api.events.JWPLAYER_PLAYER_STATE, {oldstate: g, newstate: d.api.events.state.IDLE});
}
Z();
return true;
} catch(h) {
R.sendEvent(d.api.events.JWPLAYER_ERROR, h);
}
return false;
}
function W() {
try {
if(at.playlist[at.item].levels[0].file.length > 0) {
if(at.config.shuffle) {
ai(a());
} else {
if(at.item === 0) {
ai(at.playlist.length - 1);
} else {
ai(at.item - 1);
}
}
}
if(at.state != d.api.events.state.IDLE) {
var g = at.state;
at.state = d.api.events.state.IDLE;
R.sendEvent(d.api.events.JWPLAYER_PLAYER_STATE, {oldstate: g, newstate: d.api.events.state.IDLE});
}
Z();
return true;
} catch(h) {
R.sendEvent(d.api.events.JWPLAYER_ERROR, h);
}
return false;
}
function a() {
var g = null;
if(at.playlist.length > 1) {
while(!f.exists(g)) {
g = Math.floor(Math.random() * at.playlist.length);
if(g == at.item) {
g = null;
}
}
} else {
g = 0;
}
return g;
}
function X(h) {
if(!at.playlist || !at.playlist[h]) {
return false;
}
try {
if(at.playlist[h].levels[0].file.length > 0) {
var g = at.state;
if(g !== d.api.events.state.IDLE) {
if(at.playlist[at.item].provider == at.playlist[h].provider) {
ah(false);
} else {
ah();
}
}
ai(h);
Z();
}
return true;
} catch(j) {
R.sendEvent(d.api.events.JWPLAYER_ERROR, j);
}
return false;
}
function ai(g) {
if(!at.playlist[g]) {
return;
}
at.setActiveMediaProvider(at.playlist[g]);
if(at.item != g) {
at.item = g;
S = true;
R.sendEvent(d.api.events.JWPLAYER_PLAYLIST_ITEM, {index: g});
}
}
function ax(h) {
try {
ai(at.item);
var g = at.getMedia();
switch(typeof(h)) {
case"number":
g.volume(h);
break;
case"string":
g.volume(parseInt(h, 10));
break;
}
return true;
} catch(j) {
R.sendEvent(d.api.events.JWPLAYER_ERROR, j);
}
return false;
}
function am(h) {
try {
ai(at.item);
var g = at.getMedia();
if(typeof h == "undefined") {
g.mute(!at.mute);
} else {
if(h.toString().toLowerCase() == "true") {
g.mute(true);
} else {
g.mute(false);
}
}
return true;
} catch(j) {
R.sendEvent(d.api.events.JWPLAYER_ERROR, j);
}
return false;
}
function V(h, j) {
try {
at.width = h;
at.height = j;
av.resize(h, j);
R.sendEvent(d.api.events.JWPLAYER_RESIZE, {width: at.width, height: at.height});
return true;
} catch(g) {
R.sendEvent(d.api.events.JWPLAYER_ERROR, g);
}
return false;
}
function aj(g) {
try {
if(typeof g == "undefined") {
g = !at.fullscreen;
}
if(g != at.fullscreen) {
if(g.toString().toLowerCase() == "true") {
at.fullscreen = true;
av.fullscreen(true);
R.sendEvent(d.api.events.JWPLAYER_FULLSCREEN, {fullscreen: true});
} else {
at.fullscreen = false;
av.fullscreen(false);
R.sendEvent(d.api.events.JWPLAYER_FULLSCREEN, {fullscreen: false});
}
R.sendEvent(d.api.events.JWPLAYER_RESIZE, {width: at.width, height: at.height});
}
return true;
} catch(h) {
R.sendEvent(d.api.events.JWPLAYER_ERROR, h);
}
return false;
}
function b(h) {
try {
ah();
at.loadPlaylist(h);
if(at.playlist[at.item].provider) {
ai(at.item);
if(at.config.autostart.toString().toLowerCase() == "true") {
Z();
}
return true;
} else {
return false;
}
} catch(g) {
R.sendEvent(d.api.events.JWPLAYER_ERROR, g);
}
return false;
}
function Q(g) {
ai(at.playlist[at.item]);
if(at.config.autostart.toString().toLowerCase() == "true") {
Z();
}
}
function ao(g) {
aj(g.fullscreen);
}
function ak() {
try {
return at.getMedia().detachMedia();
} catch(g) {
return null;
}
}
function ar() {
try {
return at.getMedia().attachMedia();
} catch(g) {
return null;
}
}
d.html5.controller.repeatoptions = {LIST: "LIST", ALWAYS: "ALWAYS", SINGLE: "SINGLE", NONE: "NONE"};
function aa() {
switch(at.config.repeat.toUpperCase()) {
case d.html5.controller.repeatoptions.SINGLE:
Z();
break;
case d.html5.controller.repeatoptions.ALWAYS:
if(at.item == at.playlist.length - 1 && !at.config.shuffle) {
X(0);
} else {
au();
}
break;
case d.html5.controller.repeatoptions.LIST:
if(at.item == at.playlist.length - 1 && !at.config.shuffle) {
ah();
ai(0);
} else {
au();
}
break;
default:
ah();
break;
}
}
var ag = [];
function c(g) {
return function() {
if(an) {
ac(g, arguments);
} else {
ag.push({method: g, arguments: arguments});
}
};
}
function ac(g, h) {
var j = [];
for(i = 0; i < h.length; i++) {
j.push(h[i]);
}
g.apply(this, j);
}
this.play = c(Z);
this.pause = c(az);
this.seek = c(ae);
this.stop = c(ah);
this.next = c(au);
this.prev = c(W);
this.item = c(X);
this.setVolume = c(ax);
this.setMute = c(am);
this.resize = c(V);
this.setFullscreen = c(aj);
this.load = c(b);
this.playerReady = al;
this.detachMedia = ak;
this.attachMedia = ar;
};
})(jwplayer);
(function(b) {
b.html5.defaultSkin = function() {
this.text = '';
this.xml = null;
if(window.DOMParser) {
parser = new DOMParser();
this.xml = parser.parseFromString(this.text, "text/xml");
} else {
this.xml = new ActiveXObject("Microsoft.XMLDOM");
this.xml.async = "false";
this.xml.loadXML(this.text);
}
return this;
};
})(jwplayer);
(function(b) {
_utils = b.utils;
_css = _utils.css;
_hide = function(a) {
_css(a, {display: "none"});
};
_show = function(a) {
_css(a, {display: "block"});
};
b.html5.display = function(aB, ad) {
var aC = {icons: true, showmute: false};
var a = _utils.extend({}, aC, ad);
var aD = aB;
var T = {};
var aG;
var aq;
var an;
var V;
var at;
var ab;
var aj;
var aa = !_utils.exists(aD.skin.getComponentSettings("display").bufferrotation) ? 15 : parseInt(aD.skin.getComponentSettings("display").bufferrotation, 10);
var av = !_utils.exists(aD.skin.getComponentSettings("display").bufferinterval) ? 100 : parseInt(aD.skin.getComponentSettings("display").bufferinterval, 10);
var ak = -1;
var ar = "";
var Z = true;
var aH;
var aE = false;
var ay = false;
var ao,
X;
var ac = new b.html5.eventdispatcher();
_utils.extend(this, ac);
var ag = {display: {style: {cursor: "pointer", top: 0, left: 0, overflow: "hidden"}, click: az}, display_icon: {style: {cursor: "pointer", position: "absolute", top: ((aD.skin.getSkinElement("display", "background").height - aD.skin.getSkinElement("display", "playIcon").height) / 2), left: ((aD.skin.getSkinElement("display", "background").width - aD.skin.getSkinElement("display", "playIcon").width) / 2), border: 0, margin: 0, padding: 0, zIndex: 3, display: "none"}}, display_iconBackground: {style: {cursor: "pointer", position: "absolute", top: ((aq - aD.skin.getSkinElement("display", "background").height) / 2), left: ((aG - aD.skin.getSkinElement("display", "background").width) / 2), border: 0, backgroundImage: (["url(", aD.skin.getSkinElement("display", "background").src, ")"]).join(""), width: aD.skin.getSkinElement("display", "background").width, height: aD.skin.getSkinElement("display", "background").height, margin: 0, padding: 0, zIndex: 2, display: "none"}}, display_image: {style: {display: "none", width: aG, height: aq, position: "absolute", cursor: "pointer", left: 0, top: 0, margin: 0, padding: 0, textDecoration: "none", zIndex: 1}}, display_text: {style: {zIndex: 4, position: "relative", opacity: 0.8, backgroundColor: parseInt("000000", 16), color: parseInt("ffffff", 16), textAlign: "center", fontFamily: "Arial,sans-serif", padding: "0 5px", fontSize: 14}}};
aD.jwAddEventListener(b.api.events.JWPLAYER_PLAYER_STATE, ax);
aD.jwAddEventListener(b.api.events.JWPLAYER_MEDIA_MUTE, ax);
aD.jwAddEventListener(b.api.events.JWPLAYER_PLAYLIST_ITEM, ax);
aD.jwAddEventListener(b.api.events.JWPLAYER_ERROR, aw);
Y();
function Y() {
T.display = ah("div", "display");
T.display_text = ah("div", "display_text");
T.display.appendChild(T.display_text);
T.display_image = ah("img", "display_image");
T.display_image.onerror = function(c) {
_hide(T.display_image);
};
T.display_image.onload = al;
T.display_icon = ah("div", "display_icon");
T.display_iconBackground = ah("div", "display_iconBackground");
T.display.appendChild(T.display_image);
T.display_iconBackground.appendChild(T.display_icon);
T.display.appendChild(T.display_iconBackground);
aF();
setTimeout((function() {
ay = true;
if(a.icons.toString() == "true") {
ae();
}
}), 1);
}
this.getDisplayElement = function() {
return T.display;
};
this.resize = function(c, d) {
_css(T.display, {width: c, height: d});
_css(T.display_text, {width: (c - 10), top: ((d - _utils.getBoundingClientRect(T.display_text).height) / 2)});
_css(T.display_iconBackground, {top: ((d - aD.skin.getSkinElement("display", "background").height) / 2), left: ((c - aD.skin.getSkinElement("display", "background").width) / 2)});
if(aG != c || aq != d) {
aG = c;
aq = d;
aH = undefined;
ae();
}
if(!aD.jwGetFullscreen()) {
ao = c;
X = d;
}
aI();
ax({});
};
this.show = function() {
if(aE) {
aE = false;
au(aD.jwGetState());
}
};
this.hide = function() {
if(!aE) {
ai();
aE = true;
}
};
function al(c) {
an = T.display_image.naturalWidth;
V = T.display_image.naturalHeight;
aI();
}
function aI() {
if(aD.jwGetFullscreen() && aD.jwGetStretching() == b.utils.stretching.EXACTFIT) {
var c = document.createElement("div");
_utils.stretch(b.utils.stretching.UNIFORM, c, aG, aq, ao, X);
_utils.stretch(b.utils.stretching.EXACTFIT, T.display_image, _utils.parseDimension(c.style.width), _utils.parseDimension(c.style.height), an, V);
_css(T.display_image, {left: c.style.left, top: c.style.top});
} else {
_utils.stretch(aD.jwGetStretching(), T.display_image, aG, aq, an, V);
}
}
function ah(e, c) {
var d = document.createElement(e);
d.id = aD.id + "_jwplayer_" + c;
_css(d, ag[c].style);
return d;
}
function aF() {
for(var c in T) {
if(_utils.exists(ag[c].click)) {
T[c].onclick = ag[c].click;
}
}
}
function az(c) {
if(typeof c.preventDefault != "undefined") {
c.preventDefault();
} else {
c.returnValue = false;
}
if(aD.jwGetState() != b.api.events.state.PLAYING) {
aD.jwPlay();
} else {
aD.jwPause();
}
}
function U(c) {
if(aj) {
ai();
return;
}
T.display_icon.style.backgroundImage = (["url(", aD.skin.getSkinElement("display", c).src, ")"]).join("");
_css(T.display_icon, {width: aD.skin.getSkinElement("display", c).width, height: aD.skin.getSkinElement("display", c).height, top: (aD.skin.getSkinElement("display", "background").height - aD.skin.getSkinElement("display", c).height) / 2, left: (aD.skin.getSkinElement("display", "background").width - aD.skin.getSkinElement("display", c).width) / 2});
aJ();
if(_utils.exists(aD.skin.getSkinElement("display", c + "Over"))) {
T.display_icon.onmouseover = function(d) {
T.display_icon.style.backgroundImage = ["url(", aD.skin.getSkinElement("display", c + "Over").src, ")"].join("");
};
T.display_icon.onmouseout = function(d) {
T.display_icon.style.backgroundImage = ["url(", aD.skin.getSkinElement("display", c).src, ")"].join("");
};
} else {
T.display_icon.onmouseover = null;
T.display_icon.onmouseout = null;
}
}
function ai() {
if(a.icons.toString() == "true") {
_hide(T.display_icon);
_hide(T.display_iconBackground);
W();
}
}
function aJ() {
if(!aE && a.icons.toString() == "true") {
_show(T.display_icon);
_show(T.display_iconBackground);
ae();
}
}
function aw(c) {
aj = true;
ai();
T.display_text.innerHTML = c.message;
_show(T.display_text);
T.display_text.style.top = ((aq - _utils.getBoundingClientRect(T.display_text).height) / 2) + "px";
}
function af() {
T.display_image.style.display = "none";
}
function ax(d) {
if((d.type == b.api.events.JWPLAYER_PLAYER_STATE || d.type == b.api.events.JWPLAYER_PLAYLIST_ITEM) && aj) {
aj = false;
_hide(T.display_text);
}
var c = aD.jwGetState();
if(c == ar) {
return;
}
ar = c;
if(ak >= 0) {
clearTimeout(ak);
}
if(Z || aD.jwGetState() == b.api.events.state.PLAYING || aD.jwGetState() == b.api.events.state.PAUSED) {
au(aD.jwGetState());
} else {
ak = setTimeout(aA(aD.jwGetState()), 500);
}
}
function aA(c) {
return(function() {
au(c);
});
}
function au(c) {
if(_utils.exists(ab)) {
clearInterval(ab);
ab = null;
_utils.animations.rotate(T.display_icon, 0);
}
switch(c) {
case b.api.events.state.BUFFERING:
if(_utils.isMobile()) {
af();
ai();
} else {
if(aD.jwGetPlaylist()[aD.jwGetItem()].provider == "sound") {
ap();
}
at = 0;
ab = setInterval(function() {
at += aa;
_utils.animations.rotate(T.display_icon, at % 360);
}, av);
U("bufferIcon");
Z = true;
}
break;
case b.api.events.state.PAUSED:
if(!_utils.isMobile()) {
if(aD.jwGetPlaylist()[aD.jwGetItem()].provider != "sound") {
_css(T.display_image, {background: "transparent no-repeat center center"});
}
U("playIcon");
Z = true;
}
break;
case b.api.events.state.IDLE:
if(aD.jwGetPlaylist()[aD.jwGetItem()] && aD.jwGetPlaylist()[aD.jwGetItem()].image) {
ap();
} else {
af();
}
U("playIcon");
Z = true;
break;
default:
if(aD.jwGetPlaylist()[aD.jwGetItem()] && aD.jwGetPlaylist()[aD.jwGetItem()].provider == "sound") {
if(_utils.isMobile()) {
af();
Z = false;
} else {
ap();
}
} else {
af();
Z = false;
}
if(aD.jwGetMute() && a.showmute) {
U("muteIcon");
} else {
ai();
}
break;
}
ak = -1;
}
function ap() {
if(aD.jwGetPlaylist()[aD.jwGetItem()] && aD.jwGetPlaylist()[aD.jwGetItem()].image) {
_css(T.display_image, {display: "block"});
T.display_image.src = _utils.getAbsolutePath(aD.jwGetPlaylist()[aD.jwGetItem()].image);
}
}
function am(c) {
return function() {
if(!ay) {
return;
}
if(!aE && aH != c) {
aH = c;
ac.sendEvent(c, {component: "display", boundingRect: _utils.getDimensions(T.display_iconBackground)});
}
};
}
var ae = am(b.api.events.JWPLAYER_COMPONENT_SHOW);
var W = am(b.api.events.JWPLAYER_COMPONENT_HIDE);
return this;
};
})(jwplayer);
(function(e) {
var f = e.utils;
var d = f.css;
e.html5.dock = function(H, P) {
function G() {
return{align: e.html5.view.positions.RIGHT};
}
var W = f.extend({}, G(), P);
if(W.align == "FALSE") {
return;
}
var aa = {};
var a = [];
var Z;
var L;
var ac = false;
var Q = false;
var ab = {x: 0, y: 0, width: 0, height: 0};
var b;
var V;
var c;
var X = new e.html5.eventdispatcher();
f.extend(this, X);
var R = document.createElement("div");
R.id = H.id + "_jwplayer_dock";
R.style.opacity = 1;
U();
H.jwAddEventListener(e.api.events.JWPLAYER_PLAYER_STATE, T);
this.getDisplayElement = function() {
return R;
};
this.setButton = function(g, k, j, h) {
if(!k && aa[g]) {
f.arrays.remove(a, g);
R.removeChild(aa[g].div);
delete aa[g];
} else {
if(k) {
if(!aa[g]) {
aa[g] = {};
}
aa[g].handler = k;
aa[g].outGraphic = j;
aa[g].overGraphic = h;
if(!aa[g].div) {
a.push(g);
aa[g].div = document.createElement("div");
aa[g].div.style.position = "relative";
R.appendChild(aa[g].div);
aa[g].div.appendChild(document.createElement("img"));
aa[g].div.childNodes[0].style.position = "absolute";
aa[g].div.childNodes[0].style.left = 0;
aa[g].div.childNodes[0].style.top = 0;
aa[g].div.childNodes[0].style.zIndex = 10;
aa[g].div.childNodes[0].style.cursor = "pointer";
aa[g].div.appendChild(document.createElement("img"));
aa[g].div.childNodes[1].style.position = "absolute";
aa[g].div.childNodes[1].style.left = 0;
aa[g].div.childNodes[1].style.top = 0;
if(H.skin.getSkinElement("dock", "button")) {
aa[g].div.childNodes[1].src = H.skin.getSkinElement("dock", "button").src;
}
aa[g].div.childNodes[1].style.zIndex = 9;
aa[g].div.childNodes[1].style.cursor = "pointer";
aa[g].div.onmouseover = function() {
if(aa[g].overGraphic) {
aa[g].div.childNodes[0].src = aa[g].overGraphic;
}
if(H.skin.getSkinElement("dock", "buttonOver")) {
aa[g].div.childNodes[1].src = H.skin.getSkinElement("dock", "buttonOver").src;
}
};
aa[g].div.onmouseout = function() {
if(aa[g].outGraphic) {
aa[g].div.childNodes[0].src = aa[g].outGraphic;
}
if(H.skin.getSkinElement("dock", "button")) {
aa[g].div.childNodes[1].src = H.skin.getSkinElement("dock", "button").src;
}
};
if(H.skin.getSkinElement("dock", "button")) {
aa[g].div.childNodes[1].src = H.skin.getSkinElement("dock", "button").src;
}
}
if(aa[g].outGraphic) {
aa[g].div.childNodes[0].src = aa[g].outGraphic;
} else {
if(aa[g].overGraphic) {
aa[g].div.childNodes[0].src = aa[g].overGraphic;
}
}
if(k) {
aa[g].div.onclick = function(l) {
l.preventDefault();
e(H.id).callback(g);
if(aa[g].overGraphic) {
aa[g].div.childNodes[0].src = aa[g].overGraphic;
}
if(H.skin.getSkinElement("dock", "button")) {
aa[g].div.childNodes[1].src = H.skin.getSkinElement("dock", "button").src;
}
};
}
}
}
Y(Z, L);
};
function N(g) {
}
function Y(u, h) {
U();
if(a.length > 0) {
var t = 10;
var j = t;
var m = -1;
var l = H.skin.getSkinElement("dock", "button").height;
var n = H.skin.getSkinElement("dock", "button").width;
var p = u - n - t;
var k,
q;
if(W.align == e.html5.view.positions.LEFT) {
m = 1;
p = t;
}
for(var s = 0; s < a.length; s++) {
var g = Math.floor(j / h);
if((j + l + t) > ((g + 1) * h)) {
j = ((g + 1) * h) + t;
g = Math.floor(j / h);
}
var r = aa[a[s]].div;
r.style.top = (j % h) + "px";
r.style.left = (p + (H.skin.getSkinElement("dock", "button").width + t) * g * m) + "px";
var o = {x: f.parseDimension(r.style.left), y: f.parseDimension(r.style.top), width: n, height: l};
if(!k || (o.x <= k.x && o.y <= k.y)) {
k = o;
}
if(!q || (o.x >= q.x && o.y >= q.y)) {
q = o;
}
j += H.skin.getSkinElement("dock", "button").height + t;
}
ab = {x: k.x, y: k.y, width: q.x - k.x + q.width, height: k.y - q.y + q.height};
}
if(Q != H.jwGetFullscreen() || Z != u || L != h) {
Z = u;
L = h;
Q = H.jwGetFullscreen();
b = undefined;
setTimeout(O, 1);
}
}
function ae(g) {
return function() {
if(!ac && b != g && a.length > 0) {
b = g;
X.sendEvent(g, {component: "dock", boundingRect: ab});
}
};
}
function T(g) {
if(f.isMobile()) {
if(g.newstate == e.api.events.state.IDLE) {
I();
} else {
ad();
}
} else {
S();
}
}
function S(g) {
if(ac) {
return;
}
clearTimeout(c);
if(P.position == e.html5.view.positions.OVER || H.jwGetFullscreen()) {
switch(H.jwGetState()) {
case e.api.events.state.PAUSED:
case e.api.events.state.IDLE:
if(R && R.style.opacity < 1 && (!P.idlehide || f.exists(g))) {
M();
}
if(P.idlehide) {
c = setTimeout(function() {
K();
}, 2000);
}
break;
default:
if(f.exists(g)) {
M();
}
c = setTimeout(function() {
K();
}, 2000);
break;
}
} else {
M();
}
}
var O = ae(e.api.events.JWPLAYER_COMPONENT_SHOW);
var J = ae(e.api.events.JWPLAYER_COMPONENT_HIDE);
this.resize = Y;
var I = function() {
d(R, {display: "block"});
if(ac) {
ac = false;
O();
}
};
var ad = function() {
d(R, {display: "none"});
if(!ac) {
J();
ac = true;
}
};
function K() {
if(!ac) {
J();
if(R.style.opacity == 1) {
f.cancelAnimation(R);
f.fadeTo(R, 0, 0.1, 1, 0);
}
}
}
function M() {
if(!ac) {
O();
if(R.style.opacity == 0) {
f.cancelAnimation(R);
f.fadeTo(R, 1, 0.1, 0, 0);
}
}
}
function U() {
V = document.getElementById(H.id);
V.addEventListener("mousemove", S);
}
this.hide = ad;
this.show = I;
return this;
};
})(jwplayer);
(function(b) {
b.html5.eventdispatcher = function(e, a) {
var f = new b.events.eventdispatcher(a);
b.utils.extend(this, f);
this.sendEvent = function(d, c) {
if(!b.utils.exists(c)) {
c = {};
}
b.utils.extend(c, {id: e, version: b.version, type: d});
f.sendEvent(d, c);
};
};
})(jwplayer);
(function(d) {
var c = {prefix: "", file: "", link: "", margin: 8, out: 0.5, over: 1, timeout: 5, hide: true, position: "bottom-left"};
_css = d.utils.css;
d.html5.logo = function(A, w) {
var x = A;
var a;
var J;
var b;
var F = false;
G();
function G() {
z();
x.jwAddEventListener(d.api.events.JWPLAYER_PLAYER_STATE, E);
K();
C();
}
function z() {
if(c.prefix) {
var f = A.version.split(/\W/).splice(0, 2).join("/");
if(c.prefix.indexOf(f) < 0) {
c.prefix += f + "/";
}
}
if(w.position == d.html5.view.positions.OVER) {
w.position = c.position;
}
try {
if(window.location.href.indexOf("https") == 0) {
c.prefix = c.prefix.replace("http://l.longtailvideo.com", "https://securel.longtailvideo.com");
}
} catch(e) {
}
J = d.utils.extend({}, c, w);
}
function K() {
b = document.createElement("img");
b.id = x.id + "_jwplayer_logo";
b.style.display = "none";
b.onload = function(e) {
_css(b, D());
y();
};
if(!J.file) {
return;
}
if(J.file.indexOf("/") >= 0) {
b.src = J.file;
} else {
b.src = J.prefix + J.file;
}
}
if(!J.file) {
return;
}
this.resize = function(e, f) {
};
this.getDisplayElement = function() {
return b;
};
function C() {
if(J.link) {
b.onmouseover = H;
b.onmouseout = y;
b.onclick = v;
} else {
this.mouseEnabled = false;
}
}
function v(e) {
if(typeof e != "undefined") {
e.stopPropagation();
}
if(!F) {
return;
}
x.jwPause();
x.jwSetFullscreen(false);
if(J.link) {
window.open(J.link, "_top");
}
return;
}
function y(e) {
if(J.link && F) {
b.style.opacity = J.out;
}
return;
}
function H(e) {
if(F) {
b.style.opacity = J.over;
}
return;
}
function D() {
var e = {textDecoration: "none", position: "absolute", cursor: "pointer"};
e.display = (J.hide.toString() == "true" && !F) ? "none" : "block";
var f = J.position.toLowerCase().split("-");
for(var g in f) {
e[f[g]] = J.margin;
}
return e;
}
function B() {
if(J.hide.toString() == "true") {
b.style.display = "block";
b.style.opacity = 0;
d.utils.fadeTo(b, J.out, 0.1, parseFloat(b.style.opacity));
a = setTimeout(function() {
I();
}, J.timeout * 1000);
}
F = true;
}
function I() {
F = false;
if(J.hide.toString() == "true") {
d.utils.fadeTo(b, 0, 0.1, parseFloat(b.style.opacity));
}
}
function E(e) {
if(e.newstate == d.api.events.state.BUFFERING) {
clearTimeout(a);
B();
}
}
return this;
};
})(jwplayer);
(function(f) {
var j = {ended: f.api.events.state.IDLE, playing: f.api.events.state.PLAYING, pause: f.api.events.state.PAUSED, buffering: f.api.events.state.BUFFERING};
var h = f.utils;
var k = h.css;
var g = h.isMobile();
f.html5.mediavideo = function(al, T) {
var V = {abort: ae, canplay: ai, canplaythrough: ai, durationchange: b, emptied: ae, ended: ai, error: O, loadeddata: b, loadedmetadata: b, loadstart: ai, pause: ai, play: ae, playing: ai, progress: e, ratechange: ae, seeked: ai, seeking: ai, stalled: ai, suspend: ai, timeupdate: P, volumechange: W, waiting: ai, canshowcurrentframe: ae, dataunavailable: ae, empty: ae, load: Y, loadedfirstframe: ae, webkitfullscreenchange: ak};
var aj = new f.html5.eventdispatcher();
h.extend(this, aj);
var ad = al,
ah = T,
ag,
S,
U,
af,
an,
a = false,
aa = false,
R,
ab,
Z;
ac();
this.load = function(n, m) {
if(typeof m == "undefined") {
m = true;
}
if(!aa) {
return;
}
af = n;
h.empty(ag);
Z = 0;
if(n.levels && n.levels.length > 0) {
if(n.levels.length == 1) {
ag.src = n.levels[0].file;
} else {
ao(n.levels);
if(ag.src) {
ag.removeAttribute("src");
}
for(var o = 0; o < n.levels.length; o++) {
var l = ag.ownerDocument.createElement("source");
l.src = n.levels[o].file;
ag.appendChild(l);
Z++;
}
}
} else {
ag.src = n.file;
}
if(g) {
if(n.image) {
ag.poster = n.image;
}
ag.style.display = "block";
setTimeout(function() {
ag.setAttribute("controls", "controls");
}, 100);
}
R = ab = U = false;
ad.buffer = 0;
if(!h.exists(n.start)) {
n.start = 0;
}
ad.duration = n.duration;
aj.sendEvent(f.api.events.JWPLAYER_MEDIA_LOADED);
if((!g && n.levels.length == 1) || !a) {
ag.load();
}
a = false;
if(m) {
N(f.api.events.state.BUFFERING);
aj.sendEvent(f.api.events.JWPLAYER_MEDIA_BUFFER, {bufferPercent: 0});
this.play();
}
};
this.play = function() {
if(!aa) {
return;
}
if(S != f.api.events.state.PLAYING) {
Q();
if(ab) {
N(f.api.events.state.PLAYING);
} else {
N(f.api.events.state.BUFFERING);
}
ag.play();
}
};
this.pause = function() {
if(!aa) {
return;
}
ag.pause();
N(f.api.events.state.PAUSED);
};
this.seek = function(l) {
if(!aa) {
return;
}
if(!(ad.duration <= 0 || isNaN(ad.duration)) && !(ad.position <= 0 || isNaN(ad.position))) {
ag.currentTime = l;
ag.play();
}
};
_stop = this.stop = function(n) {
if(!aa) {
return;
}
if(!h.exists(n)) {
n = true;
}
am();
if(n) {
ag.style.display = "none";
ab = false;
var m = navigator.userAgent;
if(m.match(/chrome/i)) {
ag.src = undefined;
} else {
if(m.match(/safari/i) || m.match(/firefox/i)) {
ag.removeAttribute("src");
} else {
ag.src = "";
}
}
ag.removeAttribute("controls");
ag.removeAttribute("poster");
h.empty(ag);
ag.load();
a = true;
if(ag.webkitSupportsFullscreen) {
try {
ag.webkitExitFullscreen();
} catch(l) {
}
}
}
N(f.api.events.state.IDLE);
};
this.fullscreen = function(l) {
if(l === true) {
this.resize("100%", "100%");
} else {
this.resize(ad.config.width, ad.config.height);
}
};
this.resize = function(l, m) {
};
this.volume = function(l) {
if(!g) {
ag.volume = l / 100;
}
};
this.mute = function(l) {
if(!g) {
ag.muted = l;
}
};
this.getDisplayElement = function() {
return ag;
};
this.hasChrome = function() {
return g;
};
this.detachMedia = function() {
aa = false;
return this.getDisplayElement();
};
this.attachMedia = function() {
aa = true;
};
function X(l, m) {
return function(n) {
if(aa && h.exists(n.target.parentNode)) {
m(n);
}
};
}
function ac() {
ag = document.createElement("video");
S = f.api.events.state.IDLE;
for(var l in V) {
ag.addEventListener(l, X(l, V[l]), true);
}
aa = true;
ag.setAttribute("x-webkit-airplay", "allow");
if(ah.parentNode) {
ah.parentNode.replaceChild(ag, ah);
}
if(!ag.id) {
ag.id = ah.id;
}
ag.volume = ad.volume / 100;
}
function N(m) {
if(m == f.api.events.state.PAUSED && S == f.api.events.state.IDLE) {
return;
}
if(S != m) {
var l = S;
ad.state = S = m;
aj.sendEvent(f.api.events.JWPLAYER_PLAYER_STATE, {oldstate: l, newstate: m});
}
}
function ae(l) {
}
function W(m) {
var l = Math.round(ag.volume * 100);
if(l != ad.volume) {
ad.volume = l;
aj.sendEvent(f.api.events.JWPLAYER_MEDIA_VOLUME, {volume: ad.volume});
}
if(ag.muted != ad.mute) {
ad.mute = ag.muted;
aj.sendEvent(f.api.events.JWPLAYER_MEDIA_MUTE, {mute: ad.mute});
}
}
function e(l) {
var m;
if(h.exists(l) && l.lengthComputable && l.total) {
m = l.loaded / l.total * 100;
} else {
if(h.exists(ag.buffered) && (ag.buffered.length > 0)) {
var n = ag.buffered.length - 1;
if(n >= 0) {
m = ag.buffered.end(n) / ag.duration * 100;
}
}
}
if(ab === false && S == f.api.events.state.BUFFERING) {
aj.sendEvent(f.api.events.JWPLAYER_MEDIA_BUFFER_FULL);
ab = true;
}
if(!R) {
if(m == 100) {
R = true;
}
if(h.exists(m) && (m > ad.buffer)) {
ad.buffer = Math.round(m);
aj.sendEvent(f.api.events.JWPLAYER_MEDIA_BUFFER, {bufferPercent: Math.round(m)});
}
}
}
function P(l) {
if(h.exists(l) && h.exists(l.target)) {
if(!isNaN(l.target.duration) && (isNaN(ad.duration) || ad.duration < 1)) {
if(l.target.duration == Infinity) {
ad.duration = 0;
} else {
ad.duration = Math.round(l.target.duration * 10) / 10;
}
}
if(!U && ag.readyState > 0) {
ag.style.display = "block";
N(f.api.events.state.PLAYING);
}
if(S == f.api.events.state.PLAYING) {
if(!U && ag.readyState > 0) {
U = true;
try {
if(ag.currentTime < af.start) {
ag.currentTime = af.start;
}
} catch(m) {
}
ag.volume = ad.volume / 100;
ag.muted = ad.mute;
}
ad.position = ad.duration > 0 ? (Math.round(l.target.currentTime * 10) / 10) : 0;
aj.sendEvent(f.api.events.JWPLAYER_MEDIA_TIME, {position: ad.position, duration: ad.duration});
if(ad.position >= ad.duration && (ad.position > 0 || ad.duration > 0)) {
c();
}
}
}
e(l);
}
function Y(l) {
}
function ai(l) {
if(j[l.type]) {
if(l.type == "ended") {
c();
} else {
N(j[l.type]);
}
}
}
function b(m) {
var n = Math.round(m.target.duration * 10) / 10;
var l = {height: m.target.videoHeight, width: m.target.videoWidth, duration: n};
if((ad.duration < n || isNaN(ad.duration)) && m.target.duration != Infinity) {
ad.duration = n;
}
aj.sendEvent(f.api.events.JWPLAYER_MEDIA_META, {metadata: l});
}
function O(l) {
if(S == f.api.events.state.IDLE) {
return;
}
var m = "There was an error: ";
if((l.target.error && l.target.tagName.toLowerCase() == "video") || l.target.parentNode.error && l.target.parentNode.tagName.toLowerCase() == "video") {
var n = !h.exists(l.target.error) ? l.target.parentNode.error : l.target.error;
switch(n.code) {
case n.MEDIA_ERR_ABORTED:
m = "You aborted the video playback: ";
break;
case n.MEDIA_ERR_NETWORK:
m = "A network error caused the video download to fail part-way: ";
break;
case n.MEDIA_ERR_DECODE:
m = "The video playback was aborted due to a corruption problem or because the video used features your browser did not support: ";
break;
case n.MEDIA_ERR_SRC_NOT_SUPPORTED:
m = "The video could not be loaded, either because the server or network failed or because the format is not supported: ";
break;
default:
m = "An unknown error occurred: ";
break;
}
} else {
if(l.target.tagName.toLowerCase() == "source") {
Z--;
if(Z > 0) {
return;
}
m = "The video could not be loaded, either because the server or network failed or because the format is not supported: ";
} else {
h.log("An unknown error occurred. Continuing...");
return;
}
}
_stop(false);
m += d();
_error = true;
aj.sendEvent(f.api.events.JWPLAYER_ERROR, {message: m});
return;
}
function d() {
var m = "";
for(var n in af.levels) {
var o = af.levels[n];
var l = ah.ownerDocument.createElement("source");
m += f.utils.getAbsolutePath(o.file);
if(n < (af.levels.length - 1)) {
m += ", ";
}
}
return m;
}
function Q() {
if(!h.exists(an)) {
an = setInterval(function() {
e();
}, 100);
}
}
function am() {
clearInterval(an);
an = null;
}
function c() {
if(S != f.api.events.state.IDLE) {
_stop(false);
aj.sendEvent(f.api.events.JWPLAYER_MEDIA_COMPLETE);
}
}
function ak(l) {
if(h.exists(ag.webkitDisplayingFullscreen)) {
if(ad.fullscreen && !ag.webkitDisplayingFullscreen) {
aj.sendEvent(f.api.events.JWPLAYER_FULLSCREEN, {fullscreen: false});
}
}
}
function ao(m) {
if(m.length > 0 && h.isIOS()) {
if(h.extension(m[0].file) != "mp4") {
var o = -1;
for(var n = 1; n < m.length; n++) {
if(h.extension(m[n].file) == "mp4") {
o = n;
break;
}
}
if(o > -1) {
var l = m.splice(o, 1)[0];
m.unshift(l);
}
}
}
}
};
})(jwplayer);
(function(e) {
var f = {ended: e.api.events.state.IDLE, playing: e.api.events.state.PLAYING, pause: e.api.events.state.PAUSED, buffering: e.api.events.state.BUFFERING};
var d = e.utils.css;
e.html5.mediayoutube = function(r, v) {
var u = new e.html5.eventdispatcher();
e.utils.extend(this, u);
var p = r;
var s = document.getElementById(v.id);
var t = e.api.events.state.IDLE;
var b,
c;
function q(h) {
if(t != h) {
var g = t;
p.state = h;
t = h;
u.sendEvent(e.api.events.JWPLAYER_PLAYER_STATE, {oldstate: g, newstate: h});
}
}
this.getDisplayElement = this.detachMedia = function() {
return s;
};
this.attachMedia = function() {
};
this.play = function() {
if(t == e.api.events.state.IDLE) {
u.sendEvent(e.api.events.JWPLAYER_MEDIA_BUFFER, {bufferPercent: 100});
u.sendEvent(e.api.events.JWPLAYER_MEDIA_BUFFER_FULL);
q(e.api.events.state.PLAYING);
} else {
if(t == e.api.events.state.PAUSED) {
q(e.api.events.state.PLAYING);
}
}
};
this.pause = function() {
q(e.api.events.state.PAUSED);
};
this.seek = function(g) {
};
this.stop = function(g) {
if(!_utils.exists(g)) {
g = true;
}
p.position = 0;
q(e.api.events.state.IDLE);
if(g) {
d(s, {display: "none"});
}
};
this.volume = function(g) {
p.volume = g;
u.sendEvent(e.api.events.JWPLAYER_MEDIA_VOLUME, {volume: Math.round(g)});
};
this.mute = function(g) {
s.muted = g;
p.mute = g;
u.sendEvent(e.api.events.JWPLAYER_MEDIA_MUTE, {mute: g});
};
this.resize = function(g, h) {
if(g * h > 0 && b) {
b.width = c.width = g;
b.height = c.height = h;
}
};
this.fullscreen = function(g) {
if(g === true) {
this.resize("100%", "100%");
} else {
this.resize(p.config.width, p.config.height);
}
};
this.load = function(g) {
a(g);
d(b, {display: "block"});
q(e.api.events.state.BUFFERING);
u.sendEvent(e.api.events.JWPLAYER_MEDIA_BUFFER, {bufferPercent: 0});
u.sendEvent(e.api.events.JWPLAYER_MEDIA_LOADED);
this.play();
};
this.hasChrome = function() {
return(t != e.api.events.state.IDLE);
};
function a(g) {
var k = g.levels[0].file;
k = ["http://www.youtube.com/v/", w(k), "&hl=en_US&fs=1&autoplay=1"].join("");
b = document.createElement("object");
b.id = s.id;
b.style.position = "absolute";
var h = {movie: k, allowfullscreen: "true", allowscriptaccess: "always"};
for(var n in h) {
var j = document.createElement("param");
j.name = n;
j.value = h[n];
b.appendChild(j);
}
c = document.createElement("embed");
b.appendChild(c);
var m = {src: k, type: "application/x-shockwave-flash", allowfullscreen: "true", allowscriptaccess: "always", width: b.width, height: b.height};
for(var l in m) {
c.setAttribute(l, m[l]);
}
b.appendChild(c);
b.style.zIndex = 2147483000;
if(s != b && s.parentNode) {
s.parentNode.replaceChild(b, s);
}
s = b;
}
function w(j) {
var k = j.split(/\?|\#\!/);
var g = "";
for(var h = 0; h < k.length; h++) {
if(k[h].substr(0, 2) == "v=") {
g = k[h].substr(2);
}
}
if(g == "") {
if(j.indexOf("/v/") >= 0) {
g = j.substr(j.indexOf("/v/") + 3);
} else {
if(j.indexOf("youtu.be") >= 0) {
g = j.substr(j.indexOf("youtu.be/") + 9);
} else {
g = j;
}
}
}
if(g.indexOf("?") > -1) {
g = g.substr(0, g.indexOf("?"));
}
if(g.indexOf("&") > -1) {
g = g.substr(0, g.indexOf("&"));
}
return g;
}
this.embed = c;
return this;
};
})(jwplayer);
(function(jwplayer) {
var _configurableStateVariables = ["width", "height", "start", "duration", "volume", "mute", "fullscreen", "item", "plugins", "stretching"];
jwplayer.html5.model = function(api, container, options) {
var _api = api;
var _container = container;
var _model = {id: _container.id, playlist: [], state: jwplayer.api.events.state.IDLE, position: 0, buffer: 0, config: {width: 480, height: 320, item: -1, skin: undefined, file: undefined, image: undefined, start: 0, duration: 0, bufferlength: 5, volume: 90, mute: false, fullscreen: false, repeat: "", stretching: jwplayer.utils.stretching.UNIFORM, autostart: false, debug: undefined, screencolor: undefined}};
var _media;
var _eventDispatcher = new jwplayer.html5.eventdispatcher();
var _components = ["display", "logo", "controlbar", "playlist", "dock"];
jwplayer.utils.extend(_model, _eventDispatcher);
for(var option in options) {
if(typeof options[option] == "string") {
var type = /color$/.test(option) ? "color" : null;
options[option] = jwplayer.utils.typechecker(options[option], type);
}
var config = _model.config;
var path = option.split(".");
for(var edge in path) {
if(edge == path.length - 1) {
config[path[edge]] = options[option];
} else {
if(!jwplayer.utils.exists(config[path[edge]])) {
config[path[edge]] = {};
}
config = config[path[edge]];
}
}
}
for(var index in _configurableStateVariables) {
var configurableStateVariable = _configurableStateVariables[index];
_model[configurableStateVariable] = _model.config[configurableStateVariable];
}
var pluginorder = _components.concat([]);
if(jwplayer.utils.exists(_model.plugins)) {
if(typeof _model.plugins == "string") {
var userplugins = _model.plugins.split(",");
for(var userplugin in userplugins) {
if(typeof userplugins[userplugin] == "string") {
pluginorder.push(userplugins[userplugin].replace(/^\s+|\s+$/g, ""));
}
}
}
}
if(jwplayer.utils.isMobile()) {
pluginorder = ["display", "logo", "dock", "playlist"];
if(!jwplayer.utils.exists(_model.config.repeat)) {
_model.config.repeat = "list";
}
} else {
if(_model.config.chromeless) {
pluginorder = ["logo", "dock", "playlist"];
if(!jwplayer.utils.exists(_model.config.repeat)) {
_model.config.repeat = "list";
}
}
}
_model.plugins = {order: pluginorder, config: {}, object: {}};
if(typeof _model.config.components != "undefined") {
for(var component in _model.config.components) {
_model.plugins.config[component] = _model.config.components[component];
}
}
var playlistVisible = false;
for(var pluginIndex in _model.plugins.order) {
var pluginName = _model.plugins.order[pluginIndex];
var pluginConfig = !jwplayer.utils.exists(_model.plugins.config[pluginName]) ? {} : _model.plugins.config[pluginName];
_model.plugins.config[pluginName] = !jwplayer.utils.exists(_model.plugins.config[pluginName]) ? pluginConfig : jwplayer.utils.extend(_model.plugins.config[pluginName], pluginConfig);
if(!jwplayer.utils.exists(_model.plugins.config[pluginName].position)) {
if(pluginName == "playlist") {
_model.plugins.config[pluginName].position = jwplayer.html5.view.positions.NONE;
} else {
_model.plugins.config[pluginName].position = jwplayer.html5.view.positions.OVER;
}
} else {
if(pluginName == "playlist") {
playlistVisible = true;
}
_model.plugins.config[pluginName].position = _model.plugins.config[pluginName].position.toString().toUpperCase();
}
}
if(_model.plugins.config.controlbar && playlistVisible) {
_model.plugins.config.controlbar.hideplaylistcontrols = true;
}
if(typeof _model.plugins.config.dock != "undefined") {
if(typeof _model.plugins.config.dock != "object") {
var position = _model.plugins.config.dock.toString().toUpperCase();
_model.plugins.config.dock = {position: position};
}
if(typeof _model.plugins.config.dock.position != "undefined") {
_model.plugins.config.dock.align = _model.plugins.config.dock.position;
_model.plugins.config.dock.position = jwplayer.html5.view.positions.OVER;
}
if(typeof _model.plugins.config.dock.idlehide == "undefined") {
try {
_model.plugins.config.dock.idlehide = _model.plugins.config.controlbar.idlehide;
} catch(e) {
}
}
}
function _loadExternal(playlistfile) {
var loader = new jwplayer.html5.playlistloader();
loader.addEventListener(jwplayer.api.events.JWPLAYER_PLAYLIST_LOADED, function(evt) {
_model.playlist = new jwplayer.html5.playlist(evt);
_loadComplete(true);
});
loader.addEventListener(jwplayer.api.events.JWPLAYER_ERROR, function(evt) {
_model.playlist = new jwplayer.html5.playlist({playlist: []});
_loadComplete(false);
});
loader.load(playlistfile);
}
function _loadComplete() {
if(_model.config.shuffle) {
_model.item = _getShuffleItem();
} else {
if(_model.config.item >= _model.playlist.length) {
_model.config.item = _model.playlist.length - 1;
} else {
if(_model.config.item < 0) {
_model.config.item = 0;
}
}
_model.item = _model.config.item;
}
_model.position = 0;
_model.duration = _model.playlist.length > 0 ? _model.playlist[_model.item].duration : 0;
_eventDispatcher.sendEvent(jwplayer.api.events.JWPLAYER_PLAYLIST_LOADED, {playlist: _model.playlist});
_eventDispatcher.sendEvent(jwplayer.api.events.JWPLAYER_PLAYLIST_ITEM, {index: _model.item});
}
_model.loadPlaylist = function(arg) {
var input;
if(typeof arg == "string") {
if(arg.indexOf("[") == 0 || arg.indexOf("{") == "0") {
try {
input = eval(arg);
} catch(err) {
input = arg;
}
} else {
input = arg;
}
} else {
input = arg;
}
var config;
switch(jwplayer.utils.typeOf(input)) {
case"object":
config = input;
break;
case"array":
config = {playlist: input};
break;
default:
config = {file: input};
break;
}
_model.playlist = new jwplayer.html5.playlist(config);
_model.item = _model.config.item >= 0 ? _model.config.item : 0;
if(!_model.playlist[_model.item].provider) {
_loadExternal(_model.playlist[_model.item].file);
} else {
_loadComplete();
}
};
function _getShuffleItem() {
var result = null;
if(_model.playlist.length > 1) {
while(!jwplayer.utils.exists(result)) {
result = Math.floor(Math.random() * _model.playlist.length);
if(result == _model.item) {
result = null;
}
}
} else {
result = 0;
}
return result;
}
function forward(evt) {
if(evt.type == jwplayer.api.events.JWPLAYER_MEDIA_LOADED) {
_container = _media.getDisplayElement();
}
_eventDispatcher.sendEvent(evt.type, evt);
}
var _mediaProviders = {};
_model.setActiveMediaProvider = function(playlistItem) {
if(playlistItem.provider == "audio") {
playlistItem.provider = "sound";
}
var provider = playlistItem.provider;
var current = _media ? _media.getDisplayElement() : null;
if(provider == "sound" || provider == "http" || provider == "") {
provider = "video";
}
if(!jwplayer.utils.exists(_mediaProviders[provider])) {
switch(provider) {
case"video":
_media = new jwplayer.html5.mediavideo(_model, current ? current : _container);
break;
case"youtube":
_media = new jwplayer.html5.mediayoutube(_model, current ? current : _container);
break;
}
if(!jwplayer.utils.exists(_media)) {
return false;
}
_media.addGlobalListener(forward);
_mediaProviders[provider] = _media;
} else {
if(_media != _mediaProviders[provider]) {
if(_media) {
_media.stop();
}
_media = _mediaProviders[provider];
}
}
return true;
};
_model.getMedia = function() {
return _media;
};
_model.seek = function(pos) {
_eventDispatcher.sendEvent(jwplayer.api.events.JWPLAYER_MEDIA_SEEK, {position: _model.position, offset: pos});
return _media.seek(pos);
};
_model.setupPlugins = function() {
if(!jwplayer.utils.exists(_model.plugins) || !jwplayer.utils.exists(_model.plugins.order) || _model.plugins.order.length == 0) {
jwplayer.utils.log("No plugins to set up");
return _model;
}
for(var i = 0; i < _model.plugins.order.length; i++) {
try {
var pluginName = _model.plugins.order[i];
if(jwplayer.utils.exists(jwplayer.html5[pluginName])) {
if(pluginName == "playlist") {
_model.plugins.object[pluginName] = new jwplayer.html5.playlistcomponent(_api, _model.plugins.config[pluginName]);
} else {
_model.plugins.object[pluginName] = new jwplayer.html5[pluginName](_api, _model.plugins.config[pluginName]);
}
} else {
_model.plugins.order.splice(plugin, plugin + 1);
}
if(typeof _model.plugins.object[pluginName].addGlobalListener == "function") {
_model.plugins.object[pluginName].addGlobalListener(forward);
}
} catch(err) {
jwplayer.utils.log("Could not setup " + pluginName);
}
}
};
return _model;
};
})(jwplayer);
(function(b) {
b.html5.playlist = function(a) {
var e = [];
if(a.playlist && a.playlist instanceof Array && a.playlist.length > 0) {
for(var f in a.playlist) {
if(!isNaN(parseInt(f))) {
e.push(new b.html5.playlistitem(a.playlist[f]));
}
}
} else {
e.push(new b.html5.playlistitem(a));
}
return e;
};
})(jwplayer);
(function(e) {
var f = {size: 180, position: e.html5.view.positions.NONE, itemheight: 60, thumbs: true, fontcolor: "#000000", overcolor: "", activecolor: "", backgroundcolor: "#f8f8f8", font: "_sans", fontsize: "", fontstyle: "", fontweight: ""};
var d = {_sans: "Arial, Helvetica, sans-serif", _serif: "Times, Times New Roman, serif", _typewriter: "Courier New, Courier, monospace"};
_utils = e.utils;
_css = _utils.css;
_hide = function(a) {
_css(a, {display: "none"});
};
_show = function(a) {
_css(a, {display: "block"});
};
e.html5.playlistcomponent = function(J, K) {
var D = J;
var X = e.utils.extend({}, f, D.skin.getComponentSettings("playlist"), K);
if(X.position == e.html5.view.positions.NONE || typeof e.html5.view.positions[X.position] == "undefined") {
return;
}
var c;
var R;
var I;
var Y;
var V;
var W;
var S = -1;
var U = {background: undefined, item: undefined, itemOver: undefined, itemImage: undefined, itemActive: undefined};
this.getDisplayElement = function() {
return c;
};
this.resize = function(g, j) {
R = g;
I = j;
if(D.jwGetFullscreen()) {
_hide(c);
} else {
var h = {display: "block", width: R, height: I};
_css(c, h);
}
};
this.show = function() {
_show(c);
};
this.hide = function() {
_hide(c);
};
function T() {
c = document.createElement("div");
c.id = D.id + "_jwplayer_playlistcomponent";
c.style.overflow = "hidden";
switch(X.position) {
case e.html5.view.positions.RIGHT:
case e.html5.view.positions.LEFT:
c.style.width = X.size + "px";
break;
case e.html5.view.positions.TOP:
case e.html5.view.positions.BOTTOM:
c.style.height = X.size + "px";
break;
}
M();
if(U.item) {
X.itemheight = U.item.height;
}
c.style.backgroundColor = "#C6C6C6";
D.jwAddEventListener(e.api.events.JWPLAYER_PLAYLIST_LOADED, H);
D.jwAddEventListener(e.api.events.JWPLAYER_PLAYLIST_ITEM, F);
D.jwAddEventListener(e.api.events.JWPLAYER_PLAYER_STATE, Q);
}
function N() {
var g = document.createElement("ul");
_css(g, {width: c.style.width, minWidth: c.style.width, height: c.style.height, backgroundColor: X.backgroundcolor, backgroundImage: U.background ? "url(" + U.background.src + ")" : "", color: X.fontcolor, listStyle: "none", margin: 0, padding: 0, fontFamily: d[X.font] ? d[X.font] : d._sans, fontSize: (X.fontsize ? X.fontsize : 11) + "px", fontStyle: X.fontstyle, fontWeight: X.fontweight, overflowY: "auto"});
return g;
}
function b(g) {
return function() {
var k = W.getElementsByClassName("item")[g];
var j = X.fontcolor;
var h = U.item ? "url(" + U.item.src + ")" : "";
if(g == D.jwGetPlaylistIndex()) {
if(X.activecolor !== "") {
j = X.activecolor;
}
if(U.itemActive) {
h = "url(" + U.itemActive.src + ")";
}
}
_css(k, {color: X.overcolor !== "" ? X.overcolor : j, backgroundImage: U.itemOver ? "url(" + U.itemOver.src + ")" : h});
};
}
function O(g) {
return function() {
var k = W.getElementsByClassName("item")[g];
var j = X.fontcolor;
var h = U.item ? "url(" + U.item.src + ")" : "";
if(g == D.jwGetPlaylistIndex()) {
if(X.activecolor !== "") {
j = X.activecolor;
}
if(U.itemActive) {
h = "url(" + U.itemActive.src + ")";
}
}
_css(k, {color: j, backgroundImage: h});
};
}
function L(p) {
var h = Y[p];
var j = document.createElement("li");
j.className = "item";
_css(j, {height: X.itemheight, display: "block", cursor: "pointer", backgroundImage: U.item ? "url(" + U.item.src + ")" : "", backgroundSize: "100% " + X.itemheight + "px"});
j.onmouseover = b(p);
j.onmouseout = O(p);
var o = document.createElement("div");
var s = new Image();
var n = 0;
var m = 0;
var l = 0;
if(E() && (h.image || h["playlist.image"] || U.itemImage)) {
s.className = "image";
if(U.itemImage) {
n = (X.itemheight - U.itemImage.height) / 2;
m = U.itemImage.width;
l = U.itemImage.height;
} else {
m = X.itemheight * 4 / 3;
l = X.itemheight;
}
_css(o, {height: l, width: m, "float": "left", styleFloat: "left", cssFloat: "left", margin: "0 5px 0 0", background: "black", overflow: "hidden", margin: n + "px", position: "relative"});
_css(s, {position: "relative"});
o.appendChild(s);
s.onload = function() {
e.utils.stretch(e.utils.stretching.FILL, s, m, l, this.naturalWidth, this.naturalHeight);
};
if(h["playlist.image"]) {
s.src = h["playlist.image"];
} else {
if(h.image) {
s.src = h.image;
} else {
if(U.itemImage) {
s.src = U.itemImage.src;
}
}
}
j.appendChild(o);
}
var t = R - m - n * 2;
if(I < X.itemheight * Y.length) {
t -= 15;
}
var g = document.createElement("div");
_css(g, {position: "relative", height: "100%", overflow: "hidden"});
var r = document.createElement("span");
if(h.duration > 0) {
r.className = "duration";
_css(r, {fontSize: (X.fontsize ? X.fontsize : 11) + "px", fontWeight: (X.fontweight ? X.fontweight : "bold"), width: "40px", height: X.fontsize ? X.fontsize + 10 : 20, lineHeight: 24, "float": "right", styleFloat: "right", cssFloat: "right"});
r.innerHTML = _utils.timeFormat(h.duration);
g.appendChild(r);
}
var k = document.createElement("span");
k.className = "title";
_css(k, {padding: "5px 5px 0 " + (n ? 0 : "5px"), height: X.fontsize ? X.fontsize + 10 : 20, lineHeight: X.fontsize ? X.fontsize + 10 : 20, overflow: "hidden", "float": "left", styleFloat: "left", cssFloat: "left", width: ((h.duration > 0) ? t - 50 : t) - 10 + "px", fontSize: (X.fontsize ? X.fontsize : 13) + "px", fontWeight: (X.fontweight ? X.fontweight : "bold")});
k.innerHTML = h ? h.title : "";
g.appendChild(k);
if(h.description) {
var q = document.createElement("span");
q.className = "description";
_css(q, {display: "block", "float": "left", styleFloat: "left", cssFloat: "left", margin: 0, paddingLeft: k.style.paddingLeft, paddingRight: k.style.paddingRight, lineHeight: (X.fontsize ? X.fontsize + 4 : 16) + "px", overflow: "hidden", position: "relative"});
q.innerHTML = h.description;
g.appendChild(q);
}
j.appendChild(g);
return j;
}
function H(j) {
c.innerHTML = "";
Y = D.jwGetPlaylist();
if(!Y) {
return;
}
items = [];
W = N();
for(var h = 0; h < Y.length; h++) {
var k = L(h);
k.onclick = a(h);
W.appendChild(k);
items.push(k);
}
S = D.jwGetPlaylistIndex();
O(S)();
c.appendChild(W);
if(_utils.isIOS() && window.iScroll) {
W.style.height = X.itemheight * Y.length + "px";
var g = new iScroll(c.id);
}
}
function a(g) {
return function() {
D.jwPlaylistItem(g);
D.jwPlay(true);
};
}
function P() {
W.scrollTop = D.jwGetPlaylistIndex() * X.itemheight;
}
function E() {
return X.thumbs.toString().toLowerCase() == "true";
}
function F(g) {
if(S >= 0) {
O(S)();
S = g.index;
}
O(g.index)();
P();
}
function Q() {
if(X.position == e.html5.view.positions.OVER) {
switch(D.jwGetState()) {
case e.api.events.state.IDLE:
_show(c);
break;
default:
_hide(c);
break;
}
}
}
function M() {
for(var g in U) {
U[g] = G(g);
}
}
function G(g) {
return D.skin.getSkinElement("playlist", g);
}
T();
return this;
};
})(jwplayer);
(function(c) {
c.html5.playlistitem = function(b) {
var a = {author: "", date: "", description: "", image: "", link: "", mediaid: "", tags: "", title: "", provider: "", file: "", streamer: "", duration: -1, start: 0, currentLevel: -1, levels: []};
var f = c.utils.extend({}, a, b);
if(f.type) {
f.provider = f.type;
delete f.type;
}
if(f.levels.length === 0) {
f.levels[0] = new c.html5.playlistitemlevel(f);
}
if(!f.provider) {
f.provider = d(f.levels[0]);
} else {
f.provider = f.provider.toLowerCase();
}
return f;
};
function d(b) {
if(c.utils.isYouTube(b.file)) {
return"youtube";
} else {
var a = c.utils.extension(b.file);
var h;
if(a && c.utils.extensionmap[a]) {
if(a == "m3u8") {
return"video";
}
h = c.utils.extensionmap[a].html5;
} else {
if(b.type) {
h = b.type;
}
}
if(h) {
var g = h.split("/")[0];
if(g == "audio") {
return"sound";
} else {
if(g == "video") {
return g;
}
}
}
}
return"";
}
})(jwplayer);
(function(b) {
b.html5.playlistitemlevel = function(a) {
var e = {file: "", streamer: "", bitrate: 0, width: 0};
for(var f in e) {
if(b.utils.exists(a[f])) {
e[f] = a[f];
}
}
return e;
};
})(jwplayer);
(function(b) {
b.html5.playlistloader = function() {
var f = new b.html5.eventdispatcher();
b.utils.extend(this, f);
this.load = function(c) {
b.utils.ajax(c, e, a);
};
function e(d) {
var j = [];
try {
var j = b.utils.parsers.rssparser.parse(d.responseXML.firstChild);
f.sendEvent(b.api.events.JWPLAYER_PLAYLIST_LOADED, {playlist: new b.html5.playlist({playlist: j})});
} catch(c) {
a("Could not parse the playlist");
}
}
function a(c) {
f.sendEvent(b.api.events.JWPLAYER_ERROR, {message: c ? c : "Could not load playlist an unknown reason."});
}
};
})(jwplayer);
(function(b) {
b.html5.skin = function() {
var a = {};
var d = false;
this.load = function(f, c) {
new b.html5.skinloader(f, function(e) {
d = true;
a = e;
c();
}, function() {
new b.html5.skinloader("", function(e) {
d = true;
a = e;
c();
});
});
};
this.getSkinElement = function(h, g) {
if(d) {
try {
return a[h].elements[g];
} catch(c) {
b.utils.log("No such skin component / element: ", [h, g]);
}
}
return null;
};
this.getComponentSettings = function(c) {
if(d) {
return a[c].settings;
}
return null;
};
this.getComponentLayout = function(c) {
if(d) {
return a[c].layout;
}
return null;
};
};
})(jwplayer);
(function(b) {
b.html5.skinloader = function(D, u, z) {
var v = {};
var G = u;
var y = z;
var E = true;
var A;
var w = D;
var I = false;
function x() {
if(typeof w != "string" || w === "") {
F(b.html5.defaultSkin().xml);
} else {
b.utils.ajax(b.utils.getAbsolutePath(w), function(d) {
try {
if(b.utils.exists(d.responseXML)) {
F(d.responseXML);
return;
}
} catch(c) {
B();
}
F(b.html5.defaultSkin().xml);
}, function(c) {
F(b.html5.defaultSkin().xml);
});
}
}
function F(m) {
var U = m.getElementsByTagName("component");
if(U.length === 0) {
return;
}
for(var p = 0; p < U.length; p++) {
var W = U[p].getAttribute("name");
var X = {settings: {}, elements: {}, layout: {}};
v[W] = X;
var s = U[p].getElementsByTagName("elements")[0].getElementsByTagName("element");
for(var S = 0; S < s.length; S++) {
H(s[S], W);
}
var k = U[p].getElementsByTagName("settings")[0];
if(k && k.childNodes.length > 0) {
var j = k.getElementsByTagName("setting");
for(var d = 0; d < j.length; d++) {
var c = j[d].getAttribute("name");
var n = j[d].getAttribute("value");
var o = /color$/.test(c) ? "color" : null;
v[W].settings[c] = b.utils.typechecker(n, o);
}
}
var h = U[p].getElementsByTagName("layout")[0];
if(h && h.childNodes.length > 0) {
var g = h.getElementsByTagName("group");
for(var q = 0; q < g.length; q++) {
var Y = g[q];
v[W].layout[Y.getAttribute("position")] = {elements: []};
for(var e = 0; e < Y.attributes.length; e++) {
var V = Y.attributes[e];
v[W].layout[Y.getAttribute("position")][V.name] = V.value;
}
var f = Y.getElementsByTagName("*");
for(var r = 0; r < f.length; r++) {
var T = f[r];
v[W].layout[Y.getAttribute("position")].elements.push({type: T.tagName});
for(var R = 0; R < T.attributes.length; R++) {
var l = T.attributes[R];
v[W].layout[Y.getAttribute("position")].elements[r][l.name] = l.value;
}
if(!b.utils.exists(v[W].layout[Y.getAttribute("position")].elements[r].name)) {
v[W].layout[Y.getAttribute("position")].elements[r].name = T.tagName;
}
}
}
}
E = false;
a();
}
}
function a() {
clearInterval(A);
if(!I) {
A = setInterval(function() {
t();
}, 100);
}
}
function H(k, d) {
var e = new Image();
var h = k.getAttribute("name");
var f = k.getAttribute("src");
var c;
if(f.indexOf("data:image/png;base64,") === 0) {
c = f;
} else {
var g = b.utils.getAbsolutePath(w);
var j = g.substr(0, g.lastIndexOf("/"));
c = [j, d, f].join("/");
}
v[d].elements[h] = {height: 0, width: 0, src: "", ready: false, image: e};
e.onload = function(l) {
C(e, h, d);
};
e.onerror = function(l) {
I = true;
a();
y();
};
e.src = c;
}
function B() {
for(var f in v) {
var d = v[f];
for(var g in d.elements) {
var c = d.elements[g];
var e = c.image;
e.onload = null;
e.onerror = null;
delete c.image;
delete d.elements[g];
}
delete v[f];
}
}
function t() {
for(var d in v) {
if(d != "properties") {
for(var c in v[d].elements) {
if(!v[d].elements[c].ready) {
return;
}
}
}
}
if(E === false) {
clearInterval(A);
G(v);
}
}
function C(e, c, d) {
if(v[d] && v[d].elements[c]) {
v[d].elements[c].height = e.height;
v[d].elements[c].width = e.width;
v[d].elements[c].src = e.src;
v[d].elements[c].ready = true;
a();
} else {
b.utils.log("Loaded an image for a missing element: " + d + "." + c);
}
}
x();
};
})(jwplayer);
(function(b) {
b.html5.api = function(x, a) {
var o = {};
var u = document.createElement("div");
x.parentNode.replaceChild(u, x);
u.id = x.id;
o.version = b.version;
o.id = u.id;
var p = new b.html5.model(o, u, a);
var r = new b.html5.view(o, u, p);
var q = new b.html5.controller(o, u, p, r);
o.skin = new b.html5.skin();
o.jwPlay = function(c) {
if(typeof c == "undefined") {
v();
} else {
if(c.toString().toLowerCase() == "true") {
q.play();
} else {
q.pause();
}
}
};
o.jwPause = function(c) {
if(typeof c == "undefined") {
v();
} else {
if(c.toString().toLowerCase() == "true") {
q.pause();
} else {
q.play();
}
}
};
function v() {
if(p.state == b.api.events.state.PLAYING || p.state == b.api.events.state.BUFFERING) {
q.pause();
} else {
q.play();
}
}
o.jwStop = q.stop;
o.jwSeek = q.seek;
o.jwPlaylistItem = q.item;
o.jwPlaylistNext = q.next;
o.jwPlaylistPrev = q.prev;
o.jwResize = q.resize;
o.jwLoad = q.load;
o.jwDetachMedia = q.detachMedia;
o.jwAttachMedia = q.attachMedia;
function s(c) {
return function() {
return p[c];
};
}
function w(e, c, d) {
return function() {
var f = p.plugins.object[e];
if(f && f[c] && typeof f[c] == "function") {
f[c].apply(f, d);
}
};
}
o.jwGetItem = s("item");
o.jwGetPosition = s("position");
o.jwGetDuration = s("duration");
o.jwGetBuffer = s("buffer");
o.jwGetWidth = s("width");
o.jwGetHeight = s("height");
o.jwGetFullscreen = s("fullscreen");
o.jwSetFullscreen = q.setFullscreen;
o.jwGetVolume = s("volume");
o.jwSetVolume = q.setVolume;
o.jwGetMute = s("mute");
o.jwSetMute = q.setMute;
o.jwGetStretching = function() {
return p.stretching.toUpperCase();
};
o.jwGetState = s("state");
o.jwGetVersion = function() {
return o.version;
};
o.jwGetPlaylist = function() {
return p.playlist;
};
o.jwGetPlaylistIndex = o.jwGetItem;
o.jwAddEventListener = q.addEventListener;
o.jwRemoveEventListener = q.removeEventListener;
o.jwSendEvent = q.sendEvent;
o.jwDockSetButton = function(c, f, e, d) {
if(p.plugins.object.dock && p.plugins.object.dock.setButton) {
p.plugins.object.dock.setButton(c, f, e, d);
}
};
o.jwControlbarShow = w("controlbar", "show");
o.jwControlbarHide = w("controlbar", "hide");
o.jwDockShow = w("dock", "show");
o.jwDockHide = w("dock", "hide");
o.jwDisplayShow = w("display", "show");
o.jwDisplayHide = w("display", "hide");
o.jwGetLevel = function() {
};
o.jwGetBandwidth = function() {
};
o.jwGetLockState = function() {
};
o.jwLock = function() {
};
o.jwUnlock = function() {
};
function y() {
if(p.config.playlistfile) {
p.addEventListener(b.api.events.JWPLAYER_PLAYLIST_LOADED, t);
p.loadPlaylist(p.config.playlistfile);
} else {
if(typeof p.config.playlist == "string") {
p.addEventListener(b.api.events.JWPLAYER_PLAYLIST_LOADED, t);
p.loadPlaylist(p.config.playlist);
} else {
p.loadPlaylist(p.config);
setTimeout(t, 25);
}
}
}
function t(c) {
p.removeEventListener(b.api.events.JWPLAYER_PLAYLIST_LOADED, t);
p.setupPlugins();
r.setup();
var c = {id: o.id, version: o.version};
q.playerReady(c);
}
if(p.config.chromeless && !b.utils.isIOS()) {
y();
} else {
o.skin.load(p.config.skin, y);
}
return o;
};
})(jwplayer);
};