// VALIDATE INPUT FIELDS
function validateRussianCharacters(code) {
	if ((code >= 1040 && code <= 1071) || (code >= 1072 && code <= 1103) || code == 1025 || code == 1105)
		return true;
	else return false;
}
function validateAlpha(e) {
	var re = /[a-z\x0D\x08]/i;
	if (!e || !e.which) var code = event.keyCode;
	else var code = e.which;
	if (!re.test(String.fromCharCode(code))) return false;
}
function validateAlNumUnder(e) {
	var re = /[a-z0-9_\.\x0D\x08]/i;
	if (!e || !e.which) var code = event.keyCode;
	else var code = e.which;
	if (validateRussianCharacters(code)) {
		alert('Переключите язык ввода.');
		if (!re.test(String.fromCharCode(code))) return false;
	}
	else if (!re.test(String.fromCharCode(code))) return false;
}

function validateAlNumSpace(e) {
	var re = /[a-z0-9\x0D\x08\x20]/i;
	if (!e || !e.which) var code = event.keyCode;
	else var code = e.which;
	if (!re.test(String.fromCharCode(code))) return false;
}
function validateAlSpace(e) {
	var re = /[a-z\x20\x0D\x08]/i;
	if (!e || !e.which) var code = event.keyCode;
	else var code = e.which;
	if (!re.test(String.fromCharCode(code))) return false;
}
function validateDigit(e) {
	var re = /[0-9\x0D\x08]/i;
	var code;
	if (!e || !e.which) {
		if (window.event) {
			code = event.keyCode;
		}
	}
	else code = e.which;
	if(!code) return;
	
	if (!re.test(String.fromCharCode(code))) return false;
}

function validateEmail(e) {
	var re = /[a-z0-9\x0D\x2D\x2E\x5F\x08\xBD\xBE\x40]/i;
	var code;
	if (!e || !e.which) {
		if (window.event) {
			code = event.keyCode;
		}
	}
	else code = e.which;
	if(!code) return;

	if (!re.test(String.fromCharCode(code))) return false;
}

function validateFileName(e) {
	var re = /[\"\'\\\/\*\?\#<>:\|@&%]/i;
	if (!e || !e.which) var code = event.keyCode;
	else var code = e.which;
	if (re.test(String.fromCharCode(code))) return false;
}


// VALIDATE RUSSIAN STRINGS
function validateAlpha_rus(e) {
	var re = /[a-z\x0D\x08]/i;
	if (!e || !e.which) var code = event.keyCode;
	else var code = e.which;
	if (!re.test(String.fromCharCode(code)) && !validateRussianCharacters(code)) return false;
}
function validateAlNumUnder_rus(e) {
	var re = /[a-z0-9_\x0D\x08]/i;
	if (!e || !e.which) var code = event.keyCode;
	else var code = e.which;
	if (!re.test(String.fromCharCode(code)) && !validateRussianCharacters(code)) return false;
}
function validateAlNumSpace_rus(e) {
	var re = /[a-z0-9\x0D\x08\x20]/i;
	var code;
	if (!e || !e.which) {
		if (window.event) {
			code = event.keyCode;
		}
	}
	else code = e.which;
	if(!code) return;
	if (!re.test(String.fromCharCode(code)) && !validateRussianCharacters(code)) return false;
}
function validateAlSpace_rus(e) {
	var re = /[a-z\x20\x0D\x08]/i;
	if (!e || !e.which) var code = event.keyCode;
	else var code = e.which;
	if (!re.test(String.fromCharCode(code)) && !validateRussianCharacters(code)) return false;
}

