[ Index ] |
PHP Cross Reference of Unnamed Project |
[Summary view] [Print] [Text view]
1 /* 2 * flowplayer.js The Flowplayer API 3 * 4 * Copyright 2009-2011 Flowplayer Oy 5 * 6 * This file is part of Flowplayer. 7 * 8 * Flowplayer is free software: you can redistribute it and/or modify 9 * it under the terms of the GNU General Public License as published by 10 * the Free Software Foundation, either version 3 of the License, or 11 * (at your option) any later version. 12 * 13 * Flowplayer is distributed in the hope that it will be useful, 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 * GNU General Public License for more details. 17 * 18 * You should have received a copy of the GNU General Public License 19 * along with Flowplayer. If not, see <http://www.gnu.org/licenses/>. 20 * 21 */ 22 !function () { 23 function h(p) { 24 console.log("$f.fireEvent", [].slice.call(p)) 25 } 26 27 function l(r) { 28 if (!r || typeof r != "object") { 29 return r 30 } 31 var p = new r.constructor(); 32 for (var q in r) { 33 if (r.hasOwnProperty(q)) { 34 p[q] = l(r[q]) 35 } 36 } 37 return p 38 } 39 40 function n(u, r) { 41 if (!u) { 42 return 43 } 44 var p, q = 0, s = u.length; 45 if (s === undefined) { 46 for (p in u) { 47 if (r.call(u[p], p, u[p]) === false) { 48 break 49 } 50 } 51 } else { 52 for (var t = u[0]; q < s && r.call(t, q, t) !== false; t = u[++q]) { 53 } 54 } 55 return u 56 } 57 58 function c(p) { 59 return document.getElementById(p) 60 } 61 62 function j(r, q, p) { 63 if (typeof q != "object") { 64 return r 65 } 66 if (r && q) { 67 n(q, function (s, t) { 68 if (!p || typeof t != "function") { 69 r[s] = t 70 } 71 }) 72 } 73 return r 74 } 75 76 function o(t) { 77 var r = t.indexOf("."); 78 if (r != -1) { 79 var q = t.slice(0, r) || "*"; 80 var p = t.slice(r + 1, t.length); 81 var s = []; 82 n(document.getElementsByTagName(q), function () { 83 if (this.className && this.className.indexOf(p) != -1) { 84 s.push(this) 85 } 86 }); 87 return s 88 } 89 } 90 91 function g(p) { 92 p = p || window.event; 93 if (p.preventDefault) { 94 p.stopPropagation(); 95 p.preventDefault() 96 } else { 97 p.returnValue = false; 98 p.cancelBubble = true 99 } 100 return false 101 } 102 103 function k(r, p, q) { 104 r[p] = r[p] || []; 105 r[p].push(q) 106 } 107 108 function e(p) { 109 return p.replace(/&/g, "%26").replace(/&/g, "%26").replace(/=/g, "%3D") 110 } 111 112 function f() { 113 return"_" + ("" + Math.random()).slice(2, 10) 114 } 115 116 var i = function (u, s, t) { 117 var r = this, q = {}, v = {}; 118 r.index = s; 119 if (typeof u == "string") { 120 u = {url: u} 121 } 122 j(this, u, true); 123 n(("Begin*,Start,Pause*,Resume*,Seek*,Stop*,Finish*,LastSecond,Update,BufferFull,BufferEmpty,BufferStop").split(","), function () { 124 var w = "on" + this; 125 if (w.indexOf("*") != -1) { 126 w = w.slice(0, w.length - 1); 127 var x = "onBefore" + w.slice(2); 128 r[x] = function (y) { 129 k(v, x, y); 130 return r 131 } 132 } 133 r[w] = function (y) { 134 k(v, w, y); 135 return r 136 }; 137 if (s == -1) { 138 if (r[x]) { 139 t[x] = r[x] 140 } 141 if (r[w]) { 142 t[w] = r[w] 143 } 144 } 145 }); 146 j(this, {onCuepoint: function (y, x) { 147 if (arguments.length == 1) { 148 q.embedded = [null, y]; 149 return r 150 } 151 if (typeof y == "number") { 152 y = [y] 153 } 154 var w = f(); 155 q[w] = [y, x]; 156 if (t.isLoaded()) { 157 t._api().fp_addCuepoints(y, s, w) 158 } 159 return r 160 }, update: function (x) { 161 j(r, x); 162 if (t.isLoaded()) { 163 t._api().fp_updateClip(x, s) 164 } 165 var w = t.getConfig(); 166 var y = (s == -1) ? w.clip : w.playlist[s]; 167 j(y, x, true) 168 }, _fireEvent: function (w, z, x, B) { 169 if (w == "onLoad") { 170 n(q, function (C, D) { 171 if (D[0]) { 172 t._api().fp_addCuepoints(D[0], s, C) 173 } 174 }); 175 return false 176 } 177 B = B || r; 178 if (w == "onCuepoint") { 179 var A = q[z]; 180 if (A) { 181 return A[1].call(t, B, x) 182 } 183 } 184 if (z && "onBeforeBegin,onMetaData,onMetaDataChange,onStart,onUpdate,onResume".indexOf(w) != -1) { 185 j(B, z); 186 if (z.metaData) { 187 if (!B.duration) { 188 B.duration = z.metaData.duration 189 } else { 190 B.fullDuration = z.metaData.duration 191 } 192 } 193 } 194 var y = true; 195 n(v[w], function () { 196 y = this.call(t, B, z, x) 197 }); 198 return y 199 }}); 200 if (u.onCuepoint) { 201 var p = u.onCuepoint; 202 r.onCuepoint.apply(r, typeof p == "function" ? [p] : p); 203 delete u.onCuepoint 204 } 205 n(u, function (w, x) { 206 if (typeof x == "function") { 207 k(v, w, x); 208 delete u[w] 209 } 210 }); 211 if (s == -1) { 212 t.onCuepoint = this.onCuepoint 213 } 214 }; 215 var m = function (q, s, r, u) { 216 var p = this, t = {}, v = false; 217 if (u) { 218 j(t, u) 219 } 220 n(s, function (w, x) { 221 if (typeof x == "function") { 222 t[w] = x; 223 delete s[w] 224 } 225 }); 226 j(this, {animate: function (z, A, y) { 227 if (!z) { 228 return p 229 } 230 if (typeof A == "function") { 231 y = A; 232 A = 500 233 } 234 if (typeof z == "string") { 235 var x = z; 236 z = {}; 237 z[x] = A; 238 A = 500 239 } 240 if (y) { 241 var w = f(); 242 t[w] = y 243 } 244 if (A === undefined) { 245 A = 500 246 } 247 s = r._api().fp_animate(q, z, A, w); 248 return p 249 }, css: function (x, y) { 250 if (y !== undefined) { 251 var w = {}; 252 w[x] = y; 253 x = w 254 } 255 s = r._api().fp_css(q, x); 256 j(p, s); 257 return p 258 }, show: function () { 259 this.display = "block"; 260 r._api().fp_showPlugin(q); 261 return p 262 }, hide: function () { 263 this.display = "none"; 264 r._api().fp_hidePlugin(q); 265 return p 266 }, toggle: function () { 267 this.display = r._api().fp_togglePlugin(q); 268 return p 269 }, fadeTo: function (z, y, x) { 270 if (typeof y == "function") { 271 x = y; 272 y = 500 273 } 274 if (x) { 275 var w = f(); 276 t[w] = x 277 } 278 this.display = r._api().fp_fadeTo(q, z, y, w); 279 this.opacity = z; 280 return p 281 }, fadeIn: function (x, w) { 282 return p.fadeTo(1, x, w) 283 }, fadeOut: function (x, w) { 284 return p.fadeTo(0, x, w) 285 }, getName: function () { 286 return q 287 }, getPlayer: function () { 288 return r 289 }, _fireEvent: function (x, w, y) { 290 if (x == "onUpdate") { 291 var A = r._api().fp_getPlugin(q); 292 if (!A) { 293 return 294 } 295 j(p, A); 296 delete p.methods; 297 if (!v) { 298 n(A.methods, function () { 299 var C = "" + this; 300 p[C] = function () { 301 var D = [].slice.call(arguments); 302 var E = r._api().fp_invoke(q, C, D); 303 return E === "undefined" || E === undefined ? p : E 304 } 305 }); 306 v = true 307 } 308 } 309 var B = t[x]; 310 if (B) { 311 var z = B.apply(p, w); 312 if (x.slice(0, 1) == "_") { 313 delete t[x] 314 } 315 return z 316 } 317 return p 318 }}) 319 }; 320 321 function b(r, H, u) { 322 var x = this, w = null, E = false, v, t, G = [], z = {}, y = {}, F, s, q, D, p, B; 323 j(x, {id: function () { 324 return F 325 }, isLoaded: function () { 326 return(w !== null && w.fp_play !== undefined && !E) 327 }, getParent: function () { 328 return r 329 }, hide: function (I) { 330 if (I) { 331 r.style.height = "0px" 332 } 333 if (x.isLoaded()) { 334 w.style.height = "0px" 335 } 336 return x 337 }, show: function () { 338 r.style.height = B + "px"; 339 if (x.isLoaded()) { 340 w.style.height = p + "px" 341 } 342 return x 343 }, isHidden: function () { 344 return x.isLoaded() && parseInt(w.style.height, 10) === 0 345 }, load: function (K) { 346 if (!x.isLoaded() && x._fireEvent("onBeforeLoad") !== false) { 347 var I = function () { 348 if (v && !flashembed.isSupported(H.version)) { 349 r.innerHTML = "" 350 } 351 if (K) { 352 K.cached = true; 353 k(y, "onLoad", K) 354 } 355 flashembed(r, H, {config: u}) 356 }; 357 var J = 0; 358 n(a, function () { 359 this.unload(function (L) { 360 if (++J == a.length) { 361 I() 362 } 363 }) 364 }) 365 } 366 return x 367 }, unload: function (K) { 368 if (v.replace(/\s/g, "") !== "") { 369 if (x._fireEvent("onBeforeUnload") === false) { 370 if (K) { 371 K(false) 372 } 373 return x 374 } 375 E = true; 376 try { 377 if (w) { 378 if (w.fp_isFullscreen()) { 379 w.fp_toggleFullscreen() 380 } 381 w.fp_close(); 382 x._fireEvent("onUnload") 383 } 384 } catch (I) { 385 } 386 var J = function () { 387 w = null; 388 r.innerHTML = v; 389 E = false; 390 if (K) { 391 K(true) 392 } 393 }; 394 if (/WebKit/i.test(navigator.userAgent) && !/Chrome/i.test(navigator.userAgent)) { 395 setTimeout(J, 0) 396 } else { 397 J() 398 } 399 } else { 400 if (K) { 401 K(false) 402 } 403 } 404 return x 405 }, getClip: function (I) { 406 if (I === undefined) { 407 I = D 408 } 409 return G[I] 410 }, getCommonClip: function () { 411 return t 412 }, getPlaylist: function () { 413 return G 414 }, getPlugin: function (I) { 415 var K = z[I]; 416 if (!K && x.isLoaded()) { 417 var J = x._api().fp_getPlugin(I); 418 if (J) { 419 K = new m(I, J, x); 420 z[I] = K 421 } 422 } 423 return K 424 }, getScreen: function () { 425 return x.getPlugin("screen") 426 }, getControls: function () { 427 return x.getPlugin("controls")._fireEvent("onUpdate") 428 }, getLogo: function () { 429 try { 430 return x.getPlugin("logo")._fireEvent("onUpdate") 431 } catch (I) { 432 } 433 }, getPlay: function () { 434 return x.getPlugin("play")._fireEvent("onUpdate") 435 }, getConfig: function (I) { 436 return I ? l(u) : u 437 }, getFlashParams: function () { 438 return H 439 }, loadPlugin: function (L, K, N, M) { 440 if (typeof N == "function") { 441 M = N; 442 N = {} 443 } 444 var J = M ? f() : "_"; 445 x._api().fp_loadPlugin(L, K, N, J); 446 var I = {}; 447 I[J] = M; 448 var O = new m(L, null, x, I); 449 z[L] = O; 450 return O 451 }, getState: function () { 452 return x.isLoaded() ? w.fp_getState() : -1 453 }, play: function (J, I) { 454 var K = function () { 455 if (J !== undefined) { 456 x._api().fp_play(J, I) 457 } else { 458 x._api().fp_play() 459 } 460 }; 461 if (x.isLoaded()) { 462 K() 463 } else { 464 if (E) { 465 setTimeout(function () { 466 x.play(J, I) 467 }, 50) 468 } else { 469 x.load(function () { 470 K() 471 }) 472 } 473 } 474 return x 475 }, getVersion: function () { 476 var J = "flowplayer.js @VERSION"; 477 if (x.isLoaded()) { 478 var I = w.fp_getVersion(); 479 I.push(J); 480 return I 481 } 482 return J 483 }, _api: function () { 484 if (!x.isLoaded()) { 485 throw"Flowplayer " + x.id() + " not loaded when calling an API method" 486 } 487 return w 488 }, setClip: function (I) { 489 n(I, function (J, K) { 490 if (typeof K == "function") { 491 k(y, J, K); 492 delete I[J] 493 } else { 494 if (J == "onCuepoint") { 495 $f(r).getCommonClip().onCuepoint(I[J][0], I[J][1]) 496 } 497 } 498 }); 499 x.setPlaylist([I]); 500 return x 501 }, getIndex: function () { 502 return q 503 }, bufferAnimate: function (I) { 504 w.fp_bufferAnimate(I === undefined || I); 505 return x 506 }, _swfHeight: function () { 507 return w.clientHeight 508 }}); 509 n(("Click*,Load*,Unload*,Keypress*,Volume*,Mute*,Unmute*,PlaylistReplace,ClipAdd,Fullscreen*,FullscreenExit,Error,MouseOver,MouseOut").split(","), function () { 510 var I = "on" + this; 511 if (I.indexOf("*") != -1) { 512 I = I.slice(0, I.length - 1); 513 var J = "onBefore" + I.slice(2); 514 x[J] = function (K) { 515 k(y, J, K); 516 return x 517 } 518 } 519 x[I] = function (K) { 520 k(y, I, K); 521 return x 522 } 523 }); 524 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 () { 525 var I = this; 526 x[I] = function (K, J) { 527 if (!x.isLoaded()) { 528 return x 529 } 530 var L = null; 531 if (K !== undefined && J !== undefined) { 532 L = w["fp_" + I](K, J) 533 } else { 534 L = (K === undefined) ? w["fp_" + I]() : w["fp_" + I](K) 535 } 536 return L === "undefined" || L === undefined ? x : L 537 } 538 }); 539 x._fireEvent = function (R) { 540 if (typeof R == "string") { 541 R = [R] 542 } 543 var S = R[0], P = R[1], N = R[2], M = R[3], L = 0; 544 if (u.debug) { 545 h(R) 546 } 547 if (!x.isLoaded() && S == "onLoad" && P == "player") { 548 w = w || c(s); 549 p = x._swfHeight(); 550 n(G, function () { 551 this._fireEvent("onLoad") 552 }); 553 n(z, function (T, U) { 554 U._fireEvent("onUpdate") 555 }); 556 t._fireEvent("onLoad") 557 } 558 if (S == "onLoad" && P != "player") { 559 return 560 } 561 if (S == "onError") { 562 if (typeof P == "string" || (typeof P == "number" && typeof N == "number")) { 563 P = N; 564 N = M 565 } 566 } 567 if (S == "onContextMenu") { 568 n(u.contextMenu[P], function (T, U) { 569 U.call(x) 570 }); 571 return 572 } 573 if (S == "onPluginEvent" || S == "onBeforePluginEvent") { 574 var I = P.name || P; 575 var J = z[I]; 576 if (J) { 577 J._fireEvent("onUpdate", P); 578 return J._fireEvent(N, R.slice(3)) 579 } 580 return 581 } 582 if (S == "onPlaylistReplace") { 583 G = []; 584 var O = 0; 585 n(P, function () { 586 G.push(new i(this, O++, x)) 587 }) 588 } 589 if (S == "onClipAdd") { 590 if (P.isInStream) { 591 return 592 } 593 P = new i(P, N, x); 594 G.splice(N, 0, P); 595 for (L = N + 1; L < G.length; L++) { 596 G[L].index++ 597 } 598 } 599 var Q = true; 600 if (typeof P == "number" && P < G.length) { 601 D = P; 602 var K = G[P]; 603 if (K) { 604 Q = K._fireEvent(S, N, M) 605 } 606 if (!K || Q !== false) { 607 Q = t._fireEvent(S, N, M, K) 608 } 609 } 610 n(y[S], function () { 611 Q = this.call(x, P, N); 612 if (this.cached) { 613 y[S].splice(L, 1) 614 } 615 if (Q === false) { 616 return false 617 } 618 L++ 619 }); 620 return Q 621 }; 622 function C() { 623 r.innerHTML=''; // Moodle hack - we do not want splashscreens, unfortunately there is not switch to disable them 624 if ($f(r)) { 625 $f(r).getParent().innerHTML = ""; 626 q = $f(r).getIndex(); 627 a[q] = x 628 } else { 629 a.push(x); 630 q = a.length - 1 631 } 632 B = parseInt(r.style.height, 10) || r.clientHeight; 633 F = r.id || "fp" + f(); 634 s = H.id || F + "_api"; 635 H.id = s; 636 v = r.innerHTML; 637 if (typeof u == "string") { 638 u = {clip: {url: u}} 639 } 640 u.playerId = F; 641 u.clip = u.clip || {}; 642 if (r.getAttribute("href", 2) && !u.clip.url) { 643 u.clip.url = r.getAttribute("href", 2) 644 } 645 if (u.clip.url) { 646 u.clip.url = e(u.clip.url) 647 } 648 t = new i(u.clip, -1, x); 649 u.playlist = u.playlist || [u.clip]; 650 var J = 0; 651 n(u.playlist, function () { 652 var M = this; 653 if (typeof M == "object" && M.length) { 654 M = {url: "" + M} 655 } 656 if (M.url) { 657 M.url = e(M.url) 658 } 659 n(u.clip, function (N, O) { 660 if (O !== undefined && M[N] === undefined && typeof O != "function") { 661 M[N] = O 662 } 663 }); 664 u.playlist[J] = M; 665 M = new i(M, J, x); 666 G.push(M); 667 J++ 668 }); 669 n(u, function (M, N) { 670 if (typeof N == "function") { 671 if (t[M]) { 672 t[M](N) 673 } else { 674 k(y, M, N) 675 } 676 delete u[M] 677 } 678 }); 679 n(u.plugins, function (M, N) { 680 if (N) { 681 z[M] = new m(M, N, x) 682 } 683 }); 684 if (!u.plugins || u.plugins.controls === undefined) { 685 z.controls = new m("controls", null, x) 686 } 687 z.canvas = new m("canvas", null, x); 688 v = r.innerHTML; 689 function L(M) { 690 if (/iPad|iPhone|iPod/i.test(navigator.userAgent) && !/.flv$/i.test(G[0].url) && !K()) { 691 return true 692 } 693 if (!x.isLoaded() && x._fireEvent("onBeforeClick") !== false) { 694 x.load() 695 } 696 return g(M) 697 } 698 699 function K() { 700 return x.hasiPadSupport && x.hasiPadSupport() 701 } 702 703 function I() { 704 if (v.replace(/\s/g, "") !== "") { 705 if (r.addEventListener) { 706 r.addEventListener("click", L, false) 707 } else { 708 if (r.attachEvent) { 709 r.attachEvent("onclick", L) 710 } 711 } 712 } else { 713 if (r.addEventListener && !K()) { 714 r.addEventListener("click", g, false) 715 } 716 x.load() 717 } 718 } 719 720 setTimeout(I, 0) 721 } 722 723 if (typeof r == "string") { 724 var A = c(r); 725 if (!A) { 726 throw"Flowplayer cannot access element: " + r 727 } 728 r = A; 729 C() 730 } else { 731 C() 732 } 733 } 734 735 var a = []; 736 737 function d(p) { 738 this.length = p.length; 739 this.each = function (r) { 740 n(p, r) 741 }; 742 this.size = function () { 743 return p.length 744 }; 745 var q = this; 746 for (name in b.prototype) { 747 q[name] = function () { 748 var r = arguments; 749 q.each(function () { 750 this[name].apply(this, r) 751 }) 752 } 753 } 754 } 755 756 window.flowplayer = window.$f = function () { 757 var q = null; 758 var p = arguments[0]; 759 if(!flashembed.isSupported([6, 65])){return null;} // Moodle hack - we do not want the missing flash hints - we need the original links for accessibility and incompatible browsers 760 if (!arguments.length) { 761 n(a, function () { 762 if (this.isLoaded()) { 763 q = this; 764 return false 765 } 766 }); 767 return q || a[0] 768 } 769 if (arguments.length == 1) { 770 if (typeof p == "number") { 771 return a[p] 772 } else { 773 if (p == "*") { 774 return new d(a) 775 } 776 n(a, function () { 777 if (this.id() == p.id || this.id() == p || this.getParent() == p) { 778 q = this; 779 return false 780 } 781 }); 782 return q 783 } 784 } 785 if (arguments.length > 1) { 786 var u = arguments[1], r = (arguments.length == 3) ? arguments[2] : {}; 787 if (typeof u == "string") { 788 u = {src: u} 789 } 790 u = j({bgcolor: "#000000", version: [10, 1], expressInstall: "http://releases.flowplayer.org/swf/expressinstall.swf", cachebusting: false}, u); 791 if (typeof p == "string") { 792 if (p.indexOf(".") != -1) { 793 var t = []; 794 n(o(p), function () { 795 t.push(new b(this, l(u), l(r))) 796 }); 797 return new d(t) 798 } else { 799 var s = c(p); 800 return new b(s !== null ? s : l(p), l(u), l(r)) 801 } 802 } else { 803 if (p) { 804 return new b(p, l(u), l(r)) 805 } 806 } 807 } 808 return null 809 }; 810 j(window.$f, {fireEvent: function () { 811 var q = [].slice.call(arguments); 812 var r = $f(q[0]); 813 return r ? r._fireEvent(q.slice(1)) : null 814 }, addPlugin: function (p, q) { 815 b.prototype[p] = q; 816 return $f 817 }, each: n, extend: j}); 818 if (typeof jQuery == "function") { 819 jQuery.fn.flowplayer = function (r, q) { 820 if (!arguments.length || typeof arguments[0] == "number") { 821 var p = []; 822 this.each(function () { 823 var s = $f(this); 824 if (s) { 825 p.push(s) 826 } 827 }); 828 return arguments.length ? p[arguments[0]] : new d(p) 829 } 830 return this.each(function () { 831 $f(this, l(r), q ? l(q) : {}) 832 }) 833 } 834 } 835 }(); 836 !function () { 837 var h = document.all, j = "http://get.adobe.com/flashplayer", c = typeof jQuery == "function", e = /(\d+)[^\d]+(\d+)[^\d]*(\d*)/, b = {width: "100%", height: "100%", id: "_" + ("" + Math.random()).slice(9), allowfullscreen: true, allowscriptaccess: "always", quality: "high", version: [3, 0], onFail: null, expressInstall: null, w3c: false, cachebusting: false}; 838 if (window.attachEvent) { 839 window.attachEvent("onbeforeunload", function () { 840 __flash_unloadHandler = function () { 841 }; 842 __flash_savedUnloadHandler = function () { 843 } 844 }) 845 } 846 function i(m, l) { 847 if (l) { 848 for (var f in l) { 849 if (l.hasOwnProperty(f)) { 850 m[f] = l[f] 851 } 852 } 853 } 854 return m 855 } 856 857 function a(f, n) { 858 var m = []; 859 for (var l in f) { 860 if (f.hasOwnProperty(l)) { 861 m[l] = n(f[l]) 862 } 863 } 864 return m 865 } 866 867 window.flashembed = function (f, m, l) { 868 if (typeof f == "string") { 869 f = document.getElementById(f.replace("#", "")) 870 } 871 if (!f) { 872 return 873 } 874 if (typeof m == "string") { 875 m = {src: m} 876 } 877 return new d(f, i(i({}, b), m), l) 878 }; 879 var g = i(window.flashembed, {conf: b, getVersion: function () { 880 var m, f, o; 881 try { 882 o = navigator.plugins["Shockwave Flash"]; 883 if (o[0].enabledPlugin != null) { 884 f = o.description.slice(16) 885 } 886 } catch (p) { 887 try { 888 m = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7"); 889 f = m && m.GetVariable("$version") 890 } catch (n) { 891 try { 892 m = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6"); 893 f = m && m.GetVariable("$version") 894 } catch (l) { 895 } 896 } 897 } 898 f = e.exec(f); 899 return f ? [1 * f[1], 1 * f[(f[1] * 1 > 9 ? 2 : 3)] * 1] : [0, 0] 900 }, asString: function (l) { 901 if (l === null || l === undefined) { 902 return null 903 } 904 var f = typeof l; 905 if (f == "object" && l.push) { 906 f = "array" 907 } 908 switch (f) { 909 case"string": 910 l = l.replace(new RegExp('(["\\\\])', "g"), "\\$1"); 911 l = l.replace(/^\s?(\d+\.?\d*)%/, "$1pct"); 912 return'"' + l + '"'; 913 case"array": 914 return"[" + a(l,function (o) { 915 return g.asString(o) 916 }).join(",") + "]"; 917 case"function": 918 return'"function()"'; 919 case"object": 920 var m = []; 921 for (var n in l) { 922 if (l.hasOwnProperty(n)) { 923 m.push('"' + n + '":' + g.asString(l[n])) 924 } 925 } 926 return"{" + m.join(",") + "}" 927 } 928 return String(l).replace(/\s/g, " ").replace(/\'/g, '"') 929 }, getHTML: function (o, l) { 930 o = i({}, o); 931 var n = '<object width="' + o.width + '" height="' + o.height + '" id="' + o.id + '" name="' + o.id + '"'; 932 if (o.cachebusting) { 933 o.src += ((o.src.indexOf("?") != -1 ? "&" : "?") + Math.random()) 934 } 935 if (o.w3c || !h) { 936 n += ' data="' + o.src + '" type="application/x-shockwave-flash"' 937 } else { 938 n += ' classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"' 939 } 940 n += ">"; 941 if (o.w3c || h) { 942 n += '<param name="movie" value="' + o.src + '" />' 943 } 944 o.width = o.height = o.id = o.w3c = o.src = null; 945 o.onFail = o.version = o.expressInstall = null; 946 for (var m in o) { 947 if (o[m]) { 948 n += '<param name="' + m + '" value="' + o[m] + '" />' 949 } 950 } 951 var p = ""; 952 if (l) { 953 for (var f in l) { 954 if (l[f]) { 955 var q = l[f]; 956 p += f + "=" + (/function|object/.test(typeof q) ? g.asString(q) : q) + "&" 957 } 958 } 959 p = p.slice(0, -1); 960 n += '<param name="flashvars" value=\'' + p + "' />" 961 } 962 n += "</object>"; 963 return n 964 }, isSupported: function (f) { 965 return k[0] > f[0] || k[0] == f[0] && k[1] >= f[1] 966 }}); 967 var k = g.getVersion(); 968 969 function d(f, n, m) { 970 if (g.isSupported(n.version)) { 971 f.innerHTML = g.getHTML(n, m) 972 } else { 973 if (n.expressInstall && g.isSupported([6, 65])) { 974 f.innerHTML = g.getHTML(i(n, {src: n.expressInstall}), {MMredirectURL: encodeURIComponent(location.href), MMplayerType: "PlugIn", MMdoctitle: document.title}) 975 } else { 976 if (!f.innerHTML.replace(/\s/g, "")) { 977 f.innerHTML = "<h2>Flash version " + n.version + " or greater is required</h2><h3>" + (k[0] > 0 ? "Your version is " + k : "You have no flash plugin installed") + "</h3>" + (f.tagName == "A" ? "<p>Click here to download latest version</p>" : "<p>Download latest version from <a href='" + j + "'>here</a></p>"); 978 if (f.tagName == "A" || f.tagName == "DIV") { 979 f.onclick = function () { 980 location.href = j 981 } 982 } 983 } 984 if (n.onFail) { 985 var l = n.onFail.call(this); 986 if (typeof l == "string") { 987 f.innerHTML = l 988 } 989 } 990 } 991 } 992 if (h) { 993 window[n.id] = document.getElementById(n.id) 994 } 995 i(this, {getRoot: function () { 996 return f 997 }, getOptions: function () { 998 return n 999 }, getConf: function () { 1000 return m 1001 }, getApi: function () { 1002 return f.firstChild 1003 }}) 1004 } 1005 1006 if (c) { 1007 jQuery.tools = jQuery.tools || {version: "@VERSION"}; 1008 jQuery.tools.flashembed = {conf: b}; 1009 jQuery.fn.flashembed = function (l, f) { 1010 return this.each(function () { 1011 $(this).data("flashembed", flashembed(this, l, f)) 1012 }) 1013 } 1014 } 1015 }();
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Thu Aug 11 10:00:09 2016 | Cross-referenced by PHPXref 0.7.1 |