var basketInst = umiBasket.getInstance();
basketInst.foo_onAfterAddElement = basketInst.onAfterAddElement;
basketInst.foo_onAfterRemoveBasketItem = basketInst.onAfterRemoveBasketItem;
basketInst.foo_tryAddElement = basketInst.tryAddElement;

basketInst.tryAddElement = function(iElementId, iCount) {
	var i_basket_total_count = 0;
	if (!is_auth) {
		i_basket_total_count = (parseInt($(this.ancestor+'input[id=total_count]').attr("value")));
		if (!i_basket_total_count) {
			i_basket_total_count = (parseInt($(this.ancestor+':not(input)[id=total_count]').html()));
		}
	}
	if (!is_auth && i_basket_total_count && i_basket_total_count > 10) {
		alert("У вас в корзине больше 10-ти товаров. Для бронивания большего количества необходимо авторизоваться.");
	} else {
		this.foo_tryAddElement(iElementId, iCount);
	}
}

basketInst.onAfterAddElement = function(iElementId, iCount) {
	// 
	this.foo_onAfterAddElement(iElementId, iCount);

	// own
	if (iCount) {
		var i_type = parseInt($('#type_'+iElementId).html());
		if (i_type === 754 || i_type === 760 || i_type === 761 || i_type === 764) {
			$('#tobasket_'+iElementId).css('cursor', "default");
			$('#tobasket_'+iElementId).unbind();
			$('#tobasket_'+iElementId).attr({
				href: "javascript:void(0);",
				onclick: "",
				title: "товар зарезервирован"
			});

			$('#tobasket_img_'+iElementId).attr({
				src: "/images/notobasket.gif"
			});
		} else {
			$('#tobasket_'+iElementId).attr({
				title: "добавить в корзину"
			});

			$('#tobasket_img_'+iElementId).attr({
				src: "/images/plus1tobasket.gif"
			});
		}

		var the_gbasket = $("#gizmo\\.basket");
		if (the_gbasket.length && the_gbasket.css('display') !== "block") {
			the_gbasket.css('display', "block");
			var o_offset = (the_gbasket.offset());
			the_gbasket.css('display', "none");
			if (o_offset.top < $(document).scrollTop()) {
				var i_to_scroll = o_offset.top-24;
				if (i_to_scroll < 0) i_to_scroll = 0;
				$(document).scrollTop(i_to_scroll);
			}
			the_gbasket.toggle("fast");
		}

		window.setTimeout('coinsGetBasketLocks();', 1000);

	}
};

basketInst.onAfterRemoveBasketItem = function(iElementId) {
	// 
	this.foo_onAfterRemoveBasketItem(iElementId);

	// own
	var the_gbasket = $("#gizmo\\.basket");
	var the_gbasket_lis = $("#gizmo\\.basket li");
	var b_vis = false;
	for (var i = 0; i < the_gbasket_lis.length; i++) {
		if ($(the_gbasket_lis.get(i)).css('display') !== "none") {
			b_vis = true;
			break;
		}
	}
	if (!b_vis) the_gbasket.toggle("fast");
}
