// Contrôle de saisie des formulaires
function FP_Verif(F, OKs) {
	var E = F.elements
	for (Nom in OKs) {
		var Ok = true;
		if (OKs[Nom][0] == 'Liste') {
			if (E[Nom].selectedIndex == -1 || E[Nom].options[E[Nom].selectedIndex].value == 0) Ok = false;
		
		} else if (OKs[Nom][0] == 'DateValide') {
			if (FP_VerifDate(E[Nom].value) < 1 ) Ok = false;
		
		} else if (OKs[Nom][0] == 'DateOuVide') {
			if (E[Nom].value != 0 && E[Nom].value != '' && FP_VerifDate(E[Nom].value) < 1 ) Ok = false;
		
		} else if (!OKs[Nom][0].test(E[Nom].value)) {
			Ok = false;
		}
		
		if (!Ok) {
			alert (OKs[Nom][1]);
			E[Nom].style.background = '#F1FFA6';
			E[Nom].focus();
			return false;
		}	
	}
	return true;
}

function FP_VerifDate(laZone) {
	var Reg = /^\d{2}\/\d{2}\/\d{4}$/
	if (laZone.match(Reg)) {
		var JJ = laZone.substring(0,2)
		var MM = laZone.substring(3,5)
		var AA = laZone.substring(6)
	} else {
		var Reg = /^\d{2}\.\d{2}\.\d{4}$/
		if (laZone.match(Reg)) {
			var JJ = laZone.substring(0,2)
			var MM = laZone.substring(3,5)
			var AA = laZone.substring(6)
		} else {
			var Reg = /^\d{8}$/
			if (laZone.match(Reg)) {
				var JJ = laZone.substring(0,2)
				var MM = laZone.substring(2,4)
				var AA = laZone.substring(4)
			} else {
				return -1
			}
		}
	}
	if (AA < 1900) return -2
	if (MM < 1 || MM > 12) return -2
	if (JJ < 1 || JJ > 31) return -2
	if (JJ > 30 && (MM == 4 || MM == 6 || MM == 9 || MM == 11)) return -2
	if (MM == 2) {
		Reg = ((AA % 4 == 0) && ( (!(AA % 100 == 0)) || (AA % 400 == 0) ) ) ? 29 : 28
		if (JJ > Reg) return -2
	}
	return 1
}

// Positionne le curseur dans la première zone de saisie d'un formulaire
function FP_SetCurseur() {
	if (document.forms.length == 0) return;
	var E = document.forms[0].elements
	var iMax = E.length;
	var Type = '';
	for (var i = 0; i < iMax; i++) {
		Type = E[i].type.toUpperCase();
		if (Type == 'HIDDEN' || Type == 'BUTTON' || Type == 'SUBMIT' || Type == 'RESET') continue;
		if (E[i].disabled) continue;
		E[i].focus();
		return;
	}
}

var gPopUpWin = null;

function FP_PopUp(sUrl, nLarge, nHaut) {
	if (gPopUpWin != null && !gPopUpWin.closed) {
		if (sUrl == gPopUpUrl) {
			gPopUpWin.focus();
			return;
		} else gPopUpWin.close();
	}
	gPopUpUrl = sUrl;
	if (nLarge == null) nLarge = screen.width - 200;
	if (nHaut == null) nHaut = screen.height - 200;
	if (nLarge > screen.width) nLarge = screen.width - 30;
	if (nHaut > screen.height) nHaut = screen.height - 100;
	
	var sOption = 'scrollbars,resizable,width=' + nLarge + ',height=' + nHaut;
	nLarge = ((screen.width - nLarge) / 2) - 10;
	nHaut = ((screen.height - nHaut) / 2) - 30;
	sOption += ',left=' + nLarge + ',screenX=' + nLarge;
	sOption += ',top=' + nHaut + ',screenY=' + nHaut;
	var Nom = new Date();
	gPopUpWin = window.open(gPopUpUrl, 'c'+Nom.getTime(), sOption); //
	gPopUpWin.focus();
}

function FP_Quitter() {
	if (gPopUpWin != null && !gPopUpWin.closed) gPopUpWin.close();
}


function _CF_checklength(object_value)
{
	if (object_value == 0)
    	return false;
	else return true;
}

function _CF_checkmail(object_value, vide) {
	if (vide == 1) {
		if (object_value == 0) {
			return false;
		}
	}
	else
		if (object_value != "")	{
			var Pat = /^[a-z][a-z0-9_\.-]+@[a-z0-9_\.\-]+\.[a-z]{2,3}$/i
			if (object_value.match(Pat))
				return true;
			else
				return false;
		}
	
	return true;
}