/** * SWFAddress v1.1: Deep linking for Flash - http://www.asual.com/swfaddress/ * * SWFAddress is (c) 2006 Rostislav Hristov and is released under the MIT License: * http://www.opensource.org/licenses/mit-license.php * */if(typeof asual=="undefined") {	var asual=new Object();}if(typeof asual.util=="undefined") {	asual.util=new Object();}asual.util.Browser=new function() {	var _1=navigator.userAgent;	this.supported=false;	this.ie=false;	this.gecko=false;	this.safari=false;	this.opera=false;	this.version=-1;	if(/MSIE/.test(_1)) {		this.ie=true;		this.version=parseFloat(_1.substring(_1.indexOf("MSIE")+4));		this.supported=this.version>=6;	} else { 		if(/AppleWebKit/.test(_1)) {			this.safari=true;			this.version=parseFloat(_1.substring(_1.indexOf("Safari")+7));			this.supported=this.version>=312;		} else { 			if(/Opera/.test(_1)) {				this.opera=true;				this.version=parseFloat(navigator.appVersion);				this.supported=this.version>=9.02;			} else {				if(/Firefox/.test(_1)) {					this.gecko=true;					this.version=parseFloat(_1.substring(_1.indexOf("Firefox")+8));					this.supported=this.version>=1;				} else {					if(/Camino/.test(_1)) {						this.gecko=true;						this.version=parseFloat(_1.substring(_1.indexOf("Camino")+7));						this.supported=this.version>=1;					} else {						if(/Netscape/.test(_1)) {							this.gecko=true;							this.version=parseFloat(_1.substring(_1.indexOf("Netscape")+9));							this.supported=this.version>=8;						} else {							if(/Mozilla/.test(_1)&&/rv:/.test(_1)) {								this.gecko=true;								this.version=parseFloat(_1.substring(_1.indexOf("rv:")+3));								this.supported=this.version>=1.8;							}						}					}				}			}		}	}	if(!this.supported&&top.location.href.indexOf("#")!=-1) {		document.open();		document.write("<html><head><meta http-equiv=\"refresh\" content=\"0;url="+top.location.href.substr(0,top.location.href.indexOf("#"))+"\" /></head></html>");		document.close();	}};asual.util.Functions=new function() {	this.extend=function(_2,_3) {		function inheritance(){}		inheritance.prototype=_2.prototype;		_3.prototype=new inheritance();		_3.prototype.constructor=_3;		_3.superConstructor=_2;		_3.superClass=_2.prototype;		return _3;	};	this.bindAsListener=function(_4,_5,_6) {		return function(_7) {			return _4.call(_5,_7||((_6)?_6.event:window.event));		};	};};asual.util.Events=new function(){	var _8=new Array();	this.addListener=function(_9,_a,_b) {		if(_9.addEventListener) {			_9.addEventListener(_a,_b,false);		} else {			if(_9.attachEvent) {				_9.attachEvent("on"+_a,_b);			} else {				_9["on"+_a]=_b;			}		}		_8.push({o:_9,t:_a,l:_b});	};	this.removeListener=function(_c,_d,_e) {		if(_c.removeEventListener) {			_c.removeEventListener(_d,_e,false);		} else {			if(_c.detachEvent) {				_c.detachEvent("on"+_d,_e);			} else {				_c["on"+_d]=_e;			}		}	};	var _f = function() {		for(var i=0,evt;evt=_8[i];i++) {			asual.util.Events.removeListener(evt.o,evt.t,evt.l);		}	};	if(asual.util.Browser.ie||asual.util.Browser.safari) {		this.addListener(window,"unload",asual.util.Functions.bindAsListener(_f,this));	}};asual.SWFAddress=new function() {	var _12=asual.util.Browser;	var _13=_12.supported;	var _14,_15;	var _16,_17,_18=false;	var _19=document.title;	var _1a=history.length;	var _1b=new Array();	var js="swfaddress.js";	var _1d="swfaddress.html";	var _1e=function() {		var _1f=top.location.href.indexOf("#");		if(_1f!=-1) {			return top.location.href.substring(_1f);		}		return "";	};	var _20=_1e();	var _21=function() {		if(_12.safari) { 			if(_1a!=history.length&&!_18) {				_1a=history.length;				if(typeof _1b[_1a-1]!="undefined") {					_20=_1b[_1a-1];				}				_22();			}		} else {			if(_12.ie) {				if(_20!=_1e()) {					if(_12.version<7) {						top.location.reload();					} else {						asual.SWFAddress.setValue(_1e().replace(/#/g,""));					}				}				if(top.document.title!=_19) {					asual.SWFAddress.setTitle(_19);				}			} else {				if(_20!=top.location.hash) {					_20=top.location.hash;					_22();				}			}		}	};	var _22=function() { 		var _23=_20.replace(/#/g,"");		if(_23!=_16) {			_16=_23;			var obj=document[_17]||document.getElementById(_17);			if(obj) { 				obj.setSWFAddressValue(_23);			}		}	};	var _25=function() {		if(_14.contentWindow&&_14.contentWindow.location) {			var win=_14.contentWindow;						win.document.title=top.document.title=_19;			var src=win.location.href;			if(src.indexOf("?")>-1) { 				_20="#"+src.substring(src.indexOf("?")+1);			} else {				_20="#";			}			if (_20!=_1e()) {				_22();				top.location.hash=_20;			}		}	};	var _28=function() {		if(_12.ie||_12.safari) {			var _29=document.createElement("div");			_29.id="swfaddress";			var _2a=document.getElementsByTagName("script");			for(var i=0,s;s=_2a[i];i++) {				if(s.src.indexOf(js)>-1) {					_1d=(new String(s.src)).replace(js,_1d);				}			}			_29.innerHTML="<iframe id=\"swfaddress-iframe\" src=\""+_1d+_1e().replace(/#/g,"?")+"\" frameborder=\"no\" scrolling=\"no\"></iframe>";			document.body.appendChild(_29);			_29.style.position="absolute";			_29.style.left=_29.style.top="-9999px";			_14=_29.getElementsByTagName("iframe")[0];		}		if(_12.ie) {			asual.util.Events.addListener(_14,"load",asual.util.Functions.bindAsListener(_25,this));		}		if(_12.safari) {			_15=document.createElement("form");			_15.id="swfaddress-form";			_15.method="get";			_29.appendChild(_15);			if (typeof top.document.location.swfaddress=="undefined") {				top.document.location.swfaddress=new Object();			}			if (typeof top.document.location.swfaddress.history!="undefined") {				_1b=top.document.location.swfaddress.history.split(",");			}		}		_2d.call(this);		_22.call(this);		setInterval(_21,50);};		var _2d=function() {			if(typeof urchinTracker!="undefined")				{var _2e=top.location.pathname+this.getValue();				_2e=_2e.replace(/\/\//,"/");				_2e=_2e.replace(/^\/$/,"");				urchinTracker(_2e);			}		};		this.getId=function(){			if(!_13) {				return null;			}			return _17;		};		this.setId=function(id) {			if (!_13) {				return null;			}			_17=id;		};		this.getTitle=function() {			if (!_13) {				return null;			}			return top.document.title;		};		this.setTitle=function(_30) {			if (!_13) {				return null;			}			if (_30=="null") {				_30="";			}			if (typeof _30!="undefined") {				_19=_30;				top.document.title=unescape(_19);			}		};		this.getStatus=function() {			if(!_13) {				return null;			}			return top.status;		};		this.setStatus=function(_31) {			if (!_13) {				return null;			}			if (!_12.safari) {				if(_31=="null"||typeof _31=="undefined") {					_31="";				}				var _32=top.location.href.indexOf("#");				if(_32==-1) {					_31=top.location.href+"#"+_31;				} else {					_31=top.location.href.substr(0,_32)+"#"+_31;				}				top.status=_31;				}			};			this.resetStatus=function() {				top.status="";			};			this.getValue=function() {				if(!_13) {					return null;				}				var _33=_20.replace(/#/gi,"");				return _33;			};			this.setValue=function(_34) {				if(!_13) {					return null;				}				if(_34=="null") {					_34="";				}				if(_16==_34) {					return;				}				var _35;				var obj=document[_17]||document.getElementById(_17);				if(obj) {					_35=obj.getSWFAddressValue();					if(_35=="null") {						_35="";					}				}				_20="#"+_34;				if(_35==_34) {					_16=_34;					_22();				} else {					_22();					_16=_34;				}				if (_12.safari) {					_15.action=_20;					_1b[history.length]=_20;					top.document.location.swfaddress.history=_1b.toString();					_18=true;					_1a=history.length+1;					_15.submit();					_18=false;				} else {					if(_35==_34) {						top.location.hash=_20;					}				}				if(_12.ie) { 					var win=_14.contentWindow;					var _38="?"+_1e().substring(_20.indexOf("#")+1);					win.location.assign(win.location.pathname+_38);				}				_2d.call(this);			};			if(!_13) {				return;			}			if (_12.safari) {				for (var i=1;i<_1a;i++) {					_1b.push("");				}				_1b.push(top.location.hash);			}			if(_12.ie) {				if(_20=="") {					top.location.hash="#";				} else {					top.location.hash=_1e();				}			}			asual.util.Events.addListener(window,"load",asual.util.Functions.bindAsListener(_28,this));			_16=this.getValue();		};		if(typeof deconcept!="undefined"&&deconcept.SWFObject) {			asual.SWFAddressObject=asual.util.Functions.extend(deconcept.SWFObject,function(swf,id,w,h,ver,c,_40,_41,_42,_43) {				asual.SWFAddressObject.superConstructor.apply(this,arguments);				asual.SWFAddress.setId(id);			});			SWFObject=deconcept.SWFObject=asual.SWFAddressObject;		}		SWFAddress=asual.SWFAddress;