/*! jquery.swfobject.license.txt *//*
jQuery SWFObject Plugin v1.0.4 <http://jquery.thewikies.com/swfobject/>
Copyright (c) 2009 Jonathan Neal
This software is released under the MIT License <http://www.opensource.org/licenses/mit-license.php>
This software is released under the GPL License <http://www.opensource.org/licenses/gpl-2.0.php>
SWFObject v2.1 <http://code.google.com/p/swfobject/>
Copyright (c) 2007-2009 Geoff Stearns, Michael Williams, and Bobby van der Sluis
This software is released under the MIT License <http://www.opensource.org/licenses/mit-license.php>
jQuery v1.2.6 <http://jquery.com/>
Copyright (c) 2009 John Resig
This software is released under the MIT License <http://www.opensource.org/licenses/mit-license.php>
This software is released under the GPL License <http://www.opensource.org/licenses/gpl-2.0.php>*//*jslint
passfail: false,
white: true,
browser: true,
widget: false,
sidebar: false,
rhino: false,
safe: false,
adsafe: false,
debug: false,
evil: false,
cap: false,
on: false,
fragment: false,
laxbreak: false,
forin: true,
sub: false,
css: false,
undef: true,
nomen: false,
eqeqeq: true,
plusplus: false,
bitwise: true,
regexp: false,
onevar: true,
strict: false*//*global
jQuery,
ActiveXObject*/(function ($) {
var win = window,
doc = document,
x = '',
object = 'object';/* $.flashPlayerVersion */
$.flashPlayerVersion = (function () {
var flashVersion, activeX = null,
fp6Crash = false,
shockwaveFlash = 'ShockwaveFlash.ShockwaveFlash';/* If Internet Explorer */
if (! (flashVersion = navigator.plugins['Shockwave Flash'])) {
try {
activeX = new ActiveXObject(shockwaveFlash+'.7');} catch (errorA) {
try {
activeX = new ActiveXObject(shockwaveFlash+'.6');
flashVersion = [6, 0, 21];
activeX.AllowScriptAccess = 'always';} catch (errorB) {
if (flashVersion && flashVersion[0] === 6) {
fp6Crash = true;}}
if (!fp6Crash) {
try {
activeX = new ActiveXObject(shockwaveFlash);} catch (errorC) {
flashVersion = 'X 0,0,0';}}}
if (!fp6Crash && activeX) {
try {/* Will crash fp6.0.21/23/29 */
flashVersion = activeX.GetVariable('$version');} catch (errorD) {}}}/* If NOT Internet Explorer */
else {
flashVersion = flashVersion.description;}/* Return flash version */
flashVersion = flashVersion.match(/^[A-Za-z\s]*?(\d+)(\.|,)(\d+)(\s+r|,)(\d+)/);
return [flashVersion[1] * 1, flashVersion[3] * 1, flashVersion[5] * 1];}());/* $.flashExpressInstaller */
$.flashExpressInstaller = 'expressInstall.swf';/* $.hasFlashPlayer */
$.hasFlashPlayer = ($.flashPlayerVersion[0] !== 0);/* $.hasFlashPlayerVersion */
$.hasFlashPlayerVersion = function (options) {
var flashVersion = $.flashPlayerVersion;
options = (/string|integer/.test(typeof options)) ? options.toString().split('.') : options;
options = [options.major || options[0] || flashVersion[0], options.minor || options[1] || flashVersion[1], options.release || options[2] || flashVersion[2]];/* Return true or false */
return ($.hasFlashPlayer && (options[0] > flashVersion[0] || (options[0] === flashVersion[0] && (options[1] > flashVersion[1] || (options[1] === flashVersion[1] && options[2] >= flashVersion[2])))));};/* $.flash */
$.flash = function (options) {/* Check if Flash is installed, return false if it isn't */
if (!$.hasFlashPlayer) {
return false;}
var movieFilename = options.swf || x,
paramAttributes = options.params || {},
buildDOM = doc.createElement('body'),
aArr,
bArr,
cArr,
dArr,
a,
b,
c,
d;/* Set the default height and width if not already set */
options.height = options.height || 180;
options.width = options.width || 320;/* Inject ExpressInstall if "hasVersion" is requested and the version requirement is not met */
if (options.hasVersion && !$.hasFlashPlayerVersion(options.hasVersion)) {
$.extend(options, {
id: 'SWFObjectExprInst',
height: Math.max(options.height, 137),
width: Math.max(options.width, 214)});
movieFilename = options.expressInstaller || $.flashExpressInstaller;
paramAttributes = {
flashvars: {
MMredirectURL: win.location.href,
MMplayerType: ($.browser.msie && $.browser.win) ? 'ActiveX': 'PlugIn',
MMdoctitle: doc.title.slice(0, 47)+'-Flash Player Installation'}};}/* Append as a param if specified separately */
if (typeof paramAttributes === object) {/* flashvars */
if (options.flashvars) {
paramAttributes.flashvars = options.flashvars;}/* wmode */
if (options.wmode) {
paramAttributes.wmode = options.wmode;}}/* Delete the reformatted constructors */
for (a in (b = ['swf', 'expressInstall', 'hasVersion', 'params', 'flashvars', 'wmode'])) {
delete options[b[a]];}/* Create the OBJECT tag attributes */
aArr = [];
for (a in options) {
if (typeof options[a] === object) {
bArr = [];
for (b in options[a]) {
bArr.push(b.replace(/([A-Z])/, '-$1').toLowerCase()+':'+options[a][b]+';');}
options[a] = bArr.join(x);}
aArr.push(a+'="'+options[a]+'"');}
options = aArr.join(' ');/* Create the PARAM tags */
if (typeof paramAttributes === object) {
aArr = [];
for (a in paramAttributes) {
if (typeof paramAttributes[a] === object) {
bArr = [];
for (b in paramAttributes[a]) {
if (typeof paramAttributes[a][b] === object) {
cArr = [];
for (c in paramAttributes[a][b]) {
if (typeof paramAttributes[a][b][c] === object) {
dArr = [];
for (d in paramAttributes[a][b][c]) {
dArr.push([d.replace(/([A-Z])/, '-$1').toLowerCase(), ':', paramAttributes[a][b][c][d], ';'].join(x));}
paramAttributes[a][b][c] = dArr.join(x);}
cArr.push([c, '{', paramAttributes[a][b][c], '}'].join(x));}
paramAttributes[a][b] = cArr.join(x);}
bArr.push([b, '=', win.escape(win.escape(paramAttributes[a][b])).replace(/\+/g, '%2B')].join(x));}
paramAttributes[a] = bArr.join('&amp;');}
aArr.push(['<PARAM NAME="', a, '" VALUE="', paramAttributes[a], '">'].join(x));}
paramAttributes = aArr.join(x);}/* Unify the visual display between all browsers */
if (! (/style=/.test(options))) {
options+= ' style="vertical-align:text-top;"';}
if (! (/style=(.*?)vertical-align/.test(options))) {
options = options.replace(/style="/, 'style="vertical-align:text-top;');}/* Specify the object and param tags between browsers */
if ($.browser.msie) {
options+= ' classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"';
paramAttributes = '<PARAM NAME="movie" VALUE="'+movieFilename+'">'+paramAttributes;} else {
options+= ' type="application/x-shockwave-flash" data="'+movieFilename+'"';}/* Return the jQuery'd flash OBJECT */
buildDOM.innerHTML = ['<OBJECT ', options, '>', paramAttributes, '</OBJECT>'].join(x);
return $(buildDOM.firstChild);};/* $.fn.flash */
$.fn.flash = function (options) {/* Check if Flash is installed, return the jQuery node if it isn't */
if (!$.hasFlashPlayer) {
return this;}
var a = 0,
each;/* Each */
while ((each = this.eq(a++))[0]) {
each.html($.flash($.extend({},
options)));
if (document.getElementById('SWFObjectExprInst')) {
a = this.length;}}/* Return the jQuery node */
return this;};}(jQuery));
