function Comparison(id, type) {
	$.ajax({
		type: 'GET',
		url: '/compare/'+ type +'/' + id,
			async: false
		});
}

function addProduct(id) {
	$.ajax({
		type: 'GET',
		dataType: 'json',
		url: '/cart/' + id,
		async: false,
		success: function(data){
			if (data['error'] == 0) {
				$("#cart_count").text(data['content']);			
			}
		}
	});
}

function addProductReport(id) {
	var return_code = 0;
	
	$.ajax({
		type: 'GET',
		dataType: 'json',
		url: '/ajax/report.php?product_id=' + id + '&redirect=' + window.location,
		async: false,
		success: function(data) {
			return_code = data['error'];
		}
	});
	
	return return_code;
}

function deleteProduct(id) {
	$.ajax({
		type: 'GET',
		dataType: 'json',
		url: '/cart/' + id +'?delete',
		async: false,
		success: function(data){
			if (data['error'] == 0) {
				$("#cart_count").text(data['content']);			
			}
		}
	});
}

function deliverProduct(id, deliver) {
	$.ajax({
		type: 'GET',
		dataType: 'json',
		url: '/cart/' + id +'?deliver='+ deliver,
		async: true
	});
}

function countProduct(id, count) {
	$.ajax({
		type: 'GET',
		dataType: 'json',
		url: '/cart/' + id +'?count='+ count,
		async: true
	});
}

function moveProduct(id) {
	var delivery = $('#deliver_'+ id).val();

	if (delivery == 'true') {
		$('#tr_'+ id).appendTo('#reserved_table');
		$('#deliver_'+ id).val('false');
		deliverProduct(id, false);
	} else {
		$('#tr_'+ id).appendTo('#delivery_table');
		$('#deliver_'+ id).val('true');
		deliverProduct(id, true);
	}
}

function float2str(value) {
	var i;
	value += '';
	i = value.indexOf('.');
	if (i >= 0) {
		var fractional = value.substr(i + 1);
		if (fractional.length < 2) {
			return value + '0'; 
		} else {
			return value;
		}
	} else {
		return value + '.00';
	}
}

function updateTables(price) {
	if (!price) {
		var number = 1;	
		$('#delivery_table td.number').each(function(){
			$(this).text(number++);
			
		});
		
		var number = 1;
		$('#reserved_table td.number').each(function(){
			$(this).text(number++);
		});
	}
	
	var delivery_sum = 0;
	$('#delivery_table td.sum').each(function(){
		if (!isNaN($(this).text())) {
			delivery_sum += parseFloat($(this).text());
		} else {
			delivery_sum += 0;
		}
	});
	
	var reserved_sum = 0;
	$('#reserved_table td.sum').each(function(){
		if (!isNaN($(this).text())) {
			reserved_sum += parseFloat($(this).text());
		} else {
			reserved_sum += 0;
		}
	});
	
	$('#delivery_sum').text(float2str(delivery_sum));
	$('#reserved_sum').text(float2str(reserved_sum));
	$('#total_sum').text(float2str(delivery_sum + reserved_sum));
}

function updateBets() {
	$.ajax({
		type: 'GET',
		dataType: 'json',
		url: '/ajax/updateBets.php?auction_id='+ auction_id +'&time='+ page_time,
		success: function(data){
			if (data['error'] == 0) {
				if (data['content'] != 0) {
					$('#bets_placeholder').prepend(data['content']);
				}
				if (data['last_bet'] != 0) {
					$('#max_bet').text(data['last_bet']['value']);
					$('#last_bet').text(data['last_bet']['value']);
					$('#last_time').text(data['last_bet']['time']);
					$('#last_date').text(data['last_bet']['date']);
				}				
			}
		}
	});
	
	page_time += 10
}

function initType() {
	if ($(this).val() == 'juridical') {
		$('tr.phisical').hide();
		$('tr.juridical').show();
	}
	else if ($(this).val() == 'phisical') {
		$('tr.juridical').hide();
		$('tr.phisical').show();
	}
}

function deleteFile(id) {
	$.ajax({
		type: 'GET',
		dataType: 'json',
		url: '/ajax/files.php?file_id=' + id +'&delete',
		async: false,
		success: function() {
			$('#file_'+ id).remove();
		}
	});
}

/*messages*/
$(document).ready(function(){
	$('div.success_holder').live('click', function(){
		$(this).fadeOut();
	});
	
	$('div.error_holder').live('click', function(){
		$(this).fadeOut();
	});
});

/*profile, registration*/
$(document).ready(function(){
	$('input.type').click(initType);

	$('#birth_date').datepicker({
		dateFormat: 'dd.mm.yy',
		maxDate: '-13y',
		minDate: '-70y',
		yearRange: '-70:-13',
		changeMonth: true,
		changeYear: true
	});

    $('#login').blur(function(){
        $.ajax({
            type: 'GET',
            dataType: 'json',
            url: '/ajax/registration.php?',
            data: {login: $(this).val()},
            async: false,
            success: function(data) {
                if (data['error'] != 0) {
                    $('#login ~ span').remove();
                    $('#login').after('<span class="registration_error">'+ data['message'] +'</span>');
                } else {
                    $('#login ~ span').remove();
                }
            }
        });
    });

    $('#email').blur(function(){
        $.ajax({
            type: 'GET',
            dataType: 'json',
            url: '/ajax/registration.php?',
            data: {email: $(this).val()},
            async: false,
            success: function(data) {
                if (data['error'] != 0) {
                    $('#email ~ span').remove();
                    $('#email').after('<span class="registration_error">'+ data['message'] +'</span>');
                } else {
                    $('#email ~ span').remove();
                }
            }
        });
    });

	$('#profile_main_form').submit(function(){
		
	});
	
	$('#registration_main_form').submit(function(){
		
	});
	
	if ($('#juridical').is(':checked')) {
		$('tr.phisical').hide();
		$('tr.juridical').show();
	} else if ($('#phisical').is(':checked')) {
		$('tr.juridical').hide();
		$('tr.phisical').show();
	}
	
	$('#fileFields input.input_file').live('click', function(){
		$(this).clone().appendTo('#fileFields');
	});
	
	$('a.file_delete').click(function(){
		if (confirm('Вы действительно хотите удалить файл?')) {
			var id = $(this).attr('rel');
			deleteFile(id);
		}
		return false;
	});
});

/*auction*/
$(document).ready(function(){
	if (typeof(page_time) != 'undefined' && typeof(auction_id) != 'undefined') {
		var updateIntervalId = setInterval('updateBets();', 10000);
	}
	
	$('#product_parameters_link').click(function(){
		$('#product_parameters tr:not(.th)').slideToggle("slow", "linear");
		
		return false;
	});
	
	$('#product_description_link').click(function(){
		$('#product_description tr:not(.th)').slideToggle("slow", "linear");
		
		return false;
	});
});

/*cart*/
$(document).ready(function(){
	$('a.cart_delete').click(function(){
		if (confirm('Вы действительно хотите удалить товар из корзины?')) {
			deleteProduct($(this).attr('rel'))
			$('#tr_'+ $(this).attr('rel')).remove();
			updateTables(false);
		}
		
		return false;
	});
	
	$('a.cart_changetype').click(function(){
		moveProduct($(this).attr('rel'));
		
		if ($('#deliver_'+ $(this).attr('rel')).val() == 'true')
			$('img', $(this)).attr('title', 'Переместить в забронированные товары');
		else
			$('img', $(this)).attr('title', 'Переместить в товары c доставкой');
		
		updateTables(false);
		
		return false;
	});
	
	$('input.count').keyup(function(){
		var id = $(this).attr('rel')
		var val = $(this).val();
		var count_value = 0;
		if (!isNaN(val) && val != '') {
			count_value = parseInt(val);
		} 
		countProduct(id, count_value);
		var sum = parseFloat($('#price_'+ id).text()) * count_value;
		$('#sum_'+ id).text(float2str(sum));
		updateTables(true);
	});
});

/*report*/
$(document).ready(function(){
	$('a.stock_button').click(function(){
		if (!$(this).hasClass('report')) {
			var return_code = addProductReport($(this).attr('rel'));
			if (return_code == 0) { // if not guest
				$(this).after('<span class="stock_button png report">Сообщим о поступлении</span>');
				$(this).remove();
				return false;
			}
		} else {
			return false;
		}
	});
});
  
$(document).ready(function(){
	$('a.basket_button').click(function(){
		if (!$(this).hasClass('added')) {
			addProduct($(this).attr('rel'));
			$(this).text('Перейти в корзину');
			$(this).addClass('added');
			$('#msg_cart_'+ $(this).attr('rel')).text('Товар добавлен в корзину');
			
			return false;
		}  			
	});

	$("a.lightbox").lightBox();
});

$(document).ready(function(){
	$('li.top_menu').hover(
		function(){
			var id = $(this).attr('rel');
			
			$('#useless_div_'+ id).show();
			$('ul.top_submenu[rel='+ id +']').show();
			if (!$(this).hasClass('selected')) {
				$(this).addClass('active');
				$('li.selected').addClass('selected_hover');
			}
		},
		function(){
			var id = $(this).attr('rel');
			
			$('#useless_div_'+ id).hide();
			$('ul.top_submenu[rel='+ id +']').hide();
			if (!$(this).hasClass('selected')) {
				$(this).removeClass('active');
				$('li.selected').removeClass('selected_hover');
			}
		}
	);
});

/*Tooltip*/
$(document).ready(function(){
	$('a.discount').hover(
        function(){            
            $('div.discount_tooltip').show();
        },
        function(){    
            $('div.discount_tooltip').hide();
        }
    );
});

/*Letter Feedback*/
function checkRequest(formData, jqForm, options) {
	for (key in formData) { 
		var field = formData[key]; 
		if (field.name == 'name') {
			if (field.value == undefined || field.value.length <= 1) { 
				alert("Не введено имя"); 
				return false; 
			}
		} else if (field.name == 'email') {
			if ( /^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9])+$/.test(field.value) == false) { 
				alert("Введен неправильный адрес email"); 
				return false; 
			} 
		} else if (field.name == 'letter') {
			if (field.value == undefined || field.value.length <= 1) { 
				alert("Не введен вопрос"); 
				return false; 
			}
		}			
	} 

    return true;
}

function successFeedback(responseText, statusText, xhr, $form) {
  	if (responseText['error'] == '0') {
  		var msg_placeholder = $('ul.bread_trail');
  		var msg = '<div class="success_holder"><p class="success png">'+ responseText['message'] +'</p></div>';
  		
  		if (msg_placeholder.length > 0) {
  			msg_placeholder.after(msg);
  		} else {
  			$('div.center_column h1:first').after(msg);
  		}
  		
		$('#close_letter_form').click();
		$('#letter').val('');
  		$('#captcha_input').val('');
  		var src = $('#captcha_img').attr('src');
		src += '?v='+ Math.random();
		$('#captcha_img').attr('src', src);
  	} else {
  	  	alert(responseText['message']);
  	}  		
}

$(document).ready(function(){
	/*Init overlay*/
	var overlay = $("#letter_div").overlay({
		mask: {
			color: '#000',
			loadSpeed: 200,
			opacity: 0.9
		},
	    top: 50,
	    closeOnClick: false,
	    closeOnEsc: false,
	    api: true
    });
	
	$("#write_letter").click(function(){
		overlay.load();
		return false;
	});
	
	$('#close_letter_form').click(function(){
		overlay.close();
		return false;
	});
	
	/*Init Form*/
	var options = { 
		dataType: 'json',
   		beforeSubmit:  checkRequest,
        success:       successFeedback
    }; 
 
    $('#letter_form').submit(function() { 
        $(this).ajaxSubmit(options); 
 
        return false; 
    });
});

$(document).ready(function(){
	$('img.captcha_img').click(function(){
        var rel = $(this).attr('rel');
        if (rel == '') {
            var captcha_src = '/code/code.php?' + Math.random();
        } else {
            var captcha_src = '/code/code.php?type='+ rel +'&'+ Math.random();
        }

		$(this).attr('src', captcha_src);
	});
});

$(document).ready(function(){
	var jScrollPaneAPI = null;
	$('div.scroll_pane img').imagesLoaded(function(){
		var content_width = 0;
		$('div.scroll_gallery a').each(function(){
			content_width += $(this).outerWidth(true);
		});
		$('div.scroll_gallery').width(content_width);
		
		var element = $('div.scroll_pane').jScrollPane();
		jScrollPaneAPI = element.data('jsp');
	});
	
//	$(window).resize(function() {
//		if (jScrollPaneAPI != null) {
//			jScrollPaneAPI.reinitialise();
//		}
//	});
});
