var reqPage;
var numMediaSlider;
var numMediaTotal;
var selectedMedia = 0;
var currUrlSpan;
var theMediaUrl;
		
function AsynchPage(){
	if (reqPage.readyState == 4 && reqPage.status == 200 && reqPage.responseText != null && reqPage.responseText != "")
	{
		_gaq.push(['_trackEvent', 'page', page + '.html']);
		theMediaUrl = "";
		$('#idMain').html(reqPage.responseText);
		InitPageElements();
		SwitchLang();
		ResetDocumentTitle();
	}	
}

function LoadPage(_page) {
	if(page != _page){
		$('#idMain').html("<div></div>");
		TimerMediaClear();
		
		page = _page;
		reqPage = MakeRequest();
		if(reqPage) {
			
			reqPage.onreadystatechange = AsynchPage;
			reqPage.open("GET", GetFileToLoad(page), true);
			reqPage.send("");
		}
	}
}

function InitFirstMedia(){
	if(numMediaSlider > 0){
		DisplayMedia(0, false);
	}
}

function RefreshMediaSliderVisibility(){
	if(numMediaSlider > 1){
		$("#idDivRightFrise").css("visibility", "visible");
	}else{
		$("#idDivRightFrise").css("visibility", "hidden");
	}
}

function InitPageElements(){
	
	numMediaSlider = $("#idFrise .clsMediaImg").length;
	
	numMediaTotal = $("#legendsFR .clsSpanRightLegendSmall").length + $("#legendsFR .clsSpanRightLegendBig").length;
	selectedMedia = 0;
	
	RefreshMediaSliderVisibility();
	
	for( var i = 0; i < numMediaSlider; i++ )
	{
		var currImg = $("#idFrise .clsMediaImg").get(i);
		$(currImg).css("top", 0);
		$(currImg).css("left", (48 + 16) * i);			
	}
	
	$('#idFrise .clsMediaImg').mouseover(function() {
		var index = $("#idFrise .clsMediaImg").index(this);
		if(selectedMedia != index){
			$(this).css("border", "2px solid #CFB53B");
		}
	});
	
	$('#idFrise .clsMediaImg').mouseout(function() {
		var index = $("#idFrise .clsMediaImg").index(this);
		if(selectedMedia != index){
			$(this).css("border", "2px solid white");
		}
	});
	
	ResetPrevNextMedia();
	InitFirstMedia();
}

function ResetPrevNextMedia(){
	
	if(selectedMedia == 0){
		$('#prevMediaPage').css("visibility", "hidden");
	}else{
		$('#prevMediaPage').css("visibility", "visible");
	}
	
	if(selectedMedia == numMediaSlider - 1){
		$('#nextMediaPage').css("visibility", "hidden");
	}else{
		$('#nextMediaPage').css("visibility", "visible");
	}
}

function HidePrevNextMedia(){
	$('#prevMediaPage').css("visibility", "hidden");
	$('#nextMediaPage').css("visibility", "hidden");
}

function DisplayMedia(_index, _showInFlash){

	selectedMedia = _index;
	SetCurrentMedia();
	
	RefreshSelectedMedia();
	
	if(_index >= numMediaSlider || numMediaSlider == 0){
	
		HidePrevNextMedia();
		
		$('#idDivRightFrise').css("visibility", "hidden");
		$('#idCloseMedia').css("visibility", "visible");
		
		if(numMediaSlider > 1){
			ShowCloseButton();
		}else{
			HideCloseButton();
		}
		
	}else{
		HideCloseButton();
		
		ResetPrevNextMedia();
		
		RefreshMediaSliderVisibility();
		
		$('#idCloseMedia').css("visibility", "hidden");
	}
	
	TimerMediaClear();
	SlideMedia();
	
	if((_showInFlash == true) || (_showInFlash == undefined)){
		ShowInFlash();
	}
	ShowLegend();
}

function ShowCloseButton(){
	$("#idContent #idBackFrise").css("visibility", "visible");
}

function HideCloseButton(){
	$("#idContent #idBackFrise").css("visibility", "hidden");
}

function ShowLegend(){
	
	var elt0;
	var elt;
	
	for( var i = 0; i < numMediaTotal; i++ )
	{
		elt0 = $("#legendsFR");
		elt = $("#idLegend_" + i, elt0);
		$(elt).css("visibility", "hidden");
		
		elt0 = $("#legendsUK");
		elt = $("#idLegend_" + i, elt0);
		$(elt).css("visibility", "hidden");
	}	
	
	if(lang =="FR"){
	
		elt0 = $("#legendsFR");
		elt = $("#idLegend_" + selectedMedia, elt0);
		$(elt).css("visibility", "visible");
		
		elt0 = $("#legendsUK");
		elt = $("#idLegend_" + selectedMedia, elt0);
		$(elt).css("visibility", "hidden");
	}else{
		elt0 = $("#legendsFR");
		elt = $("#idLegend_" + selectedMedia, elt0);
		$(elt).css("visibility", "hidden");
		
		elt0 = $("#legendsUK");
		elt = $("#idLegend_" + selectedMedia, elt0);
		$(elt).css("visibility", "visible");
	}
}
		
function ShowInFlash(){
	var blnShow = false;
	try{
		document.getElementById('flSwf').FetchMedia();
		blnShow = true;
	}
	catch(ex){
		 //alert('Error > ShowInFlash');
	}
}

function SetCurrentMedia(){
	if(lang == 'FR'){
		currUrlSpan = $(".listUrlMediasFR span").get(selectedMedia);
		theMediaUrl = $(currUrlSpan).html();
	}else{
		currUrlSpan = $(".listUrlMediasUK span").get(selectedMedia);
		theMediaUrl = $(currUrlSpan).html();
	}
}

var tempoSendFlash = null;

function gimmeTheMedia(){
	if(tempoSendFlash){
		clearTimeout(tempoSendFlash);
		tempoSendFlash = null;
	}
	try{
		if(theMediaUrl != null && theMediaUrl != ""){
			var swf = document.getElementById('flSwf');
			swf.GetTheMedia(theMediaUrl);
		}else{
			tempoSendFlash = window.setTimeout("gimmeTheMedia()", 500);
		}
		
	}
	catch(ex){
		 //alert('Error > gimmeTheMedia : ');
	}
}

function HideInFlash(){
	var blnHide = false;
	try{
		document.getElementById('flSwf').HideMedia();
		blnHide = true;
	}
	catch(ex){
	}
	if(!blnHide){
		var tempoHide = window.setTimeout("HideInFlash()", 500);
	}
}

function RefreshSelectedMedia(){
	for( var i = 0; i < numMediaSlider; i++ )
	{
		var currImg = $("#idFrise .clsMediaImg").get(i);
		if(selectedMedia != i){
			$(currImg).css("border", "2px solid white");	
		}
		else{		
			$(currImg).css("border", "2px solid #CFB53B");	
		}
	}
}

function SwitchLang(){
	var elt0;
	var elt;
	
	if (lang == "FR"){
		$(".clsUK").css("display", "none");
		$(".clsFR").css("display", "block");
		
		$(".clsUK span").css("display", "none");
		$(".clsFR span").css("display", "inline");
		
		$(".clsImgLang").attr("src", "img/UK.png");
	}else{
		$(".clsUK").css("display", "block");
		$(".clsFR").css("display", "none");
		
		$(".clsUK span").css("display", "inline");
		$(".clsFR span").css("display", "none");
		
		$(".clsImgLang").attr("src", "img/France.png");
	}
	
	for( var i = 0; i < numMediaTotal; i++ )
	{
		elt0 = $("#legendsFR");
		elt = $("#idLegend_" + i, elt0);
		$(elt).css("visibility", "hidden");
		
		elt0 = $("#legendsUK");
		elt = $("#idLegend_" + i, elt0);
		$(elt).css("visibility", "hidden");
	}	
	
	if(lang =="FR"){
		elt0 = $("#legendsFR");
		elt = $("#idLegend_" + selectedMedia, elt0);
		$(elt).css("visibility", "visible");
		
		elt0 = $("#legendsUK");
		elt = $("#idLegend_" + selectedMedia, elt0);
		$(elt).css("visibility", "hidden");
	}else{
		elt0 = $("#legendsFR");
		elt = $("#idLegend_" + selectedMedia, elt0);
		$(elt).css("visibility", "hidden");
		
		elt0 = $("#legendsUK");
		elt = $("#idLegend_" + selectedMedia, elt0);
		$(elt).css("visibility", "visible");
	}
	
	RefreshMenuSelection();
}

function SlideMedia(){
	if(numMediaSlider > 0){
		if(numMediaSlider > 5){
			var newX = 0;
			var wList2 = 48 * numMediaSlider + 16 * (numMediaSlider - 1);
			if(selectedMedia == 0){
				newX = 0;
			}else if(selectedMedia == 1){
				newX = 0;
			}else if(selectedMedia == numMediaSlider - 1){
				newX = -(numMediaSlider - 5) * (48 + 16)
			}else if(selectedMedia == numMediaSlider - 2){
				newX = -(numMediaSlider - 5) * (48 + 16)
			}else{
				newX = -(selectedMedia - 2) * (48 + 16)
			}
		
			$('#idFrise').animate({left: newX},{ duration: 150, easing: 'easeInQuad', complete: EndMediaTransition});
		}
		else{
			var wList = parseFloat($("#idDivRightFrise").css("width").replace("px", ""));
			var wList2 = 0;
			
			if(numMediaSlider > 1){
				wList2 = 48 * numMediaSlider + 16 * (numMediaSlider - 1);
			}else{
				wList2 = 48;
			}
			$("#idFrise").css("left", (wList -  wList2) * 0.5);
		}
		
		if(lang == 'FR'){
			currUrlSpan = $(".listUrlMediasFR span").get(selectedMedia);
			theMediaUrl = $(currUrlSpan).html();
		}else{
			currUrlSpan = $(".listUrlMediasUK span").get(selectedMedia);
			theMediaUrl = $(currUrlSpan).html();
		}
		
		if(theMediaUrl != null && numMediaSlider > 1 && theMediaUrl.indexOf(".flv") == -1 && theMediaUrl.indexOf(".f4v") == -1){
			timer3 = setTimeout("TimerMediaDone()",4000);
		}
	}
}

function TimerMediaDone(){
	
	if(selectedMedia < numMediaSlider - 1){
		DisplayMedia(selectedMedia+1, true);
	}else{
		DisplayMedia(0, true);
	}
}

function TimerMediaClear(){
	if(timer3){
		clearTimeout(timer3);
		timer3 = null;
	}
}

function EndMediaTransition(){
	ResetPrevNextMedia();
}

function GotoPrevMedia(){
	DisplayMedia(selectedMedia-1, true);
}

function GotoNextMedia(){
	DisplayMedia(selectedMedia+1, true);
}
