////////////////////////////////////////////
// Fonction permettant de récupérer un objet
// Ex : var obj = MM_findObj('image1');
function MM_findObj(n, d)
	{
  	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 && d.getElementById)
			x = d.getElementById(n);
			
		return x;
	}

///////////////////////////////////////////////////////////////////
// Fonction permettant de précharger des images
// Ex : MM_preloadImages('images/image1.gif', 'images/image2.jpg');
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];
				}
		}
	}

///////////////////////////////////////////////////////////////////////////////////////
// Fonction permettant de changer dynamiquement la source d'une (ou plusieurs) image(s)
// Ex : MM_swapImage('image1','','images/image1.jpg',1)
function MM_swapImage()
	{
	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 permettant de restaurer dynamiquement la source d'une (ou plusieurs) image(s) changées avec MM_swapImage
// Ex : MM_swapImgRestore()
function MM_swapImgRestore()
	{
	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 permettant d'afficher ou cacher un (ou plusieurs) calque(s)
// Ex : showHideLayers(Layer1,'','show',Layer2,'','hide');
function MM_showHideLayers()
	{ 
	var i, visStr, obj, args = showHideLayers.arguments;
	for (i=0; i<(args.length-2); i+=3)
		{
    	if ((obj = findObj(args[i])) != null)
    		{
      		visStr = args[i+2];
      		if (obj.style)
      			{
        		obj = obj.style;
        		if (visStr == 'show')
					visStr = 'visible';
        		else if (visStr == 'hide')
					visStr = 'hidden';
      			}
      		obj.visibility = visStr;
			}
		}
	}

/////////////////////////////////////////////////////////
// Fonction permettant d'afficher une popup
// Ex : MM_popUpWindow('popup.html', 100, 100, 350, 250);
var popUpWin=0;
function MM_popUpWindow(URLStr, left, top, width, height)
	{
  	if (popUpWin)
		{
    	if (!popUpWin.closed)
			popUpWin.close();
  		}
	popUpWin = open(URLStr, 'popUpWin', 'toolbar=no,location=no,directories=no,status=no,menub ar=no,scrollbar=no,resizable=no,copyhistory=yes,width='+width+',height='+height+',left='+left+', top='+top+',screenX='+left+',screenY='+top+'');
	}

/////////////////////////////////////////////////////////
// Fonction permettant de modifier le contenu d'un calque
// Ex : MM_writeDiv('nom_calque', 'contenu');
ns4=(navigator.appName.indexOf("Netscape")>=0 && !document.getElementById)? 1 : 0;
ie4=(document.all && !document.getElementById)? 1 : 0;
ie5=(document.getElementById && document.all)? 1 : 0;
ns6=(document.getElementById && navigator.appName.indexOf("Netscape")>=0 )? 1: 0;
w3c=(document.getElementById)? 1 : 0;
function MM_writeDiv(divName, content)
	{
	calque = MM_findObj(divName);
	if(ns4)
		{
		calque.document.open();
		calque.document.write(content+'\n');
		calque.document.close();
		}
	else
		{
		calque.innerHTML=content+'\n';
		}
	}
	
	
/////////////////////////////////////////////////////////
// Fonction permettant de vérifier qu'un mail est correct
// Ex : verifMail('toto@free.fr');
function verifMail(aobj_Email) {
	lbln_Ok = false;
	for (var j=1 ; j<(aobj_Email.value.length) ; j++) {
		if (aobj_Email.value.charAt(j)=='@') {
			if (j<(aobj_Email.value.length-4)){
				for (var k=j ; k<(aobj_Email.value.length-2) ; k++) {
					if (aobj_Email.value.charAt(k)=='.') lbln_Ok = true;
			    }
			}
		}
	}
	if (lbln_Ok == false) {
		alert('Veuillez saisir une adresse mail correcte.');
		aobj_Email.select();
	}
	return lbln_Ok;
}

////////////////////////////////////////////////////////////////
// Fonction permettant de créer un lien mailto qui ne puisse pas
// être aspiré par un robot de spam
// Ex : adresseMail('toto', 'free.fr', 'cliquez ici')
// Si le dernier paramètre n'est pas renseigné, on écrit le mail dans le lien
function adresseMail(astr_Debut, astr_Fin, astr_TexteLien) {
	var lstr_Mail = astr_Debut + '@' + astr_Fin;
	var lstr_LienMail = '<a href="mailto:' + lstr_Mail + '" class="texteRouge">';
	if (astr_TexteLien)
		lstr_LienMail += astr_TexteLien;
	else
		lstr_LienMail += lstr_Mail;
	lstr_LienMail += '</a>';
		
	document.write(lstr_LienMail);
}


