function loginCheck(value) {
	value = trim(value);
	if (value.length < 6) {
		var info = '<span class="docs_g">длина логина не менее 6 символов</span>';
		if (value.length) info += ' <span class="docs">(' + value.length + ')</span>';
		document.getElementById('loginCheckInfo').innerHTML = info;
	} else {
	    var req = new JsHttpRequest();
	    req.onreadystatechange = function() {
	        if (req.readyState == 4) {
	        	if (req.responseJS.result == 1) var info = '<span class="success">логин свободен</span>';
	        	else var info = '<span class="error">логин занят</span>';
	            document.getElementById('loginCheckInfo').innerHTML = info;
	            // document.getElementById('loginCheckDebug').innerHTML = req.responseText;
	        }
	    }
	    req.open(null, '/modules/reg/login_check.php', true);
	    req.send({login: value});
	}
}

function passCheck() {
	var info = 'длина пароля не менее 8 символов';
	var pass = trim(document.getElementById("pass").value);
	var cpass = trim(document.getElementById("cpass").value);
	if (pass.length >= 8 && cpass.length > 0) {
		if (pass == cpass) info = '<span class="success">пароли совпадают</span>';
		else info = '<span class="error">пароли не совпадают</span>';
	} else if (pass.length) info += ' <span class="docs">(' + pass.length + ')</span>'
	document.getElementById("passCheckInfo").innerHTML = info;
}

function initCheck() {
	if (document.getElementById("loginReg")) {
		loginCheck(document.getElementById("loginReg").value);
		passCheck();
	}
}

function formCheck() {
	var iFields = [ // input
		'lname', 'fname', 'company', 'city', 'indeks', 'adres',
		'phone', 'email', 'loginReg', 'pass', 'cpass', 'code'
	];
	var sFields = [ // select
		'type1', 'region', 'klient', 'reklama'
	];
	var rFields = [ // radio
		['sex', 2]
	];
	// vars
	var colorErr = "red";
	var colorDef = "black";
	var nameAdd = "Z";
	var errInfo = "Вы не заполнили обязательные поля";
	var err;
	for (var i=0; i < iFields.length; i++) {
		var field = document.getElementById(iFields[i]);
		var fieldZ = document.getElementById(iFields[i] + nameAdd);
		if (field.value) {
			fieldZ.style.color = colorDef;
		} else {
			fieldZ.style.color = colorErr;
			err = true;
		}
	}
	for (var i=0; i < rFields.length; i++) {
		var check;
		var fieldZ = document.getElementById(rFields[i][0] + nameAdd);
		for (var y=1; y <= rFields[i][1]; y++) {
			if (document.getElementById(rFields[i][0] + y).checked) {
				check = true;
				break;
			}
		}
		if (check) {
			fieldZ.style.color = colorDef;
		} else {
			fieldZ.style.color = colorErr;
			err = true;
		}
	}
	for (var i=0; i < sFields.length; i++) {
		var field = document.getElementById(sFields[i]);
		var fieldZ = document.getElementById(sFields[i] + nameAdd);
		if (field.options[field.selectedIndex].value) {
			fieldZ.style.color = colorDef;
		} else {
			if (sFields[i] == 'type1' && document.getElementById('type2').value) {
				fieldZ.style.color = colorDef;
			} else if (sFields[i] == 'reklama' && document.getElementById('reklama2').value) {
				fieldZ.style.color = colorDef;
			} else {
				fieldZ.style.color = colorErr;
				err = true;
			}
		}
	}
	if (err) {
		alert(errInfo);
		return false;
	}
	return true;
}
