function IsEmail(sText,sName){
	
		if ((sText.indexOf('.')==-1)||(sText.indexOf('@')==-1)){
			alert(sName+": '"+sText+"' is not a valid email address");
			return false;
		}
		else return true;
	
}

function IsNumeric(sText, bIntegerOnly)
{
   var ValidChars = "0123456789.";
   if (bIntegerOnly){
	   ValidChars = "0123456789";
   }
   var IsNumber=true;
   var Char;
   var bDecFound
 
   for (i = 0; i < sText.length && IsNumber == true; i++) 
      { 
      Char = sText.charAt(i); 
	  if ((bDecFound) && (Char == '.'))
         {
         IsNumber = false;
         }
	  
      if (ValidChars.indexOf(Char) == -1) 
         {
         IsNumber = false;
         }
		 if (Char == '.'){
	  bDecFound = true;}


		 }
	  if (!IsNumber){
		if (bIntegerOnly)
			alert("'"+sText+"' is not a valid integer")
		else
			alert("'"+sText+"' is not a valid number");
	  }
	 return IsNumber;
   
   }

function IsBlank(sText, sCaption)
{
	sText= sText.replace(/^\s+|\s+$/g, '') ;
	  if (sText==''){
		
		alert("Please fill in the '"+sCaption+"' field.");
		return true;
		
	  }
	  else
	  {
	  return false;
	  }
   }

function checktime(str_date) {


	var RE_NUM = /^\-?\d+$/;
	var arr_date = str_date.split(':');
	
	if (arr_date.length != 2) return alert ("You have entered an invalid time format: '" + str_date + "'.\nFormat accepted is hh:mm.");
	if (!arr_date[1]) return alert ("You have entered an invalid time format: '" + str_date + "'.\nNo minute value can be found.");
	if (!RE_NUM.exec(arr_date[1])){ return alert ("You have entered an invalid time value: '" + arr_date[1] + "'.\nAllowed values are unsigned integers.");}
	else{if (arr_date[1] > 60){ return alert ("The minute value must be between 0 and 59.");} }
	if (!arr_date[0]) return alert ("You have entered an invalid time format: '" + str_date + "'.\nNo hour value can be found.");
	if (!RE_NUM.exec(arr_date[0])){ return alert ("Invalid time value: '" + arr_date[0] + "'.\nAllowed values are unsigned integers.");}
	else{if ((arr_date[0] < 1)||(arr_date[0] > 12)){ return alert ("The hour value must be between 1 and 12.");} }
	
	return 1;
}
				
function check(str_date, allowblank) {


	if ((allowblank)&&(str_date=='')){return 1;}
	else{
	var RE_NUM = /^\-?\d+$/;
	var arr_date = str_date.split('/');
	var NUM_CENTYEAR = 2000;
	if (arr_date.length != 3) return alert ("You have entered an invalid date format: '" + str_date + "'.\nFormat accepted is dd/mm/yyyy.");
	if (!arr_date[1]) return alert ("You have entered an invalid date format: '" + str_date + "'.\nNo day of month value can be found.");
	if (!RE_NUM.exec(arr_date[1])) return alert ("You have entered an invalid day of month value: '" + arr_date[1] + "'.\nAllowed values are unsigned integers.");
	if (!arr_date[0]) return alert ("You have entered an invalid date format: '" + str_date + "'.\nNo month value can be found.");
	if (!RE_NUM.exec(arr_date[0])) return alert ("Invalid month value: '" + arr_date[0] + "'.\nAllowed values are unsigned integers.");
	if (!arr_date[2]) return alert ("You have entered an invalid date format: '" + str_date + "'.\nNo year value can be found.");
	if (!RE_NUM.exec(arr_date[2])) return alert ("Invalid year value: '" + arr_date[2] + "'.\nAllowed values are unsigned integers.");

	var dt_date = new Date();
	dt_date.setDate(1);

	if (arr_date[0] < 1 || arr_date[0] > 12) return alert ("Invalid month value: '" + arr_date[0] + "'.\nAllowed range is 01-12.");
	dt_date.setMonth(arr_date[0]-1);
	 
	if (arr_date[2] < 100) arr_date[2] = Number(arr_date[2]) + (arr_date[2] < NUM_CENTYEAR ? 2000 : 1900);
	dt_date.setFullYear(arr_date[2]);

	var dt_numdays = new Date(arr_date[2], arr_date[0], 0);
	dt_date.setDate(arr_date[1]);
	if (dt_date.getMonth() != (arr_date[0]-1)) return alert ("Invalid day of month value: '" + arr_date[1] + "'.\nAllowed range is 01-"+dt_numdays.getDate()+".");

	return 1;}
}
