function checkCaptcha(url)
{
	var captcha = jQuery('input[@name*=captchaCode]');

	jQuery.getJSON(url+"?code="+captcha.val(),function(data) {
		//console.log(data);
		if (data.response != 1) {
			alert("Wrong captcha!");
			captcha.css('border', '1px solid #c24949');
			captcha.css('background', '#ffbcbc');

			return false;
		}

		captcha.css('border', '1px solid #49c24f');
		captcha.css('background', '#bcffbf');
		document.registerForm.submit();
	});

	return false;
}

function checkRecaptcha(url)
{

    var recaptcha_challenge_field = jQuery("input[@name='recaptcha_challenge_field']").val();
	var recaptcha_response_field = jQuery("input[@name='recaptcha_response_field']").val();

	jQuery.getJSON(url+"?recaptcha_challenge_field="+recaptcha_challenge_field + "&recaptcha_response_field=" + recaptcha_response_field,function(data) {
		if (data.response != 1) {
			alert("Wrong captcha!");
			return false;
		}
		document.registerForm.submit();
	});

	return false;
}

function checkConfirmation(checked)
{
	if (checked) {
		jQuery('#submitButton').attr('disabled', 0);
	} else {
		jQuery('#submitButton').attr('disabled', 1);
	}

	return true;
}

function showTermConditions()
{
	if (jQuery('#divTermsConditions').attr('class') == 'hidden') {
		jQuery('#divTermsConditions').attr('class', '');
	} else {
		jQuery('#divTermsConditions').attr('class', 'hidden');
	}

	return true;
}

function checkLoginAvailable(login)
{
	jQuery.getJSON(globalHttpPath+"/register/checkLogin/?login="+login, 
	function(data) {
		if (!data || data == '0') {
			jQuery("#login_availability").html("yes");
		}
	});
	
	jQuery("#login_availability").html("no");
}

function checkPasswordConfirm()
{
	if (jQuery("#password1").val() == jQuery("#password2").val()) {
		jQuery("#passwords_match").html("matched");
	} else {
		jQuery("#passwords_match").html("not matched");
	}
}

function checkEmail(email)
{
	var filter = /^\w+([\.-]?\w+)*@\w+\.\w{1,}$/;
	
	if (filter.test(email)) {
		jQuery("#email_valid").html("valid");
	} else {
		jQuery("#email_valid").html("not valid");
	}
}

function checkLogin(login) {
	var good = true;
	if (login.length<6){
		good=false;
		err+="The login should be at least 6 characters)\n";
	};
		
	if (login.length>12){
		good=false;
		err+="The login should be max 12 symbols\n";
	};
		
	us_pass = true;
	
	for (i = 0; i < login.length; i++) {
		ch = (login.substring(i, i + 1)).toLowerCase();
		if (!(((ch >= "a") && (ch <= "z")) || ((ch >= "0") && (ch <= "9")) || (ch == "_") || (ch == "-") || (ch == "."))) {
			us_pass = false;
			good = false;
		}
	}
	if (! us_pass) err+="The login may contain only symbols from a-z, A-Z, 0-9\n";
	
	return good;
}

function checkPassword(password, login) {

	var good = true;
	if (password.length<6){
		good=false;
		err+="The password should be at least 6 characters\n";
	}
		
	if (password.length>12){
		good=false;
		err+="The password should be max 16 symbols\n";
	}

	if (password.indexOf(login) >= 0) {
		good=false;
		err+="The password should not contain your login\n";	
	}
	return good;

}

function loadRegionsJson(data) {

	var region_container = $("#region_container")

	if (!data.regions || data.regions.length < 1) {
	
		var html = '<input id="region" name="region" />';
		region_container.html(html);
		if (typeof region != 'undefined') {
			$("input[@name='region']").val(region);
		}
	} else {									

		var html = '<select id="region" name="region">';
		html += '<option value="">------</option>';

		for (x in data.regions) {
			html += '<option value="' + data.regions[x] + '"' +'>' + data.regions[x] + '</option>';
		}

		html += '</select>';
		
		region_container.html(html);
		if (typeof region != 'undefined') {
			$("select[@name='region']").val(region);
		}
	}	
}