$(document).ready(function(){

	$('div#request-steps-close').click(function() {
		$('#request-step-form').hide();
	});
	$('span#request-step-open').click(function() {
		$('#postResult').hide();
		$('#mainForm').show();
		var offset = $(this).offset();
		showForm( offset );
	});

	bindForm();
	moveForm();
	
	$('#f_card_name_exists').click();
});

function bindForm(){
	$('#mainForm input.phone').keyup(function() {
		checkPhone($(this));
	});
	$('#mainForm input.phone').blur(function() {
		checkPhone($(this));
	});
	$('#mainForm input').keyup(function() {
		validateForm();
	});
	$('#mainForm input').blur(function() {
		validateForm();
	});
	$('#mainForm input:checkbox').click(function() {
		validateForm();
	});
	$('#mainForm select').change(function() {
		validateForm();
	});
	$('#mainForm').submit(function() {
		$('#mainForm input.phone').each(function(index) {
			clearPhoneBeforeSubmit($(this));
		});

		submitForm();
		return false;
	});

	validateForm();
}

function submitForm(){
// NEW
	$.ajax({
		url: '/ajax/action111.php',
		data: {
			lastname: $('#lastname').val(),
			firstname: $('#firstname').val(),
			midname: $('#midname').val(),
			x_sDay: $('#x_sDay').val(),
			x_sMonth: $('#x_sMonth').val(),
			x_sYear: $('#x_sYear').val(),
			f_card: $('#f_card').val(),
			f_card_name_exists: $('#f_card_name_exists:checked').length,
			f_card_name: $('#f_card_name').val(),
			f_email: $('#f_email').val(),
			m_phone: $('#m_phone').val(),
			h_phone: $('#h_phone').val(),
			f_city: $('#f_city').val(),
			f_city2: $('#f_city2').val()
		},
		type: 'POST',
		dataType: 'xml',
		cache: false,
		timeout: 20000,
		success: function(xml) {
			showResult();
			$('#request-step-form').css("bottom", "300px");
		},
		error: function() {
			showResult();
//			alert("ERROR");
		}
	});

//	$('#request-step-form').hide('fast');
}

function showResult(){
	$('#mainForm').hide();
	$('#postResult').show();
	$('#mainForm')[0].reset();
	validateForm();
}

function validateForm(){
	var errors = false;

	$('#mainForm input.required, #mainForm select.required').each(function(index) {
		if(!checkRequired($(this)))
			errors = true;
	});

	$('#mainForm input.error').each(function(index) {
		$(this).removeClass('error');
	});

	$('#mainForm input.rustext').each(function(index) {
		if(!checkRusInput($(this)))
			errors = true;
	});

	$('#mainForm input.phone').each(function(index) {
		if($(this).val() != '' && !validatePhone($(this)))
			errors = true;
	});

	$('#mainForm input.passport').each(function(index) {
		if(!checkPassportInput($(this)))
			errors = true;
	});

	$('#mainForm tr:visible input:password').each(function(index) {
		if(!checkPasswords())
			errors = true;
	});

	if(!checkDate())
		errors = true;
		
	$('#mainForm #f_card').each(function(index) {
		var value = $(this).val();
		
		if(value.length > 0){
			if (!value.match(/^ *[0-9]{4} *[0-9]{4} *$/)){
				$(this).addClass('error');
				errors = true;
			}
		}	
	});

	$('#mainForm #f_email').each(function(index) {
		var value = $(this).val();
		
		if(value.length > 0){
			if (!value.match(/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/)){
				$(this).addClass('error');
				errors = true;
			}
		}	
	});
	
	if(errors){
		$('#btnSubmit').attr('disabled', 'disabled');
	}else{
		$('#btnSubmit').attr('disabled', '');
	}
}

var iBottomOffset = 380;
var iTopFormPositionBottomOffset = 1000;	// Отступ верхней части формы от самого низа
var iMinBottomOffset = 100;

function moveForm(){
	var iFormHeight = $('#request-step-form').height();
	var iBottomOffset = (iTopFormPositionBottomOffset - iFormHeight);
	$('#request-step-form').css('bottom', iBottomOffset + 'px');
}

function showForm( offset ){
	var formWidth = $('#request-step-form').width();
	var formHeight = $('#request-step-form').height();

	var x_start = offset.left + 81;
	var y_start = offset.top; 			// 1245

	var y_end = $(document).height() - iTopFormPositionBottomOffset - 20;
	var x_end = $(document).width() - formWidth - 30;
//	x_end = 350;
	//$(document).width()

	var width_end = formWidth - 5;
	var height_end = formHeight - 5;

	show_from_center('#tmp_for_show', $('#request-step-form'), x_start, x_end + 29, y_start, y_end + 24, width_end, height_end);
}

