
/***** SCRIPT.JS ***********************************************************

Version : 2008-08-04
Auteur :
	Sébastien Poubelle
	Jérôme Demyttenaere
	Philippe Prédhomme
	Rémi Wipliez

******************************************************************************/

/***** Liste des fonctions ****************************************************

isRef 1.0 2005-02-15
getRef 1.3 2005-02-15
loadOne 1.0 2005-02-15
loaded 3.0 2006-03-17
IsNumeric 3.0
popup 3.1 2005-05-03
MM_preloadImages 3.0
agrandir 3.0 2005-02-15
ejs_img_fx 1.0 2005-02-15
roll 1.0 2005-02-15
calqude_open 1.0 2006-03-17
calque_close 1.0 2006-03-17
calendar 1.0 2006-03-17
Under-Warz (Librairie)
popList 1.0 2007-04-11
getXhr 1.0 2007-03-13
form_traiter 1.0 2007-03-17
qteInput 1.0 2007-04-25
getXhrById 1.0 2007-05-30
getXhrByScript 1.0 2007-05-30
getXhrFormById 1.0 2007-05-29
getXhrFormByScript 1.0 2007-05-30
dateString 1.0 2007-05-16
getMousePos 1.0 2007-02-02
bulle_open 1.0 2007-01-22
bulle_close 1.0 2007-01-22

******************************************************************************/


/************************** isRef 1.0 2005-02-15
 *
 * Auteur : Sébastien Poubelle
 *
 * Retourne la référence du navigateur : 'DOM', 'IE4' ou 'NS4'.
 *
 */

function isRef()
{
	if(document.getElementById) return "DOM";
	if(document.all) return "IE4";
	if(document.layers) return "NS4";
}

/************************** getRef 1.3 2005-02-15
 *
 * Auteur : Sébastien Poubelle
 *
 * Retourne l'odjet d'indice 'galerie_id' du script courant.
 *
 */

function getRef(id)
{
	if(isRef() == "DOM") return document.getElementById(id);
	if(isRef() == "IE4") return document.all[id];
	if(isRef() == "NS4") return document.layers[id];
}

/************************** IsNumeric 4.0
 *
 * Auteur : Jérôme Demyttenaere, Sébastien Poubelle
 *
 * Vérifie si une chaine de caractère est au format numérique.
 *
 */

function isNumeric(strString)
{
	var strValidChars = "0123456789.- ";
	var strChar;
	var blnResult = true;
	if (strString.length == 0) return false;
	for (i = 0; i < strString.length && blnResult == true; i++) {
		strChar = strString.charAt(i);
		if (strValidChars.indexOf(strChar) == -1) blnResult = false;
		}
	return blnResult;
}

/************************** popup 5.1 2008-10-14
 *
 * Auteur : Sébastien Poubelle
 *
 * void popup( String pop_url , Int pop_width , Int pop_height [ , String pop_bar ] [ , String pop_resize ] )
 *
 * pop_url : url de la page pop-up.
 * pop_width : largeur de la fenêtre en pixel.
 * pop_height : hauteur de la fenêtre en pixel.
 * pop_bar : affichage de la scrollbar, option : 'yes' / 'no', defaut : 'yes'.
 * pop_resize : redimensionne la fenetre, option : 'yes' / 'no', defaut : 'yes'.
 *
 */

function popup(pop_url,pop_width,pop_height)
{
	var pop_bar = "yes", pop_resize = "yes", pop_arg = popup.arguments;
	if(pop_arg.length >= 4) pop_bar = pop_arg[3];
	if(pop_arg.length >= 5 && pop_arg[4] == "yes") pop_resize = pop_arg[4];
	pop_name = pop_url;
	var caracteres = new Array("/",".","?","&","=",":","-");
	for(var i = 0; i < caracteres.length; i++)
	{
		while(pop_name.indexOf(caracteres[i]) != -1)
		{
			pop_name = pop_name.replace(caracteres[i],'');
		}
	}
	pop_left = (window.screen.availWidth / 2) - (pop_width / 2);
	pop_top = (window.screen.availHeight / 2) - (pop_height / 2);
	window.open(pop_url,pop_name,"left=" + pop_left + ",top=" + pop_top + ",width=" + pop_width + ",height=" + pop_height + ",scrollbars="+ pop_bar +",resizable="+ pop_resize);
}

/************************** MM_preloadImages 3.0
 *
 * Auteur : Macromédia
 *
 */

function MM_preloadImages()
{
	var d = document;
	if(d.images)
	{
		if(!d.MM_p) d.MM_p=new Array();
		var i, j = d.MM_p.length, a = MM_preloadImages.arguments;
		for(i=0; i<a.length; i++) if(a[i].indexOf("#") != 0)
		{
			d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];
		}
	}
}

/************************** agrandir 3.0 2005-02-15
 *
 * Auteur : Sébastien Poubelle
 *
 *
 */

function agrandir(img_src,link_color,bg_color)
{
	var pop_width = 640;
	var pop_height = 480;
	var pop_img = new Image();
	pop_img.src = img_src;
	pop_win = window.open("","","width="+ pop_width +",height="+ pop_height +",scrollbars=no");
	pop_win.document.open();
	pop_win.document.write("<head><title>Comoresto.com</title></head>");
	pop_win.document.write("<body leftmargin=0 topmargin=0 marginwidth=0 marginheight=0");
	pop_win.document.write(" link='"+ link_color +"' alink='"+ link_color +"' vlink='"+ link_color +"' bgcolor='"+ bg_color +"'>");
	pop_win.document.write("<table width='100%' height='100%' border=0>");
	pop_win.document.write("<tr><td align=center valign=middle><img src='"+ pop_img.src +"' style='border-color:#62013A;border-style:solid;border-width:1px;'></td></tr>");
	pop_win.document.write("<tr><td align=center valign=middle><font size='1' face='Verdana, Arial, Helvetica, sans-serif'>");
	pop_win.document.write("<a href='javascript:window.close();'>Fermer la fen&ecirc;tre</a>");
	pop_win.document.write("</font></td></tr>");
	pop_win.document.write("</table>");
	pop_win.document.write("</body>");
	pop_win.document.close();
	if(pop_img.width != 0 || pop_img.height != 0) {
		pop_width = pop_img.width + 40;
		pop_height = pop_img.height + 80;
		pop_win.resizeTo(pop_width,pop_height);
		}
	pop_left = (window.screen.availWidth / 2) - (pop_width / 2);
	pop_top = (window.screen.availHeight / 2) - (pop_height / 2);
	pop_win.moveTo(pop_left,pop_top);
}

/************************** ejs_img_fx 1.0 2005-02-15
 *
 * Auteur : ???
 *
 */

function ejs_img_fx(img)
{
	if(img && img.filters && img.filters[0])
	{
		img.filters[0].apply();
		img.filters[0].play();
	}
}

/************************** roll 1.0 2005-02-15
 *
 * Auteur : Sébastien Poubelle
 *
 * i : indice en cours. Lors de l'initialisation il est égale à 0.
 * speed : Vitesse du roll over en ms
 * ejs_img_fx : booléen indiquant si il existe un style du genre style="filter:progid:DXImageTransform.Microsoft.Fade(Duration=1)" sur l'image.
 * roll : objet image dans laquelle le roll over est effectif
 *
 * Préalablement il faut initialiser 'roll_array[roll]', tableau des sources images de l'animation. 'roll_array' étant déjà définit.
 *
 * exemple :
 *
 *	<IMG id="monImage" src="" width="410" height="600" border="0">
 *	
 *	<SCRIPT>
 *	
 *	roll_array['monImage'] = new Array();
 *	roll_array['monImage'][0] = "monImage1.jpg";
 *	roll_array['monImage'][1] = "monImage2.jpg";
 *	roll_array['monImage'][2] = "monImage3.jpg";
 *	roll_array['monImage'][3] = "monImage4.jpg";
 *	roll_array['monImage'][4] = "monImage5.jpg";
 *	
 *	roll(0,3000,false,roll);
 *	
 *	</SCRIPT>
 *
 *
 */

var roll_array = new Array();

function roll(i,speed,ejs_img_fx,roll)
{
	if(ejs_img_fx) ejs_img_fx(getRef(roll));
	getRef(roll).src = roll_array[roll][i];
	i++;
	if(i >= roll_array[roll].length) i = 0;
	setTimeout("roll("+ i +","+ speed +","+ ejs_img_fx +",'"+ roll +"')",speed);
}

/************************** calque_open 1.0 2006-03-17
 *
 * Auteur : Sébastien Poubelle
 *
 */

function calque_open(id)
{
	if(getRef(id).style.visibility == 'hidden')
	{
		getRef(id).style.visibility = 'visible';
//		setTimeout("calque_close('"+id+"')",9000);
	}
	else getRef(id).style.visibility = 'hidden';
}

/************************** calque_close 1.0 2006-03-17
 *
 * Auteur : Sébastien Poubelle
 *
 */

function calque_close(id)
{
	getRef(id).style.visibility = 'hidden';
}

/************************** Under-Warz
 *
 * Auteur : Under-Warz http://siteduzero.com/membres-294-1821.html
 *
 * Librairie de fonction divers pour le formatage de texte.
 * http://siteduzero.com/tuto-3-1982-1-creation-d-un-bbcode-et-apercu-en-direct.html
 * Je les ai légèrement modifié pour les adapter à ma bibliothèque de fonction.
 *
 */

var ptag = String.fromCharCode(5,6,7);

// function deblaie(reg,t)
// {
// 	textarea=new String(t);
// 	return textarea.replace(reg,'$1\n');
// }

function remblaie(t)
{
	textarea=new String(t);
	textarea=textarea.replace(/\r/g,'');
	return textarea.replace(/\n/g,'');
}

function remplace_tag(reg,rep,t)
{
	textarea=new String(t);
	return textarea.replace(reg,rep);
}

function nl2br(t)
{
	textarea=new String(t);
	textarea=textarea.replace(/\r/g,'');
	return textarea.replace(/\n/g,'<BR/>');
}

function space2nbsp(t)
{
	textarea=new String(t);
	return textarea.replace(/ /g,'&nbsp;');
}

function nl2khol(t)
{
	textarea = new String(t);
	textarea=textarea.replace(/\r/g,'');
	return textarea.replace(/\n/g,ptag);
}

function unkhol(t)
{
	textarea=new String(t);
	return textarea.replace(new RegExp(ptag,'g'),'\n');
}

/************************** getXhr 1.0 2007-03-13
 *
 * Retourne un objet XMLHttpRequest en déterminant le navigateur utilisé.
 *
 */

function getXhr()
{
	var xhr = null; 
	if(window.XMLHttpRequest) xhr = new XMLHttpRequest(); // Firefox et autres
	else if(window.ActiveXObject) // Internet Explorer
	{
		try { xhr = new ActiveXObject("Msxml2.XMLHTTP"); }
		catch (e) { xhr = new ActiveXObject("Microsoft.XMLHTTP"); }
	}
	else // XMLHttpRequest non supporté par le navigateur 
	{
		alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
		xhr = false;
	}
	return xhr
}

/************************** getXhrById 1.0 2007-05-30
 *
 * Retourne le résultat du script arg_script dans l'id arg_id.
 *
 */

function getXhrById (arg_script, arg_id)
{
	var xhr = getXhr()
	xhr.onreadystatechange = function()
	{
		if(xhr.readyState == 4 && xhr.status == 200)
		{
			getRef(arg_id).innerHTML = xhr.responseText;
		}
	}
	xhr.open("GET",arg_script,true);
	xhr.send(null);
}

/************************** getXhrByScript 1.0 2007-05-30
 *
 * Exécute le résultat retourné par le script arg_script.
 *
 */

function getXhrByScript (arg_script)
{
	var xhr = getXhr()
	xhr.onreadystatechange = function()
	{
		if(xhr.readyState == 4 && xhr.status == 200)
		{
			eval(xhr.responseText);
		}
	}
	xhr.open("GET",arg_script,true);
	xhr.send(null);
}


/************************** getXhrFormById 1.0 2007-05-29
 *
 * Traite un formulaire arg_form par un objet XMLHttpRequest en utilisant
 * le script arg_script. Le résultat est retourné dans l'id arg_id.
 *
 */

function getXhrFormById (arg_form, arg_script, arg_id)
{
	var xhr = getXhr()
	var xhr_data = "";
	for(var i = 0; i < arg_form.elements.length; i++)
	{
		if(i != 0) xhr_data += "&";
		if(arg_form.elements[i].type == "file")
		{
			alert("file : "+arg_form.elements[i].name+"="+arg_form.elements[i].value+" ("+arg_form.elements[i].tmp_name+")");
			
		}
		else xhr_data += arg_form.elements[i].name +"="+ arg_form.elements[i].value;
	}
	xhr.onreadystatechange = function()
	{
		if(xhr.readyState == 4 && xhr.status == 200)
		{
			getRef(arg_id).innerHTML = xhr.responseText;
		}
	}
	xhr.open("POST",arg_script,true);
	xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded");
	xhr.send(xhr_data);
}


/************************** getXhrFormByScript 1.0 2007-05-30
 *
 * Traite un formulaire arg_form par un objet XMLHttpRequest en utilisant
 * le script arg_script. Le résultat retourné est exécuté en tand que
 * script JS.
 *
 */

function getXhrFormByScript (arg_form, arg_script)
{
	var xhr = getXhr()
	var xhr_speed = 10;
	var xhr_data = "";
	for(var i = 0; i < arg_form.elements.length; i++)
	{
		if(i != 0) xhr_data += "&";
		xhr_data += arg_form.elements[i].name +"="+ arg_form.elements[i].value;
	}
	xhr.onreadystatechange = function()
	{
		if(xhr.readyState == 4 && xhr.status == 200)
		{
			eval(xhr.responseText);
		}
	}
	xhr.open("POST",arg_script,true);
	xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded");
	xhr.send(xhr_data);
}

/************************** dateString 1.0 2007-05-16
 *
 * Retourne une chaine de caractère de forme 'AAAA-MM-JJ'
 * à partir de l'objet arg_date.
 *
 * exemple d'utilisation : alert(dateString(new Date()));
 *
 */

function dateString (arg_date)
{
	var annee = arg_date.getFullYear();
	annee = ""+ annee;
	var mois = arg_date.getMonth()+1;
	mois = ""+ mois;
	if(mois.length < 2) mois = "0"+ mois;
	var jour = arg_date.getDate();
	jour = ""+ jour;
	if(jour.length < 2) jour = "0"+ jour;
	return(annee +"-"+ mois +"-"+ jour);
}

/************************** stringDate 1.0 2009-05-19
 *
 * Retourne un objet date à partir d'une chaine de
 * caractère de forme 'AAAA-MM-JJ HH:MM:SS'.
 *
 */

function stringDate(arg_string)
{
	var array = new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec");
	var string = array[arg_string.substr(5,2)-1]+" "+arg_string.substr(8,2)+" "+arg_string.substr(11,8)+" "+arg_string.substr(0,4);
	return new Date(string);
}

/************************** getMousePos 1.0 2007-02-02
 *
 * Détermine la valeurdes deux variables de position de la sourie :
 * mouse_pos_X et mouse_pos_Y.
 *
 */

var mouse_pos_X = 0;
var mouse_pos_Y = 0;
function getMousePos(e)
{
 	if(document.all)
 	{
 		mouse_pos_X = event.x + document.body.scrollLeft;
 		mouse_pos_Y = event.y + document.body.scrollTop;
 	}
 	else
 	{
		mouse_pos_X = e.pageX;
		mouse_pos_Y = e.pageY;
	}
}
document.onmousemove = getMousePos;


/************************** setSelectOptions 2.0 2009-05-19
 *
 * Checks/unchecks all options of a <select> element
 *
 * @param   string   the form name
 * @param   string   the element name
 * @param   boolean  whether to check or to uncheck the element
 *
 * @return  boolean  always true
 *
 */

function setSelectOptions(the_form, the_select, do_check)
{
    var selectObject = document.forms[the_form].elements[the_select];
    var selectCount  = selectObject.length;
    for (var i = 0; i < selectCount; i++)
	{
        selectObject.options[i].selected = do_check;
    } // end for
}

/************************** setCheckOptions 2.0 2009-06-04
 *
 * Checks/unchecks all options of a <input radio> element
 *
 */
/*
function setCheckOptions(the_form, the_select, do_check) // 'checked' ''
{
    var selectObject = document.forms[the_form].elements[the_select];
    var selectCount  = selectObject.length;
    for (var i = 0; i < selectCount; i++)
	{
        selectObject.options[i].checked = do_check;
    } // end for
}
*/

/*COCHE TOUTES LES CASES D'UN BLOC DU FORMULAIRE DE RECHERCHE*/

function checked_all(num){

	var list_input = document.getElementById('detail_'+tab_num_search[num]).getElementsByTagName('input');

	if(document.getElementById(tab_num_search[num]+'_all').checked==true) var all_checked = 'checked';

	else var all_checked = '';

	

	for(var i=0;i<list_input.length;i++){

		if(list_input[i].id!=tab_num_search[num]+'_all') list_input[i].checked = all_checked;

	}

	

	if(all_checked=='checked') aff_dans_input(tab_num_search[num],'all');

	else aff_dans_input(tab_num_search[num],'none');

}




/************************** html_entity_decode
*
*/

function html_entity_decode (str) {
  var ta = document.createElement("textarea");
  ta.innerHTML = str.replace(/</g,"&lt;").replace(/>/g,"&gt;");
  return ta.value;
}

/************************** mailto 1.1 2007-06-22
 *
 * Auteur : Sébastien Poubelle
 *
 */

function mailto(user,domaine,style)
{
	var at = "@"
	document.write("<a href=\"mailto:"+ user + at + domaine +"\" style=\""+ style +"\">");
	document.write(user + at + domaine +"</a>");
}


/************************** BETA ******************************************************************************************************************************************/

function isDate(dateStr)
{
//	var datePat = /^(\d{1,2})(\/|-)(\d{1,2})(\/|-)(\d{4})$/;
	var datePat = /^(\d{4})(-)(\d{1,2})(-)(\d{1,2})$/;
	var matchArray = dateStr.match(datePat); // is the format ok?

	if (matchArray == null)
	{
//		alert("Please enter date as either mm/dd/yyyy or mm-dd-yyyy.");
		return false;
	}

	year = dateStr.substr(0,4);
	month = dateStr.substr(5,2);
	day = dateStr.substr(8,2);
	
// 	month = matchArray[1]; // p@rse date into variables
// 	day = matchArray[3];
// 	year = matchArray[5];

	if (month < 1 || month > 12)
	{ // check month range
//		alert("Month must be between 1 and 12.");
		return false;
	}

	if (day < 1 || day > 31)
	{
//		alert("Day must be between 1 and 31.");
		return false;
	}

	if ((month==4 || month==6 || month==9 || month==11) && day==31)
	{
//		alert("Month "+month+" doesn`t have 31 days!")
		return false;
	}

	if (month == 2)
	{ // check for february 29th
		var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
		if (day > 29 || (day==29 && !isleap))
		{
//			alert("February " + year + " doesn`t have " + day + " days!");
			return false;
		}
	}
	return true; // date is valid
}

/************************** preloadImg 1.0 2008-12-12
 *
 * Auteur : Sebastien POUBELLE
 *
 */

function preloadImg(arg_array)
{
	for(var i = 0; i < arg_array.length; i++)
	{
		MM_preloadImages(arg_array[i]);
	}
}

/************************** carrousel 1.0 2008-02-20
 *
 * Auteur : Sébastien Poubelle
 *
 * Array {
 * 	0 => A href
 * 	1 => IMG alt
 * 	2 => IMG src
 * }
 *
carrousel["evenementielle"] = new Array();
carrousel["evenementielle"][0] = ["index.html","","images/galerie_a_gauche.gif"];
carrousel["evenementielle"][1] = ["javascript:;","","images/galerie_a_gauche.gif"];
carrousel["evenementielle"][2] = ["javascript:;","","images/galerie_a_gauche.gif"];
carrousel["evenementielle"][3] = ["javascript:;","","images/galerie_a_gauche.gif"];
carrousel["evenementielle"][4] = ["javascript:;","","images/galerie_a_gauche.gif"];
carrousel["evenementielle"][5] = ["javascript:;","","images/galerie_a_gauche.gif"];
carrousel["evenementielle"][6] = ["javascript:;","","images/galerie_a_gauche.gif"];
carrousel["evenementielle"][7] = ["javascript:;","","images/galerie_a_gauche.gif"];
carrousel["evenementielle"][8] = ["javascript:;","","images/galerie_a_gauche.gif"];
carrousel["evenementielle"][9] = ["javascript:;","","images/galerie_a_gauche.gif"];
carrousel["evenementielle"][10] = ["javascript:;","","images/galerie_a_gauche.gif"];
carrousel["evenementielle"][11] = ["javascript:;","","images/galerie_a_gauche.gif"];
carrouselInit("evenementielle",500,120,120,"cadre");
 */

var carrousel = new Array();

function carrouselOver (arg_id, arg_val)
{
	carrousel[arg_id]["boo"] = true;
	$pos = parseInt(getRef(arg_id).style.left);
	if(arg_val == -1)
	{
		if($pos < carrousel[arg_id]["min"])
		{
			$pos += 2;
			getRef(arg_id).style.left = $pos+"px";
		}
	}
	else
	{
		if($pos > -carrousel[arg_id]["max"])
		{
			$pos -= 2;
			getRef(arg_id).style.left = $pos+"px";
		}
	}
	if(carrousel[arg_id]["boo"] && $pos < carrousel[arg_id]["min"] && $pos > -carrousel[arg_id]["max"])
	{
		carrousel[arg_id]["temp"] = setTimeout("carrouselOver(\""+arg_id+"\","+arg_val+")",0);
	}
}

function carrouselOut (arg_id)
{
	carrousel[arg_id]["boo"] = false;
	clearTimeout(carrousel[arg_id]["temp"]);
}

function carrouselInit (arg_id, arg_size, arg_width, arg_height, arg_left, arg_right, arg_spacer, arg_class)
{
	var retour = "";
	var size = 100;
	for(var i = 0; i < carrousel[arg_id].length; i++)
	{
		retour += "<A href=\""+carrousel[arg_id][i][0]+"\"><IMG alt=\""+carrousel[arg_id][i][1]+"\" src=\""+arg_spacer+"\" width=\""+arg_width+"\" height=\""+arg_height+"\" border=\"0\" class=\""+arg_class+"\" style=\"margin:5px;background: url("+carrousel[arg_id][i][2]+") no-repeat center center;\" /></A>";
		size += (arg_width+10);
	}
	carrousel[arg_id]["boo"] = false;
	carrousel[arg_id]["min"] = 0;
	carrousel[arg_id]["max"] = (size-arg_size);
	document.write("<TABLE border=\"0\" cellpadding=\"0\" cellspacing=\"3\"><TR>\n");
	document.write("	<TR>\n");
	document.write("		<TD><IMG alt=\"&#060;\" src=\""+arg_left+"\" border=\"0\" onmouseover=\"carrouselOver('"+arg_id+"',-1);\" onmouseout=\"carrouselOut('"+arg_id+"');\" style=\"cursor:pointer;\" /></TD>\n");
	document.write("		<TD align=\"left\"><DIV style=\"position:relative;width:"+arg_size+"px;height:"+(arg_height+15)+"px;z-index:3;overflow:hidden;vertical-align:center;\">\n");
	document.write("			<DIV id=\""+arg_id+"\" style=\"position:absolute;width:"+(size*2)+"px;height:"+(arg_height+10)+"px;z-index:2;float:left;left:0px;\">"+retour+"</DIV>\n");
	document.write("		</DIV></TD>\n");
	document.write("		<TD><IMG alt=\"&#062;\" src=\""+arg_right+"\" border=\"0\" onmouseover=\"carrouselOver('"+arg_id+"',1);\" onmouseout=\"carrouselOut('"+arg_id+"');\" style=\"cursor:pointer;\" /></TD>\n");
	document.write("	</TR>\n");
	document.write("</TABLE>\n");
}

/************************** calendar 1.0 2006-03-17
 *
 * Auteur : Sébastien Poubelle
 *
 */

function calendar(id, buttoncolor, bgcolor, color, langue, objet_input, m_plus)
{
	var str = "";
	var flg = 0;
	M_fr = new Array("Janvier","Fevier","Mars","Avril","Mai","Juin","Juillet","Aout","Septembre","Octobre","Novembre","Decembre");
	D_fr = new Array("Dim","Lun","Mar","Mer","Jeu","Ven","Sam");
	M_uk = new Array("January","February","March","April","May","June","July","August","September","October","November","December");
	D_uk = new Array("Sun","Mon","Tue","Wed","Thu","Fri","Sat");

	M = M_uk;
	D = D_uk;
	if(langue == "fr") {
		M = M_fr;
		D = D_fr;
		}

	if(m_plus < 0) m_plus = 0;
	if(m_plus > 12) m_plus = 12;

	pdy = new Date();        // today
	pmo = pdy.getMonth();    // present month
	pyr = pdy.getYear();     // present year
	if(pyr < 1000) pyr += 1900;

	yr = pyr;                // present year
	mo = pmo + m_plus;                // present month
	if(mo > 11) {
		mo = mo - 12;
		yr++;
		}

	bgn = new Date(M_uk[mo] + " 1," + yr); // assign to date

	dy = bgn.getDay();
	yr = eval(yr);
	d = "312831303130313130313031";
	if (yr / 4 == Math.floor(yr / 4)){
		d = d.substring(0,2) + "29" + d.substring(4,d.length);
		}
	pos = (mo*2);
	ld = eval(d.substring(pos,pos+2));

	str += ""
	+ "<TABLE BGCOLOR=\""+ bgcolor +"\" BORDER=0 cellpadding=\"1\" cellspacing=\"2\"' style=\"border-right:1px solid "+ color +";border-top:1px solid "+ color +";border-left:1px solid "+ color +";border-bottom:1px solid "+ color +";\">"
	+ "<TR><TD ALIGN=CENTER BGCOLOR=\""+ buttoncolor +"\" style=\"cursor:pointer;font-size:12px;font-family:Verdana,sans-serif;color:"+ color +";\" onclick=\"calendar('"+ id +"','"+ buttoncolor +"','"+ bgcolor +"','"+ color +"','"+ langue +"','"+ objet_input +"',"+ (m_plus-1) +");\"><B>&#171;</B></TD><TD ALIGN=CENTER COLSPAN=5 style=\"font-size:10px;font-family:Verdana,sans-serif;color:"+ color +";\"><B>"+ M[mo] +" "+ yr +"</B></TD><TD ALIGN=CENTER BGCOLOR=\""+ buttoncolor +"\" style=\"cursor:pointer;font-size:12px;font-family:Verdana,sans-serif;color:"+ color +";\" onclick=\"calendar('"+ id +"','"+ buttoncolor +"','"+ bgcolor +"','"+ color +"','"+ langue +"','"+ objet_input +"',"+ (m_plus+1) +");\"><B>&#187;</B></TD></TR>"
	+ "<TR>";
	for (var i=0;i<7;i++){
		str += "<TD WIDTH=\"15%\" style=\"font-size:10px;font-family:Verdana,sans-serif;color:"+ color +";\" ALIGN=CENTER>"+ D[i] +"</TD>";
		}
	str += "</TR><TR>";
	ctr = 0;
	for(var i = 0; i < 7; i++) {
		if (i < dy){
			str += "<TD></TD>";
			}
		else{
			ctr++;
			jour = ""+ ctr; 
			if(jour.length < 2) jour = "0"+ jour;
			mois = ""+ (mo+1); 
			if(mois.length < 2) mois = "0"+ mois;
			str += "<TD BGCOLOR=\""+ buttoncolor +"\" ALIGN=CENTER style=\"cursor:pointer;font-size:10px;font-family:Verdana,sans-serif;color:"+ color +";\" onclick=\""+ objet_input +".value = '"+ jour +"/"+ mois +"/"+ yr +"';calque_close('"+ id +"');\">"+ ctr +"</TD>";
			}
		}
	str += "</TR><TR>";
	while (ctr < ld){
		for (var i = 0; i < 7; i++){
			ctr++;
			if (ctr > ld){
				str += "<TD></TD>";
				}
			else{
				jour = ""+ ctr; 
				if(jour.length < 2) jour = "0"+ jour;
				mois = ""+ (mo+1); 
				if(mois.length < 2) mois = "0"+ mois;
				str += "<TD BGCOLOR=\""+ buttoncolor +"\" ALIGN=CENTER style=\"cursor:pointer;font-size:10px;font-family:Verdana,sans-serif;color:"+ color +";\" onclick=\""+ objet_input +".value = '"+ jour +"/"+ mois +"/"+ yr +"';calque_close('"+ id +"');\">"+ ctr +"</TD>";
				}
			}
		str += "</TR><TR>";
		}
	str += "</TR></TABLE>";
	getRef(id).innerHTML = str;
	}

/************************** popList 1.0 2007-04-11
 *
 */

var pop_list = new Array();

function popList(arg_form, arg_input, arg_url, arg_value, arg_lib, arg_style, arg_script)
{
	arg_name = arg_form+"_"+arg_input;
	pop_list[arg_name] = new Array();
	pop_list[arg_name]["name"] = arg_name;
	pop_list[arg_name]["input"] = arg_input;
	pop_list[arg_name]["value"] = arg_value;
	pop_list[arg_name]["form"] = arg_form;
	pop_list[arg_name]["url"] = arg_url;
	pop_list[arg_name]["style"] = arg_style;
	pop_list[arg_name]["script"] = arg_script;
	document.write("<INPUT name=\"poplist_"+arg_name+"\" type=\"button\" value=\""+arg_lib+"\" onClick=\"popList_open('"+arg_name+"');\" style=\""+arg_style+"\" /><INPUT name=\""+arg_input+"\" type=\"hidden\" value=\""+arg_value+"\" />");
}

function popList_open(arg_name)
{
	pop_width = 480;
	pop_height = 480;
	pop_left = (window.screen.availWidth / 2) - (pop_width / 2);
	pop_top = (window.screen.availHeight / 2) - (pop_height / 2);
	pop_url = pop_list[arg_name]["url"];
	if(pop_url.indexOf("?") == -1) pop_url += "?";
	else pop_url += "&";
	pop_url += "name="+pop_list[arg_name]["name"]+"&value="+pop_list[arg_name]["value"];
	window.open(pop_url,"poplist"+pop_list[arg_name]["name"],"left="+pop_left+",top="+pop_top+",width="+pop_width+",height="+pop_height+",scrollbars=yes,noresize");
}

function popList_set(arg_name,arg_value,arg_lib)
{
	pop_list[arg_name]["value"] = arg_value;
//	alert("document."+pop_list[arg_name]["form"]+"."+pop_list[arg_name]["input"]+".value=\""+arg_value+"\"");
	setTimeout("document."+pop_list[arg_name]["form"]+"."+pop_list[arg_name]["input"]+".value=\""+arg_value+"\"",10);
	setTimeout("document."+pop_list[arg_name]["form"]+".poplist_"+pop_list[arg_name]["name"]+".value=\""+arg_lib+"\"",10);
//	alert(document.form_prospect.contact_id.value);
	if(pop_list[arg_name]["script"] != "") setTimeout(pop_list[arg_name]["script"],10);
}

/************************** qteInput 1.0 2007-04-25
 *
*/
 
var qteInput_array = new Array();

function qteInput (arg_form, arg_input, arg_value, arg_min, arg_max, arg_img_plus, arg_img_moins, arg_style, arg_script)
{
	var qteInput = arg_form +"_"+ arg_input;
	qteInput_array[qteInput] = new Array();
	qteInput_array[qteInput]["min"] = arg_min;
	qteInput_array[qteInput]["max"] = arg_max;
	qteInput_array[qteInput]["script"] = arg_script;
	document.write("<INPUT id=\""+ qteInput +"\" name=\""+ arg_input +"\" type=\"hidden\" value=\""+ arg_value +"\" />");
	document.write("<TABLE border=\"0\" cellpadding=\"1\" cellspacing=\"0\" style=\""+ arg_style +"\">");
	document.write("<TR><TD class=\"input\"><DIV id=\""+ qteInput +"_str\">"+ arg_value +"</DIV></TD>");
	document.write("<TD><TABLE border=\"0\" cellpadding=\"0\" cellspacing=\"1\">");
	document.write("<TR><TD><A href=\"javascript:qteInput_plus('"+ qteInput +"');\"><IMG alt=\"&#043;\" src=\""+ arg_img_plus +"\" border=\"0\" /></A></TD></TR>");
	document.write("<TR><TD><A href=\"javascript:qteInput_moins('"+ qteInput +"');\"><IMG alt=\"&#045;\" src=\""+ arg_img_moins +"\" border=\"0\" /></A></TD></TR>");
	document.write("</TABLE></TD></TR>");
	document.write("</TABLE>");
}

function qteInput_plus (qteInput)
{
	var val = getRef(qteInput).value;
	if(qteInput_array[qteInput]["max"] == null || val < qteInput_array[qteInput]["max"])
	{
		val++;
		getRef(qteInput).value = val;
		getRef(qteInput+"_str").innerHTML = val;
		if(qteInput_array[qteInput]["script"] != "") setTimeout(qteInput_array[qteInput]["script"],10);
	}
}

function qteInput_moins (qteInput)
{
	var val = getRef(qteInput).value;
	if(qteInput_array[qteInput]["min"] == null || val > qteInput_array[qteInput]["min"])
	{
		val--;
		getRef(qteInput).value = val;
		getRef(qteInput+"_str").innerHTML = val;
		if(qteInput_array[qteInput]["script"] != "") setTimeout(qteInput_array[qteInput]["script"],10);
	}
}



//affichage/masquage d'un block
function display_block(val){
	if(document.getElementById(val).style.display == 'none') document.getElementById(val).style.display = 'block';
	else document.getElementById(val).style.display = 'none';
}




/************************** bulle_open 1.0 2007-01-22
 *
 * Auteur : Sébastien Poubelle
 *
*/
 
function bulle_open(arg_width, arg_height, arg_titre, arg_contenu)
{
	var finalPosX = mouse_pos_X-10;
	if(finalPosX < 0) finalPosX = 0;
	var finalPosY = mouse_pos_Y+10;
	if(finalPosY < 0) finalPosY = 0;
	getRef("bulle").style.left = finalPosX+"px";
	getRef("bulle").style.top = finalPosY+"px";
	getRef("bulle").style.width = (arg_width+12)+"px";
	getRef("bulle_detail").style.width = arg_width+"px";
	getRef("bulle_detail").style.height = arg_height+"px";
	getRef("bulle_titre").innerHTML = arg_titre;
	getRef("bulle_detail").innerHTML = arg_contenu;
	getRef("bulle").style.visibility = "visible";
}

/************************** bulle_close 1.0 2007-01-22
 *
 * Auteur : Sébastien Poubelle
 *
 */

function bulle_close()
{
	getRef("bulle_detail").innerHTML = "";
	getRef("bulle").style.visibility = "hidden";
}

/*AFFICHE OU MASQUE DES BLOCS*/
function display_block(bloc) {
	if(document.getElementById(bloc).style.display == 'block') document.getElementById(bloc).style.display = 'none';
	else document.getElementById(bloc).style.display = 'block';
}

function RunFoo(swf, hauteur, largeur, variable) {
document.write("<object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" codebase=\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0\" width=\""+hauteur+"\" height=\""+largeur+"\">");
document.write("<param name=\"movie\" value=\""+swf+"\" />");
document.write("<param name=\"quality\" value=\"high\" />");
document.write("<param name=\"wmode\" value=\"transparent\" />");
document.write("<param name=\"menu\" value=\"false\" />");
document.write("<param name=FlashVars VALUE=\"resto="+variable+"\">");
document.write("<embed src=\""+swf+"\" FlashVars=\"resto="+variable+"\" quality=\"high\" pluginspage=\"http://www.macromedia.com/go/getflashplayer\" type=\"application/x-shockwave-flash\" width=\""+hauteur+"\" height=\""+largeur+"\" wmode=\"transparent\" menu=\"false\"></embed>");
document.write("</object>");
}


