/*	SWFObject v2.0 <http://code.google.com/p/swfobject/>
	Copyright (c) 2007 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>
*/
var swfobject=function()
{
	var Z = "undefined";
	var P = "object";
	var B = "Shockwave Flash";
	var h = "ShockwaveFlash.ShockwaveFlash";
	var W = "application/x-shockwave-flash";
	var K = "SWFObjectExprInst";
	var G = window;
	var g = document;
	var N = navigator;
	var f = [];
	var H = [];
	var Q = null;
	var L = null;
	var T = null;
	var S = false;
	var C = false;
	
	var a=function()
	{
		var l 		= (typeof document.getElementById != "undefined") && (typeof document.getElementsByTagName != "undefined") && (typeof document.createElement != "undefined") && (typeof document.appendChild != "undefined") && (typeof document.replaceChild != "undefined") && (typeof document.removeChild != "undefined") && (typeof document.cloneNode != "undefined");
		var t 		= [0,0,0];
		var flDesc	= null;
	
		// ON TESTE LES FONCTIONNALITES DU NAVIGATEUR POUR SAVOIR COMMENT AGIR
		if((typeof navigator.plugins != "undefined") && (typeof navigator.plugins["Shockwave Flash"] == "object"))
		{
			// DANS LE CAS PRESENT LE NAVIGATEUR N'EST PAS UN NAVIGATEUR MS ET IMPLEMENTE 
			// LE JS navigator.plugins
			// ON CHERCHE DONC S'IL Y A UNE ENTREE DANS LES PLUGINS INSTALLES CORRESPONDANT A FLASH
			flDesc = navigator.plugins["Shockwave Flash"].description;
			
			// SI LA DESCRIPTION DU PLUGIN A BIEN ETE TROUVEE
			if(flDesc)
			{
				// ON VIRE LA 1ère CHAINE QUI CORRESPOND AU NOM DU PLUGIN ("SHOCKWAVE FLASH ")
				// SUR PAR EXEMPLE "SHOCKWAVE FLASH 8.0  R22" IL NE VA DONC PLUS RESTER QUE "8.0  R22"
				flDesc = flDesc.replace(/^.*\s+(\S+\s+\S+$)/,"$1");
				
				// ON GARDE LA MAJOR VERSION
				t[0]=parseInt(flDesc.replace(/^(.*)\..*$/,"$1"),10);
				// ON GARDE LA MINOR VERSION
				t[1]=parseInt(flDesc.replace(/^.*\.(.*)\s.*$/,"$1"),10);
				// ON ESSAYE DE TROUVER LA REVISION
				t[2]=/r/.test(flDesc)?parseInt(flDesc.replace(/^.*r(.*)$/,"$1"),10):0
			}
		}
		else
		{
			// DANS LE CAS PRESENT LE NAVIGATEUR N'IMPLEMENTE PAS LE JS navigator.plugins
			// ON CHERCHE DONC A SAVOIR S'IL S'AGIT D'UN NAVIGATEUR MS
			if(typeof window.ActiveXObject != "undefined")
			{
				// ON A BIEN AFFAIRE A UN NAVIGATEUR MS
				var flObject	= "ShockwaveFlash.ShockwaveFlash";
				var o 			= null;
				var s 			= false;
				
				try
				{
					o = new ActiveXObject(flObject + ".7");
				}
				catch(k)
				{
					// L'ActiveX N'A PU ETRE INSTANCIE, ON VA TESTER LA VERSION POUR SAVOIR SI ON A AFFAIRE A UNE VERSION 6
					try
					{
						o = new ActiveXObject(flObject + ".6");
						t = [6, 0, 21];
						o.AllowScriptAccess = "always";
					}
					catch(k)
					{
						if(t[0] == 6) { s=true; }
					}
					
					// ON A NI AFFAIRE A UNE VERSION 6 NI A UNE VERSION 7, ON TESTE DONC LA VERSION
					// SI VERSION<6 ELLE EST CONSIDEREE COMME VERSION=0
					if(!s)
					{
						try
						{
							o = new ActiveXObject(flObject);
						}
						catch(k){}
					}
					
				}
			
				if(!s && o)
				{
					try
					{
						n=o.GetVariable("$version");
						
						if(n)
						{
							n=n.split(" ")[1].split(",");
							t=[parseInt(n[0],10),parseInt(n[1],10),parseInt(n[2],10)]
						}
					}
					catch(k) {}
				}
			}
		}
	
		// ON TESTE LES PROPRIETES DU NAVIGATEUR (DONT PLATEFORME)
		var v = navigator.userAgent.toLowerCase();
		var j = navigator.platform.toLowerCase();
		var r = /webkit/.test(v)?parseFloat(v.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):false;
		var i = false;
		var q = j?/win/.test(j):/win/.test(v);
		var m = j?/mac/.test(j):/mac/.test(v);
		
		/*@cc_on i=true; @if(@_win32)q=true; @elif(@_mac)m=true; @end@*/
		
		return { w3cdom:l, pv:t, webkit:r, ie:i, win:q, mac:m }
	}();

	var e=function()
	{
		if(! a.w3cdom) { return }
		J(I);
		
		if(a.ie && a.win)
		{
			// LE NAVIGATEUR TOURNE SUR UNE PLATEFORME WINDOWS ET QUE LA COMPILATION CONDITIONNELLE FONCTIONNE
			try
			{
				document.write("<script id=__ie_ondomload defer=true src=//:><\/script>");
				var i = c("__ie_ondomload");
				
				if(i)
				{
					i.onreadystatechange=function()
					{
						if(this.readyState=="complete")
						{
							this.parentNode.removeChild(this);
							V();
						}
					}
				}
			}
			catch(j){}
		}
		
		if(a.webkit && (typeof document.readyState != "undefined"))
		{
			Q = setInterval(function()
			{
				if(/loaded|complete/.test(document.readyState)) { V(); }
			}, 10);
		}
		
		if(typeof document.addEventListener != "undefined")
		{
			document.addEventListener("DOMContentLoaded", V, null);
		}
		
		M(V);
	}();
	
	function V()
	{
		if(S) { return }
		
		if(a.ie && a.win)
		{
			var m = Y("span");
			
			try
			{
				var l = g.getElementsByTagName("body")[0].appendChild(m);
				
				l.parentNode.removeChild(l);
			}
			catch(n){ return }
		}
		
		S = true;
		
		if(Q)
		{
			clearInterval(Q);
			Q=null ;
		}
		
		var j = f.length;
		
		for(var k=0;k<j;k++)
		{
			f[k]()
		}
	}
	
	function J(i)
	{
		if(S){ i(); }
		else
		{
			f[f.length] = i; 
		}
	}
	
	function M(j) // ACTION A FAIRE LORS DE LA FIN DE CHARGEMENT DE LA PAGE (= onLoad())
	{
		if(typeof window.addEventListener != "undefined")
		{
			window.addEventListener("load", j, false);
		}
		else
		{
			if(typeof g.addEventListener != "undefined")
			{
				g.addEventListener("load", j, false);
			}
			else
			{
				if(typeof window.attachEvent != "undefined")
				{
					window.attachEvent("onload", j);
				}
				else
				{
					if(typeof window.onload == "function")
					{
						var i = window.onload;
						window.onload = function()
						{
							i();
							j();
						}
					}
					else
					{
						window.onload = j;
					}
				}
			}
		}
	}
	
	function I()
	{
		var l=H.length;
		
		for(var j=0; j<l; j++)
		{
			var m=H[j].id;
			
			if(a.pv[0]>0) 
			{
				var k=c(m);
				
				if(k)
				{
					H[j].width=k.getAttribute("width")?k.getAttribute("width"):"0";
					H[j].height=k.getAttribute("height")?k.getAttribute("height"):"0";
					
					if(O(H[j].swfVersion))
					{
						if(a.webkit && (a.webkit < 312)) { U(k); }
						
						X(m, true);
					}
					else
					{
						if(H[j].expressInstall && (! C) && O("6.0.65") && (a.win || a.mac))
						{
							D(H[j]);
						}
						else
						{
							d(k);
						}
					}
				}
			}
			else
			{
				X(m, true);
			}
		}
	}
	
	function U(m)
	{
		var k=m.getElementsByTagName(P)[0];

		if(k)
		{
			var p=Y("embed");
			var r=k.attributes;
			
			if(r)
			{
				var o=r.length;
				
				for(var n=0; n<o; n++)
				{
					if(r[n].nodeName.toLowerCase() == "data")
					{
						p.setAttribute("src", r[n].nodeValue);
					}
					else
					{
						p.setAttribute(r[n].nodeName, r[n].nodeValue);
					}
				}
			}
			
			var q=k.childNodes;
			
			if(q)
			{
				var s=q.length;
				
				for(var l=0; l<s; l++)
				{
					if(q[l].nodeType == 1&&q[l].nodeName.toLowerCase()=="param")
					{
						p.setAttribute(q[l].getAttribute("name"), q[l].getAttribute("value"));
					}
				}
			}
			
			m.parentNode.replaceChild(p, m);
		}
	}
	
	function F(i)
	{
		if(a.ie && a.win && O("8.0.0"))
		{
			G.attachEvent("onunload", function()
			{
				var k = c(i);
				
				if(k)
				{
					for(var j in k)
					{
						if(typeof k[j] == "function")
						{
							k[j] = function(){}
						}
					}
					
					k.parentNode.removeChild(k);
				}
			}
		)
	}
}

function D(j)
{
	C = true;
	var o = c(j.id);
	
	if(o)
	{
		if(j.altContentId)
		{
			var l=c(j.altContentId);
			
			if(l)
			{
				L=l;
				T=j.altContentId;
			}
		}
		else
		{
			L=b(o);
		}
		
		if((!(/%$/.test(j.width))) && (parseInt(j.width,10) < 310))
		{
			j.width = "310";
		}
		
		if((!(/%$/.test(j.height))) && (parseInt(j.height,10) < 137))
		{
			j.height = "137";
		}
		
		g.title = g.title.slice(0, 47) + " - Flash Player Installation";
		var n = a.ie && a.win ? "ActiveX":"PlugIn";
		var k = g.title;
		var m = "MMredirectURL=" + G.location + "&MMplayerType=" + n + "&MMdoctitle=" + k;
		var p = j.id;
		
		if(a.ie && a.win && (o.readyState !=4))
		{
			var i=Y("div");
			p += "SWFObjectNew";
			
			i.setAttribute("id", p);
			o.parentNode.insertBefore(i, o);
			o.style.display="none";
			
			G.attachEvent("onload", function() {o.parentNode.removeChild(o); });
		}
		
		R(	{	data:j.expressInstall,
		  		id:K,
				width:j.width,
				height:j.height
			},
			{	flashvars:m },
			p)
	}
}

function d(j)
{
	if(a.ie && a.win && (j.readyState != 4))
	{
		var i = Y("div");
		j.parentNode.insertBefore(i, j);
		i.parentNode.replaceChild(b(j), i);
		j.style.display = "none";
		
		G.attachEvent("onload", function(){ j.parentNode.removeChild(j); });
	}
	else
	{
		j.parentNode.replaceChild(b(j), j);
	}
}

function b(n)
{
	var m = Y("div");
	
	if(a.win && a.ie)
	{
		m.innerHTML = n.innerHTML
	}
	else
	{
		var k = n.getElementsByTagName(P)[0];
		
		if(k)
		{
			var o = k.childNodes;
			
			if(o)
			{
				var j=o.length;
				
				for(var l=0; l<j; l++)
				{
					if(!(o[l].nodeType==1&&o[l].nodeName.toLowerCase()=="param")&&!(o[l].nodeType==8))
					{
						m.appendChild(o[l].cloneNode(true));
					}
				}
			}
		}
	}
	
	return m;
}

function R(AE, AC, q)
{
	var p;
	var t = c(q);
	
	if(typeof AE.id == Z) 	{ AE.id = q; }
	
	if(a.ie && a.win)
	{
		var AD = "";
		
		for(var z in AE)
		{
			if(AE[z] != Object.prototype[z])
			{
				if(z == "data")
				{
					AC.movie = AE[z];
				}
				else
				{
					if(z.toLowerCase() == "styleclass")
					{
						AD += ' class="' + AE[z] + '"';
					}
					else
					{
						if(z != "classid")
						{
							AD += " " + z + '="' + AE[z] + '"';
						}
					}
				}
			}
		}
		
		var AB = "";
		
		for(var y in AC)
		{
			if(AC[y] != Object.prototype[y])
			{
				AB += '<param name="' + y + '" value="' + AC[y] + '" />';
			}
		}
		
		t.outerHTML = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"' + AD + ">" + AB + "</object>";
		F(AE.id);
		p = c(AE.id);
	}
	else
	{
		if(a.webkit && (a.webkit < 312))
		{
			var AA = Y("embed");
			AA.setAttribute("type", W);
			for(var x in AE)
			{
				if(AE[x] != Object.prototype[x])
				{
					if(x == "data")
					{
						AA.setAttribute("src", AE[x]);
					}
					else
					{
						if(x.toLowerCase() == "styleclass")
						{
							AA.setAttribute("class", AE[x]);
						}
						else
						{
							if(x != "classid")
							{
								AA.setAttribute(x, AE[x]);
							}
						}
					}
				}
			}
			
			for(var w in AC)
			{
				if(AC[w] != Object.prototype[w])
				{
					if(w != "movie")
					{
						AA.setAttribute(w, AC[w])
					}
				}
			}
			
			t.parentNode.replaceChild(AA, t);
			p = AA;
		}
		else
		{
			var s = Y(P);
			s.setAttribute("type", W);
			
			for(var v in AE)
			{
				if(AE[v] != Object.prototype[v])
				{
					if(v.toLowerCase() == "styleclass")
					{
						s.setAttribute("class", AE[v]);
					}
					else
					{
						if(v != "classid")
						{
							s.setAttribute(v, AE[v]);
						}
					}
				}
			}
			
			for(var u in AC)
			{
				if(AC[u] != Object.prototype[u] && (u != "movie")){ E(s, u, AC[u]); }
			}
			
			t.parentNode.replaceChild(s, t);
			p = s;
		}
	}
	
	return p;
}

function E(k, i, j)
{
	var l = Y("param");
	
	l.setAttribute("name", i);
	l.setAttribute("value", j);
	
	k.appendChild(l);
}

function c(i)
{
	return g.getElementById(i);
}

function Y(i)
{
	return g.createElement(i);
}

function O(k)
{
	var j = a.pv;
	var i = k.split(".");
	
	i[0]=parseInt(i[0],10);
	i[1]=parseInt(i[1],10);
	i[2]=parseInt(i[2],10);
	
	return(j[0]>i[0]||(j[0]==i[0]&&j[1]>i[1])||(j[0]==i[0]&&j[1]==i[1]&&j[2]>=i[2]))?true:false;
}
	
function A(m,j)
{
	if(a.ie && a.mac) { return }
	
	var l = g.getElementsByTagName("head")[0];
	var k = Y("style");
	
	k.setAttribute("type", "text/css");
	k.setAttribute("media","screen");
	
	if(! (a.ie && a.win) && (typeof g.createTextNode != Z))
	{
		k.appendChild(g.createTextNode(m +" {"+ j +"}"));
	}
	
	l.appendChild(k);
	
	if(a.ie && a.win && (typeof g.styleSheets != Z) && (g.styleSheets.length > 0))
	{
		var i=g.styleSheets[g.styleSheets.length-1];
		
		if(typeof i.addRule == P)
		{
			i.addRule(m, j);
		}
	}
}

function X(k, i)
{
	var j = i?"visible":"hidden";
	
	if(S)
	{
		c(k).style.visibility = j;
	}
	else
	{
		A("#" + k, "visibility:" + j);
	}
}

return {registerObject:	function(l, i, k)
						{
							if(!a.w3cdom||!l||!i){ return }
							var j={};
							j.id=l;
							j.swfVersion=i;
							j.expressInstall=k?k:false;
							H[H.length]=j;
							X(l, false)
						}, 
		getObjectById:	function(l)
						{
							var i=null;
							
							if(a.w3cdom && S)
							{
								var j=c(l);
								if(j)
								{
									var k=j.getElementsByTagName(P)[0];
									
									if(!k||(k&&typeof j.SetVariable!=Z)) {i=j}
									else
									{
										if(typeof k.SetVariable!=Z){i=k}
									}
								}
							}
							
							return i
						},
		checkVersion:	function(flVer) { return O(flVer); },
		embedSWF:		function(flFile,flAlternative,flWidth,flHeight,flVersion,m,k,p,s)
						{
							// ON VERIFIE QUE TOUS LES PARAMETRES SOIENT BONS
							if(!a.w3cdom || (! flFile) || (! flAlternative) || (! flWidth) || (! flHeight) || (! flVersion))	{return }
							
							// ON CAST LA DIMENSION POUR LA TRAITER COMME DU TEXTE
							flWidth	+= "";
							flHeight+= "";
							
							if(O(flVersion))
							{
								X(flAlternative, false);
								var q	= (typeof s=="object")?s:{};
								q.data	= flFile;
								q.width	= flWidth;
								q.height= flHeight;
								var o=(typeof p=="object")?p:{};
								
								if(typeof k=="object")
								{
									for(var l in k)
									{
										if(k[l]!=Object.prototype[l])
										{
											if(typeof o.flashvars!=Z) { o.flashvars += "&" + l + "=" + k[l] }
											else
											{
												o.flashvars = l + "=" + k[l]
											}
										}
									}
								}
								
								J(function()
								{
									R(q, o, flAlternative);
									
									if(q.id == flAlternative) { X(flAlternative, true); }
								})
							}
							else
							{
								if(m&&!C&&O("6.0.65")&&(a.win || a.mac))
								{
									X(u,false);
									
									J(function()
									{
										var i={};
										i.id				= i.altContentId = u;
										i.width				= flWidth;
										i.height			= flHeight;
										i.expressInstall	= m;
										D(i)
									})
								}
							}
						},
		getFlashPlayerVersion:function()
						{
							return {major:a.pv[0],
									minor:a.pv[1],
									release:a.pv[2]
									}
						},
		hasFlashPlayerVersion:O,
		createSWF:		function(k, j, i)
						{
							if(a.w3cdom && S)
							{
								return R(k, j, i)
							}
							else
							{
								return undefined
							}
						},
		createCSS:		function(j, i)
						{
							if(a.w3cdom){ A(j, i); }
						},
		addDomLoadEvent:J,
		addLoadEvent:M,
		getQueryParamValue:function(m)
						{
							var l=g.location.search||g.location.hash;
							if(m == null) { return l; }
							if(l)
							{
								var k=l.substring(1).split("&");
								
								for(var j=0; j<k.length; j++)
								{
									if(k[j].substring(0, k[j].indexOf("=")) == m)
									{
										return k[j].substring((k[j].indexOf("=") + 1));
									}
								}
							}
							
							return "" ;
						},
		expressInstallCallback:function()
						{
							if(C && L)
							{
								var i=c(K);
								
								if(i)
								{
									i.parentNode.replaceChild(L, i);
									if(T)
									{
										X(T, true);
										
										if(a.ie && a.win){ L.style.display="block"; }
									}
									
									L=null;
									T=null;
									C=false;
								}
							}
						}
		}
}();
