if (getCookie("cart_ks")) {
  //alert(getCookie("cart_ks"));
  var purchased=string2Object(getCookie("cart_ks"));
} else {
  var purchased=new Array();	//массив, содержащий все товары, которые мы приобрели
}
//var purchased=new Array();	//массив, содержащий все товары, которые мы приобрели
var totalprice=0;	//цена
var totalves=0;	//вес
var totalobem=0;	//объем
var totalpoz=0;	//количество позиций

  for(var i=0; i<purchased.length;i++)
  {
    //alert(purchased[i].img);
    if (purchased[i].cnt>0)
      fill_list(purchased[i].id,purchased[i].cnt);
      totalpoz+=1;
  }

  setTimeout("$('#item-list').animate({scrollTop:'+=1000'}, 3000)", 2000);


$(document).ready(function(){

$('.product').simpletip({	//используем плагин simpletip

	offset:[0,-135],
	content:'<img style="margin:10px;" src="img/ajax_load.gif" alt="loading" />',	// контент по умолчанию
	onShow: function(){

		var param = this.getParent().find('img').attr('id');
		// fix для IE6
		if($.browser.msie && $.browser.version=='6.0')
		{
			param = this.getParent().find('img').attr('style').match(/id=\"([^\"]+)\"/);
			param = param[1];
		}

		// после того как отображена подсказка, загружаем файл tips.php и передаем название изображения в качестве параметра
		this.load('ajax/tips.php',{img:param});
	} 

});

$(".product img").draggable({	// разрешаем перетаскивание картинок товаров

containment: 'document',
opacity: 0.6,
revert: 'invalid',
helper: 'clone',
zIndex: 100

});

$("div.content.drop-here").droppable({	// разрешаем выгружать товары в корзину

		drop:
			function(e, ui)
			{
				var param = $(ui.draggable).attr('id');
				// IE6 fix
				if($.browser.msie && $.browser.version=='6.0')
				{
					param = $(ui.draggable).attr('style').match(/id=\"([^\"]+)\"/);
					param = param[1];
				}

				addlist(param);	// специальная функция addlist - смотрите ниже
			}

});


});

//вторая часть скрипта

function addlist(param) 
{

	// функция addlist добавляет товар в корзину
	$.ajax({	// посылаем ajax-request в addtocart.php
	type: "POST",
	url: "ajax/addtocart.php",
	data: 'img='+encodeURIComponent(param),	// картинка товара в качестве параметра
	dataType: 'json',	// ждем json
	beforeSend: function(x){$('#ajax-loader').css('visibility','visible');},	// отображаем прелоадер
	success: function(msg){

		$('#ajax-loader').css('visibility','hidden');	// прячем прелоадер
		if(parseInt(msg.status)!=1)
		{
			return false;	// если обнаружена ошибка, возвращаем false
		}
		else
		{
			var check=false;
			var cnt = false;

			for(var i=0; i<purchased.length;i++)
			{
				if(purchased[i].id==msg.id)	// ищем, не покупали ли мы этот товар ранее
				{
					check=true;
					cnt=purchased[i].cnt;

					break;
				}
			}

			if(!cnt)	// если еще не покупали, или удалили из покупок, то вставляем в корзину
				$('#item-list').append(msg.txt);
        totalpoz+=1;
        if (totalpoz>3) $('#item-list').animate({scrollTop:'+=1000'}, 3000);

			if(!check)	// если еще не купили, вставляем в массив покупок
			{
				purchased.push({id:msg.id,cnt:1,price:msg.price,ves:msg.ves,obem:msg.obem,img:param});
			}

			else	// иначе, если купили
			{
				//if(cnt>=3) return false;	// больше 3 товаров

				purchased[i].cnt++;
				$('#'+msg.id+'_cnt').val(purchased[i].cnt);	// обновляем select box
			}

			totalprice+=msg.price;	// пересчитываем стоимость recalculate the price
			totalves+=msg.ves;
			totalobem+=msg.obem;
			update_total();	// обновляем блок общей стоимости
		}

		$('.tooltip').hide();	// прячем подсказку (иногда она остается после перетаскивания)

	}
	});
	

}

function fill_list(param,kolvo)
{
	// функция addlist добавляет товар в корзину

  //param='img/products/iPod.png';
	$.ajax({	// посылаем ajax-request в addtocart.php
	type: "POST",
	url: "ajax/addtocart.php",
	data: 'img='+encodeURIComponent(param)+'&kolvo='+kolvo,	// картинка товара в качестве параметра
	dataType: 'json',	// ждем json
	beforeSend: function(x){$('#ajax-loader').css('visibility','visible');},	// отображаем прелоадер
	success: function(msg){

		$('#ajax-loader').css('visibility','hidden');	// прячем прелоадер
		if(parseInt(msg.status)!=1)
		{
			return false;	// если обнаружена ошибка, возвращаем false
		}
		else
		{
			var check=false;
			var cnt = false;
			//purchased.push({id:msg.id,cnt:1,price:msg.price,ves:msg.ves,obem:msg.obem});
      $('#item-list').append(msg.txt);
			totalprice+=msg.price*kolvo;	// пересчитываем стоимость recalculate the price
			totalves+=msg.ves*kolvo;
			totalobem+=msg.obem*kolvo;
      
			update_total();	// обновляем блок общей стоимости
		}

		$('.tooltip').hide();	// прячем подсказку (иногда она остается после перетаскивания)

	}
	});
	

}

function findpos(id)	// полезная функция, помогающая найти поизицию товара в массиве, возвращаяя ее
{
	for(var i=0; i<purchased.length;i++)
	{
		if(purchased[i].id==id)
			return i;
	}

	return false;
}

function remove(id)	// удаляем товары из корзины
{
	var i=findpos(id);	// находим их позицию в массиве

	totalprice-=purchased[i].price*purchased[i].cnt;	// пересчитываем стоимость
	totalves-=purchased[i].ves*purchased[i].cnt;	
	totalobem-=purchased[i].obem*purchased[i].cnt;
	purchased[i].cnt = 0;	// сбрасываем счетчик

	$('#table_'+id).remove();	// удаляем их из таблицы
  totalpoz-=1;
	update_total();	// обновляем счетчик общей стоимости на странице

}

function change(id)	// вызывается когда мы изменям количество товаров в селекте
{
	var i=findpos(id);

	totalprice+=(parseInt($('#'+id+'_cnt').val())-purchased[i].cnt)*purchased[i].price;
	totalves+=(parseInt($('#'+id+'_cnt').val())-purchased[i].cnt)*purchased[i].ves;
	totalobem+=(parseInt($('#'+id+'_cnt').val())-purchased[i].cnt)*purchased[i].obem;

	purchased[i].cnt=parseInt($('#'+id+'_cnt').val());
	update_total();
}

function update_total()	// фунция, которая обновляет блок с общей стоимостью на странице
{
	if(totalprice)
	{
	  $('#cart-icon').css('display','none');
	} else {
	  $('#cart-icon').css('display','');
	}

	if(totalprice)
	{
		$('#total').html('Товаров на сумму: '+totalprice+' руб.'); // Если мы купили что-нибудь, отобразить блок с общей стоимостью и кнопку оформления

	$.ajax({	// посылаем ajax-request 
	type: "POST",
	url: "ajax/dostavka.php",
	data: 'totalves='+totalves+'&totalobem='+totalobem+'&summa='+totalprice,
	dataType: 'html',	// ждем json
	beforeSend: function(x){$('#ajax-loader').css('visibility','visible');},	// отображаем прелоадер
	success: function(msg){

		$('#ajax-loader').css('visibility','hidden');	// прячем прелоадер
		$('#dostavka-list').css('visibility','visible');	// прячем прелоадер
		$('#dostavka-list').html(msg);
		$('.tooltip').hide();	// прячем подсказку (иногда она остается после перетаскивания)

	}
	});
 
		$('a.button').css('display','block');
	}
	else	// прячем их
	{
		$('#total').html('');
		$('#ves').html('');
		$('#dostavka-list').html('');
		$('a.button').hide();
	}
  //alert(array2String(purchased));
  setCookie("cart_ks", array2String(purchased), "Mon, 01-Jan-2020 00:00:00 GMT", "/");
  if (totalpoz>1) {
    $('#s_vverh').css('display','');
    $('#s_vniz').css('display','');
  } else {
    $('#s_vverh').css('display','none');
    $('#s_vniz').css('display','none');
  }
}

function load_items(cat_id)	// фунция, которая обновляет блок с общей стоимостью на странице
{
   
	$.ajax({	// посылаем ajax-request 
	type: "POST",
	url: "ajax/loaditems.php",
	data: 'cat_id='+cat_id,
	dataType: 'html',	// ждем json
	beforeSend: function(x){$('#ajax-loader').css('visibility','visible');},	// отображаем прелоадер
	success: function(msg){
    //alert(cat_id);
		$('#ajax-loader').css('visibility','hidden');	// прячем прелоадер
		//$('#list_'+cat_id).css('visibility','visible');	
		$('#list_'+cat_id).html(msg);

	}
	});
}

function setCookie (name, value, expires, path, domain, secure) {
      document.cookie = name + "=" + escape(value) +
        ((expires) ? "; expires=" + expires : "") +
        ((path) ? "; path=" + path : "") +
        ((domain) ? "; domain=" + domain : "") +
        ((secure) ? "; secure" : "");
}

function getCookie(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 = unescape(cookie.substring(offset, end));
		}
	}
	return(setStr);
}

function object2String(obj) {
    var val, output = "";
    if (obj) {    
        output += "{";
        for (var i in obj) {
            val = obj[i];
            switch (typeof val) {
                case ("object"):
                    if (val[0]) {
                        output += i + ":" + array2String(val) + ",";
                    } else {
                        output += i + ":" + object2String(val) + ",";
                    }
                    break;
                case ("string"):
                    output += i + ":'" + escape(val) + "',";
                    break;
                default:
                    output += i + ":" + val + ",";
            }
        }
        output = output.substring(0, output.length-1) + "}";
    }
    return output;
}
   
function array2String(array) {
    var output = "";
    if (array) {
        output += "[";
        for (var i in array) {
            val = array[i];
            switch (typeof val) {
                case ("object"):
                    if (val[0]) {
                        output += array2String(val) + ",";
                    } else {
                        output += object2String(val) + ",";
                    }
                    break;
                case ("string"):
                    output += "'" + escape(val) + "',";
                    break;
                default:
                    output += val + ",";
            }
        }
        output = output.substring(0, output.length-1) + "]";
    }
    return output;
}
   
function string2Object(string) {
    eval("var result = " + string);
    return result;
}
   
function string2Array(string) {
    eval("var result = " + string);
    return result;
}
