;(function(){
var $$;
$$=jQuery.fn.flash=function(htmlOptions,pluginOptions,replace,update){
var block=replace||$$.replace;
pluginOptions=$$.copy($$.pluginOptions,pluginOptions);
if(!$$.hasFlash(pluginOptions.version)){
if(pluginOptions.expressInstall&&$$.hasFlash(6,0,65)){
var expressInstallOptions={
flashvars:{
MMredirectURL:location,
MMplayerType:'PlugIn',
MMdoctitle:jQuery('title').text()
}
};
}else if(pluginOptions.update){
block=update||$$.update;
}else{
return this;
}
}
htmlOptions=$$.copy($$.htmlOptions,expressInstallOptions,htmlOptions);
return this.each(function(){
block.call(this,$$.copy(htmlOptions));
});
};
$$.copy=function(){
var options={},flashvars={};
for(var i=0;i<arguments.length;i++){
var arg=arguments[i];
if(arg==undefined)continue;
jQuery.extend(options,arg);
if(arg.flashvars==undefined)continue;
jQuery.extend(flashvars,arg.flashvars);
}
options.flashvars=flashvars;
return options;
};
$$.hasFlash=function(){
if(/hasFlash\=true/.test(location))return true;
if(/hasFlash\=false/.test(location))return false;
var pv=$$.hasFlash.playerVersion().match(/\d+/g);
var rv=String([arguments[0],arguments[1],arguments[2]]).match(/\d+/g)||String($$.pluginOptions.version).match(/\d+/g);
for(var i=0;i<3;i++){
pv[i]=parseInt(pv[i]||0);
rv[i]=parseInt(rv[i]||0);
if(pv[i]<rv[i])return false;
if(pv[i]>rv[i])return true;
}
return true;
};
$$.hasFlash.playerVersion=function(){
try{
try{
var axo=new ActiveXObject('ShockwaveFlash.ShockwaveFlash.6');
try{axo.AllowScriptAccess='always';}
catch(e){return'6,0,0';}
}catch(e){}
return new ActiveXObject('ShockwaveFlash.ShockwaveFlash').GetVariable('$version').replace(/\D+/g,',').match(/^,?(.+),?$/)[1];
}catch(e){
try{
if(navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin){
return(navigator.plugins["Shockwave Flash 2.0"]||navigator.plugins["Shockwave Flash"]).description.replace(/\D+/g,",").match(/^,?(.+),?$/)[1];
}
}catch(e){}
}
return'0,0,0';
};
$$.htmlOptions={
height:240,
flashvars:{},
pluginspage:'http://www.adobe.com/go/getflashplayer',
src:'#',
type:'application/x-shockwave-flash',
width:320
};
$$.pluginOptions={
expressInstall:false,
update:true,
version:'6.0.65'
};
$$.replace=function(htmlOptions){
this.innerHTML='<div class="alt">'+this.innerHTML+'</div>';
jQuery(this)
.addClass('flash-replaced')
.prepend($$.transform(htmlOptions));
};
$$.update=function(htmlOptions){
var url=String(location).split('?');
url.splice(1,0,'?hasFlash=true&');
url=url.join('');
var msg='<p>This content requires the Flash Player. <a href="http://www.adobe.com/go/getflashplayer">Download Flash Player</a>. Already have Flash Player? <a href="'+url+'">Click here.</a></p>';
this.innerHTML='<span class="alt">'+this.innerHTML+'</span>';
jQuery(this)
.addClass('flash-update')
.prepend(msg);
};
function toAttributeString(){
var s='';
for(var key in this)
if(typeof this[key]!='function')
s+=key+'="'+this[key]+'" ';
return s;
};
function toFlashvarsString(){
var s='';
for(var key in this)
if(typeof this[key]!='function')
s+=key+'='+encodeURIComponent(this[key])+'&';
return s.replace(/&$/,'');
};
$$.transform=function(htmlOptions){
htmlOptions.toString=toAttributeString;
if(htmlOptions.flashvars)htmlOptions.flashvars.toString=toFlashvarsString;
return'<embed '+String(htmlOptions)+'/>';
};
if(window.attachEvent){
window.attachEvent("onbeforeunload",function(){
__flash_unloadHandler=function(){};
__flash_savedUnloadHandler=function(){};
});
}
})();
