//----------------------------------------------------------------------------------------------------------
//---- [ Fonix Lib ] ---------------------------------------------------------------------------------------
//----------------------------------------------------------------------------------------------------------

function masqueSaisieDate(obj) {
var ch;
var ch_gauche, ch_droite;
// <input type="text" name="date_fin_validite" size='11' maxLength='10' value="" onKeyUp="masqueSaisieDate(document.form.date_fin_validite);">

ch = obj.value;
ch.toString(); 

if ( ( (ch.slice(2,3)) != ("-") ) && (ch.length >= 2) ){
  ch_gauche = ch.slice(0,2);
  ch_droite = ch.slice(2);
  obj.value = ch_gauche + "-" + ch_droite;
}
if ( ( (ch.slice(5,6)) != ("-") ) && (ch.length >= 5) ){
  ch_gauche = ch.slice(0,5);
  ch_droite = ch.slice(5);
  obj.value = ch_gauche + "-" + ch_droite;
}
  return;
}

//----------------------------------------------------------------------------------------------------------

function CheckAlphaNumber(Values)
{
 for (var i=0; i<Values.length; i++)
 {
  ch=Num.substring(i,i+1)
  if (!( (ch>="0" && ch<="9") || (ch>="A" && ch<="Z") || (ch>="a" && ch<="z") ))
  return false;
 }
 return true;
}

//----------------------------------------------------------------------------------------------------------

function CheckNumber(Num)
{
 for (var i=0; i<Num.length; i++)
 {
  ch=Num.substring(i,i+1)
  if (!(ch>="0" && ch<="9"))
  return false;
 }
 return true;
}

//----------------------------------------------------------------------------------------------------------

function CheckPrice(Num)
{
 for (var i=0; i<Num.length; i++)
 {
  ch=Num.substring(i,i+1)
  if (!( (ch>="0" && ch<="9") || (ch==".") ))
  return false;
 }
 return true;
}

//----------------------------------------------------------------------------------------------------------

function CheckIsEmpty(Num)
{
 var vide=true;
  for (var i=0; i<Num.length; i++)
  {
   ch=Num.substring(i,i+1)
   if (ch!=" ")
   vide=false;
  }
 return vide;
}

//----------------------------------------------------------------------------------------------------------

function CheckTelFax(Num)
{
 for (var i=0; i<Num.length; i++)
 {
  ch=Num.substring(i,i+1)
  if (!((ch>="0" && ch<="9") || (ch=="+") || (ch=="(") || (ch==")") || (ch==" ") ))
  return false;
 }
 return true;
}

//----------------------------------------------------------------------------------------------------------

function CheckEMail(Mail){
    if (Mail.indexOf("@") == -1) return false;
    if (Mail.indexOf(".") == -1) return false;
    at=false;
    dot=false;
    for (var i = 0; i < Mail.length; i++) {
        ch = Mail.substring(i, i + 1)
        if ((ch >= "A" && ch <= "Z") || (ch >= "a" && ch <= "z")
                || (ch == "@") || (ch == ".") || (ch == "_")
                || (ch == "-") || (ch >= "0" && ch <= "9")) {
                if (ch == "@"){
                  if (at) return false;
                  else at=true;
                }
                if ((ch==".") && at)
                   dot=true;
        }
        else return false;
    }
   return dot;
}
//------------------------------------------------------------------------------------------------

 function trim(text){
  // delete all space character in string
   while(text.charAt(0)==" ") 
   { text=text.substring(1,text.length) }

   while(text.charAt(text.length-1)==" ") 
   { text=text.substring(0,text.length-1) }
  return text;
 }

//*******************************************************************************************
// Test time Format 00:00:00
function is_time (time) {
 var tab = null;
 time = trim(time) ;
 if (time.length>0) {
 	tab = time.split(":");
	if (Number(tab[0])<=23 && Number(tab[0])>=00) {
		if (Number(tab[1])<=59 && Number(tab[1])>=00) { 
			if (Number(tab[1])<=59 && Number(tab[1])>=00) { 
				return true;
			} else {
				return false;
			}
		} else {
			return false;
		}
	} else {
		return false;
	}
 }
}

//*******************************************************************************************
//*******************************************************************************************
//Test a Date String
//*******************************************************************************************
 function is_date(ValueField, SysLang){
	var checkstr = "0123456789";	
	var Datevalue = "";
	var DateTemp = "";
	var seperator = "-";
	var day;
	var month;
	var year;
	var leap = 0;
	var err = 0;
	var i;
	   err = 0;
	   DateValue = ValueField;
	   /* Delete all chars except 0..9 */
	   for (i = 0; i < DateValue.length; i++) {
		  if (checkstr.indexOf(DateValue.substr(i,1)) >= 0) {
			 DateTemp = DateTemp + DateValue.substr(i,1);
		  }
	   }
	   DateValue = DateTemp;	   
	   /* Always change date to 8 digits - string*/
	   /* if year is entered as 2-digit / always assume 20xx */
	   
	   if (DateValue.length == 6) {
		  DateValue = DateValue.substr(0,4) + '20' + DateValue.substr(4,2); }
	   if (DateValue.length != 8) {	      
		  err = 19;}
	   /* year is wrong if year = 0000 */
	   year = DateValue.substr(4,4);
	   if (year == 0) {
		  err = 20;
	   }	   
	   /* Validation of month("FR") Or Day ("En")  */
	   if (SysLang == "Fr")
	     {
		   month = DateValue.substr(2,2);	   	   
		   if ((month < 1) || (month > 12)) {
			  err = 21;
		   }
		 } 
		else
		  if  (SysLang == "En")
		     {
			   day = DateValue.substr(2,2);	   	   
			   if (day < 1)  {
				  err = 21;
			   }
			 } 
 
	   /* Validation of day*/
	   if (SysLang == "Fr")
	      {
			   day = DateValue.substr(0,2);
			   if (day < 1) {
				 err = 22;
			   }
	      }
	    else    
		  if  (SysLang == "En")
		     {
			   month = DateValue.substr(0,2);	   	   
			   if ((month < 1) || (month > 12)) {
				  err = 22;
		 	  }
	    	 } 
	   
	   	   
	   /* Validation leap-year / february / day */
	   if ((year % 4 == 0) || (year % 100 == 0) || (year % 400 == 0)) {
		  leap = 1;
	   }
	   if ((month == 2) && (leap == 1) && (day > 29)) {
		  err = 23;
	   }
	   if ((month == 2) && (leap != 1) && (day > 28)) {
		  err = 24;
	   }
	   /* Validation of other months */
	   if ((day > 31) && ((month == "01") || (month == "03") || (month == "05") || (month == "07") || (month == "08") || (month == "10") || (month == "12"))) {
		  err = 25;
	   }
	   if ((day > 30) && ((month == "04") || (month == "06") || (month == "09") || (month == "11"))) {
		  err = 26;
	   }   	   
	   
	   /* if no error, return True */	  	  	   
	   if (err == 0) {
		  return true;
	   }
	   /* if Errors return False */
	   else {
		  return false;
	   }
   }
//*******************************************************************************************
//*******************************************************************************************

//*******************************************************************************************
// Encode special character
//*******************************************************************************************
function encode_html(str)
{
/*
	var code = Array("38","145","146","147","148","149","39","152","153","154","155",
					 "156","46","157","158","159","161","162","163","164","165","166","167",
					 "168","169","170","60","171","172","62","173","174","175","176","177",
					 "178","179","180","181","182","183","184","185","186","187","188","189",
					 "190","191","192","193","194","195","196","197","198","199","200","201",
					 "202","203","204","205","206","96","207","208","209","210","211",
					 "212","213","214","215","216","217","218","219","220","221","222","223",
					 "224","225","226","227","228","229","230","231","232","233","234","235",
					 "236","126","237","127","238","128","239","129","240","241","131","242",
					 "132","243","133","244","134","245","135","246","136","247","137","248",
					 "138","249","139","250","140","251","141","252","142","253","143","254"
					);
	var char = Array("&","","","","","","'","","","","","",".","","","",
					 "","","","","","","","","","","<","","",">","","","",
					 "","","","","","","","","","","","","","","","","",
					 "","","","","","","","","","","","","","","`","",
					 "","","","","","","","","","","","","","","","","",
					 "","","","","","","","","","","","","~","","","","",
					 "","","","","","","","","","","","","","","","","",
					 "","","","","","","","","","","","",""
					);
					
*/
	var code = Array("38","39","60","62");
	var chars = Array("&","'","<",">");

	for (var x=0;x<chars.length;x++) {
		eval("str = str.replace(/"+chars[x]+"/gi,'#'+code[x]);");
	}
	
	return str;
}