String.prototype.replaceAll = function(search, replace){
	return this.split(search).join(replace);
}
var threaded_length_ceil_level=0.5;
function maybe_send_form(form){
	if(!form) form=document.forms[0];
	var elements=form.elements;
	for(var i=0; i<elements.length; i++){
		var element=elements[i];
		var required=element.getAttribute("required");
		if(required){
			var title=element.getAttribute("title");
			var name=element.getAttribute("name");
			var value=element.value;
			var title_or_name=title?title:name;
			if(!value){
				alert("Пожалуйста, заполните поле \""+title_or_name+"\"");
				return;
			}
		}
	}
	form.submit();
}

function serializeFormToObject(form){
	var result=new Object();
	var serializedArr=jQuery(form).serializeArray();
	for(var i=0; i<serializedArr.length; i++){
		var f=serializedArr[i];
		result[f.name]=f.value;
	}
	return result;
}
function update_basket_block(basket_block_contents){
	jQuery("#cart_block_wrapper").html(basket_block_contents);
	fillOrderForm();
	initFancyBox();
}
function add2basket(good_id, size_id, threaded_size_str, amount){
	var requestUrl="/main/services.json?action=add_to_basket&good_id="+good_id+"&amount="+amount+"&size_id="+size_id+"&threaded_size_str="+threaded_size_str;
	var a = jQuery.ajax({
		url: requestUrl,
		type:'post',
		ajaxSend: beforeRequestReady(),
		success: function(msg){
			var responseObj = $.evalJSON(msg);
			update_basket_block(responseObj.cart_block);
			var data = {
			
						pWinWidth:  '400px',
						pWinHeight: '150px',
						pWinPosition: 'absolute',
						pWinContent: "<div class='p_topBar'><div class='popup-close'></div></div><div class='p_content'>Товар добавлен в корзину!</div><div class='p_footer'><div class='button_form3 size3'><div class='button_form3_2'><div class='button_form3_3 ' style='font-size:10px'><a class='p_button_a' id='to_shopping_cart' href='#cart_block_wrapper'>ОФОРМИТЬ ЗАКАЗ</a></div></div></div><div class='button_form2 size3'><div class='button_form2_2'><div class='button_form2_3'><a class='p_button_a'  id='continue_shopping'>ПРОДОЛЖИТЬ ПОКУПКИ</a></div></div></div></div>"
						};
			getPosition(data);
			//alert("Товар добавлен в корзину!");
		},
		error: function(){
			data.pWinContent = "<div class='p_topBar'><div class='popup-close'></div></div><div class='p_content'>Ошибка доступа!</div><div class='p_footer' style='padding-left:130px;'><div class='button_form2 size3'><div class='button_form2_2'><div class='button_form2_3'><a class='p_button_a' style='font-size:12px;padding-top:7px;' id='continue_shopping'>OK</a></div></div></div></div>";
			getPosition(data);
			//alert('Ошибка доступа!');
		}
	});
}

/**************************************/
var allItog = '';
var cities_show = false;
var gruzPriceCount = 0;
var pressKeyCount = 0;
jQuery(document).ready(function(){

	//beforeRequestReady();
	jQuery('#distance').attr('autocomplete', 'off');
	jQuery('#distance').keyup(function(e){symbolKey = e.keyCode});
	if(jQuery("#in_russia").attr('checked'))
	{
		getSelectCities();
	}

	if(allItog == '')
	{
		allItog = parseInt(jQuery("#all_itog").text());
		allItog = allItog - jQuery('#distance').val() * km1DeliveryCost;
	}

});

function getPosition(data)
{
	
	var html = document.documentElement;
	var body = document.body;
	var docClHeight = body.clientHeight;
	var docClWidth = body.clientWidth;
	var allHeight = 0;
	
	xPos = (html && html.scrollLeft || body && body.scrollLeft || 0) - (html.clientLeft || 0);
    yPos = (html && html.scrollTop || body && body.scrollTop || 0) - (html.clientTop || 0);
	
	if(html && html.scrollHeight)
		allHeight = html.scrollHeight;
	else if(body && body.scrollHeight)
		allHeight = body.scrollHeight;
	
	jQuery("#back_popup").css('height', allHeight+'PX').css('width',(xPos + docClWidth)+"px");
	var popupWin = jQuery("#popupWin");
	popupWin.css("background-image","url(/images/popup_back.png)");
	popupWin.css('padding-bottom','10px');

	popupWin.css('width', data.pWinWidth);
	popupWin.css('height', data.pWinHeight);
	//popupWin.css('border','1px solid #999');
	popupWin.css('position', data.pWinPosition);
	popupWin.css('top',yPos + (docClHeight - parseInt(data.pWinHeight))/2 + 'px');
	popupWin.css('left', xPos + (docClWidth - parseInt(data.pWinWidth))/2 + 'px');
	popupWin.html(data.pWinContent);
	popupWin.css('display', 'block');
	jQuery('#back_popup').css('display', 'block');
	
	jQuery("#continue_shopping").click(popupWinClose);
	jQuery("#to_shopping_cart").click(goToShopCart);
	jQuery(".popup-close").click(popupWinClose);
}

function popupWinClose()
{
	
	jQuery("#back_popup").css('display','none');
	jQuery("#popupWin").html('').css('display', 'none');
}

function goToShopCart()
{
	
	jQuery("#back_popup").css('display','none');
	jQuery("#popupWin").html('').css('display', 'none');
	document.location = '#order3';
}

function beforeRequestReady()
{
			var data = {
			
						pWinWidth:  '400px',
						pWinHeight: '150px',
						pWinPosition: 'absolute',
						pWinContent: "<div style='text-align:center;padding:60px 0'>Подождите!<br><br><br><img src='/images/popuploading.gif' width='220' height='19' /></div>"
						};

				getPosition(data);
}
function maybeBeforeRequestReady()
{
			var data = {
			
						pWinWidth:  '400px',
						pWinHeight: '150px',
						pWinPosition: 'absolute',
						pWinContent: "<div class='p_topBar'><div class='popup-close'></div></div><div style='text-align:center;padding:60px 0'>Подождите!<br><br><br><img src='/images/popuploading.gif' width='220' height='19' /></div>"
						};

				getPosition(data);
}
var symbolCount = 0;
var symbolKey = 0;


function getDistancePrice(cost, defPrice)
{
	var dcost = parseInt(cost);
	var distance = jQuery('#distance').val();
	
	ddistance = parseFloat(distance);
	if(isNaN(ddistance)) ddistance = 0;
	var dval = (ddistance == null) ? '': ddistance;
	if(distance != ddistance)
		jQuery('#distance').val(dval);
	distance = (ddistance == null) ? 0: ddistance;
	
	
	var price = parseFloat(distance) * km1DeliveryCost +parseInt(defPrice);
	jQuery("#d_price span").html(price+" р");
	jQuery("#mkad").attr('value', distance);
	dcost = dcost - parseInt(defPrice) + price;
	jQuery("#all_itog").html(dcost + ' р');
}
function getPriceByDistance(defPrice)
{
	var distance = jQuery('#distance').val();
	var price = distance * km1DeliveryCost +parseInt(defPrice);
	jQuery("#d_price span").html(price+" р");
	jQuery("#mkad").attr('value', distance);
	return price;
}
function setMethodDostavka(meth, cost, defPrice)
{
	var zaMkad = getPriceByDistance(defPrice);;
	var perGruz = parseInt(jQuery("#toCityPrice").val());
	var dcost = parseInt(cost);
	var itog = jQuery("#all_itog");
	jQuery('#meth_dostavka').attr('value', meth);
	jQuery("#distance").attr('value', 1);
	//var itog = parseInt(jQuery("#all_itog").text());
	switch(meth)
	{
		case 1:
			jQuery("#d_price span").html(defPrice);
			jQuery("#mkad").attr('value', 0);
			jQuery("#select_cities").css('display','none');
			jQuery("#distance").attr('value',1);
			//dcost = dcost - perGruz - zaMkad + parseInt(defPrice);
		break;
		case 2:
			var distanceVal = parseFloat(jQuery("#distance").val()) * km1DeliveryCost + parseInt(defPrice);
			jQuery("#select_cities").css('display','none');
			jQuery("#d_price span").html(distanceVal + ' р');
			dcost = dcost - parseInt(defPrice) + zaMkad;
		break;
		case 3:
			if(!cities_show)
			{
				getSelectCities();
				jQuery("#select_cities").css('display','block');
				jQuery("#d_price span").html(gruzd_price+" р");
			}
			else
			{
				jQuery("#select_cities").css('display','block');
				jQuery("#d_price span").html(gruzd_price+" р");
			}
			jQuery("#distance").attr('value',1)
			var gorod = 0;
			if(jQuery("#goroda").val() != 0)
				gorod = jQuery("#goroda option[value="+(jQuery("#goroda").val())+"]").text();
			jQuery("#mkad").attr('value', gorod);
			jQuery("#mkad").attr('value', 0);
			if(perGruz)
				dcost = dcost - parseInt(defPrice) + perGruz;
			else
				dcost = cost - parseInt(defPrice);
		break;
	}
	itog.html(dcost + ' р');
}

function getSelectCities()
{
	var requestUrl="/main/services.json?action=get_cities";
	var a = jQuery.ajax({
		url: requestUrl,
		type:'post',
		data: "delcity="+deliveryCity+"&cities_show="+cities_show,
		beforeSend: function(){
		
			jQuery("#select_cities").html("<img src='/images/loading_cities.gif' width='16' height='16' alt='load_cities' title='load_cities' />");
		},
		success: function(msg){
			var responseObj = jQuery.evalJSON(msg);
			var conteyner = jQuery("#select_cities");
			
			conteyner.html(responseObj.result);
			cities_show = true;
			jQuery("#gruzPerevozkaPrice").attr('value',gruzd_price);
				var gorod = 0;
				if(jQuery("#goroda").val() != 0)
					gorod = jQuery("#goroda option[value="+(jQuery("#goroda").val())+"]").text();
				jQuery("#mkad").attr('value', gorod);				
 		},
		error: function(){
			data.pWinContent = "<div class='p_topBar'><div class='popup-close'></div></div><div class='p_content'>Ошибка соединения с сервером!</div><div class='p_footer' style='padding-left:130px;'><div class='button_form2 size3'><div class='button_form2_2'><div class='button_form2_3'><a class='p_button_a' style='font-size:12px;padding-top:7px;' id='continue_shopping'>OK</a></div></div></div></div>";
			getPosition(data);
			//alert('Ошибка соединения с сервером!');
		}
	});
}

function getGruzPrice(val)
{
	if(val == 0)
	{
		jQuery("#d_price span").html(0);
		return false;
	}
	var selCity = jQuery("#goroda").val();
	var delcity = jQuery("#delcity").val();
	var dodverey = jQuery("#dodverey").val();
	var requestUrl="/main/services.json?action=get_cities_price";
	var a = jQuery.ajax({
		url: requestUrl,
		type:'post',
		data: "selCity="+val+"&delcity="+delcity+"&dodverey="+dodverey,
		beforeSend: function(){
		
			jQuery("#d_price span").html("<img src='/images/loading_cities.gif' width='16' height='16' alt='load_cities' title='load_cities' />");		
		},
		success: function(msg){
			var responseObj = jQuery.evalJSON(msg);

			jQuery("#d_price span").html(responseObj.result);
			if(!isNaN(parseInt(responseObj.result)))
			{
				gruzd_price = parseInt(responseObj.result);
			}
			jQuery("#gruzPerevozkaPrice").attr('value',gruzd_price);
			//var gorodId = jQuery("#goroda").val();
			var gorod = jQuery("#goroda option[value="+selCity+"]").text();
			var oldPrice = jQuery("#toCityPrice").val();
			jQuery("#mkad").attr('value', gorod);
			jQuery("#toCityPrice").attr('value',gruzd_price);
			
			var itog = parseInt(jQuery("#all_itog").text());
			if((itog < deliveryFreeOrderCost && oldPrice == '')){oldPrice = deliverySmallOrderCost}
			jQuery("#all_itog").html((itog - oldPrice + gruzd_price) + ' р');
		},
		error: function(){
			data.pWinContent = "<div class='p_topBar'><div class='popup-close'></div></div><div class='p_content'>Ошибка соединения с сервером!</div><div class='p_footer' style='padding-left:130px;'><div class='button_form2 size3'><div class='button_form2_2'><div class='button_form2_3'><a class='p_button_a' style='font-size:12px;padding-top:7px;' id='continue_shopping'>OK</a></div></div></div></div>";
			getPosition(data);
			//alert('Ошибка соединения с сервером!');
		}
	});
}
/**************************************/
function maybe_add2basket(form){
	var serializedFormObj=serializeFormToObject(form);
	if(!serializedFormObj.amount){
		serializedFormObj.amount=1;
	}
	if(!serializedFormObj.size_id){
		serializedFormObj.size_id=0;
	}
	if(!serializedFormObj.threaded_size_str){
		serializedFormObj.threaded_size_str="";
	}
	add2basket(serializedFormObj.good_id, serializedFormObj.size_id, serializedFormObj.threaded_size_str, serializedFormObj.amount);
	cities_show = false;
}
function maybe_send_order(form){
	var serializedFormObj=serializeFormToObject(jQuery(form));
	var data = {
			
				pWinWidth:  '400px',
				pWinHeight: '150px',
				pWinPosition: 'absolute',
				pWinContent: ""
				};
	var cf = jQuery(".dop_info_basket").css('display');
	if(cf == 'block')
	{
		if(!serializedFormObj.yur_name){
			if(!serializedFormObj.yur_name)
			{
				data.pWinContent = "<div class='p_topBar'><div class='popup-close'></div></div><div class='p_content'>Пожалуйста, введите название организации!</div><div class='p_footer' style='padding-left:130px;'><div class='button_form2 size3'><div class='button_form2_2'><div class='button_form2_3'><a class='p_button_a' style='font-size:12px;padding-top:7px;' id='continue_shopping'>OK</a></div></div></div></div>";
				getPosition(data);
				return;
			}
		}
		if(!serializedFormObj.inn || isNaN(serializedFormObj.inn) || (serializedFormObj.inn.length < 10 || serializedFormObj.inn.length > 12)){
			if(!serializedFormObj.inn)
			{
				data.pWinContent = "<div class='p_topBar'><div class='popup-close'></div></div><div class='p_content'>Пожалуйста, введите ИНН!</div><div class='p_footer' style='padding-left:130px;'><div class='button_form2 size3'><div class='button_form2_2'><div class='button_form2_3'><a class='p_button_a' style='font-size:12px;padding-top:7px;' id='continue_shopping'>OK</a></div></div></div></div>";
				getPosition(data);
				return;
			}
			if(isNaN(serializedFormObj.inn))
			{
				data.pWinContent = "<div class='p_topBar'><div class='popup-close'></div></div><div class='p_content'>В поле ИНН должны быть только цифры!</div><div class='p_footer' style='padding-left:130px;'><div class='button_form2 size3'><div class='button_form2_2'><div class='button_form2_3'><a class='p_button_a' style='font-size:12px;padding-top:7px;' id='continue_shopping'>OK</a></div></div></div></div>";
				getPosition(data);
				return;
			}
			if(serializedFormObj.inn.length < 10 || serializedFormObj.inn.length > 12)
			{
				data.pWinContent = "<div class='p_topBar'><div class='popup-close'></div></div><div class='p_content'>Длина ИНН должен быть<br>минимум 10 символов, максимум 12</div><div class='p_footer' style='padding-left:130px;'><div class='button_form2 size3'><div class='button_form2_2'><div class='button_form2_3'><a class='p_button_a' style='font-size:12px;padding-top:7px;' id='continue_shopping'>OK</a></div></div></div></div>";
				getPosition(data);
				return;
			}
		}
		if(!serializedFormObj.kpp  || isNaN(serializedFormObj.kpp) || (serializedFormObj.kpp.length < 9 || serializedFormObj.kpp.length > 9)){
			if(!serializedFormObj.kpp)
			{
				data.pWinContent = "<div class='p_topBar'><div class='popup-close'></div></div><div class='p_content'>Пожалуйста, введите КПП!</div><div class='p_footer' style='padding-left:130px;'><div class='button_form2 size3'><div class='button_form2_2'><div class='button_form2_3'><a class='p_button_a' style='font-size:12px;padding-top:7px;' id='continue_shopping'>OK</a></div></div></div></div>";
				getPosition(data);
				return;
			}
			if(isNaN(serializedFormObj.kpp))
			{
				data.pWinContent = "<div class='p_topBar'><div class='popup-close'></div></div><div class='p_content'>В поле КПП должны быть только цифры!</div><div class='p_footer' style='padding-left:130px;'><div class='button_form2 size3'><div class='button_form2_2'><div class='button_form2_3'><a class='p_button_a' style='font-size:12px;padding-top:7px;' id='continue_shopping'>OK</a></div></div></div></div>";
				getPosition(data);
				return;
			}
			if(serializedFormObj.kpp.length < 9 || serializedFormObj.kpp.length > 9)
			{
				data.pWinContent = "<div class='p_topBar'><div class='popup-close'></div></div><div class='p_content'>Длина КПП должен быть 9 символов</div><div class='p_footer' style='padding-left:130px;'><div class='button_form2 size3'><div class='button_form2_2'><div class='button_form2_3'><a class='p_button_a' style='font-size:12px;padding-top:7px;' id='continue_shopping'>OK</a></div></div></div></div>";
				getPosition(data);
				return;
			}
		}
		if(!serializedFormObj.okpo || isNaN(serializedFormObj.okpo) || (serializedFormObj.okpo.length < 10 || serializedFormObj.okpo.length > 10)){
			if(!serializedFormObj.okpo)
			{
				data.pWinContent = "<div class='p_topBar'><div class='popup-close'></div></div><div class='p_content'>Пожалуйста, введите ОКПО!</div><div class='p_footer' style='padding-left:130px;'><div class='button_form2 size3'><div class='button_form2_2'><div class='button_form2_3'><a class='p_button_a' style='font-size:12px;padding-top:7px;' id='continue_shopping'>OK</a></div></div></div></div>";
				getPosition(data);
				return;
			}
			if(isNaN(serializedFormObj.okpo))
			{
				data.pWinContent = "<div class='p_topBar'><div class='popup-close'></div></div><div class='p_content'>В поле ОКПО должны быть только цифры!</div><div class='p_footer' style='padding-left:130px;'><div class='button_form2 size3'><div class='button_form2_2'><div class='button_form2_3'><a class='p_button_a' style='font-size:12px;padding-top:7px;' id='continue_shopping'>OK</a></div></div></div></div>";
				getPosition(data);
				return;
			}
			if(serializedFormObj.okpo.length < 8 || serializedFormObj.okpo.length > 10)
			{
				data.pWinContent = "<div class='p_topBar'><div class='popup-close'></div></div><div class='p_content'>Длина ОКПО должен быть 8 символов</div><div class='p_footer' style='padding-left:130px;'><div class='button_form2 size3'><div class='button_form2_2'><div class='button_form2_3'><a class='p_button_a' style='font-size:12px;padding-top:7px;' id='continue_shopping'>OK</a></div></div></div></div>";
				getPosition(data);
				return;
			}
		}
		if(!serializedFormObj.legalAddress){
			data.pWinContent = "<div class='p_topBar'><div class='popup-close'></div></div><div class='p_content'>Пожалуйста, введите Юридический адрес!</div><div class='p_footer' style='padding-left:130px;'><div class='button_form2 size3'><div class='button_form2_2'><div class='button_form2_3'><a class='p_button_a' style='font-size:12px;padding-top:7px;' id='continue_shopping'>OK</a></div></div></div></div>";
			getPosition(data);
			return;
		}
		if(!serializedFormObj.actualAddress){
			data.pWinContent = "<div class='p_topBar'><div class='popup-close'></div></div><div class='p_content'>Пожалуйста, введите Почтовый адрес!</div><div class='p_footer' style='padding-left:130px;'><div class='button_form2 size3'><div class='button_form2_2'><div class='button_form2_3'><a class='p_button_a' style='font-size:12px;padding-top:7px;' id='continue_shopping'>OK</a></div></div></div></div>";
			getPosition(data);
			return;
		}
	}
	if(!serializedFormObj.name){
		data.pWinContent = "<div class='p_topBar'><div class='popup-close'></div></div><div class='p_content'>Пожалуйста, введите Ваше имя!</div><div class='p_footer' style='padding-left:130px;'><div class='button_form2 size3'><div class='button_form2_2'><div class='button_form2_3'><a class='p_button_a' style='font-size:12px;padding-top:7px;' id='continue_shopping'>OK</a></div></div></div></div>";
		getPosition(data);
		return;
	}
	if(!serializedFormObj.phone || isNaN(parseInt(serializedFormObj.phone))){
		if(!serializedFormObj.phone)
		{
			data.pWinContent = "<div class='p_topBar'><div class='popup-close'></div></div><div class='p_content'>Пожалуйста, введите Ваш телефон!</div><div class='p_footer' style='padding-left:130px;'><div class='button_form2 size3'><div class='button_form2_2'><div class='button_form2_3'><a class='p_button_a' style='font-size:12px;padding-top:7px;' id='continue_shopping'>OK</a></div></div></div></div>";
			getPosition(data);
			//alert("Пожалуйста, введите Ваш телефон");
			return;
		}
		if(isNaN(parseInt(serializedFormObj.phone)))
		{
			data.pWinContent = "<div class='p_topBar'><div class='popup-close'></div></div><div class='p_content'>Телефон не может быть текстом!</div><div class='p_footer' style='padding-left:130px;'><div class='button_form2 size3'><div class='button_form2_2'><div class='button_form2_3'><a class='p_button_a' style='font-size:12px;padding-top:7px;' id='continue_shopping'>OK</a></div></div></div></div>";
			getPosition(data);
			//alert("Пожалуйста, введите Ваш телефон");
			return;
		}
	}
	if(!serializedFormObj.address){
		data.pWinContent = "<div class='p_topBar'><div class='popup-close'></div></div><div class='p_content'>Пожалуйста, введите адрес доставки!</div><div class='p_footer' style='padding-left:130px;'><div class='button_form2 size3'><div class='button_form2_2'><div class='button_form2_3'><a class='p_button_a' style='font-size:12px;padding-top:7px;' id='continue_shopping'>OK</a></div></div></div></div>";
		getPosition(data);
		//alert("Пожалуйста, введите адрес доставки");
		return;
	}
	var requestUrl="/main/services.json?action=create_order";
	var a = jQuery.ajax({
		url: requestUrl,
		type:'post',
		data:serializedFormObj,
		ajaxSend: maybeBeforeRequestReady(),
		success: function(msg){
			try
			{
				var responseObj = jQuery.evalJSON(msg);
				update_basket_block(responseObj.basket_block);
				if(responseObj.result){
				
					if(cf == 'block')
					{
						data.pWinContent = "<div class='p_topBar'><div class='popup-close'></div></div><div class='p_content'>Ваш заказ отправлен. Спасибо!<br><a href='"+responseObj.result+"' style='color:#960018; font-size:14px'>Распечатать счет</a></div><div class='p_footer' style='padding-left:130px;'><div class='button_form2 size3'><div class='button_form2_2'><div class='button_form2_3'><a class='p_button_a' style='font-size:12px;padding-top:7px;' id='continue_shopping'>OK</a></div></div></div></div>";
					}
					else
						data.pWinContent = "<div class='p_topBar'><div class='popup-close'></div></div><div class='p_content'>Ваш заказ отправлен. Спасибо!</div><div class='p_footer' style='padding-left:130px;'><div class='button_form2 size3'><div class='button_form2_2'><div class='button_form2_3'><a class='p_button_a' style='font-size:12px;padding-top:7px;' id='continue_shopping'>OK</a></div></div></div></div>";
					getPosition(data);
					//alert("Ваш заказ отправлен. Спасибо!");
					update_basket_block("");
					gruzd_price = 0;
					//yaCounter.reachGoal('Заказ');
				}
				else{
					data.pWinContent = "<div class='p_topBar'><div class='popup-close'></div></div><div class='p_content'>Ошибка при оформлении заказа!</div><div class='p_footer' style='padding-left:130px;'><div class='button_form2 size3'><div class='button_form2_2'><div class='button_form2_3'><a class='p_button_a' style='font-size:12px;padding-top:7px;' id='continue_shopping'>OK</a></div></div></div></div>";
					getPosition(data);
					//alert("Ошибка при оформлении заказа");
				}
			}
			catch(e)
			{
				data.pWinContent = "<div class='p_topBar'><div class='popup-close'></div></div><div class='p_content'>Ошибка соединения с сервером!<br>Попробуйте чуть позже!</div><div class='p_footer' style='padding-left:130px;'><div class='button_form2 size3'><div class='button_form2_2'><div class='button_form2_3'><a class='p_button_a' style='font-size:12px;padding-top:7px;' id='continue_shopping'>OK</a></div></div></div></div>";
				getPosition(data);
			}
		},
		error: function(){
			data.pWinContent = "<div class='p_topBar'><div class='popup-close'></div></div><div class='p_content'>Ошибка соединения с сервером!</div><div class='p_footer' style='padding-left:130px;'><div class='button_form2 size3'><div class='button_form2_2'><div class='button_form2_3'><a class='p_button_a' style='font-size:12px;padding-top:7px;' id='continue_shopping'>OK</a></div></div></div></div>";
			getPosition(data);
			//alert('Ошибка соединения с сервером!');
		}
	});
}
/***************************/
function updateBasket(form){

	var serializedFormObj=serializeFormToObject(form);
	var requestUrl="/main/services.json?action=update_basket";
	var a = jQuery.ajax({
		url: requestUrl,
		type:'post',
		data:{"data":jQuery.toJSON(serializedFormObj)},
		ajaxSend: beforeRequestReady(),
		success: function(msg){
			var responseObj = $.evalJSON(msg);
			//alert(responseObj.cart_block);
			update_basket_block(responseObj.cart_block);
			popupWinClose();
			//if(mdebug){
			var methodDostavka = form.in_moskow.value;
			if(methodDostavka != 3) gruzd_price = 0;
			//}
			cities_show = false;
		},
		error: function(){
			alert('Ошибка доступа!');
		}
	});
			

}
function initFancyBox(){
	var pics = jQuery('a.gallerybox');
	if (pics)pics.fancybox();
}

function setCookie(c_name,value,expiredays){
	var exdate=new Date();
	exdate.setDate(exdate.getDate()+expiredays);
	document.cookie=c_name+ "=" +escape(value)+
	((expiredays==null) ? "" : ";expires="+exdate.toUTCString())+";path=/";
}

function getCookie(c_name){
	if (document.cookie.length>0){
		c_start=document.cookie.indexOf(c_name + "=");
		if (c_start!=-1){
			c_start=c_start + c_name.length+1;
			c_end=document.cookie.indexOf(";",c_start);
			if (c_end==-1) c_end=document.cookie.length;
			return unescape(document.cookie.substring(c_start,c_end));
		}
	}
	return "";
}
function saveValue(field_id, field_value){
	setCookie(field_id, field_value, 30);
}
function getOrderFormFields(){
	var fields;
	var cf = jQuery(".dop_info_basket").css('display');
	if(cf == 'none')
	{
		fields=new Array("order_form_name", "order_form_phone", "order_form_email", "order_form_address", "order_form_comment");
	}
	else
	{
		fields=new Array("order_form_inn", "order_form_kpp", "order_form_okpo", "order_form_legalAddress", "order_form_actualAddress","order_form_name", "order_form_phone", "order_form_email", "order_form_address", "order_form_comment");
	}
	return fields;
}
function fillOrderForm(){
	var fields=getOrderFormFields();
	for(var i=0; i<fields.length; i++){
		var field=fields[i];
		var field_value=getCookie(field);
		if(!field_value) continue;
		var field_element=document.getElementById(field);
		if(!field_element) continue;
		field_element.value=field_value;
	}
}
function clearOrderForm(){
	var fields=getOrderFormFields();
	for(var i=0; i<fields.length; i++){
		var field=fields[i];
		var field_element=document.getElementById(field);
		if(!field_element) continue;
		field_element.value="";
		setCookie(field, "");
	}
}
var fillThreadedSizeChooser_cache=new Object();
function fillThreadedSizeChooser(container_id, field_id, field_name, min_value, max_value, step){
	var cache_key=min_value+"_"+max_value+"_"+step;
	cache_key=cache_key.replaceAll(".","_");
	var result=cache_key;
	if(fillThreadedSizeChooser_cache[cache_key]){
		result=fillThreadedSizeChooser_cache[cache_key];
	}
	else{
		result="<select name='{field_name}' id='{field_id}' style='width:50px;' >";
		var j=min_value;
		for(var i=min_value; j<max_value; i+=step){
			j=Math.round(i*100)/100;
			result+="<option value='"+j+"'>"+j+"</option>";
		}
		result+="</select>";
		fillThreadedSizeChooser_cache[cache_key]=result;
	}
	result=result.replaceAll("{field_name}",field_name);
	result=result.replaceAll("{field_id}",field_id);
	jQuery("#"+container_id).html(result);
}
function ceilByLevel(value, level){
	//ceil 9.67 by 0.1 = 9.7
	if(!level) return value;
	return Math.ceil(value/level)*level;
}
function setThreadedCost(cost_container_id, threaded_size_str_input_id, width_chooser_id, length_chooser_id, price){
	var width=document.getElementById(width_chooser_id).value;
	var length=document.getElementById(length_chooser_id).value;
	document.getElementById(threaded_size_str_input_id).value=width+"x"+length;
	var ceiled_width=Math.ceil(width);
	//var ceiled_length=Math.ceil(length);
	var ceiled_length=ceilByLevel(length, threaded_length_ceil_level);
	var square=ceiled_width*ceiled_length;
	var cost=square*price;
	//var cost_rounded=Math.round(cost*100)/100;
	var cost_rounded=Math.round(cost);
	jQuery("#"+cost_container_id).html(cost_rounded+"р");
}
function linkThreadedForm(cost_container_id, threaded_size_str_input_id, width_chooser_id, length_chooser_id, price){
	document.getElementById(width_chooser_id).onchange=function(){
		setThreadedCost(cost_container_id, threaded_size_str_input_id, width_chooser_id, length_chooser_id, price);
	}
	document.getElementById(length_chooser_id).onchange=function(){
		setThreadedCost(cost_container_id, threaded_size_str_input_id, width_chooser_id, length_chooser_id, price);
	}
	setThreadedCost(cost_container_id, threaded_size_str_input_id, width_chooser_id, length_chooser_id, price);
}
function maybeRequestCallback(){
	var phone_input=document.getElementById("callback_phone");
	var phone=phone_input.value;
	if(!phone){
		alert("Введите телефон");
		phone_input.focus();
		return;
	}
	var a = jQuery.ajax({
		url: "/main/services.json?action=request_callback",
		type:'post',
		data:"phone="+encodeURIComponent(phone)+"&url="+encodeURIComponent(document.location),
		ajaxSend: beforeRequestReady(),
		success: function(msg){
			var responseObj = $.evalJSON(msg);
			var message=responseObj.msg;
			var data = {
				pWinWidth:  '400px',
				pWinHeight: '150px',
				pWinPosition: 'absolute',
				pWinContent: "<div class='p_topBar'><div class='popup-close'></div></div><div class='p_content'>"+message+"</div><div class='p_footer' style='padding-left:130px;'><div class='button_form2 size3'><div class='button_form2_2'><div class='button_form2_3'><a class='p_button_a' style='font-size:12px;padding-top:7px;' id='continue_shopping'>OK</a></div></div></div></div>"
			};
			getPosition(data);
			phone_input.value='';
		},
		error: function(){
			data.pWinContent = "<div class='p_topBar'><div class='popup-close'></div></div><div class='p_content'>Ошибка доступа!</div><div class='p_footer' style='padding-left:130px;'><div class='button_form2 size3'><div class='button_form2_2'><div class='button_form2_3'><a class='p_button_a' style='font-size:12px;padding-top:7px;' id='continue_shopping'>OK</a></div></div></div></div>";
			getPosition(data);
		}
	});

	
}

jQuery(document).ready(function(){
	initFancyBox();
});
