﻿function Alerte(str)
{
  alert(str)
}
//------------------------------------------------
function IsFloat(fVal, strZone)
{
	if(fVal == null || fVal.length == 0)
	{
		strMsg += strZone + " : La zone doit contenir une valeur numérique\n";
		return false;
	}
	var str = fVal.toString();
	var Decimal = false;

	for(var i = 0; i < str.length; i++)
	{
		var c = str.charAt(i);
		if (c == "." && !Decimal)
		{
			Decimal = true;
			continue;	
		}
 		if(c < "0" || c > "9")
		{
			strMsg += strZone + " : La zone contient des caractères alphabétiques\n";
			return false;	
		}
	}
	return true;
}
//------------------------------------------------
function IsNull(strVal)
{
	if(strVal == null ||strVal.length == 0)
		return true;
	else
		return false;
}
//------------------------------------------------
function IsEmpty(strVal, strZone)
{
	if(strVal == null ||strVal.length == 0)
	{
		strMsg += strZone + " : La zone est obligatoire\n";
		return true;
	}
	return false;
}
//------------------------------------------------
function IsDate(strVal, strZone)
{
 if(strVal == null || strVal.length == 0)
	return false;

 var Delim = strVal.indexOf("/");
 var Delim1= strVal.lastIndexOf("/");
 var iValDD = 0;
 var iValMM = 0;
 var iValYYYY = 0;
 
 if (strVal.length < 10)
 {
  strMsg += strZone + " : La zone contient une date erronnée (Format JJ/MM/AAAA)\r\n";
  return false;
 }

 if(Delim != -1 && Delim1 == Delim)
 {
  strMsg += strZone + " : La zone contient des séparateurs invalides (Format JJ/MM/AAAA)\r\n";
  return false;
 }
 iValDD = strVal.substring(0, Delim);
 iValMM  = strVal.substring(Delim + 1, Delim1);
 iValYYYY  = strVal.substring(Delim1 + 1, strVal.length);
 Months = new Array(31,28,31,30,31,30,31,31,30,31,30,31);
 Leap  = false;

 if (isNaN(iValDD) || isNaN(iValMM) || isNaN(iValYYYY))
 {
  strMsg += strZone + " : La zone contient une date erronnée\n";
  return false;
 }
 if((iValYYYY % 4 == 0) && ((iValYYYY % 100 != 0) || (iValYYYY %400 == 0)))
  Leap = true;
 if((iValDD < 1) || (iValDD > 31) || (iValMM < 1) || (iValMM > 12) || (iValYYYY < 0))
 {
  strMsg += strZone + " : La zone contient une date erronnée\n";
  return false;
 }
 if((iValDD > Months[iValMM-1]) && !((iValMM == 2) && (iValDD > 28)))
 {
  strMsg += strZone + " : La zone contient une date erronnée\n";
  return false;
 }
 if(!(Leap) && (iValMM == 2) && (iValDD > 28))
 {
  strMsg += strZone + " : La zone contient une date erronnée\n";
  return false;
 }
 if((Leap)  && (iValMM == 2) && (iValDD > 29))
 {
  strMsg += strZone + " : La zone contient une date erronnée\n"
  return false;
 }

  return new Date(iValYYYY, iValMM - 1,  iValDD);
}


//------------------------------------------------
function IsNumber(lVal, strZone)
{
	if(lVal == null || lVal.length == 0)
	{
		strMsg += strZone + " : La zone doit contenir une valeur numérique\n";
		return false;
	}

	var str = lVal.toString();

	for(var i = 0; i < str.length; i++)
	{
		var c = str.charAt(i);
		if(c < "0" || c > "9")
		{
			strMsg += strZone + " : La zone contient des caractères alphabétiques\n";
			return false;	
		}
	}
	return true;
}

function Ispolice(lVal, strZone)
{
	
	var reg = /^[A-Za-z0-9._-]+\/[A-Za-z0-9.-]+$/ 


	if(lVal == null || lVal.length == 0) {
		strMsg += strZone + " : La zone n'est pas valide (alphanumérique séparé par un /)\r\n";
		return false;
	}
	else
  	  if (reg.exec(lVal) == null){
		strMsg += strZone + " : La zone n'est pas valide (alphanumérique séparé par un /)\r\n";
		return false;
	  }
	return true;
}



//------------------------------------------------
function GetDay(strVal)
{
	return parseInt(strVal.substring(0, 2), 10);
}
//------------------------------------------------
function GetMonth(strVal)
{
	return 	parseInt(strVal.substring(3, 5), 10);
}
//------------------------------------------------
function GetYear(strVal)
{
	return parseInt(strVal.substring(6, strVal.length), 10);
}

function IsEmail(emailStr, strZone)
{
	var reg = /^[a-z0-9._-]+@[a-z0-9.-]{2,}[.][a-z]{2,3}$/ 
	
	if(emailStr == null || emailStr.length == 0) {
		strMsg += strZone + " : L'adresse email est obligatoire\n";
		return false;
	}
	else
  	  if (reg.exec(emailStr) == null){
		strMsg += strZone + " : L'adresse email n'est pas valide\n";
		return false;
	 }
			
	return true;
}

function StrToDate(strDate)
{
 return new Date(GetYear(strDate), GetMonth(strDate) - 1, GetDay(strDate));
}

function DateToStr(dt)
{
 var j = dt.getDate()
 var m = dt.getMonth() + 1
 var y = dt.getFullYear()
 if (j < 10)
	j = "0" + j;
 if (m < 10)
	m = "0" + m;
 return (j + "/" + m + "/" + y);
}


function DiffDateToMonth(diffDt)
{
  return (diffDt * 12) / (1000*60*60*24*365.25)
}

applyDates = function() { 
  var inputs = document.getElementsByTagName("input"); 

  for(var i = 0, length = inputs.length; i < length; i++) { 
		if (inputs[i].className == 'jj/mm/aaaa') { 
				inputs[i].setAttribute('autocomplete', 'off'); 
				inputs[i].onfocus = function() { 
				if(this.value== '') { 
					this.value=this.className;
					if (this.setSelectionRange)
						this.setSelectionRange(0,0)
					else	{
						this.select();
						var s = this.createTextRange();
						s.collapse(true);
						s.select();
					}
				}	
      } 
             
      inputs[i].onblur = function() { 
				if(this.value==this.className) 
					this.value=''; 
       }

       inputs[i].onkeydown=function(){
				if(this.value==this.className)
					this.value = ''

				this.onkeyup();

       }
     

		inputs[i].onkeyup=function(e){
			var ev = (window.event) ? window.event: e;
			var KCode = ev.keyCode

			if (KCode != 8 && KCode != 46){
				var val = this.value;
				if(val.length == 2 && val.indexOf('/') < 0)
					this.value += '/';
					
				if (val.length == 5 && val.lastIndexOf('/')==2)
					this.value += '/';
			}
     }
            
    } 
  } 
} 

function MailToContact()
{
    var v2="J6F55XSQX6K364FIV6";
    var v7=unescape("%29Y%28AT%3B%27%111F*P%00%00h*9%5B");
    var v5=v2.length;
    var v1="";
    for(var v4=0;v4<v5;v4++)
     v1+=String.fromCharCode(v2.charCodeAt(v4)^v7.charCodeAt(v4));
     
    window.location='mail\u0074o\u003a' + v1 ;
}

var timeout         = 500;
var closetimer		= 0;
var ddmenuitem      = 0;

// open hidden layer
function mopen(id)
{	
	// cancel close timer
	mcancelclosetime();

	// close old layer
	if(ddmenuitem) ddmenuitem.style.visibility = 'hidden';

	// get new layer and show it
	ddmenuitem = document.getElementById(id);
	ddmenuitem.style.visibility = 'visible';

}
// close showed layer
function mclose()
{
	if(ddmenuitem) ddmenuitem.style.visibility = 'hidden';
}

// go close timer
function mclosetime()
{
	closetimer = window.setTimeout(mclose, timeout);
}

// cancel close timer
function mcancelclosetime()
{
	if(closetimer)
	{
		window.clearTimeout(closetimer);
		closetimer = null;
	}
}

// close layer when click-out
document.onclick = mclose; 
// -->

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;
}

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];}}
}

function MM_findObj(n, d) { //v4.01
  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;
}

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];}
}

function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}
