// E-Mail Check
function EmailCheck(str)
{
	var checkstr1 = '~!#$%^&*()+=|{}<>,/?';
	var checkstr2 = '@';
	var checkstr3 = '.';
	var alt = 0;
	var dot = 0;

	var st = str.indexOf('@');
	if(st < 1) {
		alert("Veuillez vérifier votre adresse E-mail.");
		return true;
	}
	for(var i = 0; i < str.length; i++) {
		var substr = str.substring(i, i + 1);
		if(checkstr1.indexOf(substr) >= 0) {
			alert("Veuillez vérifier votre adresse E-mail.");
			return true;
		}
		if(checkstr2.indexOf(substr) >= 0) {
			alt = alt + 1;
		}
		if(checkstr3.indexOf(substr) >= 0) {
			dot = dot + 1;
		}
	}
	if((alt != 1) || (dot > 3) || (dot < 1)) {
		alert("Veuillez vérifier votre adresse E-mail.");
		return true;
	}
	return false;
}

function VerifEmail ( HtmlElem )
{
	var email = HtmlElem.value;
	var NON_email = "\"\'\/\:\<\>\*\|\&\#\$\!\(\)\[\]\\\{\} ";
	var AROB = 0;
	var POINT = 0;
	if (email.length == 0)
	{
		alert("Merci de préciser votre adresse E-mail");
		HtmlElem.focus();
		return false;
	}
	else (email.length > 0)
	{
		for (i=0; i < email.length;  i++)
		{
			for  (j=0; j < NON_email.length;  j++)
			{
				if (email.charAt(i) == NON_email.charAt(j))
				{
					alert("Un ou plusieurs éléments de l'adresse E-mail que vous venez de taper semblent incorrects, veuillez entrer une adresse valide.");
					HtmlElem.focus();
					return false;
				}
			}
			if (email.charAt(i) == "@")
			{
				AROB = AROB + 1;
			}
			if (email.charAt(i) == ".")
			{
				POINT = POINT + 1;
			}
		}
		if (AROB != 1 || POINT == 0 || email.length < 6)
		{
			alert("L'adresse E-mail que vous venez de taper semble incorrecte, veuillez entrer une adresse valide.");
			HtmlElem.focus();
			return false;
		}
		return true;
	}
}


// small -> large
function ToUpper(arg_v)
{
	var upperStr = "";
	var str1 = "abcdefghijklmnopqrstuvwxyz";
	var str2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
	
	for(i = 0; i < arg_v.length; i++) {
		value = arg_v.charAt(i);
		index = str1.indexOf(value);
		if(index >= 0) value = str2.charAt(index);
		upperStr = upperStr + value;
	}
	return upperStr;
}

// large -> small
function ToLower(arg_v)
{
	var lowerStr = "";
	var str1 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
	var str2 = "abcdefghijklmnopqrstuvwxyz";
	
	for(i = 0; i < arg_v.length; i++) {
		value = arg_v.charAt(i);
		index = str1.indexOf(value);
		if(index >= 0) value = str2.charAt(index);
		lowerStr = lowerStr + value;
	}
	return lowerStr;
}

// phone number Check
function isPhoneCheck(num)
{	
	var num_Str = "0123456789( ).-,<>{}[]_~";

	for (var i = 0; i < num.length; i++) {
		var substr = num.substring(i, i + 1);
		if(num_Str.indexOf(substr) < 0) return true;
	}
	return false;
}

// number check
function isNumberCheck(num)
{	
	var num_Str = "0123456789";

	for (var i = 0; i < num.length; i++) {
		var substr = num.substring(i, i + 1);
		if(num_Str.indexOf(substr) < 0) return true;
	}
	return false;
}

// english check
function isAlphaCheck(str)
{
	var alpha_Str = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";

	for(var i = 0; i < str.length; i++) {
		var substr = str.substring(i, i+1);
		if(alpha_Str.indexOf(substr) < 0) return false;
	}
	return true;
}

// english, number check
function isAlphaNumCheck(arg_v)
{
	var alpha_num_Str = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";

	for(var i = 0; i < arg_v.length; i++) {
		var substr = arg_v.substring(i, i + 1);
		if(alpha_num_Str.indexOf(substr) < 0) return false;
	}
	return true;
}

//null check
function IsEmpty(data) {
	for (var i=0; i<data.length; i++) {
		if (data.substring(i,i+1) != " ")
		  return false;           
	}   

	return true;
}

function VerifCP ( HtmlElem )
{
	var cp = HtmlElem.value;
	var NON_cp = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ²&é\"\'èçà\=\>\<\?,\;\:§\!\%ùµ*^¨£$~\#\{\[\|\`\\^@\]\}";
	if (cp.length == 0)
	{
		alert("Il est nécessaire au bon traitement de votre message que vous remplissiez le champ \"Code postal\"");
		HtmlElem.focus();
		return false;
	}
	else (cp.length > 0)
	{
		for (i=0; i < cp.length;  i++)
		{
			for  (j=0; j < NON_cp.length;  j++)
			{
				if (cp.charAt(i) == NON_cp.charAt(j))
				{
					alert("Un ou plusieurs éléments du Code Postal que vous venez de taper semblent incorrects, veuillez entrer un code postal valide.");
					HtmlElem.focus();
					return false;
				}
			}
		}
		if (cp.length < 4)
		{
			alert("Le Code Postal que vous venez de taper semble incorrect, veuillez entrer un code postal valide.");
			HtmlElem.focus();
			return false;
		}
		return true;
	}
}

