function check(val, template) {
	var re = new RegExp(template);
	if (val.search(re) == -1) {
		return 0;
	}
	else {
		return 1;
	}
}


function check_form(fieldId) {	var formName = document.getElementById("form_name").value;
	if(formName == "user_register") {
		fields 	 = new Array(
					'e_first_name',
					'e_middle_name',
					'e_birth_day',
					'e_birth_month',
					'e_birth_year',
					'e_email',
					'e_email_confirm',
					'e_phone_1',
					'e_password',
					'e_password_confirm'
				);

		patterns = new Array(
					'^[А-Яа-я\- \_\.]{2,}$',
					'^[А-Яа-я\- \_\.]{2,}$',
					'^[0-9]{1,2}$',
					'^[0-9]{1,2}$',
					'^[0-9]{4}$',
					'^([a-zA-Z0-9])+([.a-zA-Z0-9_-])*@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-]+)+',
					'^([a-zA-Z0-9])+([.a-zA-Z0-9_-])*@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-]+)+',
					'^[А-Яа-яA-Za-z0-9 \(\)\+\-\_\.]{7,}$',
					'^[A-Za-z0-9\-\_\.\*]{6,}$',
					'^[A-Za-z0-9\-\_\.\*]{6,}$'
				);
	}
	else if(formName == "user_edit") {		fields 	 = new Array(
					'e_first_name',
					'e_middle_name',
					'e_birth_day',
					'e_birth_month',
					'e_birth_year',
					'e_phone_1',
					'e_password',
					'e_password_confirm'
				);

		patterns = new Array(
					'^[А-Яа-я\- \_\.]{2,}$',
					'^[А-Яа-я\- \_\.]{2,}$',
					'^[0-9]{1,2}$',
					'^[0-9]{1,2}$',
					'^[0-9]{4}$',
					'^[А-Яа-яA-Za-z0-9 \(\)\+\-\_\.]{7,}$',
					'^[A-Za-z0-9\-\_\.\*]{6,}$',
					'^[A-Za-z0-9\-\_\.\*]{6,}$'
				);
	}

	error = 0;
	for(var i = 0; i < fields.length; i++) {		var val = document.getElementById(fields[i]).value;
		if((fieldId != undefined && fields[i] == fieldId) || fieldId == undefined) {			if(!check(val, patterns[i])) {
				document.getElementById(fields[i]).style.backgroundColor = "#FEBDBA";
				error = 1;
			}
			else {
				document.getElementById(fields[i]).style.backgroundColor = "";
				if(fields[i] == "e_birth_day") {
					if(val < 1 || val > 31) {document.getElementById(fields[i]).style.backgroundColor = "#FEBDBA"; error = 1;}
				}
				if(fields[i] == "e_birth_month") {
					if(val < 1 || val > 12) {document.getElementById(fields[i]).style.backgroundColor = "#FEBDBA"; error = 1;}
				}
				if(fields[i] == "e_birth_year") {
					if(val < 1950 || val > 2000) {document.getElementById(fields[i]).style.backgroundColor = "#FEBDBA"; error = 1;}
				}
				if(fields[i] == "e_email_confirm") {
					if(val != document.getElementById('e_email').value) {document.getElementById(fields[i]).style.backgroundColor = "#FEBDBA"; error = 1;}
				}
				if(fields[i] == "e_password_confirm") {
					if(val != document.getElementById('e_password').value) {document.getElementById(fields[i]).style.backgroundColor = "#FEBDBA"; error = 1;}
				}
			}
		}
	}

	if(error == 1 && fieldId == undefined) {
		alert("Вы допустили ошибку во введенных данных.\nПожалуйста, откорректируйте ввод в отмеченных полях.");
		return false;
	}
	else if(error == 1) {
		return false;
	}
	else {
		return true;
	}
}