/* **************************************
SWFObject v1.4.2: Flash Player detection and embed - http://blog.deconcept.com/swfobject/

SWFObject is (c) 2006 Geoff Stearns and is released under the MIT License:
http://www.opensource.org/licenses/mit-license.php

SWFObject is the SWF embed script formerly known as FlashObject. The name was changed for legal reasons.
************************************** */
 
// Want a singleton or else we get super recursion in deconcept.SWFObjectUtil.cleanupSWFs
if (typeof SWFObject == "undefined")
{
	if (typeof deconcept == "undefined")
	{
		var deconcept = new Object();
	}
	if (typeof deconcept.util == "undefined")
	{
		deconcept.util = new Object();
	}
	if (typeof deconcept.SWFObjectUtil == "undefined")
	{
		deconcept.SWFObjectUtil = new Object();
	}
	
	deconcept.SWFObject = function(_1,id,w,h,_5,c,_7,_8,_9,_a,_b)
	{
		if (!document.getElementById)
		{
			return;
		}
		
		this.DETECT_KEY = _b?_b:"detectflash";
		this.skipDetect = deconcept.util.getRequestParameter(this.DETECT_KEY);
		this.params = new Object();
		this.variables = new Object();
		this.attributes = new Array();
		
		if(_1)
		{
			this.setAttribute("swf",_1);
		}
		if(id)
		{
			this.setAttribute("id",id);
		}
		if(w)
		{
			this.setAttribute("width",w);
		}
		if(h)
		{
			this.setAttribute("height",h);
		}
		if(_5)
		{
			this.setAttribute("version",new deconcept.PlayerVersion(_5.toString().split(".")));
		}
	
		this.installedVer = deconcept.SWFObjectUtil.getPlayerVersion();
		
		if(c)
		{
			this.addParam("bgcolor",c);
		}
	
		var q = _8?_8:"high";
		this.addParam("quality",q);
		this.setAttribute("useExpressInstall",_7);
		this.setAttribute("doExpressInstall",false);
		var _d = (_9)?_9:window.location;
		this.setAttribute("xiRedirectUrl",_d);
		this.setAttribute("redirectUrl","");
	
		if(_a)
		{
			this.setAttribute("redirectUrl",_a);
		}
	};
	
	deconcept.SWFObject.prototype = {
		setAttribute:function(_e,_f) { this.attributes[_e]=_f; },
		getAttribute:function(_10) { return this.attributes[_10]; },
		addParam:function(_11,_12) { this.params[_11]=_12; },
		getParams:function(){ return this.params; },
		addVariable:function(_13,_14){ this.variables[_13]=_14; },
		getVariable:function(_15){ return this.variables[_15]; },
		getVariables:function(){ return this.variables;	},
		getVariablePairs:function(){
			var _16 = new Array();
			var key;
			var _18 = this.getVariables();
			for (key in _18)
			{
				_16.push(key+"="+_18[key]);
			}
			return _16;
		},
		getSWFHTML:function(){
			var _19 = "";
			if (navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.length)
			{
				if (this.getAttribute("doExpressInstall"))
				{
					this.addVariable("MMplayerType","PlugIn");
				}
				_19 = "<embed type=\"application/x-shockwave-flash\" src=\""
					+ this.getAttribute("swf")
					+ "\" width=\""
					+ this.getAttribute("width")
					+ "\" height=\""
					+ this.getAttribute("height")
					+ "\"";
				_19 += " id=\""
					+ this.getAttribute("id")
					+ "\" name=\""
					+ this.getAttribute("id")
					+ "\" ";
				var _1a=this.getParams();
				for (var key in _1a)
				{
					_19 += [key] + "=\"" + _1a[key] + "\" ";
				}
				var _1c = this.getVariablePairs().join("&");
				if (_1c.length>0)
				{
					_19 += "flashvars=\""+_1c+"\"";
				}
				_19 += "/>";
			}
			else
			{
				if (this.getAttribute("doExpressInstall"))
				{
					this.addVariable("MMplayerType","ActiveX");
				}
				_19 = "<object id=\""
					+ this.getAttribute("id")
					+ "\" classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" width=\""
					+ this.getAttribute("width")
					+ "\" height=\""
					+ this.getAttribute("height")
					+ "\">";
				_19 += "<param name=\"movie\" value=\""
					+ this.getAttribute("swf")
					+ "\" />";
				var _1d=this.getParams();
				for (var key in _1d)
				{
					_19 += "<param name=\""
						+ key
						+ "\" value=\""
						+ _1d[key]
						+ "\" />";
				}
				var _1f = this.getVariablePairs().join("&");
				if (_1f.length > 0)
				{
					_19 += "<param name=\"flashvars\" value=\""
						+ _1f
						+ "\" />";
				}
				_19 += "</object>";
			}
			return _19;
		},
		write:function(_20)
		{
			if (this.getAttribute("useExpressInstall"))
			{
				var _21 = new deconcept.PlayerVersion([6,0,65]);
				if (this.installedVer.versionIsValid(_21) && !this.installedVer.versionIsValid(this.getAttribute("version")))
				{
					this.setAttribute("doExpressInstall",true);
					this.addVariable("MMredirectURL",escape(this.getAttribute("xiRedirectUrl")));
					document.title=document.title.slice(0,47)+" - Flash Player Installation";
					this.addVariable("MMdoctitle",document.title);
				}
			}
			if (this.skipDetect || this.getAttribute("doExpressInstall") || this.installedVer.versionIsValid(this.getAttribute("version")))
			{
				var n=(typeof _20=="string") ? document.getElementById(_20) : _20;
				n.innerHTML = this.getSWFHTML();
				return true;
			}
			else
			{
				if (this.getAttribute("redirectUrl")!="")
				{
					document.location.replace(this.getAttribute("redirectUrl"));
				}
			}
			return false;
		}
	};
	
	deconcept.SWFObjectUtil.getPlayerVersion = function() {
		var _23=new deconcept.PlayerVersion([0,0,0]);
		if (navigator.plugins&&navigator.mimeTypes.length)
		{
			var x=navigator.plugins["Shockwave Flash"];
			if (x&&x.description)
			{
				_23 = new deconcept.PlayerVersion(x.description.replace(/([a-zA-Z]|\s)+/,"").replace(/(\s+r|\s+b[0-9]+)/,".").split("."));
			}
		}
		else
		{
			try
			{
				var axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");
			}
			catch(e)
			{
				try
				{
					var axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");
					_23=new deconcept.PlayerVersion([6,0,21]);
					axo.AllowScriptAccess="always";
				}
				catch(e)
				{
					if (_23.major==6)
					{
						return _23;
					}
				}
			
				try
				{
					axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
				}
				catch(e) {} 
			}
			
			if (axo!=null)
			{
				_23 = new deconcept.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(","));
			}
		}
		return _23;
	};
	
	deconcept.PlayerVersion=function(_27)
	{
		this.major=_27[0]!=null?parseInt(_27[0]):0;
		this.minor=_27[1]!=null?parseInt(_27[1]):0;
		this.rev=_27[2]!=null?parseInt(_27[2]):0;
	};
	
	deconcept.PlayerVersion.prototype.versionIsValid=function(fv)
	{
		if (this.major<fv.major) { return false; }
		if (this.major>fv.major) { return true; }
		if (this.minor<fv.minor) { return false; }
		if (this.minor>fv.minor) { return true; }
		if (this.rev<fv.rev) { return false; }
		return true;
	};
	
	deconcept.util = {
		getRequestParameter:function(_29)
		{
			var q=document.location.search||document.location.hash;
			if (q)
			{
				var _2b=q.substring(1).split("&");
				for (var i=0;i<_2b.length;i++)
				{
					if (_2b[i].substring(0,_2b[i].indexOf("="))==_29)
					{
						return _2b[i].substring((_2b[i].indexOf("=")+1));
					}
				}
			}
			return "";
		}
	};

	deconcept.SWFObjectUtil.cleanupSWFs = function()
	{
		var _2d=document.getElementsByTagName("OBJECT");
		for(var i=0;i<_2d.length;i++)
		{
			_2d[i].style.display="none";
			for(var x in _2d[i])
			{
				if(typeof _2d[i][x]=="function")
				{
					_2d[i][x]=null;
				}
			}
		}
	};

	// Bugfix by kurt.griffiths@sebomarketing.com
	//
	// Since this variable is global, the third time this script is included in a document, we have
	// an infinite recusion bug. The second time, we set old_unload to cleanup the SWFs and then
	// create an anonymous method that calls it. The third time we change old_unload to point to 
	// window.onunload, but window.onunload is pointing to a function which calls old_unload! So
	// when you call it, it just keeps calling itself.
	//
	// We could  put this thing into a function, so that old_unload is no longer global. However, 
	// we really only need to call cleanupSWFs once, so we just will skip this whole script if it
	// has already been included once.
	var old_unload = window.onunload;
	if (typeof old_unload == "function")
	{
		window.onunload = function()
		{ 
			deconcept.SWFObjectUtil.cleanupSWFs();
			old_unload();
		};
	}
	else
	{
		window.onunload = function() 
		{
			deconcept.SWFObjectUtil.cleanupSWFs
		};
	}

	if (Array.prototype.push == null)
	{
		Array.prototype.push=function(_30)
		{
			this[this.length]=_30;
			return this.length;
		};
	}

	var getQueryParamValue=deconcept.util.getRequestParameter;
	var FlashObject=deconcept.SWFObject; // for legacy support
	var SWFObject=deconcept.SWFObject;
}
