//<![CDATA[



// phone number with 11 digits
var phoneNumberPlainRegex = new RegExp('/^([0-9]{11})$/', 'gi');
// german date in the format dd.mm.yyyy
var dateDeRegex = new RegExp('^([0-9]){2}(\.){1}([0-9]){2}(\.){1}([0-9]){4}$/', 'gi');
// english date in the format yyyy-mm-dd or yyyy/mm/dd
var dateEnRegex = new RegExp('^([0-9]){4}(\/|\-){1}([0-9]){2}(\/|\-){1}([0-9]){2}$/', 'gi');
// email
var emailRegex = new RegExp('^(([a-zA-Z0-9]*[-_\\.]{0,1}[a-zA-Z0-9]*)+@{1}([a-zA-Z0-9]*[-_\\.]{0,1}[a-zA-Z0-9]*)+(\\.[a-zA-Z]{2,3}){1})$', 'gi');

function maxCheck( src, maxval ) {
	if ((typeof src == "string" && src.length<1)) {
		return true;
	}
	if ((typeof src == "string") && isNaN(src)) {
		return false;
	}
	if ( maxval < parseInt(src)) {
		return false;
	}
	return true;
}
function emptyCheck( src, minlength, maxlength ) {
	if ( src == null || src.length == 0 ) {
		return false;
	}
	if ( minlength != null ) {
		if ( src.length < minlength ) {
			return false;
		}
	}
	if ( maxlength != null ) {
		if ( src.length > maxlength ) {
			return false;
		}
	}
	return true;
}

function checkUserNamePassword(src) {
	if (src.length < 8) {
		return false;
	}
	var userNameRegex = /[0-9]{1,}[a-zA-Z]{1,}[\,\.\-\_\§|\$|\%|\&|\?|\!]{1,}/;
	return userNameRegex.test(unescape(src));
}

function checkEquals(srca, srcb, returnValue) {
	return (srca==srcb) ? returnValue : !returnValue;
}

function emailCheck(src) {
	if ( src.length == 0) {
		return false;
	}
	src = unescape(src);
 	return src.match(emailRegex);
}

function doubleEmptyCheck( src ) {
	return doubleCheck(src, 1);
}

function doubleFilledCheck( src ) {
	return doubleCheck(src, 0);
}

function doubleCheck(src, allowEmpty) {
	if (src.length == 0 && allowEmpty==1) {
		return true;
	}
	if (src.length == 0 && allowEmpty==0) {
		return false;
	}
	var floatRegex = new RegExp('^([0-9]{1,}([\\.|,]{1}[0-9]{1,}|[\\.|,]{0}[0-9]{0}))$', 'gi');
	src = unescape(src);
 	return src.match(floatRegex);
}

function intEmptyCheck( src ) {
	return intCheck(src, 1);
}

function intFilledCheck( src ) {
	return intCheck(src, 0);
}

function intCheck(src, allowEmpty) {
	if (src.length == 0 && allowEmpty==1) {
		return true;
	}
	if (src.length == 0 && allowEmpty==0) {
		return false;
	}
	var intRegex = new RegExp('^([0-9]{1,})$', 'gi');
	src = unescape(src);
 	return src.match(intRegex);
}

function dateCheck(src, allowEmpty, language) {
	if (src.length == 0 && allowEmpty==1) {
		return true;
	}
	if (src.length == 0 && allowEmpty==0) {
		return false;
	}
	if (language == 'en') {
		var dateRegex = new RegExp('^(([0]{1}[1-9]{1}|[1]{1}[0-2]{1})[\-]{1}([0-1]{1}[1-9]{1}|[2]{1}[0-9]{1}|[3]{1}[0-1]{1})[\-]{1}([1]{1}[9]{1}[0-9]{2}|[2]{1}[0-1]{1}[0-9]{2})(\\s[0-1]{1}[0-9]{1}|[2]{1}[0-3]{1})?([\:][0-5]{1}[0-9]{1})?([\:][0-5]{1}[0-9]{1})?)$', 'gi');
	}
	else {
		var dateRegex = new RegExp('^(([0-1]{1}[1-9]{1}|[2]{1}[0-9]{1}|[3]{1}[0-1]{1})[\\.]{1}([0]{1}[1-9]{1}|[1]{1}[0-2]{1})[\\.]{1}([1]{1}[9]{1}[0-9]{2}|[2]{1}[0-1]{1}[0-9]{2})(\\s([0-1]{1}[0-9]{1}|[2]{1}[0-3]{1}))?([\:][0-5]{1}[0-9]{1})?([\:][0-5]{1}[0-9]{1})?)$', 'gi');
	}
 	return dateRegex.test(unescape(src));
}

function dateenEmptyCheck(src) {
	return dateCheck(src, 1, 'en');	
}

function dateenCheck(src) {
	return dateCheck(src, 0, 'en');	
}

function datedeEmptyCheck(src) {
	return dateCheck(src, 1, 'de');	
}

function datedeCheck(src) {
	return dateCheck(src, 0, 'de');	
}

function phoneCheck(src, allowEmpty) {
	if (src.length == 0 && allowEmpty==1) {
		return true;
	}
	if (src.length == 0 && allowEmpty==0) {
		return false;
	}
	var phoneRegex = new RegExp('^([\\d\\s\+\\-\\(\\)]{6,})$', 'gi');
 	return phoneRegex.test(unescape(src));
	
}

function phoneEmptyCheck(src) {
	return phoneCheck(src, 1);	
}

function fileCheck(src, ctnrId ) {
	var iconExists = 0;
	if (document.getElementById(ctnrId) && document.getElementById(ctnrId).innerHTML.length > 0 ) {
		iconExists = 1;	
	}
	if (src.length == 0 && iconExists) {
		return true;
	}
	if (src.length > 0 && !iconExists) {
		return true;
	}
	return false;
}


//]]>

