$(function() {
	$("#tabs").tabs();
	if (null == rGetCookie('cart')) {
		rSetCookie('cart', JSON.stringify(new Array));
	}
	rCalc();

	var color=false;
	$("table.zebra tr").each(function() {
		$(this).css("border", "1px solid #E7E7E7");
		if ($(this).is("[rel='optgroup']")) {
			color = false;
			return;
		}
		if (color) {
			$(this).css("background-color", "#F7F7F7");
			color = false;
		} else {
			color = true;
		}
	});

});

function rSetCookie (name, value) {
	document.cookie= name+"="+encodeURIComponent(value)+"; path=/; expires=Mon, 15-Oct-2010 00:00:00 GMT";
}

function rGetCookie(name) {
	var cookie = " " + document.cookie;
	var search = " " + name + "=";
	var setStr = null;
	var offset = 0;
	var end = 0;
	if (cookie.length > 0) {
		offset = cookie.indexOf(search);
		if (offset != -1) {
			offset += search.length;
			end = cookie.indexOf(";", offset)
			if (end == -1) {
				end = cookie.length;
			}
			setStr = decodeURIComponent(cookie.substring(offset, end));
		}
	}
	return(setStr);
}

function rSave(rCart) {
	rSetCookie('cart', JSON.stringify(rCart));
}

function rCalc() {
	var rCart = eval(rGetCookie('cart'));
	var sum = 0;
	var cnt = 0;
	for (i = 0; i < rCart.length; i++) {
		sum += rCart[i].price * rCart[i].count;
		cnt += rCart[i].count;
	}
	document.getElementById('trCount').innerHTML = cnt;
	document.getElementById('sum').innerHTML = sum+".00";
}

function rAddCart(id, group_id, name, price, count, actor) {

	pageTracker._trackPageview('/fastcart/add');

	if(!count) count = 1;
	var rCart = eval(rGetCookie('cart'));

	var present = false;
	for (i = 0; i < rCart.length; i++) {
		if (id == rCart[i].id) {
			present = true;
			rCart[i].count += count;
		}
	}

	if (!present) {
		var tmp = {
			"id" : id,
			"group_id" : group_id,
			"name" : name,
			"price" : price,
			"count" : count
		}
		rCart.push(tmp);
	}

	rSave(rCart);
	rCalc();
	// alert(actor);
	$("#"+actor).css("border", "3px solid red");
}

function rDelCart(id) {
	var rCart = eval(rGetCookie('cart'));
	var rNewCart = new Array();
	for (i = 0; i < rCart.length; i++) {
		if (id != rCart[i].id) {
			rNewCart.push(rCart[i]);
		}
	}
	rSave(rNewCart);
	rCalc();
	rCartReDraw();
	setheight(0);
}

function rCartReDraw() {
	var rCart = eval(rGetCookie('cart'));
	if (0 == rCart.length) {
		document.getElementById('trades').innerHTML = '<div style="text-align:center; width: 100%; height: 420px; font-size: 24px;">Корзина пуста</div>';
		document.getElementById('order').style.display = 'none';
		setheight(400); //400
		return;
	}
	document.getElementById('order').style.display = 'block';
	var sum = 0;
	var assembly = '<table id="tovars" border="0" width="100%" cellspacing="0" class="grid2"> '+
                      '<tr> '+
                        '<th>Продукт</th> '+
                        '<th>Количество</th> '+
                        '<th>Цена</th> '+
                        '<th>Сумма</th> '+
                        '<th>&nbsp;</th> '+
                      '</tr> ';
	for (i = 0; i < rCart.length; i++) {
		sum += rCart[i].price * rCart[i].count;
		assembly += '<tr> '+
                       '<td width="90%"> '+
                         '<a href="/catalog/'+rCart[i].group_id+'/'+rCart[i].id+'">'+rCart[i].name+'</a> '+
                       '</td> '+
                       '<td nowrap align="center"> '+
                         '<input name="cnt'+rCart[i].id+'" id="cnt'+rCart[i].id+'"'+
                                 'style="width: 15px;" class="medium"'+
                                 'type="text" value="'+rCart[i].count+'" '+
                                 'style="width: 95%;" /> '+
                       '</td> '+
                       '<td nowrap align="center"> '+
                         '<span style="font-size: 14px;font-weight: bold;">'+rCart[i].price+'</span> '+
                       '</td> '+
                       '<td nowrap align="center"> '+
                         '<span style="font-size: 14px;font-weight: bold;">'+(rCart[i].price*rCart[i].count)+'</span> '+
                       '</td> '+
                       '<td nowrap align="center"> '+
                         '<a href="#" onclick="rDelCart('+rCart[i].id+');return false;"> '+
                           '<img src="/img/pct/del_btn.gif" alt="Удалить" title="Удалить" '+
                                'width="14" height="15" border="0" /> '+
                         '</a> '+
                       '</td> '+
                     '</tr> ';
	}
	assembly += '<tr> '+
                   '<td>&nbsp;</td> '+
                   '<td><input type="button" value="Пересчитать" onclick="javascript: rReCalculate();"></td>'+
		           '<td>&nbsp;</td> '+
                   '<td>&nbsp;</td> '+
                   '<td>&nbsp;</td> '+
                 '</tr> '+
                 '<tr> '+
                   '<td> '+
                     '<b>Доставка</b> '+
                   '</td> '+
                   '<td>&nbsp;</td> '+
                   '<td>&nbsp;</td> '+
                   '<td nowrap align="center">'+
                     '<span style="font-size: 14px;font-weight: bold;" id="delivery_price">0</span>'+
                   '</td> '+
                   '<td>&nbsp;</td> '+
                 '</tr> '+
                 '<tr> '+
                   '<td> '+
                     '<b>Стоимость заказа</b> '+
                   '</td> '+
                   '<td>&nbsp;</td> '+
                   '<td>&nbsp;</td> '+
                   '<td nowrap align="center">'+
                     '<span style="font-size: 14px;font-weight: bold; color: red" id="itogo">'+sum+'</span>'+
                   '</td> '+
                   '<td>&nbsp;</td> '+
                 '</tr> '+
               '</table> '+
               '<div align="right" style="margin-top: 20px;"> '+
               '</div>';
	document.getElementById('trades').innerHTML = assembly;
	$("#tabs").tabs('select', 0);
	// setheight(0); // корзину рвет пополам..
}

function rShowCart() {
	pageTracker._trackPageview('/fastcart/show');
	rCartReDraw();
}

function rReCalculate() {
	var rCart = eval(rGetCookie('cart'));
	for (i = 0; i < rCart.length; i++) {
		rCart[i].count = 1 * $("#cnt"+rCart[i].id).val();
	}
	rSave(rCart);
	rCalc();
	rCartReDraw();
}

function validate()
{
	var delivery;

    if (($("#call").val() == "")) {
        alert("Мы настойчиво рекомендуем вам заполнить поле 'Контактный телефон',\nИначе мы не сможем с вами связаться!");
    } else {

		if($('#input_delivery_self').get(0).checked) {
			delivery = {
				type : "self",
				addr : $(":radio[name=delivery_self]").filter(":checked").val()
			}
		} else {
			delivery = {
				type : "courier",
				addr : $('#delivery_addr').val()
			}
		}

		var pay = $(":radio[name=pay]").filter(":checked").val();
		if (pay == "bank") {
			pay = {
				type    : pay,
				account : $("#bank_account").val()
			}
		} else {
			pay = {
				type : pay
			}
		}

		var rCart = eval(rGetCookie('cart'));
		var rSend = {
			delivery : delivery,
			pay      : pay,
			name     : $("#name").val(),
			call     : $("#call").val(),
			email    : $("#email").val(),
			ekk      : $("#ekk").val(),
			notes    : $("#notes").val(),
			cart     : rCart
		}

		$.ajax({
			url: '/r/cart.lisp',
			type: "POST",
			cache: false,
			data: JSON.stringify(rSend),
			dataType : "text/html",
			contentType: "utf-8",
			success: function (data, textStatus) {
				$("#trades").html(data);
				document.getElementById('order').style.display = 'none';
				rSetCookie('cart', JSON.stringify(new Array));
				rCalc();
				setheight(900); //900
			}
		});

	pageTracker._trackPageview('/fastcart/send');

    }
}

function delivery_correction(onoff)
{
    var sum = $('#sum').html();
    if (sum < 10000) {
        if (onoff) {
            $('#itogo').html((sum-0)+200)
            $('#delivery_price').html((200));
        } else {
            $('#itogo').html((sum-0))
            $('#delivery_price').html(("0"));
        }
    }
}

$(document).ready(function() {
	$("#cart").fancybox({
		'width'				: '85%',
		'height'			: '100%',
		'transitionIn'		: 'none',
		'transitionOut'		: 'none',
		'autoScale'			: false
	});
	// Tabs
	$('#tabs').tabs();
});

function setheight(param) {
	if (param == 0) {
		var height = document.getElementById('order').offsetHeight;
		//alert(height);
		if (height == 0) {
			height = 470; // 470
		}
		if (document.getElementById('formRow-address').style.display == 'block') {
			height += document.getElementById('formRow-address').offsetHeight - 25;
    	}
	    if (document.getElementById('formRow-bank').style.display == 'block') {
		    height += document.getElementById('formRow-bank').offsetHeight - 130;
		}
		if (document.getElementById('tovars')) {
			height += document.getElementById('tovars').offsetHeight;
		}
	} else {
	    height = param;
	}
	height += 90;
	//alert(height);
    document.getElementById('fancybox-inner').style.height = height + 'px';
	document.getElementById('fancybox-outer').style.height = (height + 20) + 'px';
}
