$(document).ready(function() {

//==============================================================================

// Отправка формы входа.
$('form#form_log_in').ajaxForm({
	dataType: 'xml',
	beforeSubmit: function() {
		$('form#form_log_in .jq_loader_pic').html('<img src="/_img/loading.gif"/>');
	},
	success: function(response, status, xhr, form) {
		var repsonse_status = $(response).find('log_in status').text();
		var message = $(response).find('log_in message').text();

		$('form#form_log_in .jq_loader_pic').html('');
		//alert((xhr.responseText));

		if (repsonse_status == 'ok') {
			$('form#form_log_in .jq_log_in_message').text(locale.registration.login_success.val);
			//$('.div_enter_form_send').remove();

			// Просто рефрешим страницу.
			setTimeout(function() {
				window.location.reload();
				history.go(0);
				window.location.href = window.location.href;
			}, 1500);
		}
		else if (repsonse_status == 'fail') {
			$('form#form_log_in .jq_log_in_message').text(locale.registration.login_fail.val);
		}
		else {
			$('.enter_form_message').text(locale.unknown_error.val);
		}
	} // function
}); // ajaxForm

//==============================================================================

// Отправка формы регистрации/изменения профиля на сервер.
$('#form_register').ajaxForm({
	dataType: 'xml',
	success: function(response, status, xhr, form) {
		var accept_text = $(response).find('accept').text();

		// Сбрасываем то, что было установлено.
		//$('.registration-row-err').show();
		$('#form_register span.error_descr').text('');
		$('#form_register input').removeClass('error');

		// Если всё ненормально.
		var ersf = new Array();

		// Если всё нормально.
		if (accept_text == '1') {
//			$('.registration-row-err').hide();
//			location.href = $(response).find('sign_up url').text();
			$('#ask_question_window #form_register').after('<form id="div_register_success"><div>' + locale.registration.register_success.val + '</div><div><span class="jq_register_to_ask">' + $('#form_register .jq_form_register_backtologin').text() + '</span></div></form>')

			$('#div_register_success .jq_register_to_ask').click(function() {
				$('#ask_question_window #div_register_success').animate({'opacity': '0'}, 150, function() {
					var jFormToShow = $('#ask_question_window #form_ask_question');
					var jFormToHide = $(this);
					questionFormChange(jFormToHide, jFormToShow);
					jFormToHide.remove();
					$('#ask_question_window #form_log_in').remove();
					$('#ask_question_window #form_register').remove();
				});
			});

			var jFormToShow = $('#ask_question_window #div_register_success');
			jFormToShow.hide();
			var jFormToHide = $('#form_register');
			questionFormChange(jFormToHide, jFormToShow);
		} else if (accept_text == '0') {
			$(response).find('field').each(function() {
//				alert($(this).attr('name'));
				$('#form_register span#result_' + $(this).attr('name')).text($(this).text());
				$('#form_register input#' + $(this).attr('name')).addClass('error');
				ersf.push('#form_register input#'+$(this).attr('name'));
			});
		} else {

		}

		var getted = "#" + $($(ersf.join(',')).get(0)).attr('id');
//		$('html, body').animate({
//			scrollTop: $(getted).offset().top - 10
//		}, 700);
		$(getted).focus();
	} // function
}); // ajaxForm

//==============================================================================

if ($('#ask_question_window #form_log_in').size() > 0) {
	$('#ask_question_window #form_log_in').show();
	$('#ask_question_window #form_ask_question').hide();
}

//==============================================================================

$('#form_log_in .jq_form_login_register').click(function() {
	$('#ask_question_window #form_log_in').animate({'opacity': '0'}, 150, function() {
		var jFormToShow = $('#ask_question_window #form_register');
		var jFormToHide = $(this);
		questionFormChange(jFormToHide, jFormToShow);
	});
});

$('#form_register .jq_form_register_backtologin').click(function() {
	$('#ask_question_window #form_register').animate({'opacity': '0'}, 150, function() {
		var jFormToShow = $('#ask_question_window #form_log_in');
		var jFormToHide = $(this);
		questionFormChange(jFormToHide, jFormToShow);
	});
});

});

//==============================================================================

function questionFormChange(jFormToHide, jFormToShow) {
	jFormToShow.show();
	var newFormHeight = jFormToShow.height();
	jFormToShow.hide();
	$('#ask_question_window div.up_tender').animate({'height': newFormHeight + 'px'}, 150, function() {
		jFormToHide.css({'display': 'none'});
		jFormToShow.css({'opacity': '0', 'display': 'block'});
		jFormToShow.animate({'opacity': '1'}, 150);
		$('#ask_question_window div.up_tender').css({'height': 'auto'});
	});
}
