// проверяем мыло
function validateEmail(emailad) {
	var exclude=/[^@\-\.\w]|^[_@\.\-]|[\._\-]{2}|[@\.]{2}|(@)[^@]*\1/;
	var check=/@[\w\-]+\./;
	var checkend=/\.[a-zA-Z]{2,3}$/;
	
	if(((emailad.search(exclude)!=-1)||
		(emailad.search(check))==-1)||
			(emailad.search(checkend)==-1)) return false;
	else return true;
}

function onFieldChange(which) {
	var formObj = which.form;
	var expr = false;
	var imageObj = null;
	var oldRequiredValue = null;
	
	for (var i=0; i < requiredArray[0].length; i++) {

		field = formObj.elements[requiredArray[0][i]];

		if (field.type.indexOf('select') == 0) expr = field.selectedIndex;
		else if (field.name.indexOf('email') == 0) expr = validateEmail(field.value);
		else expr = (field.value != '');

		oldRequiredValue = requiredArray[1][i];

		if (expr) requiredArray[1][i] = 0;
		else requiredArray[1][i] = 1;

		imageObj = document.images[requiredArray[0][i] + '_img'];
		// меняем картинку только если поменялся статус поля
		if (imageObj && oldRequiredValue != requiredArray[1][i]) {
			imageObj.src = requiredArray[1][i] ? imageStar.src : imageEmpty.src;
		}
	}
}

// проверка полей при сабмите
function checkResults(f){
	for (var i=0; i < requiredArray[0].length; i++)
		if (requiredArray[1][i]) {
			alert('Пожалуйста, заполните поле "' + fieldName[i] + '".');
			var fieldObj = eval('f.'+requiredArray[0][i]);
			if (fieldObj) fieldObj.focus();
			return false;
		}
	return true;
}

// инициализация
function init() {
	if (window.requiredArray) {
		// бежим по массиву обязательных полей и расставляем звездочки
		var imageObj = null;
		for (var i=0; i < requiredArray[0].length; i++) {
			imageObj = document.images[requiredArray[0][i] + '_img'];
			if (imageObj) {
				imageObj.src = requiredArray[1][i] ? imageStar.src : imageEmpty.src;
			}
		}
	}
}

window.onload = init;

imageStar = new Image();
imageStar.src = '/i/i-req.gif';
imageEmpty = new Image();
imageEmpty.src = '/i/d-t.gif';
