// Transforme les caractères de la chaîne str dont le code ASCII est inconnu
function ReplaceWord(str) {
	str_temp = str;
	var ms = "-" + "	 " + " " + " "  + " " + " " + " " + " "  + " " + " "  + " " + " " + " " + " " + " " + " "  + " " + " " + " " + " " + " "  + " " + " " + " " + " " + " "  + " " + " " + " " + " ";
	var msi = 0;
	var i, c, rs, ts;
	while (msi < ms.length) {
		c = ms.charAt(msi);
		rs = ms.substring(++msi, msi+1);
		msi += 1;
		i = 0;
		while (true) { 
			i = str_temp.indexOf(c, i);
			if (i == -1) break;
			ts = str_temp.substring(0, i);
			str_temp = ts + rs + str_temp.substring(++i, str_temp.length);
		}
	}
	return str_temp;
}

// Encode en HTML les caractères ASCII de la chaîne str dont le code est supérieur à 128
function HTMLEncode(str) {
	str_temp = str;
	for (i=0; i<str_temp.length; i++) {
		ascii = str_temp.charCodeAt(i);
		if (ascii>128) {
			str_temp = str_temp.substring(0, i) + "&#" + ascii + ";" + str_temp.substring(i+1, str_temp.length);
		}
	}
	str_temp = trim(str_temp)
	return ReplaceWord(str_temp);
}

// Fonction de suppression d'espaces en début et fin de chaîne
function trim(s)
{ 
return s.replace(/^\s+/,"").replace(/\s+$/,"");
}

// Encode en HTML tous les champs d'un formulaire en utilisant la fonction HTMLEncode ci-dessus
function FormHTMLEncode(formulaire) {
	for (fhe_i=0; fhe_i<formulaire.elements.length; fhe_i++) {
		if ((formulaire.elements[fhe_i].type=="select-one") || (formulaire.elements[fhe_i].type=="select-multiple")) {
			for (fhe_j=0; fhe_j<formulaire.elements[fhe_i].options.length; fhe_j++) {
				formulaire.elements[fhe_i].options[fhe_j].value = HTMLEncode(formulaire.elements[fhe_i].options[fhe_j].value);
			}
		}
		else {
			if (formulaire.elements[fhe_i].type!="file") {
				formulaire.elements[fhe_i].value = HTMLEncode(formulaire.elements[fhe_i].value);
			}
		}
	}
}

// Permet l'ouverture d'une page dans un popup
function popup (url,h,v,x,y)
{
   propriete="toolbar=1,location=0,directories=0,status=0,menubar=0,scrollbars=1,resizable=1,width="+ h +",height=" + v + ",top="+x+",left="+y;
   var popup = window.open (url, "LoireDivatte",propriete);
   if( navigator.appName.substring(0,8) == "Netscape" )
           {popup.location = url;}
}


// Redimensionne les popup à l'ouverture
function new_size(hauteur_supp) {
	var hauteur;
	var largeur;
	var version=navigator.appVersion;
	var haut_ecran=window.screen.height;
	//var larg_ecran=window.screen.width;

	if (version.lastIndexOf('Win') != -1) {
		if (navigator.appName=="Netscape") {
			hauteur=document.height;
			if (haut_ecran>=768)
			{
				if (hauteur>=768) {hauteur=708}
			} else {
				if (hauteur>=600) {hauteur=540}
			}
			largeur=document.width;
			window.setResizable(true);
			window.resizeTo(largeur,hauteur+hauteur_supp+12);
			window.setResizable(true);
		} else {
			hauteur=window.document.body.scrollHeight+29+16;
			if (haut_ecran>=768)
			{
				if (hauteur>=768) {hauteur=738}
			} else {
				if (hauteur>=600) {hauteur=525}
			}
			largeur=window.document.body.scrollWidth+10+20;
			window.resizeTo(largeur,hauteur+hauteur_supp+12);
		}
	} else {
		if (navigator.appName=="Netscape") {
			hauteur=document.height;
			if (haut_ecran>=768)
			{
				if (hauteur>=768) {hauteur=708}
			} else {
				if (hauteur>=600) {hauteur=540}
			}
			largeur=document.width;
			window.setResizable(true);
			window.resizeTo(largeur,hauteur+hauteur_supp+12);
			window.setResizable(true);
		} else {
			hauteur=document.height;
			largeur=document.width;
			window.alert(hauteur + '\n' + largeur);
			window.resizeTo(largeur,hauteur+hauteur_supp+12);
		}
	}
}

function est_nombre(num)
{
	nombre_ok = true ; // Test s'il n'y a que des chiffres
	for(var k = 0; k < num.length;k++)
	{
		var c = num.substring(k,k+1);
		if (!(c == "0" || c == "1" || c == "2" || c == "3" || c == "4" || c == "5" || c == "6" || c == "7" || c == "8" || c == "9"))
		{
			nombre_ok = false ; 
		}
	}
	return(nombre_ok) ;
}
