function CheckValues()
{
var Fields = new Array ('company', 'lastname', 'firstname', 'fathername', 'position', 'email', 'phone', 'login', 'password', 'password_confirm',
						'position', 'salaryfrom');
var FieldsRus = new Array ('Компания', 'Фамилия', 'Имя', 'Отчество', 'Должность', 'Эл. почта', 'Телефон', 'Логин', 'Пароль', 'Подтверждение пароль',
						'Должность', 'Зарплата от..');
//проверка на пустоту
if (!CheckFields(Fields, FieldsRus, 'isNotNull', 'Не заполнено поле %d')) {return false}

// проверка на цифры
var Fields = new Array ('salaryfrom');
var FieldsRus = new Array ('Зарплата от..');
if (!CheckFields(Fields, FieldsRus, 'isValidInt', 'Поле %d должно содержать только цифровые сиволы')) {return false}
// проверка на e-mail
var Fields = new Array ('email');
var FieldsRus = new Array ('Эл. почта');
if (!CheckFields(Fields, FieldsRus, 'isEmailFormat', 'Неверно заполнено поле %d')) {return false}
// проверка на телефон
//var Fields = new Array ('phone', 'age');
//var FieldsRus = new Array ('Телефон', 'Возраст');
//if (!CheckFields(Fields, FieldsRus, 'isPhone', 'Неверно заполнено поле %d')) {return false}
// проверка на латинские символы
// var Fields = new Array ('login', 'password', 'password_check');
// var FieldsRus = new Array ('Логин', 'Пароль', 'Подтверждение пароля');
// if (!CheckFields(Fields, FieldsRus, 'isLatin', 'Поле %d должно содержать только символы англйиского алфавита')) {return false}
// проверка на значение NoValue
var Fields = new Array ('profession');
var FieldsRus = new Array ('Раздел');
if (!CheckFields(Fields, FieldsRus, 'isNoValue', 'Следует выбрать %d')) {return false}
//проверка паролей
var Fields = new Array ('password', 'password_confirm');
var FieldsRus = new Array ('Пароль', 'Подтверждение пароля');
if (!CheckFieldsEqual2(Fields, FieldsRus, 'Поля %d1 и %d2 не совпадают')) {return false}

return true; 
}



/* ФУНКЦИИ ПРОВЕРКИ ЗНАЧЕНИЙ ПОЛЕЙ */


// Проверка пустоту
function isNotNull(str)
{
if (str == 0 || str == " ") {return false}
return true;
}

// Проверка на Целое число
function isValidInt(str)  
{ 
for (var i = 0; i < str.length; i++ )  
	{ 
	var ch = str.charAt(i);  
	if (ch < "0" || ch > "9") {return false} 
	}  
return true 
}

// Проверка на E-mail
function isEmailFormat(sEmail) {
	var Loc1= sEmail.indexOf("@");
	var Loc2= sEmail.lastIndexOf(".");
	if (Loc1 == -1) return false; // должна бьть @ в строке
	if (Loc2<Loc1) return false; // должна бьть . после @
	if (2>(sEmail.length-Loc2)) return false; // более 2 символов после .
return true;
}

// Проверка на телефон
function isPhone(phone)
{
   if (phone == "") return true;
   var RefString = "+-()0123456789 ", TempChar, phone;
   phone = "" + phone;
   if(phone.length == 0) return false;
   for (var i=0; i< phone.length; i++){
      TempChar=phone.substring(i, i+1);
      if (RefString.indexOf (TempChar, 0) == -1) return false; 
   }
   return true;
}

// Проверка на латинские сиволы
function isLatin(phone)
{
   var RefString = "_0123456789qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM", TempChar, phone;
   phone = "" + phone;
   if(phone.length == 0) return false;
   for (var i=0; i< phone.length; i++){
      TempChar=phone.substring(i, i+1);
      if (RefString.indexOf (TempChar, 0) == -1) return false; 
   }
   return true;
}

// Проверка на значение NoValue
function isNoValue(value)
{
	if (value == 'NoValue') return false;
	return true;
}




/* ФУНКЦИИ РАБОТЫ С ПОЛЯМИ */

// Проверка заданных полей указанной функцией
function CheckFields(ArrFields, ArrFieldsRus, Func, AlertMsg)
{
for (i=0; i<ArrFields.length; i++)
  if (eval("document.forms['User']." + ArrFields[i]) && eval("!" + Func + "(document.forms['User']." + ArrFields[i] + ".value)"))
  	{
	AlertMsg = AlertMsg.replace('%d', '"' + ArrFieldsRus[i] + '"');
	alert(AlertMsg);
	return false;
	}
return true
}

//Проверка на совпадение полей
function CheckFieldsEqual2(ArrFields, ArrFieldsRus, AlertMsg)
{
if (eval("document.forms['User']." + ArrFields[0] + " && document.forms['User']." + ArrFields[1]) && 
	eval("document.forms['User']." + ArrFields[0] + ".value != document.forms['User']." + ArrFields[1] + ".value")) 
	{
	AlertMsg = AlertMsg.replace('%d1', '"' + ArrFieldsRus[0] + '"');
	AlertMsg = AlertMsg.replace('%d2', '"' + ArrFieldsRus[1] + '"');
	alert(AlertMsg);
	return false;
	}
return true;
}
