// ROLLOVER INPUT IMAGE + IMAGE
Event.observe(window, 'load', function(evt){
	var input = $$('input[type=image], img.rollover');
	input.each( function(e,index){
		var chemin = input[index].src;
		var pos_debut = chemin.lastIndexOf('/')+1;
		var pos_fin = chemin.lastIndexOf('.');
		var chemin_fichier = chemin.substring(0,pos_debut);
		var nom_fichier = chemin.substring(pos_debut,pos_fin);
		var ext_fichier = chemin.substr(pos_fin);
		Event.observe(e, 'mouseover', function(evt){
			e.src = chemin_fichier+nom_fichier+'_on'+ext_fichier;
		});			 
		Event.observe(e, 'mouseout', function(evt){
			e.src = chemin_fichier+nom_fichier+ext_fichier;
		});			 
	});
});

// CALCUL
var calculMensualite = function(num,iMontant,iTaux,iDuree,iMois){
//M = (K x (T/12)) / (1-(1+T/12)-n)
	var calcul = iMontant*iTaux / 100 / 12 * Math.pow(1+iTaux / 100 / 12, Number((iDuree * 12)+iMois)) / (Math.pow(1+Number(iTaux) / 100 / 12, Number((iDuree * 12)+iMois)) - 1);
	var iMens  = Math.round(calcul*100)/100;
	$('total'+num).value = iMens;
}

var calculMontant = function(num,iMens,iTaux,iDuree,iMois){
//K = (12 x M x ((1- (1+T/12)-n)) / T
	var calcul=iMens * (Math.pow(1 + Number(iTaux) / 100 / 12, Number(iDuree * 12)) - 1) / (Math.pow(1 + iTaux / 100 / 12, Number(iDuree * 12)) * iTaux / 100 / 12);
	iMont= Math.round(calcul*100)/100;
	$('amount'+num).value = iMont;
}

var calculDuree = function(num,iMontant,iMens,iTaux){
	/*
	K le capital emprunt,
	E la mensualit
	t le taux
	n la dure
	*/
	K = iMontant;
	m = iMens;
	t = iTaux/100;
	var calcul = (Math.log((12*m)/(12*m-t*K)))/(Math.log(1+t/12))/12;
	iDuree = Math.round(calcul);
	$('length'+num).value = iDuree;
}


var calcul = function(num){
	var erreur = false;
	var nbErreur = 0;
	var vitesse = 0.5;
	var message = '';
	if(num==1){
		var iMontant = Number($F('amount1'));
		var iTaux =  Number($F('rate1'));
		var iDuree = Number($F('length1'));
		var iMens = Number($F('total1'));
	}else{
		var iMontant = Number($F('amount2'));
		var iTaux =  Number($F('rate2'));
		var iDuree = Number($F('length2'));
		var iMens = Number($F('total2'));
	}
	
	//db(iMontant+"/"+iTaux+"/"+iDuree+"/"+iTotal);

	if(iMontant==''){ nbErreur++; }
	if(iTaux=='' || iTaux<3){ nbErreur++; }
	if(iDuree==''){	nbErreur++;	}
	if(iMens==''){	nbErreur++;	}

	if(nbErreur>1){
		message+='3 fiels out of 4 must be filled for the simulation '+num+'\n';
		if(iTaux=='' || iTaux<3){
			message+='Interest rate must be 3% at least for the simulation '+num;
		}
		alert(message);
	}

	//CALCUCS
	if(iMens=='' && nbErreur<=1){
		calculMensualite(num,iMontant,iTaux,iDuree,0);
	}
	if(iMontant=='' && nbErreur<=1){
		calculMontant(num,iMens,iTaux,iDuree,0);
	}
	if(iDuree=='' && nbErreur<=1){
		calculDuree(num,iMontant,iMens,iTaux);
	}

}

// VERIF CONTACT
var verifContact = function(){
	var erreur = false;	
	var vitesse = 0.5;
	var mail_reg_expression = /^[A-Za-z0-9._-]+@[A-Za-z0-9.\-]{2,}[.][A-Za-z]{2,4}$/;

	var last_name =$F('last_name');
	var first_name =  $F('first_name');
	var email = $F('email');
	var request = $F('request');
	
	/*
	db("last_name : " + last_name);
	db("first_name : " + first_name);
	db("email : " + email);
	db("request : " + request);
	*/

	// VERIF LAST NAME
	if(last_name==''){
		erreur = true;
		new Effect.Appear($('erreur1'),{duration:vitesse});
		$('erreur1').update('"Last name" is an obligatory field');
	}else{
		new Effect.Fade($('erreur1'),{duration:vitesse});
	}

	// VERIF FIRST NAME
	if(first_name==''){
		erreur = true;
		new Effect.Appear($('erreur2'),{duration:vitesse});
		$('erreur2').update('"First name" is an obligatory field');
	}else{
		new Effect.Fade($('erreur2'),{duration:vitesse});
	}
	
	// VERIF EMAIL
	if( mail_reg_expression.match(email)==false ){
		erreur = true;
		new Effect.Appear($('erreur3'),{duration:vitesse});
		$('erreur3').update('"E-mail" is an obligatory field');
	}else{
		new Effect.Fade($('erreur3'),{duration:vitesse});
	}
		
	// VERIF REQUEST
	if(request==''){
		erreur = true;
		new Effect.Appear($('erreur4'),{duration:vitesse});
		$('erreur4').update('"Your request" is an obligatory field');
	}else{
		new Effect.Fade($('erreur4'),{duration:vitesse});
	}
	
	// ENVOI	
	if(erreur==false){
		return true;
	}else{
		return false;	
	}
}


// GOODIES
Event.observe(window, 'load', function(evt){
	if(isId('a_aide')){
		var vitesse = 0.5;
		Event.observe('a_aide', 'mouseover', function(evt){
			new Effect.Appear($('aide'),{duration:vitesse});
		});
		Event.observe('a_aide', 'mouseout', function(evt){
			new Effect.Fade($('aide'),{duration:vitesse});
		});

		var div = $$('.telecharger');
		var a = $$('.bt_telecharger');
		div.each( function(e,index){
			e.setAttribute('id','div'+index);				   
		});
		a.each( function(e,index){
			e.setAttribute('id','a'+index);
			Event.observe('a'+index, 'click', function(evt){
				$('a'+index).blur();
				$('a'+index).href = 'javascript:void(0)';
				var etat = $('div'+index).style.display;
				if(etat=='none'){
					new Effect.BlindDown($('div'+index),{duration:vitesse});
				}else{
					new Effect.BlindUp($('div'+index),{duration:vitesse});
				}
			});
		});
	}
});

// SELECT
function Go(page) { // ex : <td  onClick="Go('actualite');"> --> index2.php?goto=actualite
	var url = window.location.search;
	window.location = page;
}


// ONGLET
var onglet = function(id){
	var vitesse = 0.5;
	var div = $$('.onglet');
	var a = $$('li.a_onglet a');

	// ALLUME LE BON ONGLET
	a.each( function(e,index){
		e.removeClassName('on');
	});
	$('a'+id).addClassName('on');
	
	// OUVRE LE BON ONGLET
	div.each( function(e,index){
		//$(e.id).style.display = 'none';
		new Effect.Fade(e.id,{duration:vitesse,afterFinish:
			function(){
				new Effect.Appear('onglet'+id,{duration:vitesse});
			}
		});
	});

}

Event.observe(window, 'load', function(evt){
	if(isId('region_detail')){
		var a = $$('li.a_onglet a');
		a.each( function(e,index){
			e.setAttribute('id','a'+index);
			Event.observe(e, 'click', function(evt){
				e.blur();
				onglet(index);
			});
		});
	}
});


// GLOSSAIRE + STAGES
var accordeon = function(id){
	var vitesse = 0.1;
	var div = $$('.accordeon');
	var a = $$('h2 a, h3 a');

	// ALLUME LE BON ONGLET
	a.each( function(e,index){
		e.removeClassName('on');
	});
	$('a'+id).addClassName('on');
	
	// OUVRE LE BON ONGLET
	div.each( function(e,index){
		//$(e.id).style.display = 'none';
		new Effect.Fade(e.id,{duration:vitesse,afterFinish:
			function(){
				new Effect.Appear('div'+id,{duration:vitesse});
			}
		});
	});

}
Event.observe(window, 'load', function(evt){
	
	if(isId('accordeons')){
		var a = $$('#accordeons h2 a, #accordeons h3 a');
		var div = $$('#accordeons .accordeon');

		div.each( function(e,index){
			e.setAttribute('id','div'+index);
		});

		a.each( function(e,index){
			e.setAttribute('id','a'+index);
			Event.observe(e, 'click', function(evt){
				e.blur();
				accordeon(index);
			});
		});
		
		// OUVERTURE SPCIFIQUE DEPUIS UNE URL
		var myhash = window.location.hash;
		var myhash = myhash.substr(1);
		if(myhash){
			div2show = $$('a[name='+myhash+']');
			div2showId = div2show[0].id;
			accordeon(div2showId.substr(1));
		}
	}
});