function show_competitor_fields(name, info_about)
{
	document.getElementById('add_reg_info').style.display = '';
	document.getElementById('span_name').firstChild.nodeValue = name;
	document.getElementById('span_info_about').firstChild.nodeValue = info_about;

	document.getElementById('tr_org_name').style.display = 'none';
	document.getElementById('tr_name').style.display = '';
	document.getElementById('tr_contact_phone').style.display = '';
}

function show_employer_fields(name, info_about)
{
	document.getElementById('add_reg_info').style.display = '';
	document.getElementById('span_name').firstChild.nodeValue = name;
	document.getElementById('span_info_about').firstChild.nodeValue = info_about;

	document.getElementById('tr_org_name').style.display = '';
	document.getElementById('tr_name').style.display = '';
	document.getElementById('tr_contact_phone').style.display = '';
}

function is_password(password)
{
	var passwordRegExp = /^([a-z0-9]{4,32})$/i;
	return passwordRegExp.test(password);
}

function check_login(login)
{
	if( is_empty(login) )
	{	warning_after_element(login, 'add', LOGIN_EMPTY_WARNING);
		return false;
	}
	else
	{	warning_after_element(login, 'remove');
		return true;
	}
}

function check_password(password, repeat)
{
	var W = false;

	if( is_empty(password) )
	{	W = PASSWORD_EMPTY_WARNING;
	}
	else if( !is_password(password.value) )
	{	W = PASSWORD_WARNING;
	}
	else if( password.value != repeat.value )
	{	W = PASSWORD_MISMATCH_WARNING;
	}

	if( W != false)
	{	warning_after_element(repeat, 'remove');
		warning_after_element(repeat, 'add', W);
		return false;
	}

	warning_after_element(repeat, 'remove');
	return true;
}

function check_email(email)
{
	if( !is_email(email.value) )
	{	warning_after_element(email, 'add', EMAIL_WARNING);
		return false;
	}
	else
	{	warning_after_element(email, 'remove');
		return true;
	}
}

function check_email_is_busy(element, email)
{
	if(element.firstChild != undefined)
	{
		if( element.firstChild.className === 'busy' )
		{
			warning_after_element(email, 'add', EMAIL_BUSY_WARNING);
			return false;
		}
		else
		{
			warning_after_element(email, 'remove');
			return true;
		}
	}
	else
		return true;
}

function check_who(whoC, whoE, whoA)
{
	if( !whoC.checked && !whoE.checked && !whoA.checked )
	{
		warning_after_element(whoA, 'add', WHO_WARNING);
		return false;
	}
	else
	{	warning_after_element(whoA, 'remove');
		return true;
	}
}

function check_txt_field(field, warning)
{
	if(field.value == '')
	{
		warning_after_element(field, 'add', warning);
		return false;
	}
	else
	{
		warning_after_element(field, 'remove');
		return true;
	}
}

function check_agreement(agreement) {
	if(agreement.checked) {
		document.getElementById('agreement-comment').style.display='none';
	} else {
		hideComments();
		document.getElementById('agreement-comment').style.display='block';
	}
	return agreement.checked;
}

//// Проверка Captcha
//// Если всё в порядке удаляется ранее показанное предупреждение, иначе выводится предупреждение
// captcha - поле 'Введите код указанный на картинке'
// Возвращает - true, если всё в порядке, иначе false
function check_captcha(captcha)
{
	var c = get_cookie('captcha_md5');
	if( c != md5(captcha.value) )
	{	
		if( !c )
			warning_after_element(captcha, 'add', CAPTCHA_WARNING + ". " + COOKIE_DISABLED_WARNING);
		else
			warning_after_element(captcha, 'add', CAPTCHA_WARNING);
		return false;
	}
	else
	{	warning_after_element(captcha, 'remove');
		return true;
	}
}

function check_form()
{
	var ok = true;
	var form = document.getElementById('reg_form');

	var timeout;
//	doLoadCheckLogin();
//	while(check === '')
//		sleep(200);
//
//	alert(check);
//	clearTimeout(timeout);
//
//	if( !check && ok == true )
//	{	ok = false;
//		form['reg[login]'].focus();
//	}
//	check = '';


	if( !check_email(form['reg[email]']) && ok == true )
	{	ok = false;
		form['reg[email]'].focus();
	}

	if (!check_email_is_busy(document.getElementById('email_result'), form['reg[email]']) && ok == true )
	{	ok = false;
		form['reg[email]'].focus();
	}

	if( !check_password(form['reg[password]'], form['reg[password_repeat]']) && ok == true )
	{	ok = false;
		form['reg[password]'].focus();
	}

	if( !check_who(form['who_competitor'], form['who_employer'], form['who_agency']) && ok == true )
	{	ok = false;
		form['who_competitor'].focus();
	}

	if( !check_agreement(form['reg[agreement]'])) {
		ok = false;
		form['reg[agreement]'].focus();		
	}
	// Проверка Captcha
	if( document.getElementById('reg-captcha') && !check_captcha( form['reg[captcha]'] ) && ok == true )
	{	ok = false;
		form['add[captcha]'].focus();
	}
	
	/*
	if( !check_txt_field(form['reg[captcha]'], CAPTCHA_WARNING) && ok == true )
	{	ok = false;
		form['reg[captcha]'].focus();
	}
	*/
//	if(form['org_name'].parentNode.style.display != 'none')
//	{
//		if( !check_txt_field(form['org_name'], /*ORG_NAME_WARNING*/'wrong') && ok == true)
//		{	ok = false;
//			form['org_name'].focus();
//		}
//	}
	
	return ok;
}
