
function toggle_private() {
	$('#privateContainer').toggle();
}

function showRegistration() {
	$("#reg").html('<h2>Регистрация нового пользователя:</h2>' +
	'<form id="reg_form" method="post" action="/index.php?register=yes" onsubmit="send_registration();return false;">' +
    '<div><input type="hidden" name="backurl" value="/index.php" /></div>' +
    '<div><input type="hidden" name="AUTH_FORM" value="Y" /></div>' +
    '<div><input type="hidden" name="TYPE" value="REGISTRATION" /></div>' +
    '<table class="registration"><tr>' +
            '<td>Фамилия</td>' +
            '<td><input type="text" id="USER_LAST_NAME" name="USER_LAST_NAME" maxlength="50" value="" onblur="check(this.id, isCyr(this.value))" /></td>' +
            '<td>' +
                '<span class="reg_sign" id="USER_LAST_NAME_sign"></span>' +
                '<p class="reg_tooltip" id="USER_LAST_NAME_tooltip">Ошибка</p>' +
            '</td>' +
        '</tr><tr>' +
            '<td>Имя</td>' +
            '<td><input style="margin:0;" type="text" id="USER_NAME" name="USER_NAME" maxlength="50" value="" onblur="check(this.id, isCyr(this.value))" /></td>' +
            '<td>' +
                '<span class="reg_sign" id="USER_NAME_sign"></span>' +
                '<p class="reg_tooltip" id="USER_NAME_tooltip">Ошибка</p>' +
            '</td>' +
        '</tr><tr>' +
            '<td>Отчество</td>' +
            '<td><input type="text" id="USER_SECOND_NAME" name="USER_SECOND_NAME" maxlength="50" value="" onblur="check(this.id, isCyr(this.value))" /></td>' +
            '<td>' +
                '<span class="reg_sign" id="USER_SECOND_NAME_sign"></span>' +
                '<p class="reg_tooltip" id="USER_SECOND_NAME_tooltip">Ошибка</p>' +
            '</td>' +
        '</tr><tr>' +
            '<td>Телефон для связи</td>' +
            '<td><input type="text" id="USER_PERSONAL_PHONE" name="USER_PERSONAL_PHONE" maxlength="50" value="" onblur="check(this.id, isPhone(this.value))" /></td>' +
            '<td>' +
                '<span class="reg_sign" id="USER_PERSONAL_PHONE_sign"></span>' +
                '<p class="reg_tooltip" id="USER_PERSONAL_PHONE_tooltip">Ошибка</p>' +
            '</td>' +
        '</tr><tr>' +
            '<td>E-Mail</td>' +
            '<td><input type="text" id="USER_EMAIL" name="USER_EMAIL" maxlength="255" value="" onblur="check(this.id, isEmail(this.value))" /></td>' +
            '<td>' +
                '<span class="reg_sign" id="USER_EMAIL_sign"></span>' +
                '<p class="reg_tooltip" id="USER_EMAIL_tooltip">Ошибка</p>' +
            '</td>' +
        '</tr><tr>' +
            '<td>Пароль (мин. 6 символов)</td>' +
            '<td><input type="password" id="USER_PASSWORD_reg" name="USER_PASSWORD_reg" maxlength="50" value="" onblur="check(this.id, isPasswordLength(this.value, 6))" /></td>' +
            '<td>' +
                '<span class="reg_sign" id="USER_PASSWORD_reg_sign"></span>' +
                '<p class="reg_tooltip" id="USER_PASSWORD_reg_tooltip">Ошибка</p>' +
            '</td>' +
        '</tr><tr>' +
            '<td>Подтверждение пароля</td>' +
            '<td><input type="password" id="USER_CONFIRM_PASSWORD_reg" name="USER_CONFIRM_PASSWORD_reg" maxlength="50" value="" onblur="check(this.id, isConfirmPassword(this.value, $(\'#USER_PASSWORD_reg\').val()))" /></td>' +
            '<td>' +
                '<span class="reg_sign" id="USER_CONFIRM_PASSWORD_reg_sign"></span>' +
                '<p class="reg_tooltip" id="USER_CONFIRM_PASSWORD_reg_tooltip">Пароли не совпадают</p>' +
            '</td>' +
        '</tr><tr>' +
            '<td>Введите слово на картинке</td>' +
            '<td>' +
                '<input type="hidden" id="captcha_sid" name="captcha_sid" value="8f5a7270420d37c8cbcd3a7b9df00fe8" />' +
                '<img id="captcha_img" src="/bitrix/tools/captcha.php?captcha_sid=8f5a7270420d37c8cbcd3a7b9df00fe8" style="float: left;" width="180" height="40" alt="Введите цифры на картинке" title="Введите цифры на картинке" />' +
                '<input type="text" id="captcha_word" name="captcha_word" maxlength="50" value="" style="float:left;width:90px;margin:10px 0 0 5px;" />' +
            '</td>' +
            '<td>' +
                '<span class="reg_sign" id="captcha_word_sign"></span>' +
                '<p class="reg_tooltip" id="captcha_word_tooltip"></p>' +
            '</td>' +
        '</tr><tr>' +
            '<td colspan="2"><input style="width:auto;" type="checkbox" name="agree" value="Y" /> С условиями <a href="#" onclick="location.href=\'/offer.php\';" style="text-decoration:underline;">договора-оферты</a> ознакомлен и согласен.</td>' +
        '</tr><tr>' +
            '<td colspan="2" style="text-align:right;"><input class="btn" type="submit" name="Register" value="Зарегистрироваться" /></td>' +
        '</tr></table></form>');
}

function send_registration() {
	var total = 7;
	var pre_total = check("USER_LAST_NAME", isCyr($('#USER_LAST_NAME').val())) + 
    	check("USER_NAME", isCyr($('#USER_NAME').val())) + 
    	check("USER_SECOND_NAME", isCyr($('#USER_SECOND_NAME').val())) + 
    	check("USER_PERSONAL_PHONE", isPhone($('#USER_PERSONAL_PHONE').val())) + 
    	check("USER_EMAIL", isEmail($('#USER_EMAIL').val())) + 
    	check("USER_PASSWORD_reg", isPasswordLength($('#USER_PASSWORD_reg').val(), 6)) + 
    	check("USER_CONFIRM_PASSWORD_reg", isConfirmPassword($('#USER_CONFIRM_PASSWORD_reg').val(), $('#USER_PASSWORD_reg').val())); 
    
	if (total == pre_total) {
		var queryString = $('#reg_form').formSerialize();
		
		$.getJSON("/registration.php", queryString, function(json) {
			if (!json.errors) {
				$.nyroModalManual({
					bgColor: '#f7f9ea',
					content: json.content
				});
				
				$('#login_word').html(json.login_word);
				$('#private_box').hide();
			} else {
				$('#captcha_sid').val(json.captcha_sid);
				$('#captcha_img').attr('src',
									   '/bitrix/tools/captcha.php?captcha_sid='
									   + json.captcha_sid);
				$('#captcha_word').val('');
			}
		});
	}
}

function check(id, result) {
	var obj = $('#' + id + '_sign');
	var obj_tooltip = $('#' + id + '_tooltip');
	
	if (result) {
		obj.html('OK');
		obj.css('color', '#209330');
		obj_tooltip.hide();
	} else {
		obj.html('&nbsp;&nbsp;!');
		obj.css('color', '#f7544c');
		obj_tooltip.show();
	}

	obj.show();

	return result;
}

function isCyr(value) {
	rexp = /^[ЁёА-Яа-яA-Za-z\s]+$/;

	return rexp.test(value); 
}

function isPhone(value) {
	rexp = /^[0-9\-()+\s]+$/;

	return rexp.test(value); 
}

function isEmail(value) {
	rexp = /^[a-zA-Z0-9!#$%&'*+\/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+\/=?^_`{|}~-]+)*@(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+(?:[a-zA-Z]{2,4}|museum|travel)$/;

	return rexp.test(value); 
}

function isPasswordLength(value, length) {
	if (value.length >= length)
		return true;

	return false;
}

function isConfirmPassword(value1, value2) {
	if (value1 == value2 && value1.length > 0)
		return true;
	
	return false;
}