You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2761 lines
105 KiB
JavaScript

"undefined" == typeof jwplayer && (jwplayer = function (h) {
if (jwplayer.api)return jwplayer.api.selectPlayer(h)
}, jwplayer.version = "6.10.4906", jwplayer.vid = document.createElement("video"), jwplayer.audio = document.createElement("audio"), jwplayer.source = document.createElement("source"), function (h) {
function c(f) {
return function () {
return a(f)
}
}
function l(f, a, k, m, d) {
return function () {
var b, c;
if (d)k(f); else {
try {
if (b = f.responseXML)if (c = b.firstChild, b.lastChild && "parsererror" === b.lastChild.nodeName) {
m && m("Invalid XML",
a, f);
return
}
} catch (g) {
}
if (b && c)return k(f);
(b = e.parseXML(f.responseText)) && b.firstChild ? (f = e.extend({}, f, {responseXML: b}), k(f)) : m && m(f.responseText ? "Invalid XML" : a, a, f)
}
}
}
var j = document, g = window, b = navigator, e = h.utils = {};
e.exists = function (f) {
switch (typeof f) {
case "string":
return 0 < f.length;
case "object":
return null !== f;
case "undefined":
return !1
}
return !0
};
e.styleDimension = function (f) {
return f + (0 < f.toString().indexOf("%") ? "" : "px")
};
e.getAbsolutePath = function (f, a) {
e.exists(a) || (a = j.location.href);
if (e.exists(f)) {
var k;
if (e.exists(f)) {
k = f.indexOf("://");
var m = f.indexOf("?");
k = 0 < k && (0 > m || m > k)
} else k = void 0;
if (k)return f;
k = a.substring(0, a.indexOf("://") + 3);
var m = a.substring(k.length, a.indexOf("/", k.length + 1)), b;
0 === f.indexOf("/") ? b = f.split("/") : (b = a.split("?")[0], b = b.substring(k.length + m.length + 1, b.lastIndexOf("/")), b = b.split("/").concat(f.split("/")));
for (var d = [], c = 0; c < b.length; c++)b[c] && (e.exists(b[c]) && "." != b[c]) && (".." == b[c] ? d.pop() : d.push(b[c]));
return k + m + "/" + d.join("/")
}
};
e.extend = function () {
var f = Array.prototype.slice.call(arguments,
0);
if (1 < f.length) {
for (var a = f[0], k = function (f, m) {
void 0 !== m && null !== m && (a[f] = m)
}, m = 1; m < f.length; m++)e.foreach(f[m], k);
return a
}
return null
};
var n = window.console = window.console || {
log: function () {
}
};
e.log = function () {
var f = Array.prototype.slice.call(arguments, 0);
"object" === typeof n.log ? n.log(f) : n.log.apply(n, f)
};
var a = e.userAgentMatch = function (f) {
return null !== b.userAgent.toLowerCase().match(f)
};
e.isFF = c(/firefox/i);
e.isChrome = c(/chrome/i);
e.isIPod = c(/iP(hone|od)/i);
e.isIPad = c(/iPad/i);
e.isSafari602 =
c(/Macintosh.*Mac OS X 10_8.*6\.0\.\d* Safari/i);
e.isIETrident = function (f) {
return f ? (f = parseFloat(f).toFixed(1), a(RegExp("trident/.+rv:\\s*" + f, "i"))) : a(/trident/i)
};
e.isMSIE = function (f) {
return f ? (f = parseFloat(f).toFixed(1), a(RegExp("msie\\s*" + f, "i"))) : a(/msie/i)
};
e.isIE = function (f) {
return f ? (f = parseFloat(f).toFixed(1), 11 <= f ? e.isIETrident(f) : e.isMSIE(f)) : e.isMSIE() || e.isIETrident()
};
e.isSafari = function () {
return a(/safari/i) && !a(/chrome/i) && !a(/chromium/i) && !a(/android/i)
};
e.isIOS = function (f) {
return f ?
a(RegExp("iP(hone|ad|od).+\\sOS\\s" + f, "i")) : a(/iP(hone|ad|od)/i)
};
e.isAndroidNative = function (f) {
return e.isAndroid(f, !0)
};
e.isAndroid = function (f, b) {
return b && a(/chrome\/[123456789]/i) && !a(/chrome\/18/) ? !1 : f ? (e.isInt(f) && !/\./.test(f) && (f = "" + f + "."), a(RegExp("Android\\s*" + f, "i"))) : a(/Android/i)
};
e.isMobile = function () {
return e.isIOS() || e.isAndroid()
};
e.saveCookie = function (f, a) {
j.cookie = "jwplayer." + f + "\x3d" + a + "; path\x3d/"
};
e.getCookies = function () {
for (var f = {}, a = j.cookie.split("; "), k = 0; k < a.length; k++) {
var m =
a[k].split("\x3d");
0 === m[0].indexOf("jwplayer.") && (f[m[0].substring(9, m[0].length)] = m[1])
}
return f
};
e.isInt = function (f) {
return 0 === f % 1
};
e.typeOf = function (f) {
var a = typeof f;
return "object" === a ? !f ? "null" : f instanceof Array ? "array" : a : a
};
e.translateEventResponse = function (f, a) {
var k = e.extend({}, a);
if (f == h.events.JWPLAYER_FULLSCREEN && !k.fullscreen)k.fullscreen = "true" === k.message, delete k.message; else if ("object" == typeof k.data) {
var m = k.data;
delete k.data;
k = e.extend(k, m)
} else"object" == typeof k.metadata &&
e.deepReplaceKeyName(k.metadata, ["__dot__", "__spc__", "__dsh__", "__default__"], [".", " ", "-", "default"]);
e.foreach(["position", "duration", "offset"], function (f, m) {
k[m] && (k[m] = Math.round(1E3 * k[m]) / 1E3)
});
return k
};
e.flashVersion = function () {
if (e.isAndroid())return 0;
var f = b.plugins, a;
try {
if ("undefined" !== f && (a = f["Shockwave Flash"]))return parseInt(a.description.replace(/\D+(\d+)\..*/, "$1"), 10)
} catch (k) {
}
if ("undefined" != typeof g.ActiveXObject)try {
if (a = new g.ActiveXObject("ShockwaveFlash.ShockwaveFlash"))return parseInt(a.GetVariable("$version").split(" ")[1].split(",")[0],
10)
} catch (m) {
}
return 0
};
e.getScriptPath = function (f) {
for (var a = j.getElementsByTagName("script"), k = 0; k < a.length; k++) {
var m = a[k].src;
if (m && 0 <= m.indexOf(f))return m.substr(0, m.indexOf(f))
}
return ""
};
e.deepReplaceKeyName = function (f, a, k) {
switch (h.utils.typeOf(f)) {
case "array":
for (var m = 0; m < f.length; m++)f[m] = h.utils.deepReplaceKeyName(f[m], a, k);
break;
case "object":
e.foreach(f, function (m, b) {
var e;
if (a instanceof Array && k instanceof Array) {
if (a.length != k.length)return;
e = a
} else e = [a];
for (var d = m, c = 0; c < e.length; c++)d =
d.replace(RegExp(a[c], "g"), k[c]);
f[d] = h.utils.deepReplaceKeyName(b, a, k);
m != d && delete f[m]
})
}
return f
};
var d = e.pluginPathType = {ABSOLUTE: 0, RELATIVE: 1, CDN: 2};
e.getPluginPathType = function (f) {
if ("string" == typeof f) {
f = f.split("?")[0];
var a = f.indexOf("://");
if (0 < a)return d.ABSOLUTE;
var k = f.indexOf("/");
f = e.extension(f);
return 0 > a && 0 > k && (!f || !isNaN(f)) ? d.CDN : d.RELATIVE
}
};
e.getPluginName = function (f) {
return f.replace(/^(.*\/)?([^-]*)-?.*\.(swf|js)$/, "$2")
};
e.getPluginVersion = function (f) {
return f.replace(/[^-]*-?([^\.]*).*$/,
"$1")
};
e.isYouTube = function (f) {
return /^(http|\/\/).*(youtube\.com|youtu\.be)\/.+/.test(f)
};
e.youTubeID = function (f) {
try {
return /v[=\/]([^?&]*)|youtu\.be\/([^?]*)|^([\w-]*)$/i.exec(f).slice(1).join("").replace("?", "")
} catch (a) {
return ""
}
};
e.isRtmp = function (f, a) {
return 0 === f.indexOf("rtmp") || "rtmp" == a
};
e.foreach = function (f, a) {
var k, m;
for (k in f)"function" == e.typeOf(f.hasOwnProperty) ? f.hasOwnProperty(k) && (m = f[k], a(k, m)) : (m = f[k], a(k, m))
};
e.isHTTPS = function () {
return 0 === g.location.href.indexOf("https")
};
e.repo = function () {
var f = "http://localhost/" + h.version.split(/\W/).splice(0, 2).join("/") + "/";
try {
e.isHTTPS() && (f = f.replace("http://", "https://ssl."))
} catch (a) {
}
return f
};
e.versionCheck = function (f) {
f = ("0" + f).split(/\W/);
var a = h.version.split(/\W/), k = parseFloat(f[0]), m = parseFloat(a[0]);
return k > m || k === m && parseFloat("0" + f[1]) > parseFloat(a[1]) ? !1 : !0
};
e.ajax = function (f, a, k, m) {
var b, d = !1;
0 < f.indexOf("#") && (f = f.replace(/#.*$/, ""));
if (f && 0 <= f.indexOf("://") && f.split("/")[2] != g.location.href.split("/")[2] &&
e.exists(g.XDomainRequest))b = new g.XDomainRequest, b.onload = l(b, f, a, k, m), b.ontimeout = b.onprogress = function () {
}, b.timeout = 5E3; else if (e.exists(g.XMLHttpRequest)) {
var c = b = new g.XMLHttpRequest, j = f;
b.onreadystatechange = function () {
if (4 === c.readyState)switch (c.status) {
case 200:
l(c, j, a, k, m)();
break;
case 404:
k("File not found", j, c)
}
}
} else return k && k("", f, b), b;
b.overrideMimeType && b.overrideMimeType("text/xml");
var n = f, h = b;
b.onerror = function () {
k("Error loading file", n, h)
};
try {
b.open("GET", f, !0)
} catch (G) {
d = !0
}
setTimeout(function () {
if (d)k && k(f, f, b); else try {
b.send()
} catch (a) {
k && k(f, f, b)
}
}, 0);
return b
};
e.parseXML = function (a) {
var b;
try {
if (g.DOMParser) {
if (b = (new g.DOMParser).parseFromString(a, "text/xml"), b.childNodes && b.childNodes.length && "parsererror" == b.childNodes[0].firstChild.nodeName)return
} else b = new g.ActiveXObject("Microsoft.XMLDOM"), b.async = "false", b.loadXML(a)
} catch (k) {
return
}
return b
};
e.filterPlaylist = function (a, b, k) {
var m = [], d, c, g, j;
for (d = 0; d < a.length; d++)if (c = e.extend({}, a[d]), c.sources = e.filterSources(c.sources,
!1, k), 0 < c.sources.length) {
for (g = 0; g < c.sources.length; g++)j = c.sources[g], j.label || (j.label = g.toString());
m.push(c)
}
if (b && 0 === m.length)for (d = 0; d < a.length; d++)if (c = e.extend({}, a[d]), c.sources = e.filterSources(c.sources, !0, k), 0 < c.sources.length) {
for (g = 0; g < c.sources.length; g++)j = c.sources[g], j.label || (j.label = g.toString());
m.push(c)
}
return m
};
e.between = function (a, b, d) {
return Math.max(Math.min(a, d), b)
};
e.filterSources = function (a, b, d) {
var m, c;
if (a) {
c = [];
for (var g = 0; g < a.length; g++) {
var j = e.extend({}, a[g]),
n = j.file, l = j.type;
n && (j.file = n = e.trim("" + n), l || (l = e.extension(n), j.type = l = e.extensionmap.extType(l)), b ? h.embed.flashCanPlay(n, l) && (m || (m = l), l == m && c.push(j)) : h.embed.html5CanPlay(n, l, d) && (m || (m = l), l == m && c.push(j)))
}
}
return c
};
e.canPlayHTML5 = function (a) {
a = e.extensionmap.types[a];
return !!a && !!h.vid.canPlayType && !!h.vid.canPlayType(a)
};
e.seconds = function (a) {
a = a.replace(",", ".");
var b = a.split(":"), d = 0;
"s" == a.slice(-1) ? d = parseFloat(a) : "m" == a.slice(-1) ? d = 60 * parseFloat(a) : "h" == a.slice(-1) ? d = 3600 * parseFloat(a) :
1 < b.length ? (d = parseFloat(b[b.length - 1]), d += 60 * parseFloat(b[b.length - 2]), 3 == b.length && (d += 3600 * parseFloat(b[b.length - 3]))) : d = parseFloat(a);
return d
};
e.serialize = function (a) {
return null === a ? null : "true" == a.toString().toLowerCase() ? !0 : "false" == a.toString().toLowerCase() ? !1 : isNaN(Number(a)) || 5 < a.length || 0 === a.length ? a : Number(a)
};
e.addClass = function (a, b) {
a.className = a.className + " " + b
};
e.removeClass = function (a, b) {
a.className = a.className.replace(RegExp(" *" + b, "g"), " ")
}
}(jwplayer), function (h) {
function c(a) {
var b =
document.createElement("style");
a && b.appendChild(document.createTextNode(a));
b.type = "text/css";
document.getElementsByTagName("head")[0].appendChild(b);
return b
}
function l(a, m, d) {
if (!b.exists(m))return "";
d = d ? " !important" : "";
return "string" === typeof m && isNaN(m) ? /png|gif|jpe?g/i.test(m) && 0 > m.indexOf("url") ? "url(" + m + ")" : m + d : 0 === m || "z-index" === a || "opacity" === a ? "" + m + d : /color/i.test(a) ? "#" + b.pad(m.toString(16).replace(/^0x/i, ""), 6) + d : Math.ceil(m) + "px" + d
}
function j(a, b) {
for (var d = 0; d < a.length; d++) {
var f =
a[d], c, e;
if (void 0 !== f && null !== f)for (c in b) {
e = c;
e = e.split("-");
for (var g = 1; g < e.length; g++)e[g] = e[g].charAt(0).toUpperCase() + e[g].slice(1);
e = e.join("");
f.style[e] !== b[c] && (f.style[e] = b[c])
}
}
}
function g(b) {
var m = e[b].sheet, d, c, g;
if (m) {
d = m.cssRules;
c = f[b];
g = b;
var j = a[g];
g += " { ";
for (var n in j)g += n + ": " + j[n] + "; ";
g += "}";
if (void 0 !== c && c < d.length && d[c].selectorText === b) {
if (g === d[c].cssText)return;
m.deleteRule(c)
} else c = d.length, f[b] = c;
try {
m.insertRule(g, c)
} catch (h) {
}
}
}
var b = h.utils, e = {}, n, a = {}, d = null,
f = {};
b.cssKeyframes = function (a, b) {
var d = e.keyframes;
d || (d = c(), e.keyframes = d);
var d = d.sheet, f = "@keyframes " + a + " { " + b + " }";
try {
d.insertRule(f, d.cssRules.length)
} catch (g) {
}
f = f.replace(/(keyframes|transform)/g, "-webkit-$1");
try {
d.insertRule(f, d.cssRules.length)
} catch (j) {
}
};
var q = b.css = function (b, m, f) {
a[b] || (a[b] = {});
var j = a[b];
f = f || !1;
var h = !1, q, p;
for (q in m)p = l(q, m[q], f), "" !== p ? p !== j[q] && (j[q] = p, h = !0) : void 0 !== j[q] && (delete j[q], h = !0);
if (h) {
if (!e[b]) {
m = n && n.sheet && n.sheet.cssRules && n.sheet.cssRules.length ||
0;
if (!n || 5E4 < m)n = c();
e[b] = n
}
null !== d ? d.styleSheets[b] = a[b] : g(b)
}
};
q.style = function (a, b, f) {
if (!(void 0 === a || null === a)) {
void 0 === a.length && (a = [a]);
var c = {}, e;
for (e in b)c[e] = l(e, b[e]);
if (null !== d && !f) {
b = (b = a.__cssRules) || {};
for (var g in c)b[g] = c[g];
a.__cssRules = b;
0 > d.elements.indexOf(a) && d.elements.push(a)
} else j(a, c)
}
};
q.block = function (a) {
null === d && (d = {id: a, styleSheets: {}, elements: []})
};
q.unblock = function (a) {
if (d && (!a || d.id === a)) {
for (var b in d.styleSheets)g(b);
for (a = 0; a < d.elements.length; a++)b = d.elements[a],
j(b, b.__cssRules);
d = null
}
};
b.clearCss = function (b) {
for (var d in a)0 <= d.indexOf(b) && delete a[d];
for (var c in e)0 <= c.indexOf(b) && g(c)
};
b.transform = function (a, b) {
var d = {};
b = b || "";
d.transform = b;
d["-webkit-transform"] = b;
d["-ms-transform"] = b;
d["-moz-transform"] = b;
d["-o-transform"] = b;
"string" === typeof a ? q(a, d) : q.style(a, d)
};
b.dragStyle = function (a, b) {
q(a, {
"-webkit-user-select": b,
"-moz-user-select": b,
"-ms-user-select": b,
"-webkit-user-drag": b,
"user-select": b,
"user-drag": b
})
};
b.transitionStyle = function (a, b) {
navigator.userAgent.match(/5\.\d(\.\d)? safari/i) ||
q(a, {"-webkit-transition": b, "-moz-transition": b, "-o-transition": b, transition: b})
};
b.rotate = function (a, d) {
b.transform(a, "rotate(" + d + "deg)")
};
b.rgbHex = function (a) {
a = String(a).replace("#", "");
3 === a.length && (a = a[0] + a[0] + a[1] + a[1] + a[2] + a[2]);
return "#" + a.substr(-6)
};
b.hexToRgba = function (a, b) {
var d = "rgb", c = [parseInt(a.substr(1, 2), 16), parseInt(a.substr(3, 2), 16), parseInt(a.substr(5, 2), 16)];
void 0 !== b && 100 !== b && (d += "a", c.push(b / 100));
return d + "(" + c.join(",") + ")"
}
}(jwplayer), function (h) {
var c = h.foreach, l = {
mp4: "video/mp4",
ogg: "video/ogg",
oga: "audio/ogg",
vorbis: "audio/ogg",
webm: "video/webm",
aac: "audio/mp4",
mp3: "audio/mpeg",
hls: "application/vnd.apple.mpegurl"
}, j = {
mp4: l.mp4,
f4v: l.mp4,
m4v: l.mp4,
mov: l.mp4,
m4a: l.aac,
f4a: l.aac,
aac: l.aac,
mp3: l.mp3,
ogv: l.ogg,
ogg: l.ogg,
oga: l.vorbis,
vorbis: l.vorbis,
webm: l.webm,
m3u8: l.hls,
m3u: l.hls,
hls: l.hls
}, g = h.extensionmap = {};
c(j, function (b, c) {
g[b] = {html5: c}
});
c({
flv: "video",
f4v: "video",
mov: "video",
m4a: "video",
m4v: "video",
mp4: "video",
aac: "video",
f4a: "video",
mp3: "sound",
smil: "rtmp",
m3u8: "hls",
hls: "hls"
}, function (b, c) {
g[b] || (g[b] = {});
g[b].flash = c
});
g.types = l;
g.mimeType = function (b) {
var e;
c(l, function (c, a) {
!e && a == b && (e = c)
});
return e
};
g.extType = function (b) {
return g.mimeType(j[b])
}
}(jwplayer.utils), function (h) {
var c = h.loaderstatus = {NEW: 0, LOADING: 1, ERROR: 2, COMPLETE: 3}, l = document;
h.scriptloader = function (j) {
function g(b) {
a = c.ERROR;
n.sendEvent(e.ERROR, b)
}
function b(b) {
a = c.COMPLETE;
n.sendEvent(e.COMPLETE, b)
}
var e = jwplayer.events, n = h.extend(this, new e.eventdispatcher), a = c.NEW;
this.load = function () {
if (a ==
c.NEW) {
var d = h.scriptloader.loaders[j];
if (d && (a = d.getStatus(), 2 > a)) {
d.addEventListener(e.ERROR, g);
d.addEventListener(e.COMPLETE, b);
return
}
var f = l.createElement("script");
f.addEventListener ? (f.onload = b, f.onerror = g) : f.readyState && (f.onreadystatechange = function (a) {
("loaded" == f.readyState || "complete" == f.readyState) && b(a)
});
l.getElementsByTagName("head")[0].appendChild(f);
f.src = j;
a = c.LOADING;
h.scriptloader.loaders[j] = this
}
};
this.getStatus = function () {
return a
}
};
h.scriptloader.loaders = {}
}(jwplayer.utils),
function (h) {
h.trim = function (c) {
return c.replace(/^\s*/, "").replace(/\s*$/, "")
};
h.pad = function (c, h, j) {
for (j || (j = "0"); c.length < h;)c = j + c;
return c
};
h.xmlAttribute = function (c, h) {
for (var j = 0; j < c.attributes.length; j++)if (c.attributes[j].name && c.attributes[j].name.toLowerCase() == h.toLowerCase())return c.attributes[j].value.toString();
return ""
};
h.extension = function (c) {
if (!c || "rtmp" == c.substr(0, 4))return "";
var h;
h = c.match(/manifest\(format=(.*),audioTrack/);
h = !h || !h[1] ? !1 : h[1].split("-")[0];
if (h)return h;
c =
c.substring(c.lastIndexOf("/") + 1, c.length).split("?")[0].split("#")[0];
if (-1 < c.lastIndexOf("."))return c.substr(c.lastIndexOf(".") + 1, c.length).toLowerCase()
};
h.stringToColor = function (c) {
c = c.replace(/(#|0x)?([0-9A-F]{3,6})$/gi, "$2");
3 == c.length && (c = c.charAt(0) + c.charAt(0) + c.charAt(1) + c.charAt(1) + c.charAt(2) + c.charAt(2));
return parseInt(c, 16)
}
}(jwplayer.utils), function (h) {
var c = "touchmove", l = "touchstart";
h.touch = function (j) {
function g(d) {
d.type == l ? (a = !0, f = e(k.DRAG_START, d)) : d.type == c ? a && (q || (b(k.DRAG_START,
d, f), q = !0), b(k.DRAG, d)) : (a && (q ? b(k.DRAG_END, d) : (d.cancelBubble = !0, b(k.TAP, d))), a = q = !1, f = null)
}
function b(a, b, c) {
if (d[a] && (b.preventManipulation && b.preventManipulation(), b.preventDefault && b.preventDefault(), b = c ? c : e(a, b)))d[a](b)
}
function e(a, b) {
var d = null;
b.touches && b.touches.length ? d = b.touches[0] : b.changedTouches && b.changedTouches.length && (d = b.changedTouches[0]);
if (!d)return null;
var c = n.getBoundingClientRect(), d = {
type: a,
target: n,
x: d.pageX - window.pageXOffset - c.left,
y: d.pageY,
deltaX: 0,
deltaY: 0
};
a !=
k.TAP && f && (d.deltaX = d.x - f.x, d.deltaY = d.y - f.y);
return d
}
var n = j, a = !1, d = {}, f = null, q = !1, k = h.touchEvents;
document.addEventListener(c, g);
document.addEventListener("touchend", function (d) {
a && q && b(k.DRAG_END, d);
a = q = !1;
f = null
});
document.addEventListener("touchcancel", g);
j.addEventListener(l, g);
j.addEventListener("touchend", g);
this.addEventListener = function (a, b) {
d[a] = b
};
this.removeEventListener = function (a) {
delete d[a]
};
return this
}
}(jwplayer.utils), function (h) {
h.touchEvents = {
DRAG: "jwplayerDrag", DRAG_START: "jwplayerDragStart",
DRAG_END: "jwplayerDragEnd", TAP: "jwplayerTap"
}
}(jwplayer.utils), function (h) {
h.key = function (c) {
var l, j, g;
this.edition = function () {
return g && g.getTime() < (new Date).getTime() ? "invalid" : l
};
this.token = function () {
return j
};
h.exists(c) || (c = "");
try {
c = h.tea.decrypt(c, "36QXq4W@GSBV^teR");
var b = c.split("/");
(l = b[0]) ? /^(free|pro|premium|enterprise|ads)$/i.test(l) ? (j = b[1], b[2] && 0 < parseInt(b[2]) && (g = new Date, g.setTime(String(b[2])))) : l = "invalid" : l = "free"
} catch (e) {
l = "invalid"
}
}
}(jwplayer.utils), function (h) {
var c =
h.tea = {};
c.encrypt = function (g, b) {
if (0 == g.length)return "";
var e = c.strToLongs(j.encode(g));
1 >= e.length && (e[1] = 0);
for (var n = c.strToLongs(j.encode(b).slice(0, 16)), a = e.length, d = e[a - 1], f = e[0], h, k = Math.floor(6 + 52 / a), m = 0; 0 < k--;) {
m += 2654435769;
h = m >>> 2 & 3;
for (var r = 0; r < a; r++)f = e[(r + 1) % a], d = (d >>> 5 ^ f << 2) + (f >>> 3 ^ d << 4) ^ (m ^ f) + (n[r & 3 ^ h] ^ d), d = e[r] += d
}
e = c.longsToStr(e);
return l.encode(e)
};
c.decrypt = function (g, b) {
if (0 == g.length)return "";
for (var e = c.strToLongs(l.decode(g)), h = c.strToLongs(j.encode(b).slice(0, 16)), a = e.length,
d = e[a - 1], f = e[0], q, k = 2654435769 * Math.floor(6 + 52 / a); 0 != k;) {
q = k >>> 2 & 3;
for (var m = a - 1; 0 <= m; m--)d = e[0 < m ? m - 1 : a - 1], d = (d >>> 5 ^ f << 2) + (f >>> 3 ^ d << 4) ^ (k ^ f) + (h[m & 3 ^ q] ^ d), f = e[m] -= d;
k -= 2654435769
}
e = c.longsToStr(e);
e = e.replace(/\0+$/, "");
return j.decode(e)
};
c.strToLongs = function (c) {
for (var b = Array(Math.ceil(c.length / 4)), e = 0; e < b.length; e++)b[e] = c.charCodeAt(4 * e) + (c.charCodeAt(4 * e + 1) << 8) + (c.charCodeAt(4 * e + 2) << 16) + (c.charCodeAt(4 * e + 3) << 24);
return b
};
c.longsToStr = function (c) {
for (var b = Array(c.length), e = 0; e < c.length; e++)b[e] =
String.fromCharCode(c[e] & 255, c[e] >>> 8 & 255, c[e] >>> 16 & 255, c[e] >>> 24 & 255);
return b.join("")
};
var l = {
code: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\x3d", encode: function (c, b) {
var e, h, a, d, f = [], q = "", k, m, r = l.code;
m = ("undefined" == typeof b ? 0 : b) ? j.encode(c) : c;
k = m.length % 3;
if (0 < k)for (; 3 > k++;)q += "\x3d", m += "\x00";
for (k = 0; k < m.length; k += 3)e = m.charCodeAt(k), h = m.charCodeAt(k + 1), a = m.charCodeAt(k + 2), d = e << 16 | h << 8 | a, e = d >> 18 & 63, h = d >> 12 & 63, a = d >> 6 & 63, d &= 63, f[k / 3] = r.charAt(e) + r.charAt(h) + r.charAt(a) +
r.charAt(d);
f = f.join("");
return f = f.slice(0, f.length - q.length) + q
}, decode: function (c, b) {
b = "undefined" == typeof b ? !1 : b;
var e, h, a, d, f, q = [], k, m = l.code;
k = b ? j.decode(c) : c;
for (var r = 0; r < k.length; r += 4)e = m.indexOf(k.charAt(r)), h = m.indexOf(k.charAt(r + 1)), d = m.indexOf(k.charAt(r + 2)), f = m.indexOf(k.charAt(r + 3)), a = e << 18 | h << 12 | d << 6 | f, e = a >>> 16 & 255, h = a >>> 8 & 255, a &= 255, q[r / 4] = String.fromCharCode(e, h, a), 64 == f && (q[r / 4] = String.fromCharCode(e, h)), 64 == d && (q[r / 4] = String.fromCharCode(e));
d = q.join("");
return b ? j.decode(d) : d
}
},
j = {
encode: function (c) {
c = c.replace(/[\u0080-\u07ff]/g, function (b) {
b = b.charCodeAt(0);
return String.fromCharCode(192 | b >> 6, 128 | b & 63)
});
return c = c.replace(/[\u0800-\uffff]/g, function (b) {
b = b.charCodeAt(0);
return String.fromCharCode(224 | b >> 12, 128 | b >> 6 & 63, 128 | b & 63)
})
}, decode: function (c) {
c = c.replace(/[\u00e0-\u00ef][\u0080-\u00bf][\u0080-\u00bf]/g, function (b) {
b = (b.charCodeAt(0) & 15) << 12 | (b.charCodeAt(1) & 63) << 6 | b.charCodeAt(2) & 63;
return String.fromCharCode(b)
});
return c = c.replace(/[\u00c0-\u00df][\u0080-\u00bf]/g,
function (b) {
b = (b.charCodeAt(0) & 31) << 6 | b.charCodeAt(1) & 63;
return String.fromCharCode(b)
})
}
}
}(jwplayer.utils), function (h) {
h.events = {
COMPLETE: "COMPLETE",
ERROR: "ERROR",
API_READY: "jwplayerAPIReady",
JWPLAYER_READY: "jwplayerReady",
JWPLAYER_FULLSCREEN: "jwplayerFullscreen",
JWPLAYER_RESIZE: "jwplayerResize",
JWPLAYER_ERROR: "jwplayerError",
JWPLAYER_SETUP_ERROR: "jwplayerSetupError",
JWPLAYER_MEDIA_BEFOREPLAY: "jwplayerMediaBeforePlay",
JWPLAYER_MEDIA_BEFORECOMPLETE: "jwplayerMediaBeforeComplete",
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_MEDIA_LEVELS: "jwplayerMediaLevels",
JWPLAYER_MEDIA_LEVEL_CHANGED: "jwplayerMediaLevelChanged",
JWPLAYER_CAPTIONS_CHANGED: "jwplayerCaptionsChanged",
JWPLAYER_CAPTIONS_LIST: "jwplayerCaptionsList",
JWPLAYER_CAPTIONS_LOADED: "jwplayerCaptionsLoaded",
JWPLAYER_PLAYER_STATE: "jwplayerPlayerState",
state: {BUFFERING: "BUFFERING", IDLE: "IDLE", PAUSED: "PAUSED", PLAYING: "PLAYING"},
JWPLAYER_PLAYLIST_LOADED: "jwplayerPlaylistLoaded",
JWPLAYER_PLAYLIST_ITEM: "jwplayerPlaylistItem",
JWPLAYER_PLAYLIST_COMPLETE: "jwplayerPlaylistComplete",
JWPLAYER_DISPLAY_CLICK: "jwplayerViewClick",
JWPLAYER_VIEW_TAB_FOCUS: "jwplayerViewTabFocus",
JWPLAYER_CONTROLS: "jwplayerViewControls",
JWPLAYER_USER_ACTION: "jwplayerUserAction",
JWPLAYER_INSTREAM_CLICK: "jwplayerInstreamClicked",
JWPLAYER_INSTREAM_DESTROYED: "jwplayerInstreamDestroyed",
JWPLAYER_AD_TIME: "jwplayerAdTime",
JWPLAYER_AD_ERROR: "jwplayerAdError",
JWPLAYER_AD_CLICK: "jwplayerAdClicked",
JWPLAYER_AD_COMPLETE: "jwplayerAdComplete",
JWPLAYER_AD_IMPRESSION: "jwplayerAdImpression",
JWPLAYER_AD_COMPANIONS: "jwplayerAdCompanions",
JWPLAYER_AD_SKIPPED: "jwplayerAdSkipped",
JWPLAYER_AD_PLAY: "jwplayerAdPlay",
JWPLAYER_AD_PAUSE: "jwplayerAdPause",
JWPLAYER_AD_META: "jwplayerAdMeta",
JWPLAYER_CAST_AVAILABLE: "jwplayerCastAvailable",
JWPLAYER_CAST_SESSION: "jwplayerCastSession",
JWPLAYER_CAST_AD_CHANGED: "jwplayerCastAdChanged"
}
}(jwplayer), function (h) {
var c = h.utils;
h.events.eventdispatcher = function (l, j) {
function g(b, a, d) {
if (b)for (var f = 0; f < b.length; f++) {
var e = b[f];
if (e) {
null !== e.count && 0 === --e.count && delete b[f];
try {
e.listener(a)
} catch (g) {
c.log('Error handling "' + d + '" event listener [' +
f + "]: " + g.toString(), e.listener, a)
}
}
}
}
var b, e;
this.resetEventListeners = function () {
b = {};
e = []
};
this.resetEventListeners();
this.addEventListener = function (e, a, d) {
try {
c.exists(b[e]) || (b[e] = []), "string" == c.typeOf(a) && (a = (new Function("return " + a))()), b[e].push({
listener: a,
count: d || null
})
} catch (f) {
c.log("error", f)
}
return !1
};
this.removeEventListener = function (e, a) {
if (b[e]) {
try {
if (void 0 === a) {
b[e] = [];
return
}
for (var d = 0; d < b[e].length; d++)if (b[e][d].listener.toString() == a.toString()) {
b[e].splice(d, 1);
break
}
} catch (f) {
c.log("error",
f)
}
return !1
}
};
this.addGlobalListener = function (b, a) {
try {
"string" == c.typeOf(b) && (b = (new Function("return " + b))()), e.push({
listener: b,
count: a || null
})
} catch (d) {
c.log("error", d)
}
return !1
};
this.removeGlobalListener = function (b) {
if (b) {
try {
for (var a = e.length; a--;)e[a].listener.toString() == b.toString() && e.splice(a, 1)
} catch (d) {
c.log("error", d)
}
return !1
}
};
this.sendEvent = function (n, a) {
c.exists(a) || (a = {});
c.extend(a, {id: l, version: h.version, type: n});
j && c.log(n, a);
g(b[n], a, n);
g(e, a, n)
}
}
}(window.jwplayer), function (h) {
var c =
{}, l = {};
h.plugins = function () {
};
h.plugins.loadPlugins = function (j, g) {
l[j] = new h.plugins.pluginloader(new h.plugins.model(c), g);
return l[j]
};
h.plugins.registerPlugin = function (j, g, b, e) {
var n = h.utils.getPluginName(j);
c[n] || (c[n] = new h.plugins.plugin(j));
c[n].registerPlugin(j, g, b, e)
}
}(jwplayer), function (h) {
h.plugins.model = function (c) {
this.addPlugin = function (l) {
var j = h.utils.getPluginName(l);
c[j] || (c[j] = new h.plugins.plugin(l));
return c[j]
};
this.getPlugins = function () {
return c
}
}
}(jwplayer), function (h) {
var c =
jwplayer.utils, l = jwplayer.events;
h.pluginmodes = {FLASH: 0, JAVASCRIPT: 1, HYBRID: 2};
h.plugin = function (j) {
function g() {
switch (c.getPluginPathType(j)) {
case c.pluginPathType.ABSOLUTE:
return j;
case c.pluginPathType.RELATIVE:
return c.getAbsolutePath(j, window.location.href)
}
}
function b() {
q = setTimeout(function () {
n = c.loaderstatus.COMPLETE;
k.sendEvent(l.COMPLETE)
}, 1E3)
}
function e() {
n = c.loaderstatus.ERROR;
k.sendEvent(l.ERROR)
}
var n = c.loaderstatus.NEW, a, d, f, q, k = new l.eventdispatcher;
c.extend(this, k);
this.load = function () {
if (n ==
c.loaderstatus.NEW)if (0 < j.lastIndexOf(".swf"))a = j, n = c.loaderstatus.COMPLETE, k.sendEvent(l.COMPLETE); else if (c.getPluginPathType(j) == c.pluginPathType.CDN)n = c.loaderstatus.COMPLETE, k.sendEvent(l.COMPLETE); else {
n = c.loaderstatus.LOADING;
var d = new c.scriptloader(g());
d.addEventListener(l.COMPLETE, b);
d.addEventListener(l.ERROR, e);
d.load()
}
};
this.registerPlugin = function (b, e, g, j) {
q && (clearTimeout(q), q = void 0);
f = e;
g && j ? (a = j, d = g) : "string" == typeof g ? a = g : "function" == typeof g ? d = g : !g && !j && (a = b);
n = c.loaderstatus.COMPLETE;
k.sendEvent(l.COMPLETE)
};
this.getStatus = function () {
return n
};
this.getPluginName = function () {
return c.getPluginName(j)
};
this.getFlashPath = function () {
if (a)switch (c.getPluginPathType(a)) {
case c.pluginPathType.ABSOLUTE:
return a;
case c.pluginPathType.RELATIVE:
return 0 < j.lastIndexOf(".swf") ? c.getAbsolutePath(a, window.location.href) : c.getAbsolutePath(a, g())
}
return null
};
this.getJS = function () {
return d
};
this.getTarget = function () {
return f
};
this.getPluginmode = function () {
if ("undefined" != typeof a && "undefined" != typeof d)return h.pluginmodes.HYBRID;
if ("undefined" != typeof a)return h.pluginmodes.FLASH;
if ("undefined" != typeof d)return h.pluginmodes.JAVASCRIPT
};
this.getNewInstance = function (a, b, c) {
return new d(a, b, c)
};
this.getURL = function () {
return j
}
}
}(jwplayer.plugins), function (h) {
var c = h.utils, l = h.events, j = c.foreach;
h.plugins.pluginloader = function (g, b) {
function e() {
f && m.sendEvent(l.ERROR, {message: q});
d || (d = !0, a = c.loaderstatus.COMPLETE, m.sendEvent(l.COMPLETE))
}
function h() {
k || e();
if (!d && !f) {
var a = 0, b = g.getPlugins();
c.foreach(k, function (d) {
d = c.getPluginName(d);
var m = b[d];
d = m.getJS();
var g = m.getTarget(), m = m.getStatus();
m == c.loaderstatus.LOADING || m == c.loaderstatus.NEW ? a++ : d && !c.versionCheck(g) && (f = !0, q = "Incompatible player version", e())
});
0 === a && e()
}
}
var a = c.loaderstatus.NEW, d = !1, f = !1, q, k = b, m = new l.eventdispatcher;
c.extend(this, m);
this.setupPlugins = function (a, b, d) {
var e = {length: 0, plugins: {}}, f = 0, m = {}, h = g.getPlugins();
j(b.plugins, function (g, j) {
var k = c.getPluginName(g), n = h[k], l = n.getFlashPath(), q = n.getJS(), I = n.getURL();
l && (e.plugins[l] = c.extend({}, j), e.plugins[l].pluginmode = n.getPluginmode(), e.length++);
try {
if (q && b.plugins && b.plugins[I]) {
var r = document.createElement("div");
r.id = a.id + "_" + k;
r.style.position = "absolute";
r.style.top = 0;
r.style.zIndex = f + 10;
m[k] = n.getNewInstance(a, c.extend({}, b.plugins[I]), r);
f++;
a.onReady(d(m[k], r, !0));
a.onResize(d(m[k], r))
}
} catch (P) {
c.log("ERROR: Failed to load " + k + ".")
}
});
a.plugins = m;
return e
};
this.load = function () {
if (!(c.exists(b) && "object" != c.typeOf(b))) {
a = c.loaderstatus.LOADING;
j(b,
function (a) {
c.exists(a) && (a = g.addPlugin(a), a.addEventListener(l.COMPLETE, h), a.addEventListener(l.ERROR, r))
});
var d = g.getPlugins();
j(d, function (a, b) {
b.load()
})
}
h()
};
this.destroy = function () {
m && (m.resetEventListeners(), m = null)
};
var r = this.pluginFailed = function () {
f || (f = !0, q = "File not found", e())
};
this.getStatus = function () {
return a
}
}
}(jwplayer), function (h) {
h.parsers = {
localName: function (c) {
return c ? c.localName ? c.localName : c.baseName ? c.baseName : "" : ""
}, textContent: function (c) {
return c ? c.textContent ? h.utils.trim(c.textContent) :
c.text ? h.utils.trim(c.text) : "" : ""
}, getChildNode: function (c, h) {
return c.childNodes[h]
}, numChildren: function (c) {
return c.childNodes ? c.childNodes.length : 0
}
}
}(jwplayer), function (h) {
var c = h.parsers;
(c.jwparser = function () {
}).parseEntry = function (l, j) {
for (var g = [], b = [], e = h.utils.xmlAttribute, n = 0; n < l.childNodes.length; n++) {
var a = l.childNodes[n];
if ("jwplayer" == a.prefix) {
var d = c.localName(a);
"source" == d ? (delete j.sources, g.push({
file: e(a, "file"),
"default": e(a, "default"),
label: e(a, "label"),
type: e(a, "type")
})) :
"track" == d ? (delete j.tracks, b.push({
file: e(a, "file"),
"default": e(a, "default"),
kind: e(a, "kind"),
label: e(a, "label")
})) : (j[d] = h.utils.serialize(c.textContent(a)), "file" == d && j.sources && delete j.sources)
}
j.file || (j.file = j.link)
}
if (g.length) {
j.sources = [];
for (n = 0; n < g.length; n++)0 < g[n].file.length && (g[n]["default"] = "true" == g[n]["default"] ? !0 : !1, g[n].label.length || delete g[n].label, j.sources.push(g[n]))
}
if (b.length) {
j.tracks = [];
for (n = 0; n < b.length; n++)0 < b[n].file.length && (b[n]["default"] = "true" == b[n]["default"] ?
!0 : !1, b[n].kind = !b[n].kind.length ? "captions" : b[n].kind, b[n].label.length || delete b[n].label, j.tracks.push(b[n]))
}
return j
}
}(jwplayer), function (h) {
var c = jwplayer.utils, l = c.xmlAttribute, j = h.localName, g = h.textContent, b = h.numChildren, e = h.mediaparser = function () {
};
e.parseGroup = function (h, a) {
var d, f, q = [];
for (f = 0; f < b(h); f++)if (d = h.childNodes[f], "media" == d.prefix && j(d))switch (j(d).toLowerCase()) {
case "content":
l(d, "duration") && (a.duration = c.seconds(l(d, "duration")));
0 < b(d) && (a = e.parseGroup(d, a));
l(d, "url") &&
(a.sources || (a.sources = []), a.sources.push({
file: l(d, "url"),
type: l(d, "type"),
width: l(d, "width"),
label: l(d, "label")
}));
break;
case "title":
a.title = g(d);
break;
case "description":
a.description = g(d);
break;
case "guid":
a.mediaid = g(d);
break;
case "thumbnail":
a.image || (a.image = l(d, "url"));
break;
case "group":
e.parseGroup(d, a);
break;
case "subtitle":
var k = {};
k.file = l(d, "url");
k.kind = "captions";
if (0 < l(d, "lang").length) {
var m = k;
d = l(d, "lang");
var r = {
zh: "Chinese", nl: "Dutch", en: "English", fr: "French", de: "German", it: "Italian",
ja: "Japanese", pt: "Portuguese", ru: "Russian", es: "Spanish"
};
d = r[d] ? r[d] : d;
m.label = d
}
q.push(k)
}
a.hasOwnProperty("tracks") || (a.tracks = []);
for (f = 0; f < q.length; f++)a.tracks.push(q[f]);
return a
}
}(jwplayer.parsers), function (h) {
function c(b) {
for (var a = {}, d = 0; d < b.childNodes.length; d++) {
var c = b.childNodes[d], g = e(c);
if (g)switch (g.toLowerCase()) {
case "enclosure":
a.file = l.xmlAttribute(c, "url");
break;
case "title":
a.title = j(c);
break;
case "guid":
a.mediaid = j(c);
break;
case "pubdate":
a.date = j(c);
break;
case "description":
a.description =
j(c);
break;
case "link":
a.link = j(c);
break;
case "category":
a.tags = a.tags ? a.tags + j(c) : j(c)
}
}
a = h.mediaparser.parseGroup(b, a);
a = h.jwparser.parseEntry(b, a);
return new jwplayer.playlist.item(a)
}
var l = jwplayer.utils, j = h.textContent, g = h.getChildNode, b = h.numChildren, e = h.localName;
h.rssparser = {};
h.rssparser.parse = function (j) {
for (var a = [], d = 0; d < b(j); d++) {
var f = g(j, d);
if ("channel" == e(f).toLowerCase())for (var h = 0; h < b(f); h++) {
var k = g(f, h);
"item" == e(k).toLowerCase() && a.push(c(k))
}
}
return a
}
}(jwplayer.parsers), function (h) {
h.playlist =
function (c) {
var l = [];
if ("array" == h.utils.typeOf(c))for (var j = 0; j < c.length; j++)l.push(new h.playlist.item(c[j])); else l.push(new h.playlist.item(c));
return l
}
}(jwplayer), function (h) {
var c = h.item = function (l) {
var j = jwplayer.utils, g = j.extend({}, c.defaults, l), b, e;
g.tracks = l && j.exists(l.tracks) ? l.tracks : [];
0 === g.sources.length && (g.sources = [new h.source(g)]);
for (b = 0; b < g.sources.length; b++)e = g.sources[b]["default"], g.sources[b]["default"] = e ? "true" == e.toString() : !1, g.sources[b] = new h.source(g.sources[b]);
if (g.captions && !j.exists(l.tracks)) {
for (l = 0; l < g.captions.length; l++)g.tracks.push(g.captions[l]);
delete g.captions
}
for (b = 0; b < g.tracks.length; b++)g.tracks[b] = new h.track(g.tracks[b]);
return g
};
c.defaults = {description: void 0, image: void 0, mediaid: void 0, title: void 0, sources: [], tracks: []}
}(jwplayer.playlist), function (h) {
var c = jwplayer, l = c.utils, j = c.events, g = c.parsers;
h.loader = function () {
function b(b) {
try {
var c = b.responseXML.childNodes;
b = "";
for (var e = 0; e < c.length && !(b = c[e], 8 != b.nodeType); e++);
"xml" == g.localName(b) &&
(b = b.nextSibling);
if ("rss" != g.localName(b))n("Not a valid RSS feed"); else {
var k = new h(g.rssparser.parse(b));
a.sendEvent(j.JWPLAYER_PLAYLIST_LOADED, {playlist: k})
}
} catch (m) {
n()
}
}
function c(a) {
n(a.match(/invalid/i) ? "Not a valid RSS feed" : "")
}
function n(b) {
a.sendEvent(j.JWPLAYER_ERROR, {message: b ? b : "Error loading file"})
}
var a = new j.eventdispatcher;
l.extend(this, a);
this.load = function (a) {
l.ajax(a, b, c)
}
}
}(jwplayer.playlist), function (h) {
var c = jwplayer.utils, l = {file: void 0, label: void 0, type: void 0, "default": void 0};
h.source = function (j) {
var g = c.extend({}, l);
c.foreach(l, function (b) {
c.exists(j[b]) && (g[b] = j[b], delete j[b])
});
g.type && 0 < g.type.indexOf("/") && (g.type = c.extensionmap.mimeType(g.type));
"m3u8" == g.type && (g.type = "hls");
"smil" == g.type && (g.type = "rtmp");
return g
}
}(jwplayer.playlist), function (h) {
var c = jwplayer.utils, l = {file: void 0, label: void 0, kind: "captions", "default": !1};
h.track = function (j) {
var g = c.extend({}, l);
j || (j = {});
c.foreach(l, function (b) {
c.exists(j[b]) && (g[b] = j[b], delete j[b])
});
return g
}
}(jwplayer.playlist),
function (h) {
var c = h.cast = {}, l = h.utils;
c.adprovider = function (j, g) {
function b() {
f = {message: q, position: 0, duration: -1}
}
function e(a, b) {
var d = {command: a};
void 0 !== b && (d.args = b);
g.sendMessage(j, d, n, function (a) {
c.error("message send error", a)
})
}
function n() {
}
var a = new c.provider(j, g), d = l.extend(this, a), f, q = "Loading ad", k = 0;
d.init = function () {
a.init();
b()
};
d.destroy = function () {
a.destroy()
};
d.updateModel = function (d, e) {
(d.tag || d.newstate || d.sequence || d.companions) && c.log("received ad change:", d);
d.tag && (f.tag &&
d.tag !== f.tag) && (c.error("ad messages not received in order. new model:", d, "old model:", f), b());
h.utils.extend(f, d);
a.updateModel(d, e)
};
d.getAdModel = function () {
var a = l.extend({}, f);
a.message = 0 < f.duration ? this.getAdMessage() : q;
return a
};
d.resetAdModel = function () {
b()
};
d.getAdMessage = function () {
var a = f.message.replace(/xx/gi, "" + Math.min(f.duration | 0, Math.ceil(f.duration - f.position)));
f.podMessage && 1 < f.podcount && (a = f.podMessage.replace(/__AD_POD_CURRENT__/g, "" + f.sequence).replace(/__AD_POD_LENGTH__/g,
"" + f.podcount) + a);
return a
};
d.skipAd = function (a) {
e("skipAd", {tag: a.tag})
};
d.clickAd = function (a) {
k = 1 * new Date;
e("clickAd", {tag: a.tag})
};
d.timeSinceClick = function () {
return 1 * new Date - k
}
}
}(window.jwplayer), function (h, c) {
function l(a, b) {
a[b] && (a[b] = g.getAbsolutePath(a[b]))
}
var j = c.cast, g = c.utils, b = c.events, e = b.state, n = {};
j.NS = "urn:x-cast:com.longtailvideo.jwplayer";
j.availability = null;
j.available = function (a) {
a = a || j.availability;
var b = h.chrome, c = "available";
b.cast && b.cast.ReceiverAvailability && (c = b.cast.ReceiverAvailability.AVAILABLE);
return a === c
};
j.controller = function (a, d) {
var f, q;
function k(a, b) {
var d = {command: a};
void 0 !== b && (d.args = b);
w.sendMessage(j.NS, d, O, function (a) {
j.log("error message", a);
"Invalid namespace" === a.description && A()
})
}
function m(a) {
a = !!j.available(a.availability);
N.available !== a && (N.available = a, t(b.JWPLAYER_CAST_AVAILABLE))
}
function r(a) {
j.log("existing session", a);
w || (K = a.session, K.addMessageListener(j.NS, x))
}
function x(e, f) {
var g = JSON.parse(f);
if (!g)throw"Message not proper JSON";
if (g.reconcile) {
K.removeMessageListener(j.NS,
x);
var m = g.diff, h = K;
if (!m.id || !g.appid || !g.pageUrl)m.id = c().id, g.appid = J.appid, g.pageUrl = Q, K = w = null;
m.id === a.id && (g.appid === J.appid && g.pageUrl === Q) && (w || (a.jwInstreamState() && a.jwInstreamDestroy(!0), v(h), d.sendEvent(b.JWPLAYER_PLAYER_STATE, {
oldstate: m.oldstate,
newstate: m.newstate
})), H(g));
K = null
}
}
function u(a) {
N.active = !!a;
a = N;
var d;
d = w && w.receiver ? w.receiver.friendlyName : "";
a.deviceName = d;
t(b.JWPLAYER_CAST_SESSION, {})
}
function t(a) {
var b = g.extend({}, N);
d.sendEvent(a, b)
}
function p(a) {
var b = h.chrome;
a.code !== b.cast.ErrorCode.CANCEL && (j.log("Cast Session Error:", a, w), a.code === b.cast.ErrorCode.SESSION_ERROR && A())
}
function A() {
w ? (B(), w.stop(F, G)) : F()
}
function G(a) {
j.error("Cast Session Stop error:", a, w);
F()
}
function v(m) {
w = m;
w.addMessageListener(j.NS, D);
w.addUpdateListener(C);
a.jwPause(!0);
a.jwSetFullscreen(!1);
M = d.getVideo();
f = d.volume;
q = d.mute;
z = new j.provider(k);
z.init();
d.setVideo(z);
a.jwPlay = function (a) {
!1 === a ? z.pause() : z.play()
};
a.jwPause = function (b) {
a.jwPlay(!!b)
};
a.jwLoad = function (a) {
"number" ===
g.typeOf(a) && d.setItem(a);
z.load(a)
};
a.jwPlaylistItem = function (a) {
"number" === g.typeOf(a) && d.setItem(a);
z.playlistItem(a)
};
a.jwPlaylistNext = function () {
a.jwPlaylistItem(d.item + 1)
};
a.jwPlaylistPrev = function () {
a.jwPlaylistItem(d.item - 1)
};
a.jwSetVolume = function (a) {
g.exists(a) && (a = Math.min(Math.max(0, a), 100) | 0, R(a) && (a = Math.max(0, Math.min(a / 100, 1)), w.setReceiverVolumeLevel(a, I, function (a) {
j.error("set volume error", a);
I()
})))
};
a.jwSetMute = function (a) {
g.exists(a) || (a = !L.mute);
P(a) && w.setReceiverMuted(!!a,
I, function (a) {
j.error("set muted error", a);
I()
})
};
a.jwGetVolume = function () {
return L.volume | 0
};
a.jwGetMute = function () {
return !!L.mute
};
a.jwIsBeforePlay = function () {
return !1
};
var l = a.jwSetCurrentCaptions;
a.jwSetCurrentCaptions = function (a) {
l(a);
z.sendCommand("caption", a)
};
a.jwSkipAd = function (a) {
y && (y.skipAd(a), a = y.getAdModel(), a.complete = !0, d.sendEvent(b.JWPLAYER_CAST_AD_CHANGED, a))
};
a.jwClickAd = function (f) {
if (y && 300 < y.timeSinceClick() && (y.clickAd(f), d.state !== e.PAUSED)) {
var g = {tag: f.tag};
f.sequence &&
(g.sequence = f.sequence);
f.podcount && (g.podcount = f.podcount);
c(a.id).dispatchEvent(b.JWPLAYER_AD_CLICK, g);
h.open(f.clickthrough)
}
};
a.jwPlayAd = a.jwPauseAd = a.jwSetControls = a.jwForceState = a.jwReleaseState = a.jwSetFullscreen = a.jwDetachMedia = a.jwAttachMedia = O;
var n = c(a.id).plugins;
n.vast && n.vast.jwPauseAd !== O && (S = {
jwPlayAd: n.vast.jwPlayAd,
jwPauseAd: n.vast.jwPauseAd
}, n.vast.jwPlayAd = n.vast.jwPauseAd = O);
I();
u(!0);
m !== K && z.setup(E(), d)
}
function C(a) {
j.log("Cast Session status", a);
a ? I() : (z.sendEvent(b.JWPLAYER_PLAYER_STATE,
{oldstate: d.state, newstate: e.BUFFERING}), F())
}
function F() {
w && (B(), w = null);
if (M) {
delete a.jwSkipAd;
delete a.jwClickAd;
a.initializeAPI();
var m = c(a.id).plugins;
m.vast && g.extend(m.vast, S);
d.volume = f;
d.mute = q;
d.setVideo(M);
d.duration = 0;
z && (z.destroy(), z = null);
y && (y.destroy(), y = null);
d.state !== e.IDLE ? g.isIPad() || g.isIPod() ? (a.jwStop(!0), M.sendEvent(b.JWPLAYER_PLAYER_STATE, {
oldstate: e.BUFFERING,
newstate: e.IDLE
})) : (d.state = e.IDLE, a.jwPlay(!0), a.jwSeek(d.position)) : M.sendEvent(b.JWPLAYER_PLAYER_STATE, {
oldstate: e.BUFFERING,
newstate: e.IDLE
});
M = null
}
u(!1)
}
function B() {
w.removeUpdateListener(C);
w.removeMessageListener(j.NS, D)
}
function D(a, b) {
var d = JSON.parse(b);
if (!d)throw"Message not proper JSON";
H(d)
}
function H(c) {
if ("state" === c.type) {
if (y && (c.diff.newstate || c.diff.position))y.destroy(), y = null, d.setVideo(z), d.sendEvent(b.JWPLAYER_CAST_AD_CHANGED, {done: !0});
z.updateModel(c.diff, c.type);
c = c.diff;
void 0 !== c.item && d.item !== c.item && (d.item = c.item, d.sendEvent(b.JWPLAYER_PLAYLIST_ITEM, {index: d.item}))
} else if ("ad" === c.type) {
null ===
y && (y = new j.adprovider(j.NS, w), y.init(), d.setVideo(y));
y.updateModel(c.diff, c.type);
var e = y.getAdModel();
c.diff.clickthrough && (e.onClick = a.jwClickAd);
c.diff.skipoffset && (e.onSkipAd = a.jwSkipAd);
d.sendEvent(b.JWPLAYER_CAST_AD_CHANGED, e);
c.diff.complete && y.resetAdModel()
} else"connection" === c.type ? !0 === c.closed && A() : j.error("received unhandled message", c.type, c)
}
function E() {
var a = g.extend({}, d.config);
a.cast = g.extend({pageUrl: Q}, J);
for (var b = "base autostart controls fallback fullscreen width height mobilecontrols modes playlistlayout playlistposition playlistsize primary stretching sharing related ga skin logo listbar".split(" "),
c = b.length; c--;)delete a[b[c]];
b = a.plugins;
delete a.plugins;
for (var e in b)if (b.hasOwnProperty(e)) {
var f = b[e];
if (f.client && (/[\.\/]/.test(f.client) && l(f, "client"), -1 < f.client.indexOf("vast"))) {
c = a;
f = g.extend({}, f);
f.client = "vast";
delete f.companiondiv;
if (f.schedule) {
var m = void 0;
for (m in f.schedule)f.schedule.hasOwnProperty(m) && l(f.schedule[m].ad || f.schedule[m], "tag")
}
l(f, "tag");
c.advertising = f
}
}
d.position && (a.position = d.position);
0 < d.item && (a.item = d.item);
a.captionLabel = g.getCookies().captionLabel;
return a
}
function I() {
if (w && w.receiver) {
var a = w.receiver.volume;
if (a) {
var b = 100 * a.level | 0;
P(!!a.muted);
R(b)
}
}
}
function R(a) {
var c = L.volume !== a;
c && (L.volume = a, z.sendEvent(b.JWPLAYER_MEDIA_VOLUME, {volume: a}));
return c
}
function P(a) {
var c = L.mute !== a;
c && (L.mute = a, z.sendEvent(b.JWPLAYER_MEDIA_MUTE, {mute: a}));
return c
}
function O() {
}
var w = null, N = {available: !1, active: !1, deviceName: ""}, L = {
volume: null,
mute: null
}, Q = g.getAbsolutePath(h.location.href), J, z = null, y = null, M = null;
f = d.volume;
q = d.mute;
var K = null, S = null;
J = g.extend({}, n, d.cast);
l(J, "loadscreen");
l(J, "endscreen");
l(J, "logo");
if (J.appid && (!h.cast || !h.cast.receiver))j.loader.addEventListener("availability", m), j.loader.addEventListener("session", r), j.loader.initialize(J.appid);
this.startCasting = function () {
w || a.jwInstreamState() || h.chrome.cast.requestSession(v, p)
};
this.stopCasting = A
};
j.log = function () {
if (j.debug) {
var a = Array.prototype.slice.call(arguments, 0);
console.log.apply(console, a)
}
};
j.error = function () {
var a = Array.prototype.slice.call(arguments, 0);
console.error.apply(console, a)
}
}(window, jwplayer), function (h, c) {
function l() {
c && c.cast && c.cast.isAvailable && !a.apiConfig ? (a.apiConfig = new c.cast.ApiConfig(new c.cast.SessionRequest(m), e, n, c.cast.AutoJoinPolicy.ORIGIN_SCOPED), c.cast.initialize(a.apiConfig, b, g)) : 15 > k++ && setTimeout(l, 1E3)
}
function j() {
q && (q.resetEventListeners(), q = null)
}
function g() {
a.apiConfig = null
}
function b() {
}
function e(b) {
a.loader.sendEvent("session", {session: b});
b.sendMessage(a.NS, {whoami: 1})
}
function n(b) {
a.availability = b;
a.loader.sendEvent("availability",
{availability: b})
}
window.chrome = c;
var a = h.cast, d = h.utils, f = h.events, q, k = 0, m = null;
a.loader = d.extend({
initialize: function (b) {
m = b;
null !== a.availability ? a.loader.sendEvent("availability", {availability: a.availability}) : c && c.cast ? l() : q || (q = new d.scriptloader("https://www.gstatic.com/cv/js/sender/v1/cast_sender.js"), q.addEventListener(f.ERROR, j), q.addEventListener(f.COMPLETE, l), q.load())
}
}, new f.eventdispatcher("cast.loader"))
}(window.jwplayer, window.chrome || {}), function (h) {
function c(b) {
return function () {
return b
}
}
function l() {
}
var j = h.cast, g = h.utils, b = h.events, e = b.state;
j.provider = function (h) {
function a(a) {
q.oldstate = q.newstate;
q.newstate = a;
d.sendEvent(b.JWPLAYER_PLAYER_STATE, {oldstate: q.oldstate, newstate: q.newstate})
}
var d = g.extend(this, new b.eventdispatcher("cast.provider")), f = -1, q = {
newstate: e.IDLE,
oldstate: e.IDLE,
buffer: 0,
position: 0,
duration: -1,
audioMode: !1
};
d.isCaster = !0;
d.init = function () {
};
d.destroy = function () {
clearTimeout(f);
_castSession = null
};
d.updateModel = function (a, c) {
a.newstate && (q.newstate = a.newstate,
q.oldstate = a.oldstate || q.oldstate, d.sendEvent(b.JWPLAYER_PLAYER_STATE, {
oldstate: q.oldstate,
newstate: q.newstate
}));
if ("ad" !== c) {
if (void 0 !== a.position || void 0 !== a.duration)void 0 !== a.position && (q.position = a.position), void 0 !== a.duration && (q.duration = a.duration), d.sendEvent(b.JWPLAYER_MEDIA_TIME, {
position: q.position,
duration: q.duration
});
void 0 !== a.buffer && (q.buffer = a.buffer, d.sendEvent(b.JWPLAYER_MEDIA_BUFFER, {bufferPercent: q.buffer}))
}
};
d.supportsFullscreen = function () {
return !1
};
d.setup = function (b,
c) {
c.state && (q.newstate = c.state);
void 0 !== c.buffer && (q.buffer = c.buffer);
void 0 !== b.position && (q.position = b.position);
void 0 !== b.duration && (q.duration = b.duration);
a(e.BUFFERING);
h("setup", b)
};
d.playlistItem = function (b) {
a(e.BUFFERING);
h("item", b)
};
d.load = function (b) {
a(e.BUFFERING);
h("load", b)
};
d.stop = function () {
clearTimeout(f);
f = setTimeout(function () {
a(e.IDLE);
h("stop")
}, 0)
};
d.play = function () {
h("play")
};
d.pause = function () {
a(e.PAUSED);
h("pause")
};
d.seek = function (c) {
a(e.BUFFERING);
d.sendEvent(b.JWPLAYER_MEDIA_SEEK,
{position: q.position, offset: c});
h("seek", c)
};
d.audioMode = function () {
return q.audioMode
};
d.sendCommand = function (a, b) {
h(a, b)
};
d.detachMedia = function () {
j.error("detachMedia called while casting");
return document.createElement("video")
};
d.attachMedia = function () {
j.error("attachMedia called while casting")
};
var k;
d.setContainer = function (a) {
k = a
};
d.getContainer = function () {
return k
};
d.volume = d.mute = d.setControls = d.setCurrentQuality = d.remove = d.resize = d.seekDrag = d.addCaptions = d.resetCaptions = d.setVisibility =
d.fsCaptions = l;
d.setFullScreen = d.getFullScreen = d.checkComplete = c(!1);
d.getWidth = d.getHeight = d.getCurrentQuality = c(0);
d.getQualityLevels = c(["Auto"])
}
}(window.jwplayer), function (h) {
function c(a, b) {
j.foreach(b, function (b, c) {
var e = a[b];
"function" == typeof e && e.call(a, c)
})
}
function l(a, b, c) {
var e = a.style;
e.backgroundColor = "#000";
e.color = "#FFF";
e.width = j.styleDimension(c.width);
e.height = j.styleDimension(c.height);
e.display = "table";
e.opacity = 1;
c = document.createElement("p");
e = c.style;
e.verticalAlign = "middle";
e.textAlign = "center";
e.display = "table-cell";
e.font = "15px/20px Arial, Helvetica, sans-serif";
c.innerHTML = b.replace(":", ":\x3cbr\x3e");
a.innerHTML = "";
a.appendChild(c)
}
var j = h.utils, g = h.events, b = !0, e = !1, n = document, a = h.embed = function (d) {
function f() {
if (!B)if ("array" === j.typeOf(u.playlist) && 2 > u.playlist.length && (0 === u.playlist.length || !u.playlist[0].sources || 0 === u.playlist[0].sources.length))m(); else if (!F)if ("string" === j.typeOf(u.playlist))C = new h.playlist.loader, C.addEventListener(g.JWPLAYER_PLAYLIST_LOADED,
function (a) {
u.playlist = a.playlist;
F = e;
f()
}), C.addEventListener(g.JWPLAYER_ERROR, function (a) {
F = e;
m(a)
}), F = b, C.load(u.playlist); else if (v.getStatus() == j.loaderstatus.COMPLETE) {
for (var k = 0; k < u.modes.length; k++)if (u.modes[k].type && a[u.modes[k].type]) {
var l = j.extend({}, u), n = new a[u.modes[k].type](E, u.modes[k], l, v, d);
if (n.supportsConfig())return n.addEventListener(g.ERROR, q), n.embed(), j.css("object.jwswf, .jwplayer:focus", {outline: "none"}), j.css(".jw-tab-focus:focus", {outline: "solid 2px #0B7EF4"}), c(d,
l.events), d
}
var p;
u.fallback ? (p = "No suitable players found and fallback enabled", D = setTimeout(function () {
r(p, b)
}, 10), j.log(p), new a.download(E, u, m)) : (p = "No suitable players found and fallback disabled", r(p, e), j.log(p), E.parentNode.replaceChild(H, E))
}
}
function q(a) {
x(A + a.message)
}
function k(a) {
d.dispatchEvent(g.JWPLAYER_ERROR, {message: "Could not load plugin: " + a.message})
}
function m(a) {
a && a.message ? x("Error loading playlist: " + a.message) : x(A + "No playable sources found")
}
function r(a, b) {
D && (clearTimeout(D),
D = null);
D = setTimeout(function () {
D = null;
d.dispatchEvent(g.JWPLAYER_SETUP_ERROR, {message: a, fallback: b})
}, 0)
}
function x(a) {
B || (u.fallback ? (B = b, l(E, a, u), r(a, b)) : r(a, e))
}
var u = new a.config(d.config), t = u.width, p = u.height, A = "Error loading player: ", G = n.getElementById(d.id), v = h.plugins.loadPlugins(d.id, u.plugins), C, F = e, B = e, D = null, H = null;
u.fallbackDiv && (H = u.fallbackDiv, delete u.fallbackDiv);
u.id = d.id;
u.aspectratio ? d.config.aspectratio = u.aspectratio : delete d.config.aspectratio;
var E = n.createElement("div");
E.id = G.id;
E.style.width = 0 < t.toString().indexOf("%") ? t : t + "px";
E.style.height = 0 < p.toString().indexOf("%") ? p : p + "px";
G.parentNode.replaceChild(E, G);
this.embed = function () {
B || (v.addEventListener(g.COMPLETE, f), v.addEventListener(g.ERROR, k), v.load())
};
this.destroy = function () {
v && (v.destroy(), v = null);
C && (C.resetEventListeners(), C = null)
};
this.errorScreen = x;
return this
};
h.embed.errorScreen = l
}(jwplayer), function (h) {
function c(b) {
if (b.playlist)for (var c = 0; c < b.playlist.length; c++)b.playlist[c] = new g(b.playlist[c]);
else {
var h = {};
j.foreach(g.defaults, function (a) {
l(b, h, a)
});
h.sources || (b.levels ? (h.sources = b.levels, delete b.levels) : (c = {}, l(b, c, "file"), l(b, c, "type"), h.sources = c.file ? [c] : []));
b.playlist = [new g(h)]
}
}
function l(b, c, g) {
j.exists(b[g]) && (c[g] = b[g], delete b[g])
}
var j = h.utils, g = h.playlist.item;
(h.embed.config = function (b) {
var e = {
fallback: !0,
height: 270,
primary: "html5",
width: 480,
base: b.base ? b.base : j.getScriptPath("jwplayer.js"),
aspectratio: ""
};
b = j.extend(e, h.defaults, b);
var e = {type: "html5", src: b.base + "jwplayer.html5.js"},
g = {type: "flash", src: b.base + "jwplayer.flash.swf"};
b.modes = "flash" == b.primary ? [g, e] : [e, g];
b.listbar && (b.playlistsize = b.listbar.size, b.playlistposition = b.listbar.position, b.playlistlayout = b.listbar.layout);
b.flashplayer && (g.src = b.flashplayer);
b.html5player && (e.src = b.html5player);
c(b);
g = b.aspectratio;
if ("string" != typeof g || !j.exists(g))e = 0; else {
var a = g.indexOf(":");
-1 == a ? e = 0 : (e = parseFloat(g.substr(0, a)), g = parseFloat(g.substr(a + 1)), e = 0 >= e || 0 >= g ? 0 : 100 * (g / e) + "%")
}
-1 == b.width.toString().indexOf("%") ? delete b.aspectratio :
e ? b.aspectratio = e : delete b.aspectratio;
return b
}).addConfig = function (b, e) {
c(e);
return j.extend(b, e)
}
}(jwplayer), function (h) {
var c = h.utils, l = document;
h.embed.download = function (j, g, b) {
function e(a, b) {
for (var d = l.querySelectorAll(a), e = 0; e < d.length; e++)c.foreach(b, function (a, b) {
d[e].style[a] = b
})
}
function h(a, b, c) {
a = l.createElement(a);
b && (a.className = "jwdownload" + b);
c && c.appendChild(a);
return a
}
var a = c.extend({}, g), d = a.width ? a.width : 480, f = a.height ? a.height : 320, q;
g = g.logo ? g.logo : {
prefix: c.repo(), file: "logo.png",
margin: 10
};
var k, m, r, a = a.playlist, x, u = ["mp4", "aac", "mp3"];
if (a && a.length) {
x = a[0];
q = x.sources;
for (a = 0; a < q.length; a++) {
var t = q[a], p = t.type ? t.type : c.extensionmap.extType(c.extension(t.file));
t.file && c.foreach(u, function (a) {
p == u[a] ? (k = t.file, m = x.image) : c.isYouTube(t.file) && (r = t.file)
})
}
k ? (q = k, b = m, j && (a = h("a", "display", j), h("div", "icon", a), h("div", "logo", a), q && a.setAttribute("href", c.getAbsolutePath(q))), a = "#" + j.id + " .jwdownload", j.style.width = "", j.style.height = "", e(a + "display", {
width: c.styleDimension(Math.max(320,
d)),
height: c.styleDimension(Math.max(180, f)),
background: "black center no-repeat " + (b ? "url(" + b + ")" : ""),
backgroundSize: "contain",
position: "relative",
border: "none",
display: "block"
}), e(a + "display div", {
position: "absolute",
width: "100%",
height: "100%"
}), e(a + "logo", {
top: g.margin + "px",
right: g.margin + "px",
background: "top right no-repeat url(" + g.prefix + g.file + ")"
}), e(a + "icon", {background: "center no-repeat url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/NlyAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAgNJREFUeNrs28lqwkAYB/CZqNVDDj2r6FN41QeIy8Fe+gj6BL275Q08u9FbT8ZdwVfotSBYEPUkxFOoks4EKiJdaDuTjMn3wWBO0V/+sySR8SNSqVRKIR8qaXHkzlqS9jCfzzWcTCYp9hF5o+59sVjsiRzcegSckFzcjT+ruN80TeSlAjCAAXzdJSGPFXRpAAMYwACGZQkSdhG4WCzehMNhqV6vG6vVSrirKVEw66YoSqDb7cqlUilE8JjHd/y1MQefVzqdDmiaJpfLZWHgXMHn8F6vJ1cqlVAkEsGuAn83J4gAd2RZymQygX6/L1erVQt+9ZPWb+CDwcCC2zXGJaewl/DhcHhK3DVj+KfKZrMWvFarcYNLomAv4aPRSFZVlTlcSPA5fDweW/BoNIqFnKV53JvncjkLns/n/cLdS+92O7RYLLgsKfv9/t8XlDn4eDyiw+HA9Jyz2eyt0+kY2+3WFC5hluej0Ha7zQQq9PPwdDq1Et1sNsx/nFBgCqWJ8oAK1aUptNVqcYWewE4nahfU0YQnk4ntUEfGMIU2m01HoLaCKbTRaDgKtaVLk9tBYaBcE/6Artdr4RZ5TB6/dC+9iIe/WgAMYADDpAUJAxjAAAYwgGFZgoS/AtNNTF7Z2bL0BYPBV3Jw5xFwwWcYxgtBP5OkE8i9G7aWGOOCruvauwADALMLMEbKf4SdAAAAAElFTkSuQmCC)"})) :
r ? (g = r, j = h("iframe", "", j), j.src = "http://www.youtube.com/embed/" + c.youTubeID(g), j.width = d, j.height = f, j.style.border = "none") : b()
}
}
}(jwplayer), function (h) {
var c = h.utils, l = h.events, j = {};
(h.embed.flash = function (b, e, n, a, d) {
function f(a, b, c) {
var d = document.createElement("param");
d.setAttribute("name", b);
d.setAttribute("value", c);
a.appendChild(d)
}
function q(a, b, c) {
return function () {
try {
c && document.getElementById(d.id + "_wrapper").appendChild(b);
var e = document.getElementById(d.id).getPluginConfig("display");
"function" == typeof a.resize && a.resize(e.width, e.height);
b.style.left = e.x;
b.style.top = e.h
} catch (f) {
}
}
}
function k(a) {
if (!a)return {};
var b = {}, d = [];
c.foreach(a, function (a, e) {
var f = c.getPluginName(a);
d.push(a);
c.foreach(e, function (a, c) {
b[f + "." + a] = c
})
});
b.plugins = d.join(",");
return b
}
var m = new h.events.eventdispatcher, r = c.flashVersion();
c.extend(this, m);
this.embed = function () {
n.id = d.id;
if (10 > r)return m.sendEvent(l.ERROR, {message: "Flash version must be 10.0 or greater"}), !1;
var g, h, t = d.config.listbar, p = c.extend({},
n);
if (b.id + "_wrapper" == b.parentNode.id)g = document.getElementById(b.id + "_wrapper"); else {
g = document.createElement("div");
h = document.createElement("div");
h.style.display = "none";
h.id = b.id + "_aspect";
g.id = b.id + "_wrapper";
g.style.position = "relative";
g.style.display = "block";
g.style.width = c.styleDimension(p.width);
g.style.height = c.styleDimension(p.height);
if (d.config.aspectratio) {
var A = parseFloat(d.config.aspectratio);
h.style.display = "block";
h.style.marginTop = d.config.aspectratio;
g.style.height = "auto";
g.style.display =
"inline-block";
t && ("bottom" == t.position ? h.style.paddingBottom = t.size + "px" : "right" == t.position && (h.style.marginBottom = -1 * t.size * (A / 100) + "px"))
}
b.parentNode.replaceChild(g, b);
g.appendChild(b);
g.appendChild(h)
}
g = a.setupPlugins(d, p, q);
0 < g.length ? c.extend(p, k(g.plugins)) : delete p.plugins;
"undefined" != typeof p["dock.position"] && "false" == p["dock.position"].toString().toLowerCase() && (p.dock = p["dock.position"], delete p["dock.position"]);
g = p.wmode ? p.wmode : p.height && 40 >= p.height ? "transparent" : "opaque";
h = "height width modes events primary base fallback volume".split(" ");
for (t = 0; t < h.length; t++)delete p[h[t]];
h = c.getCookies();
c.foreach(h, function (a, b) {
"undefined" == typeof p[a] && (p[a] = b)
});
h = window.location.href.split("/");
h.splice(h.length - 1, 1);
h = h.join("/");
p.base = h + "/";
j[b.id] = p;
c.isMSIE() ? (h = '\x3cobject classid\x3d"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" " width\x3d"100%" height\x3d"100%"id\x3d"' + b.id + '" name\x3d"' + b.id + '" tabindex\x3d0""\x3e', h += '\x3cparam name\x3d"movie" value\x3d"' + e.src + '"\x3e', h += '\x3cparam name\x3d"allowfullscreen" value\x3d"true"\x3e\x3cparam name\x3d"allowscriptaccess" value\x3d"always"\x3e',
h += '\x3cparam name\x3d"seamlesstabbing" value\x3d"true"\x3e', h += '\x3cparam name\x3d"wmode" value\x3d"' + g + '"\x3e', h += '\x3cparam name\x3d"bgcolor" value\x3d"#000000"\x3e', h += "\x3c/object\x3e", b.outerHTML = h, g = document.getElementById(b.id)) : (h = document.createElement("object"), h.setAttribute("type", "application/x-shockwave-flash"), h.setAttribute("data", e.src), h.setAttribute("width", "100%"), h.setAttribute("height", "100%"), h.setAttribute("bgcolor", "#000000"), h.setAttribute("id", b.id), h.setAttribute("name",
b.id), h.className = "jwswf", f(h, "allowfullscreen", "true"), f(h, "allowscriptaccess", "always"), f(h, "seamlesstabbing", "true"), f(h, "wmode", g), b.parentNode.replaceChild(h, b), g = h);
d.config.aspectratio && (g.style.position = "absolute");
d.container = g;
d.setPlayer(g, "flash")
};
this.supportsConfig = function () {
if (r)if (n) {
if ("string" == c.typeOf(n.playlist))return !0;
try {
var a = n.playlist[0].sources;
if ("undefined" == typeof a)return !0;
for (var b = 0; b < a.length; b++)if (a[b].file && g(a[b].file, a[b].type))return !0
} catch (d) {
}
} else return !0;
return !1
}
}).getVars = function (b) {
return j[b]
};
var g = h.embed.flashCanPlay = function (b, e) {
if (c.isYouTube(b) || c.isRtmp(b, e) || "hls" == e)return !0;
var g = c.extensionmap[e ? e : c.extension(b)];
return !g ? !1 : !!g.flash
}
}(jwplayer), function (h) {
function c(b, c, g) {
if (null !== navigator.userAgent.match(/BlackBerry/i))return !1;
if ("youtube" === c || l.isYouTube(b))return !0;
var a = l.extension(b);
c = c || j.extType(a);
if ("hls" === c)if (g) {
g = l.isAndroidNative;
if (g(2) || g(3) || g("4.0"))return !1;
if (l.isAndroid())return !0
} else if (l.isAndroid())return !1;
if (l.isRtmp(b, c))return !1;
b = j[c] || j[a];
if (!b || b.flash && !b.html5)return !1;
var d;
a:if (b = b.html5) {
try {
d = !!h.vid.canPlayType(b);
break a
} catch (f) {
}
d = !1
} else d = !0;
return d
}
var l = h.utils, j = l.extensionmap, g = h.events;
h.embed.html5 = function (b, e, j, a, d) {
function f(a, c, d) {
return function () {
try {
var e = document.querySelector("#" + b.id + " .jwmain");
d && e.appendChild(c);
"function" == typeof a.resize && (a.resize(e.clientWidth, e.clientHeight), setTimeout(function () {
a.resize(e.clientWidth, e.clientHeight)
}, 400));
c.left = e.style.left;
c.top = e.style.top
} catch (f) {
}
}
}
function q(a) {
k.sendEvent(a.type, {message: "HTML5 player not found"})
}
var k = this, m = new g.eventdispatcher;
l.extend(k, m);
k.embed = function () {
if (h.html5) {
a.setupPlugins(d, j, f);
b.innerHTML = "";
var c = h.utils.extend({}, j);
delete c.volume;
c = new h.html5.player(c);
d.container = document.getElementById(d.id);
d.setPlayer(c, "html5")
} else c = new l.scriptloader(e.src), c.addEventListener(g.ERROR, q), c.addEventListener(g.COMPLETE, k.embed), c.load()
};
k.supportsConfig = function () {
if (h.vid.canPlayType)try {
if ("string" ==
l.typeOf(j.playlist))return !0;
for (var a = j.playlist[0].sources, b = 0; b < a.length; b++)if (c(a[b].file, a[b].type, j.androidhls))return !0
} catch (d) {
}
return !1
}
};
h.embed.html5CanPlay = c
}(jwplayer), function (h) {
var c = h.embed, l = h.utils, j = /\.(js|swf)$/;
h.embed = l.extend(function (g) {
function b() {
t = "Adobe SiteCatalyst Error: Could not find Media Module"
}
var e = l.repo(), n = l.extend({}, h.defaults), a = l.extend({}, n, g.config), d = g.config, f = a.plugins, q = a.analytics, k = e + "jwpsrv.js", m = e + "sharing.js", r = e + "related.js", x = e + "gapro.js",
n = h.key ? h.key : n.key, u = (new h.utils.key(n)).edition(), t, f = f ? f : {};
"ads" == u && a.advertising && (j.test(a.advertising.client) ? f[a.advertising.client] = a.advertising : f[e + a.advertising.client + ".js"] = a.advertising);
delete d.advertising;
d.key = n;
a.analytics && j.test(a.analytics.client) && (k = a.analytics.client);
delete d.analytics;
q && !("ads" === u || "enterprise" === u) && delete q.enabled;
if ("free" == u || !q || !1 !== q.enabled)f[k] = q ? q : {};
delete f.sharing;
delete f.related;
switch (u) {
case "ads":
case "enterprise":
if (d.sitecatalyst)try {
window.s &&
window.s.hasOwnProperty("Media") ? new h.embed.sitecatalyst(g) : b()
} catch (p) {
b()
}
case "premium":
a.related && (j.test(a.related.client) && (r = a.related.client), f[r] = a.related), a.ga && (j.test(a.ga.client) && (x = a.ga.client), f[x] = a.ga);
case "pro":
a.sharing && (j.test(a.sharing.client) && (m = a.sharing.client), f[m] = a.sharing), a.skin && (d.skin = a.skin.replace(/^(beelden|bekle|five|glow|modieus|roundster|stormtrooper|vapor)$/i, l.repo() + "skins/$1.xml"))
}
d.plugins = f;
g.config = d;
g = new c(g);
t && g.errorScreen(t);
return g
}, h.embed)
}(jwplayer),
function (h) {
var c = jwplayer.utils;
h.sitecatalyst = function (h) {
function j(b) {
a.debug && c.log(b)
}
function g(a) {
a = a.split("/");
a = a[a.length - 1];
a = a.split("?");
return a[0]
}
function b() {
if (!m) {
m = !0;
var a = n.getPosition();
j("stop: " + f + " : " + a);
s.Media.stop(f, a)
}
}
function e() {
r || (b(), r = !0, j("close: " + f), s.Media.close(f), x = !0, k = 0)
}
var n = h, a = c.extend({}, n.config.sitecatalyst), d = {
onPlay: function () {
if (!x) {
var a = n.getPosition();
m = !1;
j("play: " + f + " : " + a);
s.Media.play(f, a)
}
}, onPause: b, onBuffer: b, onIdle: e, onPlaylistItem: function (b) {
try {
x = !0;
e();
k = 0;
var d;
if (a.mediaName)d = a.mediaName; else {
var h = n.getPlaylistItem(b.index);
d = h.title ? h.title : h.file ? g(h.file) : h.sources && h.sources.length ? g(h.sources[0].file) : ""
}
f = d;
q = a.playerName ? a.playerName : n.id
} catch (j) {
c.log(j)
}
}, onTime: function () {
if (x) {
var a = n.getDuration();
if (-1 == a)return;
r = m = x = !1;
j("open: " + f + " : " + a + " : " + q);
s.Media.open(f, a, q);
j("play: " + f + " : 0");
s.Media.play(f, 0)
}
a = n.getPosition();
if (3 <= Math.abs(a - k)) {
var b = k;
j("seek: " + b + " to " + a);
j("stop: " + f + " : " + b);
s.Media.stop(f, b);
j("play: " +
f + " : " + a);
s.Media.play(f, a)
}
k = a
}, onComplete: e
}, f, q, k, m = !0, r = !0, x;
c.foreach(d, function (a) {
n[a](d[a])
})
}
}(jwplayer.embed), function (h, c) {
var l = [], j = h.utils, g = h.events, b = g.state, e = document, n = "getBuffer getCaptionsList getControls getCurrentCaptions getCurrentQuality getDuration getFullscreen getHeight getLockState getMute getPlaylistIndex getSafeRegion getPosition getQualityLevels getState getVolume getWidth isBeforeComplete isBeforePlay releaseState".split(" "), a = "playlistNext stop forceState playlistPrev seek setCurrentCaptions setControls setCurrentQuality setVolume".split(" "),
d = {
onBufferChange: g.JWPLAYER_MEDIA_BUFFER,
onBufferFull: g.JWPLAYER_MEDIA_BUFFER_FULL,
onError: g.JWPLAYER_ERROR,
onSetupError: g.JWPLAYER_SETUP_ERROR,
onFullscreen: g.JWPLAYER_FULLSCREEN,
onMeta: g.JWPLAYER_MEDIA_META,
onMute: g.JWPLAYER_MEDIA_MUTE,
onPlaylist: g.JWPLAYER_PLAYLIST_LOADED,
onPlaylistItem: g.JWPLAYER_PLAYLIST_ITEM,
onPlaylistComplete: g.JWPLAYER_PLAYLIST_COMPLETE,
onReady: g.API_READY,
onResize: g.JWPLAYER_RESIZE,
onComplete: g.JWPLAYER_MEDIA_COMPLETE,
onSeek: g.JWPLAYER_MEDIA_SEEK,
onTime: g.JWPLAYER_MEDIA_TIME,
onVolume: g.JWPLAYER_MEDIA_VOLUME,
onBeforePlay: g.JWPLAYER_MEDIA_BEFOREPLAY,
onBeforeComplete: g.JWPLAYER_MEDIA_BEFORECOMPLETE,
onDisplayClick: g.JWPLAYER_DISPLAY_CLICK,
onControls: g.JWPLAYER_CONTROLS,
onQualityLevels: g.JWPLAYER_MEDIA_LEVELS,
onQualityChange: g.JWPLAYER_MEDIA_LEVEL_CHANGED,
onCaptionsList: g.JWPLAYER_CAPTIONS_LIST,
onCaptionsChange: g.JWPLAYER_CAPTIONS_CHANGED,
onAdError: g.JWPLAYER_AD_ERROR,
onAdClick: g.JWPLAYER_AD_CLICK,
onAdImpression: g.JWPLAYER_AD_IMPRESSION,
onAdTime: g.JWPLAYER_AD_TIME,
onAdComplete: g.JWPLAYER_AD_COMPLETE,
onAdCompanions: g.JWPLAYER_AD_COMPANIONS,
onAdSkipped: g.JWPLAYER_AD_SKIPPED,
onAdPlay: g.JWPLAYER_AD_PLAY,
onAdPause: g.JWPLAYER_AD_PAUSE,
onAdMeta: g.JWPLAYER_AD_META,
onCast: g.JWPLAYER_CAST_SESSION
}, f = {onBuffer: b.BUFFERING, onPause: b.PAUSED, onPlay: b.PLAYING, onIdle: b.IDLE};
h.api = function (l) {
function k(a, b) {
j.foreach(a, function (a, c) {
p[a] = function (a) {
return b(c, a)
}
})
}
function m(a, b) {
var c = "jw" + b.charAt(0).toUpperCase() + b.slice(1);
p[b] = function () {
var b = t.apply(this, [c].concat(Array.prototype.slice.call(arguments,
0)));
return a ? p : b
}
}
function r(a) {
F = [];
D && D.destroy && D.destroy();
h.api.destroyPlayer(a.id)
}
function x(a, b) {
try {
a.jwAddEventListener(b, 'function(dat) { jwplayer("' + p.id + '").dispatchEvent("' + b + '", dat); }')
} catch (c) {
j.log("Could not add internal listener")
}
}
function u(a, b) {
A[a] || (A[a] = [], v && C && x(v, a));
A[a].push(b);
return p
}
function t() {
if (C) {
if (v) {
var a = Array.prototype.slice.call(arguments, 0), b = a.shift();
if ("function" === typeof v[b]) {
switch (a.length) {
case 6:
return v[b](a[0], a[1], a[2], a[3], a[4], a[5]);
case 5:
return v[b](a[0], a[1], a[2], a[3], a[4]);
case 4:
return v[b](a[0], a[1], a[2], a[3]);
case 3:
return v[b](a[0], a[1], a[2]);
case 2:
return v[b](a[0], a[1]);
case 1:
return v[b](a[0])
}
return v[b]()
}
}
return null
}
F.push(arguments)
}
var p = this, A = {}, G = {}, v, C = !1, F = [], B, D, H = {}, E = {};
p.container = l;
p.id = l.id;
p.setup = function (a) {
if (h.embed) {
var b = e.getElementById(p.id);
b && (a.fallbackDiv = b);
r(p);
b = h(p.id);
b.config = a;
D = new h.embed(b);
D.embed();
return b
}
return p
};
p.getContainer = function () {
return p.container
};
p.addButton =
function (a, b, c, d) {
try {
E[d] = c, t("jwDockAddButton", a, b, "jwplayer('" + p.id + "').callback('" + d + "')", d)
} catch (e) {
j.log("Could not add dock button" + e.message)
}
};
p.removeButton = function (a) {
t("jwDockRemoveButton", a)
};
p.callback = function (a) {
if (E[a])E[a]()
};
p.getMeta = function () {
return p.getItemMeta()
};
p.getPlaylist = function () {
var a = t("jwGetPlaylist");
"flash" == p.renderingMode && j.deepReplaceKeyName(a, ["__dot__", "__spc__", "__dsh__", "__default__"], [".", " ", "-", "default"]);
return a
};
p.getPlaylistItem = function (a) {
j.exists(a) ||
(a = p.getPlaylistIndex());
return p.getPlaylist()[a]
};
p.getRenderingMode = function () {
return p.renderingMode
};
p.setFullscreen = function (a) {
j.exists(a) ? t("jwSetFullscreen", a) : t("jwSetFullscreen", !t("jwGetFullscreen"));
return p
};
p.setMute = function (a) {
j.exists(a) ? t("jwSetMute", a) : t("jwSetMute", !t("jwGetMute"));
return p
};
p.lock = function () {
return p
};
p.unlock = function () {
return p
};
p.load = function (a) {
t("jwInstreamDestroy");
h(p.id).plugins.googima && t("jwDestroyGoogima");
t("jwLoad", a);
return p
};
p.playlistItem = function (a) {
t("jwPlaylistItem",
parseInt(a, 10));
return p
};
p.resize = function (a, b) {
if ("flash" !== p.renderingMode)t("jwResize", a, b); else {
var c = e.getElementById(p.id + "_wrapper"), d = e.getElementById(p.id + "_aspect");
d && (d.style.display = "none");
c && (c.style.display = "block", c.style.width = j.styleDimension(a), c.style.height = j.styleDimension(b))
}
return p
};
p.play = function (a) {
if (a !== c)return t("jwPlay", a), p;
a = p.getState();
var d = B && B.getState();
d ? d === b.IDLE || d === b.PLAYING || d === b.BUFFERING ? t("jwInstreamPause") : t("jwInstreamPlay") : a == b.PLAYING || a ==
b.BUFFERING ? t("jwPause") : t("jwPlay");
return p
};
p.pause = function (a) {
a === c ? (a = p.getState(), a == b.PLAYING || a == b.BUFFERING ? t("jwPause") : t("jwPlay")) : t("jwPause", a);
return p
};
p.createInstream = function () {
return new h.api.instream(this, v)
};
p.setInstream = function (a) {
return B = a
};
p.loadInstream = function (a, b) {
B = p.setInstream(p.createInstream()).init(b);
B.loadItem(a);
return B
};
p.destroyPlayer = function () {
t("jwPlayerDestroy")
};
p.playAd = function (a) {
var b = h(p.id).plugins;
b.vast ? b.vast.jwPlayAd(a) : t("jwPlayAd", a)
};
p.pauseAd = function () {
var a = h(p.id).plugins;
a.vast ? a.vast.jwPauseAd() : t("jwPauseAd")
};
k(f, function (a, b) {
G[a] || (G[a] = [], u(g.JWPLAYER_PLAYER_STATE, function (b) {
var c = b.newstate;
b = b.oldstate;
if (c == a) {
var d = G[c];
if (d)for (var e = 0; e < d.length; e++) {
var f = d[e];
"function" == typeof f && f.call(this, {oldstate: b, newstate: c})
}
}
}));
G[a].push(b);
return p
});
k(d, u);
j.foreach(n, function (a, b) {
m(!1, b)
});
j.foreach(a, function (a, b) {
m(!0, b)
});
p.remove = function () {
if (!C)throw"Cannot call remove() before player is ready";
r(this)
};
p.registerPlugin = function (a, b, c, d) {
h.plugins.registerPlugin(a, b, c, d)
};
p.setPlayer = function (a, b) {
v = a;
p.renderingMode = b
};
p.detachMedia = function () {
if ("html5" == p.renderingMode)return t("jwDetachMedia")
};
p.attachMedia = function (a) {
if ("html5" == p.renderingMode)return t("jwAttachMedia", a)
};
p.removeEventListener = function (a, b) {
var c = A[a];
if (c)for (var d = c.length; d--;)c[d] === b && c.splice(d, 1)
};
p.dispatchEvent = function (a, b) {
var c = A[a];
if (c)for (var c = c.slice(0), d = j.translateEventResponse(a, b), e = 0; e < c.length; e++) {
var f =
c[e];
if ("function" === typeof f)try {
a === g.JWPLAYER_PLAYLIST_LOADED && j.deepReplaceKeyName(d.playlist, ["__dot__", "__spc__", "__dsh__", "__default__"], [".", " ", "-", "default"]), f.call(this, d)
} catch (h) {
j.log("There was an error calling back an event handler")
}
}
};
p.dispatchInstreamEvent = function (a) {
B && B.dispatchEvent(a, arguments)
};
p.callInternal = t;
p.playerReady = function (a) {
C = !0;
v || p.setPlayer(e.getElementById(a.id));
p.container = e.getElementById(p.id);
j.foreach(A, function (a) {
x(v, a)
});
u(g.JWPLAYER_PLAYLIST_ITEM,
function () {
H = {}
});
u(g.JWPLAYER_MEDIA_META, function (a) {
j.extend(H, a.metadata)
});
u(g.JWPLAYER_VIEW_TAB_FOCUS, function (a) {
var b = p.getContainer();
!0 === a.hasFocus ? j.addClass(b, "jw-tab-focus") : j.removeClass(b, "jw-tab-focus")
});
for (p.dispatchEvent(g.API_READY); 0 < F.length;)t.apply(this, F.shift())
};
p.getItemMeta = function () {
return H
};
return p
};
h.playerReady = function (a) {
var b = h.api.playerById(a.id);
b ? b.playerReady(a) : h.api.selectPlayer(a.id).playerReady(a)
};
h.api.selectPlayer = function (a) {
var b;
j.exists(a) ||
(a = 0);
a.nodeType ? b = a : "string" == typeof a && (b = e.getElementById(a));
return b ? (a = h.api.playerById(b.id)) ? a : h.api.addPlayer(new h.api(b)) : "number" == typeof a ? l[a] : null
};
h.api.playerById = function (a) {
for (var b = 0; b < l.length; b++)if (l[b].id == a)return l[b];
return null
};
h.api.addPlayer = function (a) {
for (var b = 0; b < l.length; b++)if (l[b] == a)return a;
l.push(a);
return a
};
h.api.destroyPlayer = function (a) {
var b, d, f;
j.foreach(l, function (c, e) {
e.id === a && (b = c, d = e)
});
if (b === c || d === c)return null;
j.clearCss("#" + d.id);
if (f = e.getElementById(d.id +
("flash" == d.renderingMode ? "_wrapper" : ""))) {
"html5" === d.renderingMode && d.destroyPlayer();
var g = e.createElement("div");
g.id = d.id;
f.parentNode.replaceChild(g, f)
}
l.splice(b, 1);
return null
}
}(window.jwplayer), function (h) {
var c = h.events, l = h.utils, j = c.state;
h.api.instream = function (g, b) {
function e(a, c) {
f[a] || (f[a] = [], b.jwInstreamAddEventListener(a, 'function(dat) { jwplayer("' + g.id + '").dispatchInstreamEvent("' + a + '", dat); }'));
f[a].push(c);
return this
}
function h(a, b) {
q[a] || (q[a] = [], e(c.JWPLAYER_PLAYER_STATE,
function (b) {
var c = b.newstate, d = b.oldstate;
if (c == a) {
var e = q[c];
if (e)for (var f = 0; f < e.length; f++) {
var g = e[f];
"function" == typeof g && g.call(this, {oldstate: d, newstate: c, type: b.type})
}
}
}));
q[a].push(b);
return this
}
var a, d, f = {}, q = {}, k = this;
k.type = "instream";
k.init = function () {
g.callInternal("jwInitInstream");
return k
};
k.loadItem = function (b, c) {
a = b;
d = c || {};
"array" == l.typeOf(b) ? g.callInternal("jwLoadArrayInstream", a, d) : g.callInternal("jwLoadItemInstream", a, d)
};
k.removeEvents = function () {
f = q = {}
};
k.removeEventListener =
function (a, b) {
var c = f[a];
if (c)for (var d = c.length; d--;)c[d] === b && c.splice(d, 1)
};
k.dispatchEvent = function (a, b) {
var c = f[a];
if (c)for (var c = c.slice(0), d = l.translateEventResponse(a, b[1]), e = 0; e < c.length; e++) {
var g = c[e];
"function" == typeof g && g.call(this, d)
}
};
k.onError = function (a) {
return e(c.JWPLAYER_ERROR, a)
};
k.onMediaError = function (a) {
return e(c.JWPLAYER_MEDIA_ERROR, a)
};
k.onFullscreen = function (a) {
return e(c.JWPLAYER_FULLSCREEN, a)
};
k.onMeta = function (a) {
return e(c.JWPLAYER_MEDIA_META, a)
};
k.onMute = function (a) {
return e(c.JWPLAYER_MEDIA_MUTE,
a)
};
k.onComplete = function (a) {
return e(c.JWPLAYER_MEDIA_COMPLETE, a)
};
k.onPlaylistComplete = function (a) {
return e(c.JWPLAYER_PLAYLIST_COMPLETE, a)
};
k.onPlaylistItem = function (a) {
return e(c.JWPLAYER_PLAYLIST_ITEM, a)
};
k.onTime = function (a) {
return e(c.JWPLAYER_MEDIA_TIME, a)
};
k.onBuffer = function (a) {
return h(j.BUFFERING, a)
};
k.onPause = function (a) {
return h(j.PAUSED, a)
};
k.onPlay = function (a) {
return h(j.PLAYING, a)
};
k.onIdle = function (a) {
return h(j.IDLE, a)
};
k.onClick = function (a) {
return e(c.JWPLAYER_INSTREAM_CLICK, a)
};
k.onInstreamDestroyed = function (a) {
return e(c.JWPLAYER_INSTREAM_DESTROYED, a)
};
k.onAdSkipped = function (a) {
return e(c.JWPLAYER_AD_SKIPPED, a)
};
k.play = function (a) {
b.jwInstreamPlay(a)
};
k.pause = function (a) {
b.jwInstreamPause(a)
};
k.hide = function () {
g.callInternal("jwInstreamHide")
};
k.destroy = function () {
k.removeEvents();
g.callInternal("jwInstreamDestroy")
};
k.setText = function (a) {
b.jwInstreamSetText(a ? a : "")
};
k.getState = function () {
return b.jwInstreamState()
};
k.setClick = function (a) {
b.jwInstreamClick && b.jwInstreamClick(a)
}
}
}(window.jwplayer),
function (h) {
var c = h.api, l = c.selectPlayer;
c.selectPlayer = function (c) {
return (c = l(c)) ? c : {
registerPlugin: function (c, b, e) {
h.plugins.registerPlugin(c, b, e)
}
}
}
}(jwplayer));