var date = new Date();
//date.setFullYear(date.getFullYear()+10);
//var expires=date.toGMTString();

date.setDate(date.getDate()+1);
var expires=date.toGMTString();

function setCookie(tovar_id, tovar_name, tovar_price, form_name) 
{
   	var colvo = document[form_name]["colvo" + tovar_id].value;
	
	var colvo_mass = colvo.toString().split(',');
	colvo = colvo_mass.join('.');
	
	
	var max_colvo_id = document.getElementById('max_colvo'+ tovar_id);	
	var max_colvo = 0;
	if(max_colvo_id)
	{
		max_colvo = max_colvo_id.value;
		
		if(max_colvo == '')
		{
			max_colvo = 0;
		}
	}
	
	if(checkdigits(colvo, max_colvo, unescape(tovar_name)) == false)
	{
		return false;
	}
   	
   	if(colvo == 0)
	{
		alert('Вы пытаетесь положить в корзину 0 товаров, что невозможно!');
		return false;
	}
	
	var all_price = tovar_price*colvo;
 
   	all_price = okruglenie(all_price);
   	tovar_price = okruglenie(tovar_price);
   	
   	var oldCookie = getCookie();
	if(oldCookie == '') 
	{
		var curCookie = "report=" + tovar_id + "#"+ colvo +"::"+ tovar_price +"; path=/; expires=" + expires;
		document.cookie = curCookie;
		
		alert('Товар "'+ unescape(tovar_name) +'" в количестве '+ colvo +' шт. на сумму '+ all_price +' '+ valuta +' положен в корзину!');
		
		var basket_colvo = document.getElementById('basket_colvo');
		basket_colvo.innerHTML = colvo;
		checkOkonchanie(colvo);
		
		var basket_summ = document.getElementById('basket_summ');
		basket_summ.innerHTML = all_price;
		
		return;
	}
	
	
	var splitCookie = oldCookie.split(',');
	
	var add_colvo = "";
	
	for(var i=0; i<splitCookie.length; i++) 
	{
		var splitCookie_id = splitCookie[i].split('#');    
		
		if(splitCookie_id[0] == tovar_id) 
		{
			var splitCookie_id_col = splitCookie_id[1].split('::');
						
			var splitCookie_id_col_test = splitCookie_id_col[0]*1;
			
			splitCookie_id_col[0] = splitCookie_id_col[0]*1 + colvo*1;
			
			if(get_max_count_order(splitCookie_id_col[0], max_colvo, unescape(tovar_name)) == false)
			{
				return false;
			}
			
			splitCookie_id[1] = splitCookie_id_col.join('::');
			splitCookie[i] = splitCookie_id.join('#');      				
			
			add_colvo = "yes";
			break;
		}
	}
	
	if(add_colvo == "")
	{
		splitCookie[splitCookie.length] = tovar_id + "#" + colvo + "::" + tovar_price;
	}
	
	alert('Товар "'+ unescape(tovar_name) +'" в количестве '+ colvo +' шт. на сумму '+ all_price +' '+ valuta +' положен в корзину!');
	
	var newCookie = splitCookie.join(',');
	
	var curCookie = "report=" + escape(newCookie) + "; path=/; expires=" + expires;
	document.cookie = curCookie;
	
	var oldCookie = getCookie();

	basket_change(oldCookie);
}


function getCookie(variable) 
{
	if(variable == null)
	{
		variable = 'report';
	}
	
	var prefix = variable +"=";
	var cookieStartIndex = document.cookie.indexOf(prefix);
	if (cookieStartIndex == -1)
               return "";
	var cookieEndIndex = document.cookie.indexOf(";", cookieStartIndex + prefix.length);
	if (cookieEndIndex == -1)
               cookieEndIndex = document.cookie.length;
	return unescape(document.cookie.substring(cookieStartIndex + prefix.length, cookieEndIndex));
}


function checkdigits(colvo, max_colvo, tovar_name) 
{
   	var test;
   	
   	var colvo_mass = colvo.toString().split(',');
	colvo = colvo_mass.join('.');
   	
   	if(use_order_count_float == 'yes')
   	{
   		test = /^\d+(\.\d+){0,1}$/;
   	}
   	else
   	{	
   		test = /^\d+$/;
   	}
		
	if(!test.test(colvo))
	{
  		alert('Количество введено неверно!')
		return false;
	}
	else
	{
    	return get_max_count_order(colvo, max_colvo, tovar_name);
	}
}


function get_max_count_order(colvo, max_colvo, tovar_name)
{
	if(typeof(max_count_order) == 'undefined')
	{
		max_count_order = 999;
	}
		
	if(max_colvo > 0)
	{
		max_count_order = max_colvo*1;
	}
		
	if(colvo > max_count_order)
	{
		alert('Товар "'+ tovar_name +'" имеется в количестве '+ max_count_order +' шт.!\nВы не можете положить в корзину больше указанного количества товаров!');
			
		return false;
  	}
  	else
  	{
  		return true;
  	}
}


function check_symbols_digits(input,elements)
{
	var elements = elements.split('#');  
		
   	var ok = false;
	   
	for (var i = 0; i < input.length; i++)
    {
    	var chr = input.charAt(i);
		   
		var found = false;
		   
		for (var j = 0; j < elements.length; j++)
        {
			if(chr == elements[j]){found = true; break;}else{found = false;}
		}
		   
		
		if(found)
		{
			ok = true;
		}
		else
		{
			return false
		}

	}
  	
	return ok;
}


function okruglenie(price)
{
	if(okruglenie_count > 0)
   	{
   		var okruglenie_koef = Math.pow(10,okruglenie_count);

   		if(okruglenie_koef > 0)
	   	{
	   		price = Math.round(price*okruglenie_koef)/okruglenie_koef;
	
			var test = /\./;

			if(!test.test(price))
			{
				var nulls = "";
				
				for(var i=0; i<okruglenie_count; i++)
				{
					nulls += '0';
				}
				
				price = price + '.' + nulls;
			}

			price = price + '';
			price = price.split('.');
    
			price_00 = price[1].split('');
	
			if(price_00.length < okruglenie_count)
			{
				var count_length = price_00.length;
				while(count_length < okruglenie_count)
				{
			 		price[1] = price[1] + '0';
					count_length++;
				}
			}
	
			price = price.join('.');
		}	
	}
	else
	{
		price = Math.round(price*1)/1;
	} 	

	return price; 
}



function basket_change(oldCookie)
{
	if(oldCookie != '') 
	{
	 	var basket = 0;
	 	var allbasketsumm = 0;
		var splitCookie = oldCookie.split(',');
		
		for(var i=0; i<splitCookie.length; i++) 
		{			
		 	var splitCookie_id = splitCookie[i].split('#');
		 	var splitCookie_id_col = splitCookie_id[1].split('::');
			
			basket = basket + splitCookie_id_col[0]*1;
			basketsumm = splitCookie_id_col[0]*splitCookie_id_col[1];	 		
			
			allbasketsumm = basketsumm + allbasketsumm;
		}
		
		allbasketsumm = okruglenie(allbasketsumm);
		
		var basket_colvo = document.getElementById('basket_colvo');
		basket_colvo.innerHTML = basket;
		checkOkonchanie(basket);
		
		var basket_summ = document.getElementById('basket_summ');
		basket_summ.innerHTML = allbasketsumm;
	}
	else
	{
		var basket_colvo = document.getElementById('basket_colvo');
		basket_colvo.innerHTML = 0;
		checkOkonchanie(0);
		
		var basket_summ = document.getElementById('basket_summ');
		basket_summ.innerHTML = 0;
	}
}

function checkOkonchanie(basket)
{
	var basket_text_okonchanie;
	
	var ids = new Array('basket_text_okonchanie', 'basket_text_okonchanie_order');
	
	for(i in ids)
	{
		var basket_text_okonchanie = document.getElementById(ids[i]);
			
		if(basket_text_okonchanie)
		{
			var basket_text = getOkonchanie(basket);
			basket_text_okonchanie.innerHTML = basket_text;	
		}
	}	

}

function getOkonchanie(basket)
{
	var basket_text = 'ов';
	if(/11$/.test(basket.toString()))
	{
		basket_text = 'ов';
	}
	else if(/1$/.test(basket.toString()))
	{
		basket_text = '';
	}
	else if(/1[2|3|4]$/.test(basket.toString()))
	{
		/* тут оставляем ов */
	}
	else if(/[2|3|4]$/.test(basket.toString()))
	{
		basket_text = 'а';
	}
	
	return basket_text; 
}			 


function over(img, ref)
{
	document.images[img].src = ref;
}	 


function out(img, ref)
{
	document.images[img].src = ref;
} 


function w_open()
{
	var url = w_open.arguments[0];
	
	var w;
	var h;
	var settings;
	
	if(w_open.arguments[1]) 
	{
		w = w_open.arguments[1];
	} 
	else
	{
		w = screen.width - 100;
	} 
	
	if(w_open.arguments[2]) 
	{
		var h = w_open.arguments[2];
	} 
	else
	{
		h = screen.height - 200;
	}
	
	var wn = 'wname' + Math.round(Math.random() * 10000);
	
	if(w_open.arguments[3])
	{
		settings = w_open.arguments[3];	
	}
	else
	{
		settings = 'toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=no, status=no, fullscreen=no, left=40, top=40, width='+w+',height='+h+', target=_blank';	
	}	

	var openedWindow = window.open(url, wn, settings);

	if(openedWindow.opener == null) openedWindow.opener = self;
	openedWindow.focus();
}

/* Функция загрузки функции по окончании загрузки страницы (пример вызова: addLoadEvent(onloadSelect);) */
function addLoadEvent(func) 
{
	var oldonload = window.onload;
	if (typeof window.onload != 'function') 
	{
		window.onload = func;
	}
	else
	{
		window.onload = function() 
		{
			oldonload();
			func();
		}
	}
}

