// JavaScript Document
var ie5=document.all && !window.opera
var ns6=document.getElementById

function lib_bwcheck(){ //Browsercheck (needed)
	this.ver=navigator.appVersion
	this.agent=navigator.userAgent
	this.dom=document.getElementById?1:0
	this.opera5=this.agent.indexOf("Opera 5")>-1
	this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom && !this.opera5)?1:0; 
	this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom && !this.opera5)?1:0;
	this.ie4=(document.all && !this.dom && !this.opera5)?1:0;
	this.ie=this.ie4||this.ie5||this.ie6
	this.mac=this.agent.indexOf("Mac")>-1
	this.ns6=(this.dom && parseInt(this.ver) >= 5) ?1:0; 
	this.ns4=(document.layers && !this.dom)?1:0;
	this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns4 || this.ns6 || this.opera5)
	return this
}
var bw=new lib_bwcheck()

function detectMacXFF() {
  var userAgent = navigator.userAgent.toLowerCase();
  if (userAgent.indexOf('mac') != -1 && userAgent.indexOf('firefox')!=-1) {
    return true;
  }
}
FireFoxMac=detectMacXFF();

function makeObj(obj,nest){
	nest=(!nest) ? "":'document.'+nest+'.'		
	this.el=bw.dom?document.getElementById(obj):bw.ie4?document.all[obj]:bw.ns4?eval(nest+'document.'+obj):0;
  	this.css=bw.dom?document.getElementById(obj).style:bw.ie4?document.all[obj].style:bw.ns4?eval(nest+'document.'+obj):0;		
	return this
}

function makeFadeObj()
{
	this.obj=null;
	this.fade=0;
	this.delta_fade=0;
	return this;
}

function showmenu(menu)
{
	if (!document.all&&!document.getElementById)
		return
	menu.delta_fade=sub_menu_fade_speed;
	menu.obj.css.visibility="visible"
	return false
}

function hidemenus(){
	for (i=0;i<nb_submenus;i++)
	{
		submenu[i].delta_fade=-sub_menu_fade_speed;
	}
}

if (ie5||ns6)
	document.onclick=hidemenus
	
function preInit()
{
	submenu=new Array();
	nb_submenus=3;
	for (i=0;i<nb_submenus;i++)
	{
		submenu[i]=new makeFadeObj();
	}

	hyperlien=new Array();
	for (i=0;i<nb_hps;i++)
	{
		hyperlien[i]=new makeFadeObj();
	}
	
	img_back_fadeobj=new makeFadeObj();
}

sFadePeriod = 20; 
fade_step=5;
display_counter=5;
initial_wait=0;

nb_hps=6;
final_opacity_submenu=80;
hp_fade_speed=0.18;
sub_menu_fade_speed=0.38;
back_fade_speed=0.1;
fade_max_delta=100;

function update_fade_obj(obj,delay_ms,final_opacity,hide)
{
	if (((obj.fade<100) && (obj.delta_fade>0)) || (obj.fade>0) && (obj.delta_fade<0))
	{
		delta_fade=Math.round(delay_ms*obj.delta_fade);
		if (delta_fade>fade_max_delta)
			delta_fade=fade_max_delta;
		if (delta_fade<-fade_max_delta)
			delta_fade=-fade_max_delta;
		if (delta_fade==0 && obj.delta_fade!=0)
		{
			if (obj.delta_fade>0)
				delta_fade=1;
			else
				delta_fade=-1;
		}
		
		obj.fade=obj.fade+delta_fade;
		if (obj.fade<0)	obj.fade=0;
		if (obj.fade>100) obj.fade=100;
		if (!FireFoxMac)
		{
			if (hide && (obj.fade==0) && (delta_fade<0))
				obj.obj.css.visibility="hidden";
				
			if (final_opacity)
			{
				var effective_fade=Math.round(obj.fade*final_opacity/100);
				
				obj.obj.css.filter="alpha(opacity="+effective_fade+")";
				obj.obj.css.opacity=effective_fade/100;
			}
			else
			{
				obj.obj.css.filter="alpha(opacity="+obj.fade+")";
				obj.obj.css.opacity=obj.fade/100;
			}		
		}
		else
		{
			if (delta_fade>0)
			{
				obj.obj.css.visibility="visible";
			}
			else
			{
				if  ((delta_fade<0) && ((final_opacity && obj.fade<final_opacity/2) || (obj.fade<50)))
					obj.obj.css.visibility="hidden";
			}
		}			
	}
}

var previous_ms=0;
function HpTimer()
{
	var new_date=new Date();
	var new_ms=new_date.getTime();
	delta=new_ms-previous_ms;
	previous_ms=new_ms;

	//for rollover
	for (i=0;i<nb_hps;i++)
	{
		update_fade_obj(hyperlien[i],delta,false);
	}
	//for submenu
	for (i=0;i<nb_submenus;i++)
	{
		update_fade_obj(submenu[i],delta,final_opacity_submenu,true);
	}

	//for background
	update_fade_obj(img_back_fadeobj,delta,false)
	
    tim_hp = setTimeout("HpTimer()",sFadePeriod);
}

function init_fade_obj(fade_obj,id)
{
	fade_obj.obj=new makeObj(id,'');
	if (!FireFoxMac)
	{
		fade_obj.obj.css.filter="alpha(opacity=0)";
		fade_obj.obj.css.opacity=0;
	}
	else
		fade_obj.obj.css.visibility="hidden";
}

function Init()
{
	for (i=0;i<nb_submenus;i++)
	{
		init_fade_obj(submenu[i],"submenu"+i);
		submenu[i].obj.css.visibility="hidden";
	}
	init_fade_obj(img_back_fadeobj,'img_back');
	
	img_back_fadeobj.obj.css.visibility="visible";
	for (i=0;i<nb_hps;i++)
	{
		init_fade_obj(hyperlien[i],'hp'+i);
	}
	HpTimer();
}

preInit();

