var TLP = $($("#YourReg").data("tsel")).find('a');; //link on the selected region
var TW = parseFloat($("#Weight").text()); //ves korzini
var PZone = parseFloat(TLP.attr('Rp')); //nomer zoni (0-4) sootvetstvenno do 600km, 601 - 2000km, 2001 - 5000km, 5001 - 8000km, bolee 8000km
var russianPostValue = 'Rp';
var courierValue = 'Cur';

//massiv stoimosti 0-banderol, 1-posilka
var RpPr = [{"StartCost":[60,60,60,60,60], //nachalnaja stoimost
	"Cost500":[28,35,40,45,50], //dobavochnaja stoimost za 500gr
	"Avia":[0,50,50,50,50]},//dobavochnaja stoimost za avia
	{"StartCost":[100,100,105,125,140],
	"Cost500":[8,9,13,18,20],
	"Avia":[0,200,200,200,200]}];
// massiv stoimisti dostavki kur'erom 0 - Moskva, 1 - Piter
var iCourierDelieryCost = [[250,300,340],[150,170,190]];

function modifyValue(id, input){
    var e = jQuery(input).next('input'), old = e.val();
    e.val(input.value);
    site.basket.modify(id, input.value, old);
    jQuery('#citm_'+id+'_weight_wrapper').text(parseFloat(input.value)*parseFloat(jQuery('#citm_'+id+'_weight').val())).append('гр.');
    jQuery('#citm_'+id+'_price_total').text(parseFloat(input.value)*parseFloat(jQuery('#citm_'+id+'_price').val()));
    updateCount(input.value);
    updateTotalPrice();
    updateTotalWeight();
}

function updateCount(value){
    jQuery('#total_count').html(value);
    jQuery('#basketTotalSpanBasket_top').html(value);
    jQuery('#basketTotalSpanBasket').html(value);
    jQuery('#basketTotalSpanBg').html(value);
    jQuery('#basketTotalSpanFg').html(value);
    jQuery('.totalAmount').html(value);
}

$(document).ready(function() {
	// enable order button on the basket page
	$("#issueOrder").removeClass('BtBuyNoActBBB').addClass('BtBuyBBB').attr('href','/basket/issue_order');
});


function updateTotalWeight() {
	var weightIterator=0;
	var totalWeight=0;
	while (weightIterator < $("tr[name*='basketrow']").length){
		totalWeight+=parseFloat($("tr[name*='basketrow']:eq("+weightIterator+") span[@id$='weight_wrapper']").text());
		weightIterator++;
	}
	$('#TotalWeight').text(totalWeight+"гр.");
}

function updateTotalPrice() {
	var weightIterator=0;
	var totalPrice=0;
	while (weightIterator < $("tr[name*='basketrow']").length){
		totalPrice+=parseFloat($("tr[name*='basketrow']:eq("+weightIterator+") span[@id$='price_total']").text());
		weightIterator++;
	}
	$('#order_total').text(totalPrice);
}


//TO DO: ��������� �������� ������ ����������� � ��������� �������� (mainsource)
function AccountCostDeliver() {
    var TLP;
	if( $("#YourReg").length )
		TLP = $($("#YourReg").data("tsel")).find('a');
	else if( $("#RegList").length ) {
		TLP = $("#RegList li[value='"+parseInt($("#deliv_region").val())+"'] a");
	}
}
/*	var TW = parseFloat($("#Weight").text());
	var PZone = parseFloat(TLP.attr('Rp'));
	var russianPostValue = 'Rp';
	var courierValue = 'Cur';
	
	if ( $("input[name2='delivery']:checked").val() == courierValue ) {
		$($("#BasketCost").parent("td")).parent('tr').hide(); // hide "Itogo" line
		$("#deliveryCostRow td:first").html("<strong>��������� �������� ������������ ��� ���������:</strong>");
	}
	else {
		$($("#BasketCost").parent("td")).parent('tr').show(); // show "Itogo" line
		$("#deliveryCostRow td:first").html("<strong>��������� ��������:</strong>");
	}
 	
	// courier is payed on its own rule basis
	// courier delivery to LenObl is not free of a charge
	switch ($("input[name2=delivery]:checked").val()) {
		case courierValue: // courier
				var iCourierDelivCat; // courier delivery category, depends on weight
				if(TW<1000) iCourierDelivCat = 0;
				else if(TW>=1000 && TW<2000) iCourierDelivCat = 1;
				else if(TW>=2000) iCourierDelivCat = 2;
				//alert('courier weight:'+TW+' zone:'+iCourierDelivCat+' reg:'+parseInt(TLP.attr('Cur')));
				switch(parseInt(TLP.attr('Cur'))) {
					case 1: // Moscow
						$("#deliveryCost").empty().prepend(iCourierDelieryCost[0][iCourierDelivCat]+' �.'); 
                        $("input[name2=courier_delivery_cost]").val(iCourierDelieryCost[0][iCourierDelivCat]);
						break;
					case 2: // Piter
						$("#deliveryCost").empty().prepend(iCourierDelieryCost[1][iCourierDelivCat]+' �.'); 
                        $("input[name2=courier_delivery_cost]").val(iCourierDelieryCost[1][iCourierDelivCat]);
						break;
					case 3: // LenObl
						$("#deliveryCost").empty().html("<a target='_blank' href='http://de-ex.ru/ceny_po_leningradskoy_ob' class='PopUp'>����������</a>"); 
                        $("input[name2=courier_delivery_cost]").val("#LO_link#");
						break;
				}
			
			break;
		case russianPostValue: 
			//alert('delivery2 weight:'+TW+' reg:'+parseInt(PZone));
			if (TW>500) {
				if (TW<=2000) {
					$("#deliveryCost").empty().prepend(RpPr[0].StartCost[PZone]+Math.ceil((TW-500)/500)*RpPr[0].Cost500[PZone]+RpPr[0].Avia[PZone]+' �.');
				}
				else {
					$("#deliveryCost").empty().prepend(RpPr[1].StartCost[PZone]+Math.ceil((TW-500)/500)*RpPr[1].Cost500[PZone]+RpPr[1].Avia[PZone]+' �.');
				}
			}
			else {
				$("#deliveryCost").empty().prepend(RpPr[0].StartCost[PZone]+RpPr[0].Avia[PZone]+' �.'); 
			} 
			break;
	}
	if	( parseFloat($("#booksCost").text())>2000  
		&& 	(
				$("input[name2=delivery]:checked").val() == russianPostValue  
				|| ($("input[name2=delivery]:checked").val() == courierValue && (parseInt(TLP.attr('Cur'))==1 || parseInt(TLP.attr('Cur'))==2))
			)
		) { 
		$("#deliveryCost").html("���������");
        $("input[name2=courier_delivery_cost]").val("#free#");
		$("input[name2=free_delivery]").val("#free#");
		umiBasket.getInstance().removeBasketItem(23915);		
		$("#BasketCost").text(parseFloat(parseFloat($("#booksCost").text()))+" �.");
	} 
	else {
		if(parseFloat($('#deliveryCost').text())>0 && $("input[name2=delivery]:checked").val() != courierValue) {
			umiBasket.getInstance().addElement(23915, 0);
			umiBasket.getInstance().updateCount(23915, parseFloat($('#deliveryCost').text()));
		}
		else {
			umiBasket.getInstance().removeBasketItem(23915);
		}
	}
	// if courier selected, delivery price is not included into final cost
	if( $("input[name2='delivery']:checked").val() == courierValue ) {
		$("#BasketCost").empty().prepend(parseFloat($("#booksCost").text())  + ' �.');
	}
	else {
		$("#BasketCost").empty().prepend(parseFloat($("#booksCost").text()) + parseFloat(!isNaN(parseFloat($("#deliveryCost").text())) ? $("#deliveryCost").text():0) + ' �.');
	}
    if($("input[name2=courier_delivery_cost]").val() && $("input[name2=delivery]:checked").val() == courierValue) {
        ShowGallery(ajax_loader_big);
        $.ajax({ 'url' : $("#form_profile").attr('action'),
                'async' : 'true',
                'type' : 'POST',
                'data' : $("input[name2=courier_delivery_cost]").attr('name') + "=" + $("input[name2=courier_delivery_cost]").val(),
                'success' : function() {HideDivBG();},
                'error': function() {alert('��������� ������, ���������� ��������� ������.');}
            });
    }
	if($("input[name2=free_delivery]").val() == '#free#' && $("input[name2=delivery]:checked").val() == russianPostValue) {
        ShowGallery(ajax_loader_big);
        $.ajax({ 'url' : $("#form_profile").attr('action'),
                'async' : 'true',
                'type' : 'POST',
                'data' : $("input[name2=free_delivery]").attr('name') + "=" + $("input[name2=free_delivery]").val(),
                'success' : function() {HideDivBG();},
                'error': function() {alert('��������� ������, ���������� ��������� ������.');}
            });
    }
    
}
	
function checkOrderForm() {
	var TLP = $($("#YourReg").data("tsel")).find('a');
	//-- save text values of Region, delivery type and payment type
	switch($("input[name2='pay']:checked").val()) {
		case "en":
			$("input[name2='payment_text']").val('���������');
			break;
		case "bt":
			$("input[name2='payment_text']").val('���������� �������');
			break;
        case "pc":
			$("input[name2='payment_text']").val('���������� ������');
			break;
	}
	switch($("input[name2='delivery']:checked").val()) {
		case "Cur":
			$("input[name2='delivery_text']").val('������');
			break;
		case "Rp":
			$("input[name2='delivery_text']").val('����� ������');
			break;
	}
	$("input[name2='region_text']").val($(TLP).text());
	//--
	$("#OrderFormError").empty();
	var returnValue = true;
	var inputFields = {"fio":"�.�.�. ����������","phone":"������� ����������","index":"������","address":"����� ��������"};
	
	if(! $("#YourRegValue").val().length) {
		$("#regionLabel").addClass("red");
		//$("#OrderFormError").show().append("�� ������ '��� ������'!<br/>");
		$("#OrderFormError").show().html("��� ���������� ���������� ������, ����������,��������� ���� ���������� <font class='red'>�������</font> ������.");
		returnValue = false;	
	}
	else if($("#regionLabel").hasClass("red")) {
		$("#regionLabel").removeClass("red");
	}
	
	for(key in inputFields) {
		if(! $("#"+key).val().length) {
			$("#"+key+"Label").addClass("red");
			//$("#OrderFormError").show().append("�� ��������� ���� '"+inputFields[key]+"'!<br/>");
			$("#OrderFormError").show().html("��� ���������� ���������� ������, ����������,��������� ���� ���������� <font class='red'>�������</font> ������.");
			returnValue = false;	
		}
		else if($("#"+key+"Label").hasClass("red")) {
			$("#"+key+"Label").removeClass("red");
		}	
	}
	
	if($("#pay1:checked").length==0 && $("#pay2:checked").length==0 && $("#pay3:checked").length==0 && $("#pay4:checked").length==0 && $("#pay5:checked").length==0 && $("#pay6:checked").length==0 && $("#pay7:checked").length==0 && $("#pay8:checked").length==0) {
		$("#paymentLabel").addClass("red");
		//$("#OrderFormError").show().append("�� ������ ������ ������!<br/>");
		$("#OrderFormError").show().html("��� ���������� ���������� ������, ����������,��������� ���� ���������� <font class='red'>�������</font> ������.");
		returnValue = false;
	}
	else if($("#paymentLabel").hasClass("red")) {
		$("#paymentLabel").removeClass("red");
	}
	if($("#delivery1:checked").length==0 && $("#delivery2:checked").length==0) {
		$("#deliveryLabel").addClass("red");
		//$("#OrderFormError").show().append("�� ������ ������ ��������!<br/>");
		$("#OrderFormError").show().html("��� ���������� ���������� ������, ����������? ��������� ���� ���������� <font class='red'>�������</font> ������.");
		returnValue = false;
	}
	else if($("#deliveryLabel").hasClass("red")) {
		$("#deliveryLabel").removeClass("red");
	}
	return returnValue;
}

*/
