
	var ItemList = new Object();

	var start_top = 0;
	var start_left = 0;
	var move_flag = 0;

	var MAX_MARGIN_LEFT = 130;

	var cur_num = 0;

	var drag_flag = 0;

	var calc_room_w = new Array();
	var calc_room_h = new Array();
	var calc_room_corners = new Array();
	var calc_room_troub = new Array();
	var calc_room_name = new Array();
	var calc_room_type = new Array();
	var calc_room_firm = new Array();
	var calc_room_color = new Array();
	
	var calc_cur_room = 0;
	var calc_room_count = 1;
	
	calc_room_w[0] = 100;
	calc_room_h[0] = 60;
	calc_room_corners[0] = 4;
	calc_room_troub[0] = 0;
	calc_room_color[0] = 1;
	calc_room_type[0] = 1;
	calc_room_firm[0] = 1;
	calc_room_name[0] = "Комната 1";


function getElementTop(elemID)
	{
		var elem = document.getElementById(elemID);
		var top = 0;
			
		while(elem)
		{
			top+=elem.offsetTop;
			elem=elem.offsetParent;
		}
			
		return top;
	}

	function getElementLeft(elemID)
	{
		var elem = document.getElementById(elemID);
		var left = 0;
			
		while(elem)
		{
			left+=elem.offsetLeft;
			elem=elem.offsetParent;
		}
				
		return left;
	}


	function correct_calc_sizes()
	{
		var room_slider_left = (getElementLeft("calc_room")-8)+calc_room_w[calc_cur_room];
		var room_slider_top = (getElementTop("calc_room")-8)+calc_room_h[calc_cur_room];
		
		
		document.getElementById("calc_room_slider").style.left = room_slider_left + "px";
		document.getElementById("calc_room_slider").style.top = room_slider_top + "px";
	}

	function GetBlockLeft()
	{
		var slide = document.getElementById("calc_room_slider");
		var left = slide.style.left;	
		left = left.replace(/px/g, ""); 
		left = left - 0;  
		drag_flag = 1;
		return left;
	}

	function GetBlockTop()
	{
		var slide = document.getElementById("calc_room_slider");
		var left = slide.style.top;	
		left = left.replace(/px/g, ""); 
		left = left - 0;  
		drag_flag = 1;
		return left;
	}

function StartDrag (event, _this, _action, num)
{
	if(calc_room_corners[calc_cur_room]!=4) return;
	
	ItemList.This = _this;
	ItemList.Action = _action;

	var position = new Object();
	if (isMSIE)
	{
		position.x = window.event.clientX + document.documentElement.scrollLeft + document.body.scrollLeft;
		position.y = window.event.clientY + document.documentElement.scrollTop + document.body.scrollTop;
	}
	if (isMZFF)
	{
		position.x = event.clientX + window.scrollX;
		position.y = event.clientY + window.scrollY;
	}

	ItemList.cursorStartX = position.x;
	ItemList.cursorStartY = position.y;

	ItemList.StartLeft = parseInt (ItemList.This.style.left);
	ItemList.StartTop = parseInt (ItemList.This.style.top);

	if (isNaN (ItemList.StartLeft)) ItemList.StartLeft = 0;
	if (isNaN (ItemList.StartTop)) ItemList.StartTop = 0;
	
	
	start_top = GetBlockTop();
	start_left = GetBlockLeft();
	
	move_flag = 0;
	
	if (isMSIE)
	{
		document.attachEvent ("onmousemove", ProceedDrag);
		document.attachEvent ("onmouseup", StopDrag);
		window.event.cancelBubble = true;
		window.event.returnValue = false;
	}
	if (isMZFF)
	{
		document.addEventListener ("mousemove", ProceedDrag, true);
		document.addEventListener ("mouseup", StopDrag, true);
		event.preventDefault();
	}
}

function ProceedDrag (event)
{
	var position = new Object();

	if (isMSIE) {
		position.x = window.event.clientX + document.documentElement.scrollLeft + document.body.scrollLeft;
		position.y = window.event.clientY + document.documentElement.scrollTop + document.body.scrollTop;
	}
	if (isMZFF)
	{
		position.x = event.clientX + window.scrollX;
		position.y = event.clientY + window.scrollY;
	}	

	ItemList.cursorX = position.x;
	ItemList.cursorY = position.y;

	if((ItemList.cursorStartX-ItemList.cursorX)||(ItemList.cursorStartY-ItemList.cursorY))
	{
		var room_slider_left = getElementLeft("calc_room")-8;
		var room_slider_top = getElementTop("calc_room")-8;


		var left = start_left+ItemList.cursorX-ItemList.cursorStartX;
		var top = start_top+ItemList.cursorY-ItemList.cursorStartY;
		
		if((left - room_slider_left)<60) left = room_slider_left+60;
		if((left - room_slider_left)>300) left = room_slider_left+300;
		if((top - room_slider_top)<40) top = room_slider_top+40;
		if((top - room_slider_top)>200) top = room_slider_top+200;
		
		var slide = document.getElementById("calc_room_slider");
		slide.style.left=left+"px";
		slide.style.top=top+"px";
		
		var room4_padding_top = Math.floor((top - room_slider_top - 24)/2);
		
		var room_width = left - room_slider_left;
		var room_height = top - room_slider_top;
		
		calc_room_w[calc_cur_room] = room_width;
		calc_room_h[calc_cur_room] = room_height;
		
		document.getElementById("calc_width").value = Math.floor(room_width/2)/10;
		document.getElementById("calc_height").value = Math.floor(room_height/2)/10;
		
		var sq = Math.floor(10*room_width*room_height/400)/10;
		var per = Math.floor(20*(room_width/20 + room_height/20))/10;

		room_height -= room4_padding_top;

		document.getElementById("calc_room").style.width = room_width+"px";
		document.getElementById("calc_room").style.height = (room_height+room4_padding_top)+"px";
		document.getElementById("calc_room2").style.width = room_width+"px";
		document.getElementById("calc_room2").style.height = (room_height+room4_padding_top)+"px";
		document.getElementById("calc_room3").style.width = room_width+"px";
		document.getElementById("calc_room3").style.height = (room_height+room4_padding_top)+"px";
		document.getElementById("calc_room4").style.width = room_width+"px";
		document.getElementById("calc_room4").style.height = room_height+"px";
		document.getElementById("calc_room4").style.paddingTop = room4_padding_top+"px";
		document.getElementById("calc_room4").innerHTML = sq;
		
		document.getElementById("calc_sqr").value = sq;
		document.getElementById("calc_per").value = per;
		
		update_price();
		
		move_flag = 1;
	}

	if (isMSIE)
	{
		window.event.cancelBubble = true;
		window.event.returnValue = false;
	}
	if (isMZFF) event.preventDefault();
}

function StopDrag (event)
{	
	if (isMSIE)
	{
		document.detachEvent ("onmousemove", ProceedDrag);
		document.detachEvent ("onmouseup", StopDrag);
	}
	if (isMZFF)
	{
		document.removeEventListener ("mousemove", ProceedDrag, true);
		document.removeEventListener ("mouseup", StopDrag, true);
	}
	drag_flag = 0;
}

function PutBack (item)
{
	item.style.zIndex = 200;
//	correct_slides();
}
	
function calc_corner_inc()
{
	var c = document.getElementById("calc_corner").value;
	if(c==4)
	{
		$("#calc_corner_left").animate({opacity:1.0},100);
	}
	
	c++;
	if(c>=8)
	{
		c = 8;
		$("#calc_corner_right").animate({opacity:0.3},100);
		
	}
	
	if(c!=4)
	{
		//$("#calc_room_slider").animate({opacity:0.3},{ queue:false, duration:500 });
		//$("#calc_room").animate({opacity:0.3},{ queue:false, duration:500 });
	}
	else
	{
		//$("#calc_room_slider").animate({opacity:1.0},{ queue:false, duration:200 });
		//$("#calc_room").animate({opacity:1.0},{ queue:false, duration:200 });
	}
	
	calc_room_corners[calc_cur_room] =  c;
	document.getElementById("calc_corner").value = c;
	
	update_price();
}

function calc_corner_dec()
{
	var c = document.getElementById("calc_corner").value;
	if(c==8)
	{
		$("#calc_corner_right").animate({opacity:1.0},100);
	}
	
	c--;
	if(c<=4)
	{
		c = 4;
		$("#calc_corner_left").animate({opacity:0.3},100);
		
	}

	if(c!=4)
	{
		//$("#calc_room_slider").animate({opacity:0.3},{ queue:false, duration:500 });
		//$("#calc_room").animate({opacity:0.3},{ queue:false, duration:500 });
	}
	else
	{
		//$("#calc_room_slider").animate({opacity:1.0},{ queue:false, duration:200 });
		//$("#calc_room").animate({opacity:1.0},{ queue:false, duration:200 });
	}

	calc_room_corners[calc_cur_room] =  c;
	document.getElementById("calc_corner").value = c;
	
	update_price();
}

function calc_corners()
{
	var c = document.getElementById("calc_corner").value;
	
	if(c=="") return;
	
	if(c>=8)
	{
		c=8;
		$("#calc_corner_right").animate({opacity:0.3},100);
	}
	if(c<=4)
	{
		c = 4;
		$("#calc_corner_left").animate({opacity:0.3},100);
		
	}
	if(c>4)
	{
		$("#calc_corner_left").animate({opacity:1.0},100);
	}
	if(c<8)
	{
		$("#calc_corner_right").animate({opacity:1.0},100);
	}
	
	if(c!=4)
	{
		//$("#calc_room_slider").animate({opacity:0.3},{ queue:false, duration:500 });
		//$("#calc_room").animate({opacity:0.3},{ queue:false, duration:500 });
	}
	else
	{
		//$("#calc_room_slider").animate({opacity:1.0},{ queue:false, duration:200 });
		//$("#calc_room").animate({opacity:1.0},{ queue:false, duration:200 });
	}
	
	calc_room_corners[calc_cur_room] =  c;
	document.getElementById("calc_corner").value = c;

	update_price();
}

function calc_troub_inc()
{
	var c = document.getElementById("calc_troub").value;
	if(c==0)
	{
		$("#calc_troub_left").animate({opacity:1.0},100);
	}
	
	c++;
	if(c>=10)
	{
		c = 10;
		$("#calc_troub_right").animate({opacity:0.3},100);
		
	}

	calc_room_troub[calc_cur_room] =  c;
	document.getElementById("calc_troub").value = c;
	
	update_price();
}

function calc_troub_dec()
{
	var c = document.getElementById("calc_troub").value;
	if(c==10)
	{
		$("#calc_troub_right").animate({opacity:1.0},100);
	}
	
	c--;
	if(c<=0)
	{
		c = 0;
		$("#calc_troub_left").animate({opacity:0.3},100);
		
	}
	
	calc_room_troub[calc_cur_room] =  c;
	document.getElementById("calc_troub").value = c;
	
	update_price();
}

function calc_troub()
{
	var c = document.getElementById("calc_troub").value;
	
	if(c=="") return;
	
	if(c>=10)
	{
		c=8;
		$("#calc_troub_right").animate({opacity:0.3},100);
	}
	if(c<=0)
	{
		c = 0;
		$("#calc_troub_left").animate({opacity:0.3},100);
		
	}
	if(c>0)
	{
		$("#calc_troub_left").animate({opacity:1.0},100);
	}
	if(c<10)
	{
		$("#calc_troub_right").animate({opacity:1.0},100);
	}
	
	calc_room_troub[calc_cur_room] =  c;
	document.getElementById("calc_troub").value = c;

	update_price();
}


function calc_set_color(num)
{
	if(num==1)
	{
		$("#calc_white_pol").animate({opacity:1.0},400);
		$("#calc_color_pol").animate({opacity:0.3},400);
	}
	else
	{
		$("#calc_white_pol").animate({opacity:0.3},400);
		$("#calc_color_pol").animate({opacity:1.0},400);
	}
	
	calc_room_color[calc_cur_room] = num;
	
	update_price();
}

function get_summ_sq()
{
	var sq = 0;
	for(var i=0;i<calc_room_count;i++)
	{
		sq+= Math.floor(calc_room_w[i]*calc_room_h[i]/4)/100;
	}
	
	return sq;
}

function calculate_price(room)
{
	var sq = Math.floor(calc_room_w[room]*calc_room_h[room]/4)/100;
	var per = 2*Math.floor(calc_room_w[room]/2)/10+2*Math.floor(calc_room_h[room]/2)/10;
	var interval = 0;
	
	var sq_i = get_summ_sq()
	
	for(var i=0;i<7;i++)
	{
		if((intervals[i]<sq_i)&&(intervals[i+1]>=sq_i))
		{
			interval=i;
			break;
		}
	}
	
	document.getElementById("info").innerHTML = interval;
	
	var cost = 0;
	
	if(calc_room_firm[room]==1)
	{
		cost = prices_rus[interval] * sq;
	}
	else
	{
		if(calc_room_color[room]==1)
		{
			cost = prices_eng[interval] * sq;
		}
		else
		{
			cost = prices_eng2[interval] * sq;
		}
	}
	
	cost+=per*calc_per_price;
	
	cost+=(calc_room_corners[room]-4)*calc_cor_price;
	cost+=(calc_room_troub[room])*calc_tro_price;
	
	cost+=calc_lustr[calc_room_type[room]];
	
	cost+=calc_teh_room;
	
	return Math.floor(cost);
}

function update_price()
{
	var cost = 0;
	
	cost = calculate_price(calc_cur_room);
	
	document.getElementById("calc_price_value").innerHTML = cost+" руб.";
	
	cost = 0;
	
	for(var i=0;i<calc_room_count;i++)
	{
		var ind=i+1;
		if(document.getElementById("calc_tab_"+ind).style.display!='none') cost += calculate_price(i);
	}
	
	cost+=calc_serv;
	
	document.getElementById("calc_price_value_total").innerHTML = cost+" руб.";
}

function calc_set_type(type)
{
	calc_room_type[calc_cur_room]=type;
	update_price();
}

function calc_set_firm()
{
	calc_room_firm[calc_cur_room]=document.getElementById("calc_firm").value;
	update_price();
}

function calc_set_label()
{
	ind = calc_cur_room+1;
	document.getElementById("calc_tab_"+ind+"_label").innerHTML = document.getElementById("calc_room_name").value;
}

function calc_set_sq()
{
		var s = document.getElementById("calc_sqr").value;

		s = s.replace(/[a-zа-я]/g,"");
		s = s.replace(/[A-ZА-Я]/g,"");
		
		s = s.replace(/\,/g,".");

		if(s=="") return;
		if(s>150) s=150;
		
		document.getElementById("calc_sqr").value=s;
		
		var w = Math.sqrt(s);
		w = w*20;
	
		
		var room4_padding_top = Math.floor((w-24)/2);
		
		var room_width = w;
		var room_height = w;
		
		calc_room_w[calc_cur_room] = room_width;
		calc_room_h[calc_cur_room] = room_height;
		
		document.getElementById("calc_width").value = Math.floor(calc_room_w[calc_cur_room]/2)/10;
		document.getElementById("calc_height").value = Math.floor(calc_room_h[calc_cur_room]/2)/10;
		
		var sq = Math.floor(room_width*room_height/400);
		var per = Math.floor(20*(room_width/20 + room_height/20))/10;

		room_height -= room4_padding_top;

		document.getElementById("calc_room").style.width = room_width+"px";
		document.getElementById("calc_room").style.height = room_height+"px";
		document.getElementById("calc_room2").style.width = room_width+"px";
		document.getElementById("calc_room2").style.height = (room_height+room4_padding_top)+"px";
		document.getElementById("calc_room3").style.width = room_width+"px";
		document.getElementById("calc_room3").style.height = (room_height+room4_padding_top)+"px";
		document.getElementById("calc_room4").style.width = room_width+"px";
		document.getElementById("calc_room4").style.height = room_height+"px";
		document.getElementById("calc_room4").style.paddingTop = room4_padding_top+"px";
		document.getElementById("calc_room4").innerHTML = sq;
		
		document.getElementById("calc_per").value = per;
		
		correct_calc_sizes();
		update_price();
	
}

function calc_set_per()
{
		var p = document.getElementById("calc_per").value;
		var s = document.getElementById("calc_sqr").value;

		p = p.replace(/[a-zа-я]/g,"");
		s = s.replace(/[a-zа-я]/g,"");
		p = p.replace(/[A-ZА-Я]/g,"");
		s = s.replace(/[A-ZА-Я]/g,"");
		
		p = p.replace(/\,/g,".");
		s = s.replace(/\,/g,".");


		if(p=="") return;
		if(p>150) p=150;
		
		document.getElementById("calc_per").value=p;
		
		var d = p*p/4 - 4*s;
		
		if(d<0) return;
		
		var w = p/4 + Math.sqrt(d)/2;
		var h = p/2-w;
		
		var room4_padding_top = Math.floor((h*20-24)/2);
		
		room_width = Math.floor(w*20);
		room_height = Math.floor(h*20);
		
		calc_room_w[calc_cur_room] = Math.floor(w*20);
		calc_room_h[calc_cur_room] = Math.floor(h*20);
		
		document.getElementById("calc_width").value = Math.floor(calc_room_w[calc_cur_room]/2)/10;
		document.getElementById("calc_height").value = Math.floor(calc_room_h[calc_cur_room]/2)/10;
		
		var per = 2*Math.floor((w + h)*10)/10;

		room_height -= room4_padding_top;

		document.getElementById("calc_room").style.width = room_width+"px";
		document.getElementById("calc_room").style.height = room_height+"px";
		document.getElementById("calc_room2").style.width = room_width+"px";
		document.getElementById("calc_room2").style.height = (room_height+room4_padding_top)+"px";
		document.getElementById("calc_room3").style.width = room_width+"px";
		document.getElementById("calc_room3").style.height = (room_height+room4_padding_top)+"px";
		document.getElementById("calc_room4").style.width = room_width+"px";
		document.getElementById("calc_room4").style.height = room_height+"px";
		document.getElementById("calc_room4").style.paddingTop = room4_padding_top+"px";
		
		correct_calc_sizes();
		update_price();		
}

function calc_set_sq_param()
{
		var w = document.getElementById("calc_width").value;
		var h = document.getElementById("calc_height").value;
		
		if(w=="") return;
		if(h=="") return;
		if(w>15) w=15;
		if(h>15) h=15;
		
		w = w.replace(/[a-zа-я]/g,"");
		h = h.replace(/[a-zа-я]/g,"");
		w = w.replace(/[A-ZА-Я]/g,"");
		h = h.replace(/[A-ZА-Я]/g,"");
		
		w = w.replace(/\,/g,".");
		h = h.replace(/\,/g,".");
		
		var s = w*h;
		
		w = w*20;
		h = h*20;
		
		document.getElementById("calc_sqr").value=Math.floor(s*10)/10;
		
		var room4_padding_top = Math.floor((h-24)/2);
		
		var room_width = w;
		var room_height = h;
		
		calc_room_w[calc_cur_room] = room_width;
		calc_room_h[calc_cur_room] = room_height;
		
		var sq = Math.floor(room_width*room_height/400);
		var per = Math.floor(20*(room_width/20 + room_height/20))/10;

		room_height -= room4_padding_top;

		document.getElementById("calc_room").style.width = room_width+"px";
		document.getElementById("calc_room").style.height = (room_height+room4_padding_top)+"px";
		document.getElementById("calc_room2").style.width = room_width+"px";
		document.getElementById("calc_room2").style.height = (room_height+room4_padding_top)+"px";
		document.getElementById("calc_room3").style.width = room_width+"px";
		document.getElementById("calc_room3").style.height = (room_height+room4_padding_top)+"px";
		document.getElementById("calc_room4").style.width = room_width+"px";
		document.getElementById("calc_room4").style.height = room_height+"px";
		document.getElementById("calc_room4").style.paddingTop = room4_padding_top+"px";
		document.getElementById("calc_room4").innerHTML = Math.floor(s*10)/10;
		
		document.getElementById("calc_per").value = per;
		
		correct_calc_sizes();
		update_price();
	
}

function calc_add_room()
{
	if(calc_room_count==10) return;
	
	calc_room_count++;
	
	document.getElementById("calc_tab_"+calc_room_count).style.display = '';
	
	calc_room_w[calc_room_count-1] = 100;
	calc_room_h[calc_room_count-1] = 60;
	calc_room_corners[calc_room_count-1] = 4;
	calc_room_troub[calc_room_count-1] = 0;
	calc_room_color[calc_room_count-1] = 1;
	calc_room_type[calc_room_count-1] = 1;
	calc_room_firm[calc_room_count-1] = 1;
	calc_room_name[calc_room_count-1] = "Комната "+calc_room_count;
	
	update_price();
	
	calc_set_tab(calc_room_count);
}

function calc_set_tab(room)
{
	ind = calc_cur_room+1;
	document.getElementById("calc_tab_"+ind).className="calc_tab_normal";
	if(ind>1)
	{
		document.getElementById("calc_tab_"+ind+"_del").style.display = "none";
	}
	
	calc_cur_room = room-1;
	document.getElementById("calc_tab_"+room).className="calc_tab_sel";
	if(room>1)
	{
		document.getElementById("calc_tab_"+room+"_del").style.display = "";
	}
	
	document.getElementById("calc_width").value = Math.floor(calc_room_w[room-1]/2)/10;
	document.getElementById("calc_height").value = Math.floor(calc_room_h[room-1]/2)/10;
	document.getElementById("calc_corner").value = calc_room_corners[room-1];
	document.getElementById("calc_troub").value = calc_room_troub[room-1];
	
	if(calc_room_corners[room-1]!=4)
	{
		//$("#calc_room_slider").animate({opacity:0.3},{ queue:false, duration:500 });
		//$("#calc_room").animate({opacity:0.3},{ queue:false, duration:500 });
	}
	else
	{
		//$("#calc_room_slider").animate({opacity:1.0},{ queue:false, duration:200 });
		//$("#calc_room").animate({opacity:1.0},{ queue:false, duration:200 });
	}
	
	
	if(calc_room_color[room-1]==1)
	{
		$("#calc_white_pol").animate({opacity:1.0},400);
		$("#calc_color_pol").animate({opacity:0.3},400);
	}
	else
	{
		$("#calc_white_pol").animate({opacity:0.3},400);
		$("#calc_color_pol").animate({opacity:1.0},400);
	}
	
	if(calc_room_type[room-1]==1)
	{
		document.getElementById("calc_l_type_1").checked=true;
	}
	else
	{
		document.getElementById("calc_l_type_2").checked=true;
	}
	
	document.getElementById("calc_firm").value = calc_room_firm[room-1];
	document.getElementById("calc_room_name").value = calc_room_name[room-1];
	
	calc_set_sq_param();

}

function remove_room(num)
{
	document.getElementById("calc_tab_"+num).style.display = 'none';
	
	calc_set_tab(1);
}

