/******************************************************************/
/*    A JavaScript implementation of some utility fonctions       */
/*    Copyright (C) ARTWORKS CREATIVE'S DEVELOPMENT TEAM 2005.    */
/******************************************************************/

/*
 * Pré-chargement d'images (au lancement de la page HTML).
 */
function MM_preloadImages()
{ //v3.0
	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];
			}
	}
}

/*
 * Echange d'images.
 */
function MM_swapImage()
{ //v3.0
	var i, j=0, x, a=MM_swapImage.arguments;
	document.MM_sr=new Array;
	for(i=0;i<(a.length-2);i+=3)
		if ((x=MM_findObj(a[i]))!=null)
 		{
			document.MM_sr[j++]=x;
			if(!x.oSrc) x.oSrc=x.src;
				x.src=a[i+2];
		}
}

/*
 * Fonction...
 */
function MM_swapImgRestore()
{ //v3.0
	var i, x, a=document.MM_sr;
	for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

/*
 * Fonction...
 */
function MM_findObj(n, d)
{ //v4.0
	var p, i, x;
	if(!d) d=document;
	if((p=n.indexOf("?"))>0&&parent.frames.length)
	{
		d=parent.frames[n.substring(p+1)].document;
		n=n.substring(0,p);
	}
	if(!(x=d[n])&&d.all) x=d.all[n];
	for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
	for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
	if(!x && document.getElementById) x=document.getElementById(n);
	return x;
}
		
/*
 * Désactivation du clic droit.
 */
function desactiver()
{
	if(event.button == 2)
	{
		// Message d'information.
		alert('Fonction non autorisée !');
	}
}
			
// 
document.onmousedown=desactiver;
			
/*
 * Affichage des infobulles.
 */
function afficheId(baliseId,text) {
	document.getElementById(baliseId).style.visibility='visible';
	document.getElementById(baliseId).style.display='block';
	document.getElementById(baliseId).innerText=text;
}
			
function cacheId(baliseId) {
	document.getElementById(baliseId).style.visibility='hidden';
	document.getElementById(baliseId).style.display='none';
}

/*
 * Affichage d'une fenêtre de type 'popup'.
 * OPTION : "menubar=no,scrollbars=no,statusbar=no,resizable=no"
 */
var info=null;
function popupcentree(page,largeur,hauteur,options) {
	var top=(screen.height-hauteur)/2;
	var left=(screen.width-largeur)/2;

	if (info)
	{
		//alert ("hauteur_1 = "+hauteur+" ; "+"largeur_1 = "+largeur);
		info.close();
		info=window.open(page,"info","top="+top+",left="+left+",width="+largeur+",height="+hauteur+","+options);
		info.focus();
	}
	else
	{
		//alert ("hauteur_2 = "+hauteur+" ; "+"largeur_2 = "+largeur);
		info=window.open(page,"info","top="+top+",left="+left+",width="+largeur+",height="+hauteur+","+options);
		info.focus();
		//info.window.resizeTo(largeur,hauteur);
	}
}

/*
 * Affichage d'une fenêtre de type 'popup' (phase de test).
 * OPTION : "menubar=no,scrollbars=no,statusbar=no,resizable=no"
 */
var info2=null;
function popupcentree2(page2,largeur2,hauteur2,options) {
	var top2=(screen.height-hauteur2)/2;
	var left2=(screen.width-largeur2)/2;

	if (info2){
		//alert ("hauteur_1 = "+hauteur+" ; "+"largeur_1 = "+largeur);
		info2.close();
		info2=window.open(page2,"info2","top="+top2+",left="+left2+",width="+largeur2+",height="+hauteur2+","+options);
		info2.focus();
	}
	else {
		//alert ("hauteur_2 = "+hauteur+" ; "+"largeur_2 = "+largeur);
		info2=window.open(page2,"info2","top="+top2+",left="+left2+",width="+largeur2+",height="+hauteur2+","+options);
		info2.focus();
	}
}

/*
 * Fonctions de validation des formulaires de la console d'administration.
 *      + Formulaire 'acCltFORM': Interface d'authentification.
 *      + Formulaire 'acRdvFORM': Rendez-vous (ou contact) client.
*/
var emailFilter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/ ;
//var webFilter   = /^[wW]{3}\.(([a-zA-Z0-9\-\_])+\.)+([a-zA-Z0-9]{2,4})+$/ ;
var phoneFilter =  /([0-9])/ ;
var patroFilter = /^([a-zA-Z_\.\-\ ])+$/ ;
var dateFilter  = /^\d{2}\-\d{2}\-\d{4}$/ ;
var codeFilter  = /([0-9])/ ;

//
function chklog(f) {
	// Formulaire "acCltFORM".
	if (f.acCltMEL.value.length==0) {
		alert('Le champ « EMAIL » est obligatoire') ;
		f.acCltMEL.focus() ;
		return false ;
	}	
	if (f.acCltMEL.value.length>0 && !emailFilter.test(f.acCltMEL.value)) {
		alert('Le champ « EMAIL » est incorrect. Veuillez respecter le format \nsuivant : "identifiant@nom-de-domaine.com" (par exemple).') ;
		f.acCltMEL.focus() ;
		return false ;
	}
	if (f.acCltPSD.value.length==0) {
		alert('Le champ « MOT DE PASSE » est obligatoire') ;
		f.acCltPSD.focus() ;
		return false ;
	}

	// Soumission.
	f.submit();
	return true ;
}

// 
function chkCltRDV(f) {
	// Formulaire "acRdvFORM".
	if (f.acRdvNOM.value.length==0) {
		alert('Le champ « NOM » est obligatoire') ;
		f.acRdvNOM.focus() ;
		return false ;
	}
	if (f.acRdvPNOM.value.length==0) {
		alert('Le champ « PRENOM » est obligatoire') ;
		f.acRdvPNOM.focus() ;
		return false ;
	}
	if (f.acRdvTEL.value.length>0 && !phoneFilter.test(f.acRdvTEL.value)) {
		alert('Le champ « TELEPHONE » est incorrect. Veuillez respecter \nle format suivant : "x-xxx-xxx-xxx".') ;
		f.acRdvTEL.focus() ;
		return false ;
	}
	if (f.acRdvMEL.value.length==0) {
		alert('Le champ « EMAIL » est obligatoire') ;
		f.acRdvMEL.focus() ;
		return false ;
	}
	if (f.acRdvMEL.value.length>0 && !emailFilter.test(f.acRdvMEL.value)) {
		alert('Le champ « EMAIL » est incorrect. Veuillez respecter le format \nsuivant : "identifiant@nom-de-domaine.com" (par exemple).') ;
		f.acRdvMEL.focus() ;
		return false ;
	}
	if (f.acRdvSUJ.value.length==0){
		alert('Le champ « SUJET » est obligatoire') ;
		f.acRdvSUJ.focus();
		return false;
	}
	// Gestion du nombre de caractères (100 max.) du champ SUJET.
	if(f.acRdvSUJ.value.length>0) {
		var longueurMax = '100';
		var msgSujet='Le champ « SUJET » est limité à '+longueurMax+' caractères.';
		longueurChaine = f.acRdvSUJ.value.length;
		if (longueurChaine > longueurMax ){
			f.acRdvSUJ.value = f.acRdvSUJ.value.substring(0, longueurMax);
			chaine = longueurMax;
			alert(msgSujet);
			f.acRdvSUJ.focus();
			longueurChaine = longueurMax - chaine;
			return false;
		}
	}
	if (f.acRdvMSG.value.length==0){
		alert('Le champ « MESSAGE » est obligatoire') ;
		f.acRdvMSG.focus();
		return false;
	}
	// Gestion du nombre de caractères (250 max.) du champ MESSAGE.
	if(f.acRdvMSG.value.length>0) {
		var longueurMax = '250';
		var msgMessage='Le champ « MESSAGE » est limité à '+longueurMax+' caractères.';
		longueurChaine = f.acRdvMSG.value.length;
		if (longueurChaine > longueurMax ){
			f.acRdvMSG.value = f.acRdvMSG.value.substring(0, longueurMax);
			chaine = longueurMax;
			alert(msgMessage);
			f.acRdvMSG.focus();
			longueurChaine = longueurMax - chaine;
			return false;
		}
	}

	// Soumission.
	return true ;
}
