/* engine v.1.3
 * by IonDen
 * rev 12
 * 19.01.2010
 */

function updateKorzina(){
    $.ajax({
        cache: false,
        url: '/ajax/order/status/',
        success: function(data){
            $('#topCart').replaceWith('<div id="topCart">'+data+'</div>');
        }
    });
}

$(document).ready(function(){
	// главное меню
	var currentMenu = 0;
	var currentWidth = 0;
	var currentOff;
		
	var hideCD;
	var hideTimer = 0;

	$("td.bm a").click(function(event) {
		event.preventDefault();
	});
	
	$("td.bm a").mouseenter(function() {
		clearInterval(hideCD);
		$("div.menu").hide();
		$("#menuArr").hide();
		currentMenu = $(this).attr("id").slice(2);
		currentWidth = $(this).width();
		currentOff = $(this).offset();

		$("#menu" + currentMenu).show();
		$("#menuArr").show().css("left", currentOff.left + (currentWidth / 2) - 8);

		var localWidth = $("#menu" + currentMenu).width();
		var localLeft = Math.round(currentOff.left + (currentWidth / 2) - (localWidth / 2));
		if(localLeft < 10) {localLeft = 10};
		$("#menu" + currentMenu).css("left",localLeft);
	});
	
	$("td.bm a").mouseleave(function() {
		hideTimer = 0;
		hideCD = setInterval(omgHide, 50);
	});
	$("div.menu").mouseenter(function() {
		clearInterval(hideCD);
	});
	$("div.menu").mouseleave(function() {
		hideTimer = 0;
		hideCD = setInterval(omgHide, 50);
	});


	function omgHide() {
		if(hideTimer < 4) {
			hideTimer++;
		} else {
			hideTimer = 0;
			clearInterval(hideCD);
			$("div.menu").hide();
			$("#menuArr").hide();
		}
	};
	
	
	// подсветка таблиц
	$("table.list tr").hover(
		function(){
			$(this).addClass("over");
		},
		function(){
			$(this).removeClass("over");
		}
	);
	
	$("table.char tr").hover(
		function(){
			$(this).addClass("over");
		},
		function(){
			$(this).removeClass("over");
		}
	);
	
	// выпадающие менюхи
	var num = $("a.aj").length;
	var current = 0;
	var curOffset = 0;
	var curWidth = 0;
	var minWidth = 0;
	var insideNum = 0;
	var insideCurrent = 0;
	var insideText;
	var allow = true;
	
	for(var i = 0; i < num; i++) {
		$("#sel" + i).click(
			function(){
				$(this).focus();
				current = parseInt(this.id.slice(3));
				curOffset = $("#sel" + current).offset();
				curWidth = $("#sel" + current).width() + 12;
				emulateSelect();
			}
		);
		$("#sel" + i).blur(
			function(){
				hideSelect();
			}
		);
	};
	
	function emulateSelect() {
		$("#s" + current).show().css("left",curOffset.left - 7).css("top",curOffset.top - 3).width(curWidth);
		insideNum = $("#s" + current + " a").length;

		$("#s" + current).hover(
			function(){
				allow = false;
			},
			function(){
				allow = true;
			}
		);
		
		for(var i = 0; i < insideNum; i++) {
			$("#s" + current + "p" + i).click(
				function(){
					insideCurrent = this.id;
					insideText = $(this).text();
					allow = true;
					$("#sel" + current).text(insideText);
					hideSelect();
				}
			);
		}
	}
	
	function hideSelect() {
		if(allow === true) {
			$("#s" + current).hide();
		}
	}
	
	// рекламные попапы
	var popX = 0;
	var popY = 0;
	var popCurrent = 0;
	
    $(document).bind("mousemove",function(e){
        popX = e.pageX;
        popY = e.pageY;
    });
	
	$("a.advLink").click(
		function(){
			$(this).blur(0);
			popCurrent = parseInt(this.id.slice(7));
			$(".popup").hide();
			$("#popup" + popCurrent).show().css("top",popY - 20).css("left",popX + 30);
		}
	);
	$("a.close").click(
		function(){
			$(".popup").hide();
		}
	);
	
	// редактирование кол-ва в корзине
    var currentID;
    var currentNum = 0;

    $("div.number b").click(
        function(){
            currentID = $(this).parent().attr("id");
            currentNum = parseInt($("#" + currentID + " input").attr("value"));
            currentNum++;
            $("#" + currentID + " input").attr("value",currentNum);

            $.ajax({
                cache: false,
                url: '/ajax/order/edit/'+ currentID + '/' + currentNum + '/',
                success: function(data){
                    $('#itogo').replaceWith('<b id="itogo">' + data + '</b>');
                    updateKorzina();
                }
            });
        }
    );

    $("div.number i").click(
        function(){
            currentID = $(this).parent().attr("id");
            currentNum = parseInt($("#" + currentID + " input").attr("value"));
            if(currentNum > 1) {
                currentNum--;
            }
            $("#" + currentID + " input").attr("value",currentNum);

            $.ajax({
                cache: false,
                url: '/ajax/order/edit/'+ currentID + '/' + currentNum + '/',
                success: function(data){
                    $('#itogo').replaceWith('<b id="itogo">' + data + '</b>');
                    updateKorzina();
                }
            });
        }
    );
	
});