function ValidateEmpty(message, sender, showAlert, ignoreText) {
	var sValue = sender.value;
	
	if (ignoreText != undefined && ignoreText != ''){
		if (sValue == ignoreText){
			if (showAlert){
				alert(message);
				if (sender.type){
					if (sender.type.toLowerCase() != 'hidden')
						sender.focus();
				}else{
					sender.focus();
				}
			}
			return false;
		}
	}
	
	var j=0;
	var len = sValue.length;
	for(var i=0;i<len;i++) {
		if (sValue.substr(i,1) != ' ') {
			j++;
		} 
	}
	if (j == 0)	{
		if (showAlert){
			alert(message);
			if (sender.type){
				if (sender.type.toLowerCase() != 'hidden')
					sender.focus();
			}else{
				sender.focus();
			}
		}
		return false;
	}
	return true;
}

function ValidateEmptyRB(message, sender, showAlert) {
	var j=0;
	for(i=0;i<sender.length;i++){
		if (sender[i].checked) {
			j++;
		} 
	}
	if (j == 0)	{
		if (showAlert){
			alert(message);
			if (sender.length>0){
				if (sender.type){
					if (sender.type.toLowerCase() != 'hidden')
						sender[0].focus();
				}else{
					sender[0].focus();
				}
			}
		}
		return false;
	}
	return true;
}

function ValidateDate(message, sender, showAlert, dateformat, ignoreText){
	var sDate = sender.value;
	
	if (ignoreText != undefined && ignoreText != ''){
		if (sDate == ignoreText){
			return true;
		}
	}
	
	if (sDate=='') {
		return true;
	}
	
	var reDate = /^[0-9]{2}[\/]{1}[0-9]{2}[\/]{1}[0-9]{4}$/;
	if (dateformat=='A') {
		message = message + ' (mm/dd/yyyy)';
	} else {
		message = message + ' (dd/mm/yyyy)';
	}
	if (!reDate.test(sDate)){
		if (showAlert){
			alert(message);
			sender.focus();
		}
		return false;
	}else{
		var iDay;
		var iMonth;
		if (dateformat=='A') {
			if (sDate.substr(3, 1)=='0') {
				iDay = parseInt(sDate.substr(4, 1));
			} else {
				iDay = parseInt(sDate.substr(3, 2));
			}
			if (sDate.substr(0, 1)=='0') {
				iMonth = parseInt(sDate.substr(1,1));
			} else {
				iMonth = parseInt(sDate.substr(0, 2));
			}
		} else {
			if (sDate.substr(0, 1)=='0') {
				iDay = parseInt(sDate.substr(1, 1));
			} else {
				iDay = parseInt(sDate.substr(0, 2));
			}
			if (sDate.substr(3, 1)=='0') {
				iMonth = parseInt(sDate.substr(4,1));
			} else {
				iMonth = parseInt(sDate.substr(3, 2));
			}
		}
		var iYear = parseInt(sDate.substr(6, 4));

		var dDate = new Date(iYear, iMonth-1, iDay);

		if (dDate.getDate() == iDay && (parseInt(dDate.getMonth())+1) == iMonth && dDate.getFullYear() == iYear){
			return true;
		}else{
			if (showAlert){
				alert(message);
				if (sender.type){
					if (sender.type.toLowerCase() != 'hidden')
						sender.focus();
				}else{
					sender.focus();
				}
			}
			return false;
		}
	}
	return true;
}

function ValidateTime(message, sender, showAlert, ignoreText){
	var sTime = sender.value;
	
	if (ignoreText != undefined && ignoreText != ''){
		if (sTime == ignoreText){
			return true;
		}
	}
	
	if (sTime=='') {
		return true;
	}
	
	var chr = /^([01][0-9]|2[0-3]):([0-5][0-9])$/
	if (!chr.test(sTime)){
		if (showAlert){
			alert(message);
			if (sender.type){
				if (sender.type.toLowerCase() != 'hidden')
					sender.focus();
			}else{
				sender.focus();
			}
		}
		return false;
	}
	return true;
}

function ValidateEmail(message, sender, showAlert, ignoreText){
	var sEmail = sender.value;
	
	if (ignoreText != undefined && ignoreText != ''){
		if (sEmail == ignoreText){
			return true;
		}
	}
	
	if (sEmail=='') {
		return true;
	}
	
	var reEmail = /^([a-zA-Z0-9!#$%&'*+/=?^_`{|}~\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/;
	if (!reEmail.test(sEmail)){
		if (showAlert){
			alert(message);
			if (sender.type){
				if (sender.type.toLowerCase() != 'hidden')
					sender.focus();
			}else{
				sender.focus();
			}
		}
		return false;
	}
	return true;
}

function ValidateNumber(message, sender, showAlert, sdec, ignoreText) {
	var sNumber = sender.value;
	var sNew;
	
	if (ignoreText != undefined && ignoreText != ''){
		if (sNumber == ignoreText){
			return true;
		}
	}
	
	if (sNumber=='') {
		return true;
	}
	
	var chr;
	if (sdec=='I'){
		chr = /^-?\d*$/
	} else {
		if (sdec=='C'){
			sNumber=sNumber.replace(/,/gi,'.');
		}
		chr = /^-?\d*(\.\d+)?$/
	}
	
	if (!chr.test(sNumber)){
		if (showAlert){
			alert(message);
			if (sender.type){
				if (sender.type.toLowerCase() != 'hidden')
					sender.focus();
			}else{
				sender.focus();
			}
		}
		return false;
	}

	return true;
}

function ValidateRegExp(sRegExp, message, sender, showAlert, ignoreText){
	var sValue = sender.value;
	
	if (ignoreText != undefined && ignoreText != ''){
		if (sValue == ignoreText){
			return true;
		}
	}
	
	if (sValue=='') {
		return true;
	}
	
	var chr = new RegExp(sRegExp);
	if (!chr.test(sValue)){
		if (showAlert){
			alert(message);
			if (sender.type){
				if (sender.type.toLowerCase() != 'hidden')
					sender.focus();
			}else{
				sender.focus();
			}
		}
		return false;
	}
	return true;
}

function checkphone(inputField){
	var countryCodeSize = 0;
	var areaCodeSize = 0;
	var nbr = inputField.value;

	while (nbr.substr(0,1) == " ") {nbr = nbr.substr(1);}

	if (nbr.substr(0,1) == "+") nbr = nbr.substr(1);
	else if (nbr.substr(0,2) == "00") nbr = nbr.substr(2);
	else if (nbr.substr(0,1) == "0"){
		if (typeof(countryTelCode) == 'undefined'){
			nbr = "32 " + nbr.substr(1);
		}else{
			if(countryTelCode != ''){
				nbr = countryTelCode + " " + nbr.substr(1);
			}else{
				nbr = "32 " + nbr.substr(1);
			}
		}
	}

	var re = /[^0-9]/g;
	var arr;
	var i=0;
	while((arr = re.exec(nbr)) && i < 2)
	{
		if (i == 0) countryCodeSize = arr.index;
		else areaCodeSize = arr.index-1-countryCodeSize;
		i++;
	}
		nbr = nbr.replace(re,"");
	if(nbr.length > 0) nbr = "+" + ((countryCodeSize) ? nbr.substr(0,countryCodeSize) + " " : "") + ((areaCodeSize) ? nbr.substr(countryCodeSize, areaCodeSize) + " " : "") + nbr.substr(countryCodeSize+areaCodeSize);
	inputField.value = nbr;
}