// vide les champs et desactive les boutons radio ou checkbox
function desactiver(btn) {
	switch(btn) {
		case 'modalite':
		document.form_paiement.montant1.value = "";
		document.form_paiement.montant2.value = "";
		document.form_paiement.montant3.value = "";
 		document.form_paiement.nb_echeance[0].checked = false;
		document.form_paiement.nb_echeance[1].checked = false;
		document.form_paiement.mt_egal.checked = false;
		break;
		case 'echeance':
		document.form_paiement.montant1.value = "";
		document.form_paiement.montant2.value = "";
		document.form_paiement.montant3.value = "";
		break;
	}
}

// divise le montant global en 2 ou 3 fois identiques et rempli les champs
function calcul() {
	var mtg = document.form_paiement.montant.value;
	var reg = new RegExp("^[0-9]+\\.[0-9]{2}$", "i"); // test du format xx.xx
	
	if(document.form_paiement.mt_egal.checked == false){ // si on décoche on vide les champs
		document.form_paiement.montant1.value = "";
		document.form_paiement.montant2.value = "";
		document.form_paiement.montant3.value = "";
	}else{ // si on coche on remplit
		if(mtg != "") { // si le montant n'est pas vide
		
			if (reg.test(mtg)) {
		
				if(document.form_paiement.nb_echeance[0].checked){ // si 2 echéances
				
				mt1 = Math.round((mtg/2)*100); // passge en centimes 15.30 => 1530
				mt2 = Math.round( (mtg*100)-mt1);
				mt1 = mt1.toString(); // passage en string
				mt2 = mt2.toString(); 
				var point1 = mt1.length - 2; // 2 decimales
				var point2 = mt2.length - 2;
				if (point1 >= 0) mt1 = mt1.substring(0, point1) + "." + mt1.substring(point1); // formatage montant => 15=15.00 ou 15.3=15.30
				if (point2 >= 0) mt2 = mt2.substring(0, point2) + "." + mt2.substring(point2); 
				document.form_paiement.montant1.value = mt1;
				document.form_paiement.montant2.value = mt2;
				
				}else if(document.form_paiement.nb_echeance[1].checked){ // si 3 échéances
				
				mt1 = Math.round(mtg/3*100);
				mt2 = Math.round((mtg*100)-(mt1*2));
				mt1 = mt1.toString(); // passage en string
				mt2 = mt2.toString(); 
				var point1 = mt1.length - 2; // 2 decimales
				var point2 = mt2.length - 2;
				if (point1 >= 0) mt1 = mt1.substring(0, point1) + "." + mt1.substring(point1); // formatage montant => 15=15.00 ou 15.3=15.30
				if (point2 >= 0) mt2 = mt2.substring(0, point2) + "." + mt2.substring(point2); 
				document.form_paiement.montant1.value = mt1;
				document.form_paiement.montant2.value = mt1;
				document.form_paiement.montant3.value = mt2;
				}
		
			}else{ 
				alert("Le format du montant global n\'est pas valide (cf.exemple)");
				document.form_paiement.montant.focus();
				document.form_paiement.mt_egal.checked = false;
			}
		}else if(mtg == "") { // si le montant est vide
			alert("Le champ montant global est vide (cf.exemple)");
			document.form_paiement.montant.focus();
			document.form_paiement.mt_egal.checked = false;		
		}
	}
}

// permet d'afficher/masquer le paiement en plusieurs fois
function affich(lst){	
 var div=document.getElementById("div_modalite"); 
 var div1=document.getElementById("div_condition"); 
 var div2=document.getElementById("div_echeance"); 
 var div3=document.getElementById("div_mt3"); 
 if (lst.selectedIndex == 1)
  div.style.display="inline";
 else
  div.style.display="none";
  div1.style.display="none";
  div2.style.display="none";
  div3.style.display="none";
	document.form_paiement.modalite[0].checked = false;
	document.form_paiement.modalite[1].checked = false;
}

// regarde si les champs sont vides ///////////

// remet la couleur dans l'input 
function couleur(obj) {
     obj.style.backgroundColor = "#FFFFFF";
}

function check() {
	var msg = "";
	var color = "#FFFF99";
if (document.form_paiement.nature.value == "")   {
      msg += "Veuillez choisir la nature du paiement\n";
      document.form_paiement.nature.style.backgroundColor = color;
   }
if (document.form_paiement.montant.value == "")   {
      msg += "Veuillez saisir un montant\n";
      document.form_paiement.montant.style.backgroundColor = color;
   }
if (document.form_paiement.reference.value == "")   {
      msg += "Veuillez saisir une référence du dossier\n";
      document.form_paiement.reference.style.backgroundColor = color;
   }
if (document.form_paiement.nom.value == "")   {
      msg += "Veuillez saisir votre nom\n";
      document.form_paiement.nom.style.backgroundColor = color;
   }
if (document.form_paiement.ville.value == "")   {
      msg += "Veuillez saisir la ville du siège social\n";
      document.form_paiement.ville.style.backgroundColor = color;
   }
if (msg == "") return(true);
   else   {
      alert(msg);
      return(false);
   }
}
/**************************/


// affichage div info au survol des images /////////////////////////////
/**********************************************************************/

/* IMPORTANT: Put script after tooltip div or 
	 put tooltip div just before </BODY>. */

var dom = (document.getElementById) ? true : false;
var ns5 = ((navigator.userAgent.indexOf("Gecko")>-1) && dom) ? true: false;
var ie5 = ((navigator.userAgent.indexOf("MSIE")>-1) && dom) ? true : false;
var ns4 = (document.layers && !dom) ? true : false;
var ie4 = (document.all && !dom) ? true : false;
var nodyn = (!ns5 && !ns4 && !ie4 && !ie5) ? true : false;

// resize fix for ns4
var origWidth, origHeight;
if (ns4) {
	origWidth = window.innerWidth; origHeight = window.innerHeight;
	window.onresize = function() { if (window.innerWidth != origWidth || window.innerHeight != origHeight) history.go(0); }
}

// avoid error of passing event object in older browsers
if (nodyn) { event = "nope" }

///////////////////////  CUSTOMIZE HERE   ////////////////////
// settings for tooltip 
// Do you want tip to move when mouse moves over link?
var tipFollowMouse= true;	
// Be sure to set tipWidth wide enough for widest image
var tipWidth= 185; // largeur tableau
var offX= 20;	// placement du tableau par rapport à la souris
var offY= 0; 
var tipFontFamily= "Verdana, arial, helvetica, sans-serif";
var tipFontSize= "10px";
// set default text color and background color for tooltip here
// individual tooltips can have their own (set in messages arrays)
// but don't have to
var tipFontColor= "#000000";
var tipBgColor= "#DDECFF"; 
var tipBorderColor= "#000080";
var tipBorderWidth= 1; // bordure
var tipBorderStyle= "ridge";
var tipPadding= 1; // marge interne

// tooltip content goes here (image, description, optional bgColor, optional textcolor)
var messages = new Array();
// multi-dimensional arrays containing: 
// image and text for tooltip
// optional: bgColor and color to be sent to tooltip

/* messages */
messages[0] = new Array('info.png','Pour effectuer un paiement <b>échelonné</b>, le montant global doit être d\'un minimum de <b>50€</b> pour 2 échéances ou de <b>100€</b> pour 3 échéances.',"#ffffff");

////////////////////  END OF CUSTOMIZATION AREA  ///////////////////

// preload images that are to appear in tooltip
// from arrays above
if (document.images) {
	var theImgs = new Array();
	for (var i=0; i<messages.length; i++) {
  	theImgs[i] = new Image();
		theImgs[i].src = messages[i][0];
  }
}

////////////////////////////////////////////////////////////
//  initTip	- initialization for tooltip.
//		Global variables for tooltip. 
//		Set styles for all but ns4. 
//		Set up mousemove capture if tipFollowMouse set true.
////////////////////////////////////////////////////////////
var tooltip, tipcss;
function initTip() {
	if (nodyn) return;
	tooltip = (ns4)? document.tipDiv.document: (ie4)? document.all['tipDiv']: (ie5||ns5)? document.getElementById('tipDiv'): null;
	tipcss = (ns4)? document.tipDiv: tooltip.style;
	if (ie4||ie5||ns5) {	// ns4 would lose all this on rewrites
		tipcss.width = tipWidth+"px";
		tipcss.fontFamily = tipFontFamily;
		tipcss.fontSize = tipFontSize;
		tipcss.color = tipFontColor;
		tipcss.backgroundColor = tipBgColor;
		tipcss.borderColor = tipBorderColor;
		tipcss.borderWidth = tipBorderWidth+"px";
		tipcss.padding = tipPadding+"px";
		tipcss.borderStyle = tipBorderStyle;
	}
	if (tooltip&&tipFollowMouse) {
		if (ns4) document.captureEvents(Event.MOUSEMOVE);
		document.onmousemove = trackMouse;
	}
}

window.onload = initTip;

/////////////////////////////////////////////////
//  doTooltip function
//			Assembles content for tooltip and writes 
//			it to tipDiv
/////////////////////////////////////////////////
var t1,t2;	// for setTimeouts
var tipOn = false;	// check if over tooltip link
function doTooltip(evt,num) {
	if (!tooltip) return;
	if (t1) clearTimeout(t1);	if (t2) clearTimeout(t2);
	tipOn = true;
	// set colors if included in messages array
	if (messages[num][2])	var curBgColor = messages[num][2];
	else curBgColor = tipBgColor;
	if (messages[num][3])	var curFontColor = messages[num][3];
	else curFontColor = tipFontColor;
	if (ns4) {
		var tip = '<table bgcolor="' + curBgColor + '" width="' + tipWidth + '" cellspacing="0" cellpadding="' + tipPadding + '" border="' + tipBorderWidth + '"><tr><td style="background:url(./img/' + messages[num][0] + ') no-repeat; padding-left:20px;" align="left" height="16"><span style="font-family:' + tipFontFamily + '; font-size:' + tipFontSize + '; color:' + curFontColor + ';">' + messages[num][1] + '</span></td></tr></table>';
		tooltip.write(tip);
		tooltip.close();
	} else if (ie4||ie5||ns5) {
		var tip = '<table bgcolor="' + curBgColor + '" width="' + tipWidth + '" cellspacing="0" cellpadding="' + tipPadding + '" border="0"><tr><td style="background:url(./img/' + messages[num][0] + ') no-repeat; padding-left:20px;" align="left" height="16"><span style="font-family:' + tipFontFamily + '; font-size:' + tipFontSize + '; color:' + curFontColor + ';">' + messages[num][1] + '</span></td></tr></table>';
		tipcss.backgroundColor = curBgColor;
	 	tooltip.innerHTML = tip;
	}
	if (!tipFollowMouse) positionTip(evt);
	else t1=setTimeout("tipcss.visibility='visible'",100);
}

var mouseX, mouseY;
function trackMouse(evt) {
	mouseX = (ns4||ns5)? evt.pageX: window.event.clientX + document.body.scrollLeft;
	mouseY = (ns4||ns5)? evt.pageY: window.event.clientY + document.body.scrollTop;
	if (tipOn) positionTip(evt);
}

/////////////////////////////////////////////////////////////
//  positionTip function
//		If tipFollowMouse set false, so trackMouse function
//		not being used, get position of mouseover event.
//		Calculations use mouseover event position, 
//		offset amounts and tooltip width to position
//		tooltip within window.
/////////////////////////////////////////////////////////////
function positionTip(evt) {
	if (!tipFollowMouse) {
		mouseX = (ns4||ns5)? evt.pageX: window.event.clientX + document.body.scrollLeft;
		mouseY = (ns4||ns5)? evt.pageY: window.event.clientY + document.body.scrollTop;
	}
	// tooltip width and height
	var tpWd = (ns4)? tooltip.width: (ie4||ie5)? tooltip.clientWidth: tooltip.offsetWidth;
	var tpHt = (ns4)? tooltip.height: (ie4||ie5)? tooltip.clientHeight: tooltip.offsetHeight;
	// document area in view (subtract scrollbar width for ns)
	var winWd = (ns4||ns5)? window.innerWidth-20+window.pageXOffset: document.body.clientWidth+document.body.scrollLeft;
	var winHt = (ns4||ns5)? window.innerHeight-20+window.pageYOffset: document.body.clientHeight+document.body.scrollTop;
	// check mouse position against tip and window dimensions
	// and position the tooltip 
	if ((mouseX+offX+tpWd)>winWd) 
		tipcss.left = (ns4)? mouseX-(tpWd+offX): mouseX-(tpWd+offX)+"px";
	else tipcss.left = (ns4)? mouseX+offX: mouseX+offX+"px";
	if ((mouseY+offY+tpHt)>winHt) 
		tipcss.top = (ns4)? winHt-(tpHt+offY): winHt-(tpHt+offY)+"px";
	else tipcss.top = (ns4)? mouseY+offY: mouseY+offY+"px";
	if (!tipFollowMouse) t1=setTimeout("tipcss.visibility='visible'",100);
}

function hideTip() {
	if (!tooltip) return;
	t2=setTimeout("tipcss.visibility='hidden'",100);
	tipOn = false;
}
//-->

