html5media.min.js 33 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726
  1. !function () {
  2. function e(e) {
  3. console.log("$f.fireEvent", [].slice.call(e))
  4. }
  5. function t(e) {
  6. if (!e || "object" != typeof e)return e;
  7. var n = new e.constructor;
  8. for (var r in e)e.hasOwnProperty(r) && (n[r] = t(e[r]));
  9. return n
  10. }
  11. function n(e, t) {
  12. if (e) {
  13. var n, r = 0, i = e.length;
  14. if (void 0 === i) {
  15. for (n in e)if (t.call(e[n], n, e[n]) === !1)break
  16. } else for (var o = e[0]; i > r && t.call(o, r, o) !== !1; o = e[++r]);
  17. return e
  18. }
  19. }
  20. function r(e) {
  21. return document.getElementById(e)
  22. }
  23. function i(e, t, r) {
  24. return "object" != typeof t ? e : (e && t && n(t, function (t, n) {
  25. r && "function" == typeof n || (e[t] = n)
  26. }), e)
  27. }
  28. function o(e) {
  29. var t = e.indexOf(".");
  30. if (-1 != t) {
  31. var r = e.slice(0, t) || "*", i = e.slice(t + 1, e.length), o = [];
  32. return n(document.getElementsByTagName(r), function () {
  33. this.className && -1 != this.className.indexOf(i) && o.push(this)
  34. }), o
  35. }
  36. }
  37. function a(e) {
  38. return e = e || window.event, e.preventDefault ? (e.stopPropagation(), e.preventDefault()) : (e.returnValue = !1, e.cancelBubble = !0), !1
  39. }
  40. function u(e, t, n) {
  41. e[t] = e[t] || [], e[t].push(n)
  42. }
  43. function l() {
  44. return "_" + ("" + Math.random()).slice(2, 10)
  45. }
  46. function s(o, s, f) {
  47. function g() {
  48. function e(e) {
  49. var t = S.hasiPadSupport && S.hasiPadSupport();
  50. return !/iPad|iPhone|iPod/i.test(navigator.userAgent) || /.flv$/i.test(C[0].url) || t ? (S.isLoaded() || S._fireEvent("onBeforeClick") === !1 || S.load(), a(e)) : !0
  51. }
  52. function t() {
  53. "" !== h.replace(/\s/g, "") ? o.addEventListener ? o.addEventListener("click", e, !1) : o.attachEvent && o.attachEvent("onclick", e) : (o.addEventListener && o.addEventListener("click", a, !1), S.load())
  54. }
  55. $f(o) ? ($f(o).getParent().innerHTML = "", w = $f(o).getIndex(), p[w] = S) : (p.push(S), w = p.length - 1), E = parseInt(o.style.height, 10) || o.clientHeight, y = o.id || "fp" + l(), m = s.id || y + "_api", s.id = m, f.playerId = y, "string" == typeof f && (f = {clip: {url: f}}), "string" == typeof f.clip && (f.clip = {url: f.clip}), f.clip = f.clip || {}, o.getAttribute("href", 2) && !f.clip.url && (f.clip.url = o.getAttribute("href", 2)), v = new c(f.clip, -1, S), f.playlist = f.playlist || [f.clip];
  56. var r = 0;
  57. n(f.playlist, function () {
  58. var e = this;
  59. "object" == typeof e && e.length && (e = {url: "" + e}), n(f.clip, function (t, n) {
  60. void 0 !== n && void 0 === e[t] && "function" != typeof n && (e[t] = n)
  61. }), f.playlist[r] = e, e = new c(e, r, S), C.push(e), r++
  62. }), n(f, function (e, t) {
  63. "function" == typeof t && (v[e] ? v[e](t) : u(x, e, t), delete f[e])
  64. }), n(f.plugins, function (e, t) {
  65. t && (k[e] = new d(e, t, S))
  66. }), f.plugins && void 0 !== f.plugins.controls || (k.controls = new d("controls", null, S)), k.canvas = new d("canvas", null, S), h = o.innerHTML, setTimeout(t, 0)
  67. }
  68. var h, v, y, m, w, b, _, E, S = this, L = null, P = !1, C = [], k = {}, x = {};
  69. if (i(S, {
  70. id: function () {
  71. return y
  72. }, isLoaded: function () {
  73. return null !== L && void 0 !== L.fp_play && !P
  74. }, getParent: function () {
  75. return o
  76. }, hide: function (e) {
  77. return e && (o.style.height = "0px"), S.isLoaded() && (L.style.height = "0px"), S
  78. }, show: function () {
  79. return o.style.height = E + "px", S.isLoaded() && (L.style.height = _ + "px"), S
  80. }, isHidden: function () {
  81. return S.isLoaded() && 0 === parseInt(L.style.height, 10)
  82. }, load: function (e) {
  83. if (!S.isLoaded() && S._fireEvent("onBeforeLoad") !== !1) {
  84. var t = function () {
  85. h = o.innerHTML, h && !flashembed.isSupported(s.version) && (o.innerHTML = ""), e && (e.cached = !0, u(x, "onLoad", e)), flashembed(o, s, {config: f})
  86. }, r = 0;
  87. n(p, function () {
  88. this.unload(function () {
  89. ++r == p.length && t()
  90. })
  91. })
  92. }
  93. return S
  94. }, unload: function (e) {
  95. if (this.isFullscreen() && /WebKit/i.test(navigator.userAgent))return e && e(!1), S;
  96. if ("" !== h.replace(/\s/g, "")) {
  97. if (S._fireEvent("onBeforeUnload") === !1)return e && e(!1), S;
  98. P = !0;
  99. try {
  100. L && (L.fp_close(), S._fireEvent("onUnload"))
  101. } catch (t) {
  102. }
  103. var n = function () {
  104. L = null, o.innerHTML = h, P = !1, e && e(!0)
  105. };
  106. setTimeout(n, 50)
  107. } else e && e(!1);
  108. return S
  109. }, getClip: function (e) {
  110. return void 0 === e && (e = b), C[e]
  111. }, getCommonClip: function () {
  112. return v
  113. }, getPlaylist: function () {
  114. return C
  115. }, getPlugin: function (e) {
  116. var t = k[e];
  117. if (!t && S.isLoaded()) {
  118. var n = S._api().fp_getPlugin(e);
  119. n && (t = new d(e, n, S), k[e] = t)
  120. }
  121. return t
  122. }, getScreen: function () {
  123. return S.getPlugin("screen")
  124. }, getControls: function () {
  125. return S.getPlugin("controls")._fireEvent("onUpdate")
  126. }, getLogo: function () {
  127. try {
  128. return S.getPlugin("logo")._fireEvent("onUpdate")
  129. } catch (e) {
  130. }
  131. }, getPlay: function () {
  132. return S.getPlugin("play")._fireEvent("onUpdate")
  133. }, getConfig: function (e) {
  134. return e ? t(f) : f
  135. }, getFlashParams: function () {
  136. return s
  137. }, loadPlugin: function (e, t, n, r) {
  138. "function" == typeof n && (r = n, n = {});
  139. var i = r ? l() : "_";
  140. S._api().fp_loadPlugin(e, t, n, i);
  141. var o = {};
  142. o[i] = r;
  143. var a = new d(e, null, S, o);
  144. return k[e] = a, a
  145. }, getState: function () {
  146. return S.isLoaded() ? L.fp_getState() : -1
  147. }, play: function (e, t) {
  148. var n = function () {
  149. void 0 !== e ? S._api().fp_play(e, t) : S._api().fp_play()
  150. };
  151. return S.isLoaded() ? n() : P ? setTimeout(function () {
  152. S.play(e, t)
  153. }, 50) : S.load(function () {
  154. n()
  155. }), S
  156. }, getVersion: function () {
  157. var e = "flowplayer.js 3.2.6";
  158. if (S.isLoaded()) {
  159. var t = L.fp_getVersion();
  160. return t.push(e), t
  161. }
  162. return e
  163. }, _api: function () {
  164. if (!S.isLoaded())throw"Flowplayer " + S.id() + " not loaded when calling an API method";
  165. return L
  166. }, setClip: function (e) {
  167. return S.setPlaylist([e]), S
  168. }, getIndex: function () {
  169. return w
  170. }, _swfHeight: function () {
  171. return L.clientHeight
  172. }
  173. }), n("Click*,Load*,Unload*,Keypress*,Volume*,Mute*,Unmute*,PlaylistReplace,ClipAdd,Fullscreen*,FullscreenExit,Error,MouseOver,MouseOut".split(","), function () {
  174. var e = "on" + this;
  175. if (-1 != e.indexOf("*")) {
  176. e = e.slice(0, e.length - 1);
  177. var t = "onBefore" + e.slice(2);
  178. S[t] = function (e) {
  179. return u(x, t, e), S
  180. }
  181. }
  182. S[e] = function (t) {
  183. return u(x, e, t), S
  184. }
  185. }), n("pause,resume,mute,unmute,stop,toggle,seek,getStatus,getVolume,setVolume,getTime,isPaused,isPlaying,startBuffering,stopBuffering,isFullscreen,toggleFullscreen,reset,close,setPlaylist,addClip,playFeed,setKeyboardShortcutsEnabled,isKeyboardShortcutsEnabled".split(","), function () {
  186. var e = this;
  187. S[e] = function (t, n) {
  188. if (!S.isLoaded())return S;
  189. var r = null;
  190. return r = void 0 !== t && void 0 !== n ? L["fp_" + e](t, n) : void 0 === t ? L["fp_" + e]() : L["fp_" + e](t), "undefined" === r || void 0 === r ? S : r
  191. }
  192. }), S._fireEvent = function (t) {
  193. "string" == typeof t && (t = [t]);
  194. var i = t[0], o = t[1], a = t[2], u = t[3], l = 0;
  195. if (f.debug && e(t), S.isLoaded() || "onLoad" != i || "player" != o || (L = L || r(m), _ = S._swfHeight(), n(C, function () {
  196. this._fireEvent("onLoad")
  197. }), n(k, function (e, t) {
  198. t._fireEvent("onUpdate")
  199. }), v._fireEvent("onLoad")), "onLoad" != i || "player" == o) {
  200. if ("onError" == i && ("string" == typeof o || "number" == typeof o && "number" == typeof a) && (o = a, a = u), "onContextMenu" == i)return void n(f.contextMenu[o], function (e, t) {
  201. t.call(S)
  202. });
  203. if ("onPluginEvent" != i && "onBeforePluginEvent" != i) {
  204. if ("onPlaylistReplace" == i) {
  205. C = [];
  206. var s = 0;
  207. n(o, function () {
  208. C.push(new c(this, s++, S))
  209. })
  210. }
  211. if ("onClipAdd" == i) {
  212. if (o.isInStream)return;
  213. for (o = new c(o, a, S), C.splice(a, 0, o), l = a + 1; l < C.length; l++)C[l].index++
  214. }
  215. var d = !0;
  216. if ("number" == typeof o && o < C.length) {
  217. b = o;
  218. var p = C[o];
  219. p && (d = p._fireEvent(i, a, u)), p && d === !1 || (d = v._fireEvent(i, a, u, p))
  220. }
  221. return n(x[i], function () {
  222. return d = this.call(S, o, a), this.cached && x[i].splice(l, 1), d === !1 ? !1 : void l++
  223. }), d
  224. }
  225. var g = o.name || o, h = k[g];
  226. if (h)return h._fireEvent("onUpdate", o), h._fireEvent(a, t.slice(3))
  227. }
  228. }, "string" == typeof o) {
  229. var T = r(o);
  230. if (!T)throw"Flowplayer cannot access element: " + o;
  231. o = T, g()
  232. } else g()
  233. }
  234. function f(e) {
  235. this.length = e.length, this.each = function (t) {
  236. n(e, t)
  237. }, this.size = function () {
  238. return e.length
  239. }
  240. }
  241. var c = function (e, t, r) {
  242. var o = this, a = {}, s = {};
  243. if (o.index = t, "string" == typeof e && (e = {url: e}), i(this, e, !0), n("Begin*,Start,Pause*,Resume*,Seek*,Stop*,Finish*,LastSecond,Update,BufferFull,BufferEmpty,BufferStop".split(","), function () {
  244. var e = "on" + this;
  245. if (-1 != e.indexOf("*")) {
  246. e = e.slice(0, e.length - 1);
  247. var n = "onBefore" + e.slice(2);
  248. o[n] = function (e) {
  249. return u(s, n, e), o
  250. }
  251. }
  252. o[e] = function (t) {
  253. return u(s, e, t), o
  254. }, -1 == t && (o[n] && (r[n] = o[n]), o[e] && (r[e] = o[e]))
  255. }), i(this, {
  256. onCuepoint: function (e, n) {
  257. if (1 == arguments.length)return a.embedded = [null, e], o;
  258. "number" == typeof e && (e = [e]);
  259. var i = l();
  260. return a[i] = [e, n], r.isLoaded() && r._api().fp_addCuepoints(e, t, i), o
  261. }, update: function (e) {
  262. i(o, e), r.isLoaded() && r._api().fp_updateClip(e, t);
  263. var n = r.getConfig(), a = -1 == t ? n.clip : n.playlist[t];
  264. i(a, e, !0)
  265. }, _fireEvent: function (e, u, l, f) {
  266. if ("onLoad" == e)return n(a, function (e, n) {
  267. n[0] && r._api().fp_addCuepoints(n[0], t, e)
  268. }), !1;
  269. if (f = f || o, "onCuepoint" == e) {
  270. var c = a[u];
  271. if (c)return c[1].call(r, f, l)
  272. }
  273. u && -1 != "onBeforeBegin,onMetaData,onStart,onUpdate,onResume".indexOf(e) && (i(f, u), u.metaData && (f.duration ? f.fullDuration = u.metaData.duration : f.duration = u.metaData.duration));
  274. var d = !0;
  275. return n(s[e], function () {
  276. d = this.call(r, f, u, l)
  277. }), d
  278. }
  279. }), e.onCuepoint) {
  280. var f = e.onCuepoint;
  281. o.onCuepoint.apply(o, "function" == typeof f ? [f] : f), delete e.onCuepoint
  282. }
  283. n(e, function (t, n) {
  284. "function" == typeof n && (u(s, t, n), delete e[t])
  285. }), -1 == t && (r.onCuepoint = this.onCuepoint)
  286. }, d = function (e, t, r, o) {
  287. var a = this, u = {}, s = !1;
  288. o && i(u, o), n(t, function (e, n) {
  289. "function" == typeof n && (u[e] = n, delete t[e])
  290. }), i(this, {
  291. animate: function (n, i, o) {
  292. if (!n)return a;
  293. if ("function" == typeof i && (o = i, i = 500), "string" == typeof n) {
  294. var s = n;
  295. n = {}, n[s] = i, i = 500
  296. }
  297. if (o) {
  298. var f = l();
  299. u[f] = o
  300. }
  301. return void 0 === i && (i = 500), t = r._api().fp_animate(e, n, i, f), a
  302. }, css: function (n, o) {
  303. if (void 0 !== o) {
  304. var u = {};
  305. u[n] = o, n = u
  306. }
  307. return t = r._api().fp_css(e, n), i(a, t), a
  308. }, show: function () {
  309. return this.display = "block", r._api().fp_showPlugin(e), a
  310. }, hide: function () {
  311. return this.display = "none", r._api().fp_hidePlugin(e), a
  312. }, toggle: function () {
  313. return this.display = r._api().fp_togglePlugin(e), a
  314. }, fadeTo: function (t, n, i) {
  315. if ("function" == typeof n && (i = n, n = 500), i) {
  316. var o = l();
  317. u[o] = i
  318. }
  319. return this.display = r._api().fp_fadeTo(e, t, n, o), this.opacity = t, a
  320. }, fadeIn: function (e, t) {
  321. return a.fadeTo(1, e, t)
  322. }, fadeOut: function (e, t) {
  323. return a.fadeTo(0, e, t)
  324. }, getName: function () {
  325. return e
  326. }, getPlayer: function () {
  327. return r
  328. }, _fireEvent: function (t, o) {
  329. if ("onUpdate" == t) {
  330. var l = r._api().fp_getPlugin(e);
  331. if (!l)return;
  332. i(a, l), delete a.methods, s || (n(l.methods, function () {
  333. var t = "" + this;
  334. a[t] = function () {
  335. var n = [].slice.call(arguments), i = r._api().fp_invoke(e, t, n);
  336. return "undefined" === i || void 0 === i ? a : i
  337. }
  338. }), s = !0)
  339. }
  340. var f = u[t];
  341. if (f) {
  342. var c = f.apply(a, o);
  343. return "_" == t.slice(0, 1) && delete u[t], c
  344. }
  345. return a
  346. }
  347. })
  348. }, p = [];
  349. window.flowplayer = window.$f = function () {
  350. var e = null, a = arguments[0];
  351. if (!arguments.length)return n(p, function () {
  352. return this.isLoaded() ? (e = this, !1) : void 0
  353. }), e || p[0];
  354. if (1 == arguments.length)return "number" == typeof a ? p[a] : "*" == a ? new f(p) : (n(p, function () {
  355. return this.id() == a.id || this.id() == a || this.getParent() == a ? (e = this, !1) : void 0
  356. }), e);
  357. if (arguments.length > 1) {
  358. var u = arguments[1], l = 3 == arguments.length ? arguments[2] : {};
  359. if ("string" == typeof u && (u = {src: u}), u = i({bgcolor: "#000000", version: [9, 0], expressInstall: "http://static.flowplayer.org/swf/expressinstall.swf", cachebusting: !1}, u), "string" == typeof a) {
  360. if (-1 != a.indexOf(".")) {
  361. var c = [];
  362. return n(o(a), function () {
  363. c.push(new s(this, t(u), t(l)))
  364. }), new f(c)
  365. }
  366. var d = r(a);
  367. return new s(null !== d ? d : a, u, l)
  368. }
  369. if (a)return new s(a, u, l)
  370. }
  371. return null
  372. }, i(window.$f, {
  373. fireEvent: function () {
  374. var e = [].slice.call(arguments), t = $f(e[0]);
  375. return t ? t._fireEvent(e.slice(1)) : null
  376. }, addPlugin: function (e, t) {
  377. return s.prototype[e] = t, $f
  378. }, each: n, extend: i
  379. }), "function" == typeof jQuery && (jQuery.fn.flowplayer = function (e, n) {
  380. if (!arguments.length || "number" == typeof arguments[0]) {
  381. var r = [];
  382. return this.each(function () {
  383. var e = $f(this);
  384. e && r.push(e)
  385. }), arguments.length ? r[arguments[0]] : new f(r)
  386. }
  387. return this.each(function () {
  388. $f(this, t(e), n ? t(n) : {})
  389. })
  390. })
  391. }(), function () {
  392. function e() {
  393. if (s.done)return !1;
  394. var e = document;
  395. if (e && e.getElementsByTagName && e.getElementById && e.body) {
  396. clearInterval(s.timer), s.timer = null;
  397. for (var t = 0; t < s.ready.length; t++)s.ready[t].call();
  398. s.ready = null, s.done = !0
  399. }
  400. }
  401. function t(e, t) {
  402. if (t)for (key in t)t.hasOwnProperty(key) && (e[key] = t[key]);
  403. return e
  404. }
  405. function n(e) {
  406. switch (r(e)) {
  407. case"string":
  408. return e = e.replace(new RegExp('(["\\\\])', "g"), "\\$1"), e = e.replace(/^\s?(\d+)%/, "$1pct"), '"' + e + '"';
  409. case"array":
  410. return "[" + i(e, function (e) {
  411. return n(e)
  412. }).join(",") + "]";
  413. case"function":
  414. return '"function()"';
  415. case"object":
  416. var t = [];
  417. for (var o in e)e.hasOwnProperty(o) && t.push('"' + o + '":' + n(e[o]));
  418. return "{" + t.join(",") + "}"
  419. }
  420. return String(e).replace(/\s/g, " ").replace(/\'/g, '"')
  421. }
  422. function r(e) {
  423. if (null === e || void 0 === e)return !1;
  424. var t = typeof e;
  425. return "object" == t && e.push ? "array" : t
  426. }
  427. function i(e, t) {
  428. var n = [];
  429. for (var r in e)e.hasOwnProperty(r) && (n[r] = t(e[r]));
  430. return n
  431. }
  432. function o(e, r) {
  433. var i = t({}, e), o = document.all, a = '<object width="' + i.width + '" height="' + i.height + '"';
  434. o && !i.id && (i.id = "_" + ("" + Math.random()).substring(9)), i.id && (a += ' id="' + i.id + '"'), i.cachebusting && (i.src += (-1 != i.src.indexOf("?") ? "&" : "?") + Math.random()), a += i.w3c || !o ? ' data="' + i.src + '" type="application/x-shockwave-flash"' : ' classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"', a += ">", (i.w3c || o) && (a += '<param name="movie" value="' + i.src + '" />'), i.width = i.height = i.id = i.w3c = i.src = null;
  435. for (var u in i)null !== i[u] && (a += '<param name="' + u + '" value="' + i[u] + '" />');
  436. var l = "";
  437. if (r) {
  438. for (var s in r)null !== r[s] && (l += s + "=" + ("object" == typeof r[s] ? n(r[s]) : r[s]) + "&");
  439. l = l.substring(0, l.length - 1), a += '<param name="flashvars" value=\'' + l + "' />"
  440. }
  441. return a += "</object>"
  442. }
  443. function a(e, n, r) {
  444. var i = flashembed.getVersion();
  445. t(this, {
  446. getContainer: function () {
  447. return e
  448. }, getConf: function () {
  449. return n
  450. }, getVersion: function () {
  451. return i
  452. }, getFlashvars: function () {
  453. return r
  454. }, getApi: function () {
  455. return e.firstChild
  456. }, getHTML: function () {
  457. return o(n, r)
  458. }
  459. });
  460. var a = n.version, u = n.expressInstall, l = !a || flashembed.isSupported(a);
  461. if (l ? (n.onFail = n.version = n.expressInstall = null, e.innerHTML = o(n, r)) : a && u && flashembed.isSupported([6, 65]) ? (t(n, {src: u}), r = {
  462. MMredirectURL: location.href,
  463. MMplayerType: "PlugIn",
  464. MMdoctitle: document.title
  465. }, e.innerHTML = o(n, r)) : "" !== e.innerHTML.replace(/\s/g, "") || (e.innerHTML = "<h2>Flash version " + a + " or greater is required</h2><h3>" + (i[0] > 0 ? "Your version is " + i : "You have no flash plugin installed") + "</h3>" + ("A" == e.tagName ? "<p>Click here to download latest version</p>" : "<p>Download latest version from <a href='http://www.adobe.com/go/getflashplayer'>here</a></p>"), "A" == e.tagName && (e.onclick = function () {
  466. location.href = "http://www.adobe.com/go/getflashplayer"
  467. })), !l && n.onFail) {
  468. var s = n.onFail.call(this);
  469. "string" == typeof s && (e.innerHTML = s)
  470. }
  471. document.all && (window[n.id] = document.getElementById(n.id))
  472. }
  473. var u = "function" == typeof jQuery, l = {width: "100%", height: "100%", allowfullscreen: !0, allowscriptaccess: "always", quality: "high", version: null, onFail: null, expressInstall: null, w3c: !1, cachebusting: !1};
  474. u && (jQuery.tools = jQuery.tools || {}, jQuery.tools.flashembed = {version: "1.0.4", conf: l});
  475. var s = u ? jQuery : function (t) {
  476. return s.done ? t() : void(s.timer ? s.ready.push(t) : (s.ready = [t], s.timer = setInterval(e, 13)))
  477. };
  478. window.attachEvent && window.attachEvent("onbeforeunload", function () {
  479. __flash_unloadHandler = function () {
  480. }, __flash_savedUnloadHandler = function () {
  481. }
  482. }), window.flashembed = function (e, n, r) {
  483. if ("string" == typeof e) {
  484. var i = document.getElementById(e);
  485. if (!i)return void s(function () {
  486. flashembed(e, n, r)
  487. });
  488. e = i
  489. }
  490. if (e) {
  491. "string" == typeof n && (n = {src: n});
  492. var o = t({}, l);
  493. return t(o, n), new a(e, o, r)
  494. }
  495. }, t(window.flashembed, {
  496. getVersion: function () {
  497. var e = [0, 0];
  498. if (navigator.plugins && "object" == typeof navigator.plugins["Shockwave Flash"]) {
  499. var t = navigator.plugins["Shockwave Flash"].description;
  500. if ("undefined" != typeof t) {
  501. t = t.replace(/^.*\s+(\S+\s+\S+$)/, "$1");
  502. var n = parseInt(t.replace(/^(.*)\..*$/, "$1"), 10), r = /r/.test(t) ? parseInt(t.replace(/^.*r(.*)$/, "$1"), 10) : 0;
  503. e = [n, r]
  504. }
  505. } else if (window.ActiveXObject) {
  506. try {
  507. var i = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7")
  508. } catch (o) {
  509. try {
  510. i = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6"), e = [6, 0], i.AllowScriptAccess = "always"
  511. } catch (a) {
  512. if (6 == e[0])return e
  513. }
  514. try {
  515. i = new ActiveXObject("ShockwaveFlash.ShockwaveFlash")
  516. } catch (u) {
  517. }
  518. }
  519. "object" == typeof i && (t = i.GetVariable("$version"), "undefined" != typeof t && (t = t.replace(/^\S+\s+(.*)$/, "$1").split(","), e = [parseInt(t[0], 10), parseInt(t[2], 10)]))
  520. }
  521. return e
  522. }, isSupported: function (e) {
  523. var t = flashembed.getVersion(), n = t[0] > e[0] || t[0] == e[0] && t[1] >= e[1];
  524. return n
  525. }, domReady: s, asString: n, getHTML: o
  526. }), u && (jQuery.fn.flashembed = function (e, t) {
  527. var n = null;
  528. return this.each(function () {
  529. n = flashembed(this, e, t)
  530. }), e.api === !1 ? this : n
  531. })
  532. }(), function () {
  533. function e() {
  534. if (!u && (u = !0, l)) {
  535. for (var e = 0; e < l.length; e++)l[e].call(window, []);
  536. l = []
  537. }
  538. }
  539. function t(e) {
  540. var t = window.onload;
  541. window.onload = "function" != typeof window.onload ? e : function () {
  542. t && t(), e()
  543. }
  544. }
  545. function n() {
  546. if (!a) {
  547. if (a = !0, document.addEventListener && !o.opera && document.addEventListener("DOMContentLoaded", e, !1), o.msie && window == top && function () {
  548. if (!u) {
  549. try {
  550. document.documentElement.doScroll("left")
  551. } catch (t) {
  552. return void setTimeout(arguments.callee, 0)
  553. }
  554. e()
  555. }
  556. }(), o.opera && document.addEventListener("DOMContentLoaded", function () {
  557. if (!u) {
  558. for (var t = 0; t < document.styleSheets.length; t++)if (document.styleSheets[t].disabled)return void setTimeout(arguments.callee, 0);
  559. e()
  560. }
  561. }, !1), o.safari) {
  562. var n;
  563. !function () {
  564. if (!u) {
  565. if ("loaded" != document.readyState && "complete" != document.readyState)return void setTimeout(arguments.callee, 0);
  566. if (void 0 === n) {
  567. for (var t = document.getElementsByTagName("link"), r = 0; r < t.length; r++)"stylesheet" == t[r].getAttribute("rel") && n++;
  568. var i = document.getElementsByTagName("style");
  569. n += i.length
  570. }
  571. return document.styleSheets.length != n ? void setTimeout(arguments.callee, 0) : void e()
  572. }
  573. }()
  574. }
  575. t(e)
  576. }
  577. }
  578. var r = window.DomReady = {}, i = navigator.userAgent.toLowerCase(), o = {version: (i.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/) || [])[1], safari: /webkit/.test(i), opera: /opera/.test(i), msie: /msie/.test(i) && !/opera/.test(i), mozilla: /mozilla/.test(i) && !/(compatible|webkit)/.test(i)}, a = !1, u = !1, l = [];
  579. r.ready = function (e) {
  580. n(), u ? e.call(window, []) : l.push(function () {
  581. return e.call(window, [])
  582. })
  583. }, n()
  584. }(), function (e, t) {
  585. "use strict";
  586. function n(e, t) {
  587. return e.canPlayType(t) || g && t.search("mp4") > -1
  588. }
  589. function r(e) {
  590. for (var r = t.getElementsByTagName(e), o = [], u = 0; u < r.length; u++)o.push(r[u]);
  591. for (u = 0; u < o.length; u++) {
  592. var l = o[u], s = !0;
  593. if (l.canPlayType)if (l.src)n(l, a(e, l.src)) && (s = !1); else for (var f = l.getElementsByTagName("source"), c = 0; c < f.length; c++) {
  594. var d = f[c];
  595. if (n(l, a(e, d.src, d.type))) {
  596. s = !1;
  597. break
  598. }
  599. }
  600. s || i.forceFallback(e, l) ? i.createFallback(e, l) : g && l.addEventListener("click", function () {
  601. this.play()
  602. }, !1)
  603. }
  604. }
  605. function i() {
  606. r("video"), r("audio")
  607. }
  608. function o(e) {
  609. return e.split("/").slice(0, -1).join("/") + "/"
  610. }
  611. function a(e, t, n) {
  612. if (n)return n;
  613. var r = /\.([a-z1-9]+)(\?|#|\s|$)/i.exec(t);
  614. if (r) {
  615. var i = C[e][r[1]];
  616. if (i)return i
  617. }
  618. return L[e]
  619. }
  620. function u(e, t) {
  621. var n = e.getAttribute(t);
  622. return !!n || "string" == typeof n
  623. }
  624. function l(e) {
  625. var n = t.createElement("a");
  626. return n.href = e, n.href
  627. }
  628. function s(n, r, i) {
  629. var o = n.getAttribute(r);
  630. if ("auto" !=o)return o + "px";
  631. var a;
  632. if (n.currentStyle)a = n.currentStyle[r]; else {
  633. if (!e.getComputedStyle)return i;
  634. a = t.defaultView.getComputedStyle(n, null).getPropertyValue(r)
  635. }
  636. return "auto" == a ? i : a
  637. }
  638. function f(e) {
  639. return e.match(/\s*([\w-]+\/[\w-]+)(;|\s|$)/)[1]
  640. }
  641. function c(e, t) {
  642. return f(e) == f(t)
  643. }
  644. var d = "video", p = "audio";
  645. t.createElement(d).canPlayType || (t.createElement(p), t.createElement("source"));
  646. var g = null !== e.navigator.userAgent.toLowerCase().match(/android 2\.[12]/), h = null !== e.navigator.userAgent.toLowerCase().match(/opera/);
  647. i.forceFallback = function () {
  648. return !1
  649. };
  650. var v = function () {
  651. for (var e = t.getElementsByTagName("script"), n = 0; n < e.length; n++) {
  652. var r = e[n];
  653. if (r.src.match(/html5media(\.min|)\.js/))return o(r.src)
  654. }
  655. return ""
  656. }();
  657. i.flowplayerSwf = v + "flowplayer.swf", i.flowplayerAudioSwf = v + "flowplayer.audio.swf", i.flowplayerControlsSwf = v + "flowplayer.controls.swf", i.expressInstallSwf = v + "expressInstall.swf";
  658. var y = 'video/ogg; codecs="theora, vorbis"', m = 'video/mp4; codecs="avc1.42E01E, mp4a.40.2"', w = 'audio/ogg; codecs="vorbis"', b = "video/webm;", _ = "audio/x-m4a;", E = "audio/mpeg;", S = 'audio/wav; codecs="1"', L = {video: m, audio: E}, P = [m, _, E], C = {
  659. video: {ogg: y, ogv: y, avi: m, mp4: m, mkv: m, h264: m, 264: m, avc: m, m4v: m, "3gp": m, "3gpp": m, "3g2": m, mpg: m, mpeg: m, webm: b},
  660. audio: {ogg: w, oga: w, aac: _, m4a: _, mp3: E, wav: S}
  661. };
  662. i.configureFlowplayer = function (e, t) {
  663. return t
  664. }, i.createFallback = function (e, n) {
  665. var r = u(n, "controls"), o = n.getAttribute("poster") || "", f = n.getAttribute("src") || "";
  666. if (!f)for (var p = n.getElementsByTagName("source"), g = 0; g < p.length; g++) {
  667. var v = p[g], y = v.getAttribute("src");
  668. if (y)for (var m = 0; m < P.length; m++) {
  669. var w = P[m];
  670. if (c(w, a(e, y, v.getAttribute("type")))) {
  671. f = y;
  672. break
  673. }
  674. }
  675. if (f)break
  676. }
  677. if (f) {
  678. var b = t.createElement("span");
  679. b.id = n.id, b.style.cssText = n.style.cssText, b.className = n.className, b.title = n.title, b.style.display = "block", b.style.width = s(n, "width", "300px"), b.style.height = "audio" == e ? "26px" : s(n, "height", "200px"), n.parentNode.replaceChild(b, n);
  680. var _ = (n.getAttribute("preload") || "").toLowerCase(), E = [];
  681. o && E.push({url: l(o)}), f && E.push({
  682. url: l(f), autoPlay: u(n, "autoplay"), autoBuffering: u(n, "autobuffer") || u(n, "preload") && ("" === _ || "auto" == _), onBeforeFinish: function () {
  683. return !u(n, "loop")
  684. }
  685. });
  686. var S = {controls: r && {url: l(i.flowplayerControlsSwf), opacity: .8, backgroundColor: "#181818", backgroundGradient: "none", fullscreen: e == d, autoHide: e == d && {fullscreenOnly: !1, enabled: !0, hideStyle: "fade", mouseOutDelay: 0} || {enabled: !1}} || null};
  687. h && S.controls && (S.controls.autoHide.enabled = !1), "audio" == e && (S.audio = {url: l(i.flowplayerAudioSwf)}, r || (S.controls = {url: l(i.flowplayerControlsSwf), display: "none"}, b.style.height = 0), E[E.length - 1].autoBuffering = !1);
  688. var L = {play: null, playlist: E, clip: {scaling: "fit", fadeInSpeed: 0, fadeOutSpeed: 0}, canvas: {backgroundGradient: "none", backgroundColor: "#000000"}, plugins: S};
  689. L = i.configureFlowplayer(n, L), flowplayer(b, {src: l(i.flowplayerSwf), expressInstall: l(i.expressInstallSwf), wmode: "opaque"}, L)
  690. }
  691. }, DomReady.ready(i), e.html5media = i
  692. }(this, document);