var xmlHttpReq;
if(location.hostname!="www.rubberbandance.com")
{
	location.assign( "http://www.rubberbandance.com/#" + SWFAddress.getValue() )
}

var detect = navigator.userAgent.toLowerCase();
var OS,browser,version,total,thestring;

if (checkIt('konqueror'))
{
	browser = "Konqueror";
	OS = "Linux";
}
else if (checkIt('safari')) browser = "Safari"
else if (checkIt('omniweb')) browser = "OmniWeb"
else if (checkIt('opera')) browser = "Opera"
else if (checkIt('webtv')) browser = "WebTV";
else if (checkIt('icab')) browser = "iCab"
else if (checkIt('msie')) browser = "Internet Explorer"
else if (!checkIt('compatible'))
{
	browser = "Netscape Navigator"
	version = detect.charAt(8);
}
else browser = "An unknown browser";

if (!version) version = detect.charAt(place + thestring.length);

if (!OS)
{
	if (checkIt('linux')) OS = "Linux";
	else if (checkIt('x11')) OS = "Unix";
	else if (checkIt('mac')) OS = "Mac"
	else if (checkIt('win')) OS = "Windows"
	else OS = "an unknown operating system";
}

function checkIt(string)
{
	place = detect.indexOf(string) + 1;
	thestring = string;
	return place;
}

//////////////////////////////
//
// MODIF FRANCK
// 
//////////////////////////////
function fade(id,dir,rate,delay){
	var obj = document.getElementById(id);

	if(opacity == null){
		
			if(dir == "in"){
				opacity = 0;
			}
			if(dir == "out"){
				opacity = 1;
			}
	}
	
	if(dir == "in"){
			opacity += Number(rate);
			obj.style.MozOpacity = opacity;
			obj.style.opacity = opacity;
			obj.style.filter = "alpha(opacity="+Math.round(((opacity)*100))+")";
			if(opacity < 1){
				setTimeout("fade('"+id+"','"+dir+"','"+rate+"','"+delay+"')", delay);
			} else {
				opacity = null;
				return;
			}
	}
	
	if(dir == "out"){
			opacity -= Number(rate);
			obj.style.MozOpacity = opacity;
			obj.style.opacity = opacity;
			obj.style.filter = "alpha(opacity="+Math.round(((opacity)*100))+")";
			if(opacity > 0){
				setTimeout("fade('"+id+"','"+dir+"','"+rate+"','"+delay+"')", delay);
			} else {
				opacity = null;
				return;
			}
	}
}
	
function beginfade(id,dir,rate,delay){

	if(browser == 'Safari'){
		opacity= 0;
		fade(id,dir,rate,delay);
	}
};
//////////////////////////////
//
// END MODIF FRANCK
// 
//////////////////////////////






function embedSWF()
{
	var flashvars = {
		menu_flash_alias:"menu_flash",
		menu_video_alias:"menu_video",
		library:"flash/library.swf",
		photoBackground:"images/photo1.jpg"
	};
	
	var params = {
		align:"middle",
		quality:"high",
		bgcolor:"#333",
		allowfullscreen:'false',
		height:"100%",
		width:"100%",
		wmode:"transparent",
		allowScriptAccess:"always"
	};
	
	var attributes = {
		id:"flashContent",
		name:"flashContent"
	};
	
	swfobject.embedSWF(
		root_url+ "/flash/rubberbandance.swf",
		"flashContent",
		"100%", "100%", "9.0.0",
		root_url+"swfobject/expressInstall.swf",
		flashvars,
		params,
		attributes				
	);
}

function getLocationHref()
{
	return location.href;
}

function loadPage(alias)
{	
	var query="";
	if(SWFAddress.getQueryString()!="" )
		query = "?"+SWFAddress.getQueryString();
	SWFAddress.setValue( alias + query);
}

function changeLanguage()
{
	var query="";	
	if(SWFAddress.getQueryString()=="")
		query = "?l=en";
	SWFAddress.setValue( SWFAddress.getPath()+query );
}

function getTransport() {
    if (window.XMLHttpRequest) {
        return new XMLHttpRequest();
    } else if (window.ActiveXObject) {
        try {
            return new ActiveXObject('Msxml2.XMLHTTP');
        } catch(e) {
            return new ActiveXObject('Microsoft.XMLHTTP');
        }
    }
}

function loadDiv(slashalias)
{
	xmlHttpReq = getTransport(); 

	xmlHttpReq.onreadystatechange = onResponse;
	
	var query = "";
	if(SWFAddress.getQueryString()!="")
		query="?" + SWFAddress.getQueryString();
	
	xmlHttpReq.open("GET", root_url + slashalias + query, true);

	xmlHttpReq.setRequestHeader("Content-Type", "application/xml"); 
	xmlHttpReq.send(''); 
}


var oldSection = "";
function onResponse()
{ 
	if(xmlHttpReq.readyState == 4)
	{
		if(xmlHttpReq.status == 200)
		{
			xmlDoc = parseStringToDom( xmlHttpReq.responseText );
			var div = document.getElementById('conteneur');
			var title = document.getElementsByTagName('title')[0];
			var newInnerDiv;
			var newTitle;
			var newSection;
			
			try
			{				
				newInnerDiv = xmlDoc.getElementById('conteneur').innerHTML;
				newTitle    = xmlDoc.getElementsByTagName('title')[0].innerHTML;
				newSection  = xmlDoc.getElementsByTagName('section')[0].innerHTML;
			}catch(e){
				try{
					var objNodeList    = xmlDoc.documentElement.selectNodes("//div[@id='conteneur']");
					var titleNodeList  = xmlDoc.documentElement.selectNodes("//title");
					var newSectionList = xmlDoc.documentElement.selectNodes("//section");
							
					newTitle    = titleNodeList [0].firstChild.xml; 
					newInnerDiv = objNodeList   [0].firstChild.xml;
					
					
					if(newSectionList[0].firstChild!=null)
						newSection  = newSectionList[0].firstChild.xml;
					else
						newSection="";
				}catch(e)
				{
					alert(e.message);
				}
			}
			div.innerHTML = newInnerDiv;
			SWFAddress.setTitle(newTitle);	
			
			if(newSection != oldSection){
				beginfade('conteneur', 'in', 0.1, '0.5')		
			}else{
				beginfade('texte', 'in', 0.1, '0.5')
			}
			oldSection = newSection;
			fancybox();
		}else{
			document.ajax.dyn.value="Error: returned status code " + xmlHttpReq.status + " " + xmlHttpReq.statusText;
		}
	}
}

function fancybox(){
	$("p#photo a").fancybox({
		'hideOnContentClick': true
	})
}






function parseStringToDom(str)
{
	try{ //Internet Explorer
		xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
		xmlDoc.async="false";
		xmlDoc.loadXML(str);
	}catch(e){
		try{ //Firefox, Mozilla, Opera, etc.
			parser=new DOMParser();
			xmlDoc=parser.parseFromString(str,"text/xml");
	    }catch(e)
	    {
	    	alert(e.message)
	    }
	}
	return xmlDoc;
}

function handleChange(event)
{
	if(event.path == '/')
	{
		loadDiv("/" + defaultAlias);
	}else{
		loadDiv( event.path );
	}
}
function start()
{
	SWFAddress.addEventListener(SWFAddressEvent.CHANGE, handleChange);
	if(SWFAddress.getPath()=="/")
		loadDiv( "/" +defaultAlias )
	else
		loadDiv( SWFAddress.getPath());
}
