function CheckForm(){
  var error=0;
  var mf=document.forms['order'];
    if (mf.f1.value=='' && error==0) {
      alert('Не заполнено поле \"Фамилия\"');
	  mf.f1.focus();
	  error=1;
    }
	if (mf.io1.value=='' && error==0) {
      alert('Не заполнено поле \"Имя, Отчество\"');
	  mf.io1.focus();
	  error=1;
    }
	if (mf.bd1.value=='' && error==0) {
      alert('Не заполнено поле \"Дата рождения\"');
	  mf.bd1.focus();
	  error=1;
    }
	if (mf.pasp1.value=='' && error==0) {
      alert('Не заполнено поле \"№ паспорта\"');
	  mf.pasp1.focus();
	  error=1;
    }
	if (mf.c_name.value=='' && error==0) {
      alert('Не заполнено поле \"Контактное лицо\"');
	  mf.c_name.focus();
	  error=1;
    }
	if (mf.phone.value=='' && mf.email.value=='' && error==0) {
      alert('Укажите, пожалуйста, поле \"Ваш телефон\" или \"Ваш email\"');
	  mf.phone.focus();
	  error=1;
    }
	if (error==0 && mf.phone.value=='' && isEmail()==false){
      	error=1;
		mf.email.focus();
    }
    if (error==0) {
    	mf.submit();
    }
 }
 function isEmail() {

	var strEmail = document.forms['order'].elements("email").value;
	//Данная функция проверяет строку strEmail на соответствие формату почтового адреса.
	//При этом строка разбивается на составные части:
	//имя_пользователя@сервер

	if (strEmail=="") {
		alert("Введите, пожалуйста, E-mail");
		document.forms['order'].elements("email").focus();
		return false;
	}

	var letters="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
	var numbers="0123456789";

	var name="";
	var server="";
	var strings=new Array();

	//разделяем строку на имя пользователя и имя сервера
	strings=strEmail.split("@");
	if (strings.length==1) {
		alert("Ошибка: e-mail должен содержать символ @");
		document.forms['order'].elements("email").focus();
		return false;
	} else if (strings.length==2) {
		name=strings[0];
		server=strings[1];
	} else {
		alert("Ошибка: e-mail не может содержать более одного символа @");
		document.forms['order'].elements("email").focus();
		return false;
	}

	//проверка имени на допустимость символов
	if (!isValid(name,letters+numbers+"._-")) {
		alert("Недопустимые символы в имени пользовател\я");
		document.forms['order'].elements("email").focus();
		return false;
	}

	//разделяем имя сервера на составные части
	strings=server.split(".");
	if (strings.length<2) {
		alert("Нераспознанный e-mail");
		document.forms['order'].elements("email").focus();
		return false;
	}
	//проверяем каждую часть на допустимые символы
	for (i=0;i<strings.length;i++) {
		if (!isValid(strings[i],letters+numbers+"_-")) {
			alert("Нераспознанный e-mail");
			document.forms['order'].elements("email").focus();
			return false;
		}
	}

	return true;

}

function isValid(what,chars) {
	//проверяет, что все символы из what принадлежат множеству chars
	//если what пустая - ошибка
	while (what.charAt(0)==" ") {
		what=what.substring(1);
	}
	if (what=="") {
		return false;
	}
	bool1=false;
	for (count1=0; (count1<what.length)&&(!bool1);count1++) {
		bool2=false;
		for (count2=0; (count2<chars.length)&&(!bool2);count2++) {
			if (what.charCodeAt(count1)==chars.charCodeAt(count2)) {
				bool2=true;
			}
		}
		if (!bool2) {
			bool1=true;
		}
	}
	return !bool1;
}