System=new Object();

System.Browser=new Object();
if (navigator.appName=="Microsoft Internet Explorer")
{
	System.Browser.isIE=true;
	System.Browser.CellStyle="block";
	System.Browser.RowStyle="block";
	System.Browser.TableStyle="block";
}
else
{
	HTMLElement.prototype.contains=function (oElement) {
		if (oElement==this) return true;
		if (oElement==null) return false;
		return this.contains(oElement.parentNode);		
	};
}

System.Browser.isButtonDown=false;
System.Browser.minY=0;
System.Browser.maxY=0;
System.Browser.maxContentY=0;
System.Browser.activeScrollBar="";
System.Browser.oldY=0;
System.Browser.oldScrollBarY=0;
System.Browser.oldContentY=0;
System.Variables = new Object();
System.Variables.systemPart ="";
System.Variables.frameBasicPrice = 0;

String.prototype.trim = function() {
	return this.replace(/^\s+|\s+$/g,"");
}

String.prototype.ltrim = function() {
	return this.replace(/^\s+/,"");
}

String.prototype.rtrim = function() {
	return this.replace(/\s+$/,"");
}


System.Tools=new Object();
System.Tools.positionX=function(Element)
{
	var CurentLeft=0;
	if (Element==null) return CurentLeft;
	if (Element.offsetParent)
	{
		while (Element.offsetParent)
		{
			CurentLeft+=Element.offsetLeft;
			Element=Element.offsetParent;
		}
	}
	else
		if (Element.x)
			CurentLeft+=Element.x;
	return CurentLeft;
};

System.Tools.positionY=function(Element)
{
	var CurentTop=0;
	if (Element==null) return CurentTop;
	if (Element.offsetParent)
	{
		while (Element.offsetParent)
		{
			CurentTop+=Element.offsetTop;
			Element=Element.offsetParent;
		}
	}
	else
		if (Element.y)
			CurentTop+=Element.y;
	return CurentTop;
};

System.TreeView=new Object();
System.TreeView.intervals=new Object();

System.TreeView.intervals.clearInterval=function(id)
{
	if (System.TreeView.intervals[id]!=null)
	{
		clearInterval(System.TreeView.intervals[id]);
		System.TreeView.intervals[id]=null;
	}
};

System.TreeView.onScroll=function(evt,Control)
{
	if (!evt) evt=window.event;
	var Source=(evt.srcElement?evt.srcElement:evt.target);
	var Container=Control.parentNode.parentNode;
	var mouseX=(evt.pageX?evt.pageX:(evt.clientX?evt.clientX+(document.documentElement.scrollLeft?document.documentElement.scrollLeft:document.body.scrollLeft):0));
	var mouseY=(evt.pageY?evt.pageY:(evt.clientY?evt.clientY+(document.documentElement.scrollTop?document.documentElement.scrollTop:document.body.scrollTop):0));
	var elementX=System.Tools.positionX(Container);
	var elementY=System.Tools.positionY(Container);
	if ((((Container.scrollHeight<Control.scrollHeight)&&(parseInt(Control.style.top.replace(/[a-zA-z]*/,""))==0))||
		(parseInt(Control.style.top.replace(/[a-zA-z]*/,""))!=0))&&
		(mouseX>=elementX)&&(mouseX<=elementX+Control.scrollWidth))
	{
		if ((mouseY>=elementY)&&(mouseY<elementY+20))
		{
			System.TreeView.intervals.clearInterval(Control.id);
			System.TreeView.intervals[Control.id]=setInterval("System.TreeView.onScrollEvent('"+Control.id+"',1)",10);
		}
		else
		{
			if ((mouseY>=elementY+Container.scrollHeight-20)&&(mouseY<elementY+Container.scrollHeight+20))
			{
				System.TreeView.intervals.clearInterval(Control.id);
				System.TreeView.intervals[Control.id]=setInterval("System.TreeView.onScrollEvent('"+Control.id+"',-1)",10);
			}
			else
			{
				System.TreeView.intervals.clearInterval(Control.id);
			}
		}
	}
	else
	{
		System.TreeView.intervals.clearInterval(Control.id);
	}
};

System.TreeView.onScrollEvent=function(Control,Direction)
{

	Control=document.getElementById(Control);
	var Container=Control.parentNode.parentNode;
	var elementTop=parseInt(Control.style.top.replace(/[a-zA-z]*/,""));
	if (Direction>0)
	{
		if (elementTop<0)
		{
			Control.style.top=elementTop+Direction;
		}
		else
		{
			System.TreeView.intervals.clearInterval(Control.id);
		}
	}
	else if (Direction<0)
	{
		if (elementTop>(Container.scrollHeight-Control.scrollHeight-(System.Browser.isIE==true?0:10)))
		{
			Control.style.top=elementTop+Direction;
		}
		else
		{
			System.TreeView.intervals.clearInterval(Control.id);
		}
	}

}

System.TreeView.onMouseOver=function(evt)
{
	if (!evt) evt=window.event;
	var Source=(evt.srcElement?evt.srcElement:evt.target);
	System.TreeView.SetCategoryRel(Source.parentNode.id);
	Source.style.textDecoration="underline";
};

System.TreeView.onMouseOut=function(evt)
{
	if (!evt) evt=window.event;
	var Source=(evt.srcElement?evt.srcElement:evt.target);
	Source.style.textDecoration="none";
	System.TreeView.RollUpCategory(evt)
};

//stary expand
/*
System.TreeView.onExpand2=function(evt,TreeViewNavigatorData)
{
	if (!evt) evt=window.event;
	var Source=(evt.srcElement?evt.srcElement:evt.target);
	var ChildNodes=Source.parentNode.getElementsByTagName("div");
	var CategoryId=Source.parentNode.id.replace("category_","");
	TreeViewNavigatorData=document.getElementById(TreeViewNavigatorData);
	if(ChildNodes[2] != null)
	{
		if (ChildNodes[2].style.display=="none")
		{
			ChildNodes[2].style.display="block";
			ChildNodes[0].className="TreeViewItemCollapse";
			TreeViewNavigatorData.value+=CategoryId+";";
		}
		else
		{
			ChildNodes[2].style.display="none";
			ChildNodes[0].className="TreeViewItemExpand";
			TreeViewNavigatorData.value=TreeViewNavigatorData.value.replace(CategoryId+";","");
		}
	}
	System.TreeView.onMouseOver(evt);
};
*/

System.TreeView.CategoryRel = "";
System.TreeView.SetCategoryRel = function(CatDivId)
{
	//sprawdzamy czy jest kategorią najwyższego rzędu
	if (document.getElementById(CatDivId).parentNode.id=="TreeView_ControlContainer")
	{
		System.TreeView.CategoryRel = "";
	}
	else
	{		
		if (document.getElementById(CatDivId).parentNode.className =="TreeViewItemsContainer")
		{
			System.TreeView.CategoryRel = System.TreeView.GetParents(CatDivId);
			System.TreeView.CategoryRel += System.TreeView.GetSiblings(CatDivId);
		}	
	}	
} 

System.TreeView.GetParents = function(CatDivId)
{
	ParentsList = "";
	CurrentCatID = CatDivId;
	while(true)
	{
		if (document.getElementById(CurrentCatID).parentNode.className =="TreeViewItemsContainer")
		{
			ParentsList += document.getElementById(CurrentCatID).parentNode.parentNode.id +";";
			CurrentCatID = document.getElementById(CurrentCatID).parentNode.parentNode.id;
		}
		else
		{
			return(ParentsList);
		}	
	}
}

System.TreeView.GetSiblings = function(CatDivId1)
{
	SiblingsList = "";
	var SibChildNodes = document.getElementById(CatDivId1).parentNode.getElementsByTagName("div");
	for (Index=0;Index<SibChildNodes.length; Index++)
	{
		if (SibChildNodes[Index].className == 'TreeViewItemContainer')
		{
			SiblingsList += SibChildNodes[Index].id +";";
		}
	}	
	return SiblingsList;
}


System.TreeView.onExpand=function(evt,TreeViewNavigatorData)
{
	if (!evt) evt=window.event;
	var Source=(evt.srcElement?evt.srcElement:evt.target);
	var ChildNodes=Source.parentNode.getElementsByTagName("div");
	var CategoryId=Source.parentNode.id.replace("category_","");
	var ChildCategories = new Array();

var CategoryId=Source.parentNode.id.replace("category_","");

if (ChildNodes[2].style.display=="none")
{
	TreeViewNavigatorData=document.getElementById(TreeViewNavigatorData);
	for (Index=0;Index<ChildNodes.length; Index++)
	{
		if(ChildNodes[Index].className == 'TreeViewItemContainer' )
		{
			ChildCategories.push(ChildNodes[Index].id);
		}
	}
	ChildCategories.reverse();
	if(ChildNodes[2] != null)
	{
		ChildNodes[2].style.display = 'block';
		ChildNodes[0].className="TreeViewItemCollapse";		
	}
	for (Index = 0; Index<ChildCategories.length;Index++)
	{
		System.TreeView.ShowCategory(ChildCategories[Index]);	
	} 
	var ChildNodes=Source.parentNode.getElementsByTagName("div");

}
else
{
 ChildNodes[2].style.display="none";
 ChildNodes[0].className="TreeViewItemExpand";
 
}
	System.TreeView.onMouseOver(evt);
};


System.TreeView.RollUpCategory = function(evt)
{	
	if (!evt) evt=window.event;
	var Source=(evt.srcElement?evt.srcElement:evt.target);	
	var CategoryId = Source.parentNode.id.replace("category_","");;
	if ( CategoryId !="")
	{
		System.TreeView.HideCategory("category_"+CategoryId);			
	}	
};

System.TreeView.HideCategory = function(divCat,IsRecursive)
{
	if (System.TreeView.CategoryRel.indexOf(divCat+";")>0)
	{
		return;
	}
	var CategoryDiv = document.getElementById(divCat);	
	var DivChildNodes = CategoryDiv.getElementsByTagName("div");
	var ChildCategories = new Array();
	var IsPrimLeaf = false;
	var IsLeafToHide = false;
	if (IsRecursive == null && DivChildNodes.length <3) 
		IsPrimLeaf = true;
	else if (IsRecursive != null && DivChildNodes.length <3)
		IsLeafToHide = true;
		
	for (Index=0;Index<DivChildNodes.length; Index++)
	{
		if(DivChildNodes[Index].className == 'TreeViewItemContainer' && DivChildNodes[Index].style.display !='none')
		{
			ChildCategories.push(DivChildNodes[Index].id);
		}
	}
	if (ChildCategories.length >0 && !IsPrimLeaf && !IsLeafToHide)
	{
		ChildCategories.reverse();
		for (Index = 0; Index<ChildCategories.length;Index++)
		{
			var expre = "System.TreeView.HideCategory('"+ChildCategories[Index]+"',true);";	
			setTimeout(expre,Index*800);
		} 
		var expre = "System.TreeView.HideCategory('"+divCat+"',true);";	
		setTimeout(expre,(ChildCategories.length-1)*800);
	}
	else
	{				
		if (IsPrimLeaf)
		{
			return;
		}
		else
		{
			if(IsLeafToHide)
			{
				var expre = "System.TreeView.HideLeave('"+divCat+"');"	;
					setTimeout(expre,50);
				
			}
			else
			{						
				var expre = "System.TreeView.HideRolledCategory('"+divCat+"');"	;
				setTimeout(expre,50);				
			}
		}
	}
	
};

System.TreeView.HideRolledCategory = function(CategoryId)
{
	
	//sprawdzamy czy jest kategorią najwyższego rzędu
	if (document.getElementById(CategoryId).parentNode.id=="TreeView_ControlContainer")
	{
		document.getElementById(CategoryId).childNodes[0].className = "TreeViewItemExpand";
	}
	else
	{
		document.getElementById(CategoryId).style.display ='none';
	}
};

System.TreeView.HideLeave = function(CategoryId)
{
	document.getElementById(CategoryId).style.display ='none';
};

System.TreeView.ShowCategory = function(CategoryId)
{
	var a=2;
	b=3;
	document.getElementById(CategoryId).style.display ='block';
};

System.PictureData=new Object();
System.PictureData.addToCart=function(evt,PictureId)
{
	if (!evt) evt=window.event;
	var Source=(evt.srcElement?evt.srcElement:evt.target);
	var Target=document.getElementById("CartItems");
	if (Target.value.indexOf(PicturesGrid["Picture_"+PictureId])==-1) Target.value+=PicturesGrid["Picture_"+PictureId];
	return false;
};


System.PictureData.frameConfigurator=function(evt,Parameters,PictureFrameConfigurator,AddToCartButton,CartItemData)
{	
	if (!evt) evt=window.event;
	var Source=(evt.srcElement?evt.srcElement:evt.target);
	if (CartItemData)
	{
		CartItemData=document.getElementById(CartItemData);
		
		var CurrentID=CartItemData.value.substr(0,CartItemData.value.indexOf(":"));
		var CurrentRealization=CartItemData.value.substr(CartItemData.value.indexOf(":")+1,CartItemData.value.lastIndexOf(":")-CartItemData.value.indexOf(":")-1);
		var CurrentSize=CartItemData.value.substr(CartItemData.value.lastIndexOf(":")+1,CartItemData.value.indexOf(";")-CartItemData.value.lastIndexOf(":")-1);
		var CurrentNumber=CartItemData.value.substr(CartItemData.value.indexOf(";")+1,CartItemData.value.lastIndexOf(";")-CartItemData.value.indexOf(";")-1);
		var CurrentPrice=CartItemData.value.substr(CartItemData.value.lastIndexOf(";")+1).replace(",",".");
		var FrameIdeParamIndex= Parameters.indexOf("frameIde");
		var FrameIde =""
		if (FrameIdeParamIndex >0)
		{
			FrameIde =  Parameters.substring(FrameIdeParamIndex+9);
		}
		Parameters=Parameters.replace(/&realization=.+$/,"&realization="+escape(CartItemData.realization));
		Parameters=Parameters.replace(/&imagePrice=[\d\.]+&currency/,"&imagePrice="+CurrentPrice+"&currency");
		Parameters=Parameters.replace(/&imageSize=\d+x\d+&imageNumber/,"&imageSize="+CurrentSize+"&imageNumber");
		Parameters+="&part="+CartItemData.partsSizes.trim().replace(/ /g,"&part=");
		if (FrameIde!="") Parameters+="&frameIde="+FrameIde;
	}
	if (Parameters.indexOf("frameIde")<0 && Parameters.indexOf("frameIndex")<0) 
		Parameters+="&frameIndex=0";
	var ShadowFrameConfigurator=document.getElementById("ShadowFrameConfigurator");
	ShadowFrameConfigurator.src="./../ArtGeist/frameConfigurator/default.aspx"+Parameters;
	ShadowFrameConfigurator.style.display="block";
	document.forms[0].style.display="none";
	System.PictureData.currentFrameConfigurator=new String(PictureFrameConfigurator);
	System.PictureData.currentAddToCartButton = new String(AddToCartButton);
	if (System.PictureData.currentAddToCartButton != "")
	{
		System.Variables.systemPart ="Catalogue";
	}
	else
	{
		System.Variables.systemPart ="CatalogueDetails";
	}
};

function OnShadowFrameSubmit(FrameAccesoryId,FrameId,MatteAccesoryId,MatteData,GlassAccesoryId)
{
	var ShadowFrameConfigurator=document.getElementById("ShadowFrameConfigurator");
	document.forms[0].style.display="";
	ShadowFrameConfigurator.style.display="none";
	ShadowFrameConfigurator.src="";
	var FrameConfiguration="<accesories><accesory id=\""+FrameAccesoryId+"\" value=\"true\">"+
		"<subitem id=\""+FrameId+"\" value=\"1\" selected=\"true\" /></accesory>";
	if (GlassAccesoryId!=null)
		FrameConfiguration+="<accesory id=\""+GlassAccesoryId+"\" value=\"true\" />";
	if (MatteData!=null)
	{
		FrameConfiguration+="<accesory id=\""+MatteAccesoryId+"\" value=\"true\">";
		for (var Matte=0; Matte<MatteData.length; Matte++)
			FrameConfiguration+="<subitem id=\""+MatteData[Matte].id+"\" value=\""+MatteData[Matte].size+"\" selected=\"true\" />"
		FrameConfiguration+="</accesory>";
	}
	FrameConfiguration+="</accesories>";	
	document.getElementById(System.PictureData.currentFrameConfigurator).value=FrameConfiguration;
	if (System.PictureData.currentAddToCartButton != "")
	{
		__doPostBack(System.PictureData.currentAddToCartButton,'');
	}
	System.PictureData.currentFrameConfigurator=null;
	System.PictureData.currentAddToCartButton  =null;
};

function AddFramePrice(framePrice)
{
	System.Variables.frameBasicPrice = framePrice;	
	if (System.Variables.systemPart == "CatalogueDetails" && System.Variables.otherSizesClientId!= 'undefined' & System.Variables.otherSizesClientId!='' && System.Variables.otherSizesClientId!= null)
	{
		System.Utilities.onSizeClick(document.getElementById(System.Variables.otherSizesClientId),document.getElementById(System.Variables.cartItemDataId) ,System.Variables.currentDimension )
	}
}
System.Utilities=new Object();
System.Utilities.findPositionX=function(Element)
{
	var CurentLeft=0;
	if (Element==null) return CurentLeft;
	if (Element.offsetParent)
	{
		while (Element.offsetParent)
		{
			CurentLeft+=Element.offsetLeft;
			Element=Element.offsetParent;
		}
	}
	else
		if (Element.x)
			CurentLeft+=Element.x;
	return CurentLeft;
};

System.Utilities.findPositionY=function(Element)
{
	var CurentTop=0;
	if (Element==null) return CurentTop;
	if (Element.offsetParent)
	{
		while (Element.offsetParent)
		{
			CurentTop+=Element.offsetTop;
			Element=Element.offsetParent;
		}
	}
	else
		if (Element.y)
			CurentTop+=Element.y;
	return CurentTop;
};

System.Utilities.onKeyPress=function(evt)
{
	if (!evt) evt=window.event;
	var KeyCode=(evt.keyCode?evt.keyCode:evt.charCode);
	var Target=(evt.srcElement?evt.srcElement:evt.target);
	if ((KeyCode==13)&&(Target.id!=null)&&(Target.id.indexOf("Search")!=-1))
	{
		__doPostBack(Target.id+"Submit","");
		return false;
	}
	return !(KeyCode==13);
}

System.Utilities.onRealizationClick=function(OtherSizes,Realizations,CartItemData,RealizationID)
{
	if (CartItemData.value.indexOf(":"+RealizationID+":")!=-1) return;
	var Realizations=Realizations.getElementsByTagName("table");
	var Prices=Realizations[0].parentNode.id.substr(0,Realizations[0].parentNode.id.lastIndexOf("_"))+"_PicturePrice";
	var CurrentRealizationPrice="0";
	var CurrentRealizationIndex=-1;
	var CurrentRealizationCount=0;
	for (var Index=0; Index<Realizations.length; Index++)
	{
		if ((Realizations[Index].id!=null)&&(Realizations[Index].id.lastIndexOf("_HelpItemContainer")!=-1))
		{
			CurrentRealizationCount++;
			var Realization=Realizations[Index].rows[1].cells[0].getElementsByTagName("img")[0];
			Realization.src=(Realization.src.lastIndexOf("off")!=-1?Realization.src.replace("off","on"):Realization.src.replace("on","off"));
			if (Realization.src.indexOf("on")!=-1)
			{
				CurrentRealizationIndex=Math.round(Index/4);
				CartItemData.realization=Realizations[Index].rows[1].cells[1].innerHTML;
			}
		}
	}
	var Sizes=OtherSizes.getElementsByTagName("table");
	for (var Index=1; Index<Sizes.length; Index++)
	{
		for (var Cell=2; Cell<Sizes[Index].rows[0].cells.length; Cell++)
		{
			if (Sizes[Index].rows[0].cells[0].getElementsByTagName("img")[0].src.indexOf("on")!=-1)
				CurrentRealizationPrice=Sizes[Index].rows[0].cells[CurrentRealizationCount+CurrentRealizationIndex].innerHTML;
			Sizes[Index].rows[0].cells[Cell].style.display=(Sizes[Index].rows[0].cells[Cell].id.lastIndexOf("_"+RealizationID)!=-1?"block":"none");///System.Browser.CellStyle,none
		}
	}
	var Price="";
	while (document.getElementById(Prices+Price.toString())!=null)
	{
		document.getElementById(Prices+Price.toString()).innerHTML=
			document.getElementById(Prices+Price.toString()).innerHTML.replace(/\d+.+/,CurrentRealizationPrice.replace("[","").replace("]",""));
		Price=(Price==""?2:Price+1);
	}
	CartItemData.value=CartItemData.value.replace(/:\d:/,":"+RealizationID+":");
	CartItemData.value=CartItemData.value.substr(0,CartItemData.value.lastIndexOf(";")+1)+Price;
};

System.Utilities.onSizeClick=function(Size,CartItemData,Dimensions)
{	
	System.Variables.currentDimension = Dimensions;
	OtherSizes=Size.parentNode.parentNode.parentNode.parentNode;
	var Sizes=OtherSizes.getElementsByTagName("table");
	var Realizations=OtherSizes.parentNode.parentNode.previousSibling.previousSibling.cells[0].getElementsByTagName("table");
	var Prices=Realizations[0].parentNode.id.substr(0,Realizations[0].parentNode.id.lastIndexOf("_"))+"_PicturePrice";
	var CurrentRealizationPrice="0";	
	var OldDimension="";
	for (var Index=1; Index<Sizes.length; Index++)
	{
		var SizeSelection=Sizes[Index].getElementsByTagName("img")[0];
		var SizeDimensions=Sizes[Index].rows[0].cells[1].getAttribute("value");
		if (SizeDimensions==Dimensions)
		{
			SizeSelection.src=SizeSelection.src.replace("off","on");
			for (var Cell=2; Cell<Sizes[Index].rows[0].cells.length; Cell++)
				if (Sizes[Index].rows[0].cells[Cell].style.display!="none")
				{
					CurrentRealizationPrice=Sizes[Index].rows[0].cells[Cell].innerHTML;
					break;
				}
		}
		else
		{
			if (SizeSelection.src.indexOf("on")!=-1)
			{
				SizeSelection.src=SizeSelection.src.replace("on","off");
				for (var Cell=2; Cell<Sizes[Index].rows[0].cells.length; Cell++)
					if (Sizes[Index].rows[0].cells[Cell].style.display!="none")
					{
						OldDimension=Sizes[Index].rows[0].cells[1].innerHTML;
						break;
					}
			}
		}
	}
	var CurrentPrice =System.Utilities.calculatePrice(CurrentRealizationPrice.replace("[","").replace("]",""),Dimensions,System.Variables.frameBasicPrice);
	var Price="";
	while (document.getElementById(Prices+Price.toString())!=null)
	{
		document.getElementById(Prices+Price.toString()).innerHTML=
			document.getElementById(Prices+Price.toString()).innerHTML.replace(/\d+.+/,CurrentPrice);
		Price=(Price==""?2:Price+1);
	}
	// if size wasn't changed return
	if (CartItemData.value.indexOf(":"+Dimensions)!=-1) return;
	var PartsSizesList=OtherSizes.rows[OtherSizes.rows.length-1].cells[1].getElementsByTagName("span")[0].innerHTML.split(" ");
	var PartsSizes=OtherSizes.rows[OtherSizes.rows.length-1].cells[1].getElementsByTagName("span")[0];
	PartsSizes.innerHTML="";
	CartItemData.partsSizes="";
	var Multiplier=(parseFloat(Dimensions.split('x')[0])/parseFloat(OldDimension.split('x')[0]));
	//nowe 20090603
	//var MultiplierX=(parseFloat(Dimensions.split('x')[0])/parseFloat(OldDimension.split('x')[0]));
	//var MultiplierY=(parseFloat(Dimensions.split('x')[1])/parseFloat(OldDimension.split('x')[1]));
	//nowe end 20090603
	for (var Size=0; (Size<PartsSizesList.length)&&(PartsSizesList[Size]!=""); Size++)
	{
	//nowe 20090603
		//PartsSizes.innerHTML+=Math.round(parseFloat(PartsSizesList[Size].split('x')[1])*Multiplier).toString()+"x"+
		//Math.round(parseFloat(PartsSizesList[Size].split('x')[0])*Multiplier).toString()+" ";
		PartsSizes.innerHTML+=Math.round(parseFloat(PartsSizesList[Size].split('x')[0])*Multiplier).toString()+"x"+
		Math.round(parseFloat(PartsSizesList[Size].split('x')[1])*Multiplier).toString()+" ";
	//nowe end 20090603
		PartsSizesList[Size]= PartsSizes.innerHTML.trim();
		CartItemData.partsSizes+=PartsSizesList[Size]+" ";
	
	}
	CartItemData.partsSizes=CartItemData.partsSizes.substr(0,CartItemData.partsSizes.length-1);
	CartItemData.value=CartItemData.value.replace(/:\d+x\d+/,":"+Dimensions);
	CartItemData.value=CartItemData.value.substr(0,CartItemData.value.lastIndexOf(";")+1)+Price;
};

System.Utilities.calculatePrice = function(RealizationPrice,Dimension,FrameMPrice)
{
	var dimensionArray = Dimension.split("x");
	FramePrice = 2*(parseFloat(dimensionArray[0])+parseFloat(dimensionArray[1]))/100 * parseFloat(FrameMPrice);
	var priceStringArray = RealizationPrice.trim().split(" ");
	var FinalPrice = parseFloat(priceStringArray[0]) + FramePrice
	return String(FinalPrice) +" "+ priceStringArray[1];
}

System.Utilities.onHoverDataShow=function(evt)
{
	if (evt==null) evt=window.event;
	var Source=(evt.srcElement?evt.srcElement:evt.target);
	document.getElementById('HoverData').style.left=System.Utilities.findPositionX(Source);
	document.getElementById('HoverData').style.top=System.Utilities.findPositionY(Source)-40;
	document.getElementById('HoverData').rows[1].cells[1].style.backgroundColor="#000000";
	document.getElementById('HoverMessage').innerHTML=
		Source.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.rows[1].cells[0].innerHTML;
	document.getElementById('HoverData').style.display="block";
};

System.Utilities.onHoverDataHide=function(evt)
{
	if (evt==null) evt=window.event;
	var Target=(evt.toElement?evt.toElement:evt.relatedTarget);
	if (Target==null) return;
	if ((Target==document.getElementById('HoverData'))||
		(document.getElementById('HoverData').contains(Target))) return;
	else
		document.getElementById('HoverData').style.display='none';
};

System.Utilities.onPicturePreview=function(evt,ImagePath,ImageId)
{
	if (evt==null) evt=window.event;
	var Source=(evt.srcElement?evt.srcElement:evt.target);
	document.getElementById('HoverMessage').innerHTML="<a href=\"javascript:System.Utilities.onPictureClick('"+ImageId+"')\"><img src=\""+ImagePath+"\"/></a>";
	document.getElementById('HoverData').style.left=System.Utilities.findPositionX(document.getElementById("SearchWord"));
	document.getElementById('HoverData').style.top=System.Utilities.findPositionY(Source)+40;
	document.getElementById('HoverData').style.display="block";
	document.getElementById('HoverData').rows[1].cells[1].style.backgroundColor="#FFFFFF";
};

System.Utilities.onPictureHide=function(evt)
{
	if (evt==null) evt=window.event;
	var Target=(evt.toElement?evt.toElement:evt.relatedTarget);
	if (Target==null) return;
	if ((Target==document.getElementById('HoverData'))||
		(document.getElementById('HoverData').contains(Target))) return;
	else
		document.getElementById('HoverData').style.display='none';
};

System.Utilities.onMetricsClick=function(evt,Multiplier)
{
	var Target=(evt.srcElement==null?evt.target:evt.srcElement);
	var OtherSizes=Target.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode;
	for (var Row=1; Row<OtherSizes.rows.length-2; Row++)
	{
		for (var Cell=0; Cell<OtherSizes.rows[Row].cells.length; Cell++)
		{
			var SizeItem=OtherSizes.rows[Row].cells[Cell].getElementsByTagName("table");
			if (SizeItem.length>0)
			{
				var Size=SizeItem[0].rows[0].cells[1].getAttribute("value");
				var Width=parseFloat(Size.substr(0,Size.indexOf("x")));
				var Height=parseFloat(Size.substr(Size.indexOf("x")+1));
				SizeItem[0].rows[0].cells[1].innerHTML=Math.round(Width*Multiplier)+"x"+Math.round(Height*Multiplier);
			}
		}
	}
	var PartsSizesList=OtherSizes.rows[OtherSizes.rows.length-1].cells[1].getElementsByTagName("span")[1].innerHTML.split(" ");
	var PartsSizes=OtherSizes.rows[OtherSizes.rows.length-1].cells[1].getElementsByTagName("span")[0];
	PartsSizes.innerHTML="";
	for (var Size=0; (Size<PartsSizesList.length)&&(PartsSizesList[Size]!=""); Size++)
	{
		PartsSizes.innerHTML+=Math.round(parseFloat(PartsSizesList[Size].split('x')[1])*Multiplier).toString()+"x"+
			Math.round(parseFloat(PartsSizesList[Size].split('x')[0])*Multiplier).toString()+" ";
	}
};

System.Utilities.onCurrencyClick=function(evt,Multiplier)
{
	var Target=(evt.srcElement==null?evt.target:evt.srcElement);
	var OtherSizes=Target.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode;
	var Realizations=OtherSizes.parentNode.parentNode.previousSibling.previousSibling.cells[0].getElementsByTagName("table");
	var Prices=OtherSizes.id.substr(0,OtherSizes.id.lastIndexOf("_"))+"_PicturePrice";
	var CurrentRealizationPrice="0";
	for (var Index=0; Index<Realizations.length; Index++)
	{
		if ((Realizations[Index].id!=null)&&(Realizations[Index].id.lastIndexOf("HelpItemContainer")!=-1))
		{
			Realizations[Index].rows[2].cells[1].innerHTML=Math.round(parseFloat(Realizations[Index].rows[2].cells[1].getAttribute("value"))*Multiplier)+" "+Target.innerHTML;
			if (Realizations[Index].rows[1].cells[0].getElementsByTagName("img")[0].src.indexOf("on")!=-1)
			{
				var Price="";
				while (document.getElementById(Prices+Price.toString())!=null)
				{
					document.getElementById(Prices+Price.toString()).innerHTML=
						document.getElementById(Prices+Price.toString()).innerHTML.replace(/\d+.+/,Realizations[Index].rows[2].cells[1].innerHTML);
					Price=(Price==""?2:Price+1);
				}
			}
			Realizations[Index].rows[2].cells[1].innerHTML="["+Realizations[Index].rows[2].cells[1].innerHTML+"]";
		}
	}
	for (var Row=1; Row<OtherSizes.rows.length-1; Row++)
	{
		for (var Cell=0; Cell<OtherSizes.rows[Row].cells.length; Cell++)
		{
			var SizeItem=OtherSizes.rows[Row].cells[Cell].getElementsByTagName("table");
			if (SizeItem.length>0)
			{
				for (var Item=2; Item<SizeItem[0].rows[0].cells.length; Item++)
				{
					SizeItem[0].rows[0].cells[Item].innerHTML="["+Math.round(parseFloat(SizeItem[0].rows[0].cells[Item].getAttribute("value"))*Multiplier)+" "+Target.innerHTML+"]";
				}
			}
		}
	}
};

System.Utilities.onPictureClick=function(Number)
{
	document.getElementById("SearchNumber").value=Number;
	__doPostBack("SearchNumberSubmit","");
};

System.List=new Object();
System.List.create=function(List,Path)
{
	var Target=document.getElementById(List).rows[1].cells[1];
	Target.setAttribute("value","0");
	for (var Index=0; (Index<3)&&(Index<CategoryPictures.length); Index++)
	{
		var Container=document.createElement("table");
		Container.insertRow(0);
		Container.rows[0].insertCell(0);
		Container.style.width="172px";
		Container.style.height="148px";
		Container.border="0px";
		Container.cellSpacing=0;
		Container.style.backgroundColor="#FFFFFF";
		if (System.Browser.isIE==true)
			Container.style.styleFloat="left";
		else
			Container.style.cssFloat="left";
		Container.style.marginRight="1px";
		Container.style.marginLeft="1px";
		if (System.Browser.isIE==true) Container.style.tableLayout="fixed";
		Container.rows[0].cells[0].style.textAlign="center";
		Container.rows[0].cells[0].style.verticalAlign="middle";
		Container.rows[0].cells[0].style.border="2px solid #404040";
		var Link=document.createElement("a");
		Link.href="javascript:System.List.onClick('"+List+"',"+Index+")";
		var Image=document.createElement("img");
		Image.src="http://"+Path+CategoryPictures[Index].id+".jpg"
		Image.border=0;
		Image.setAttribute("value",CategoryPictures[Index].number);
		Link.appendChild(Image);
		Container.rows[0].cells[0].appendChild(Link);
		Target.appendChild(Container);
	}
};

System.List.onClick=function(List,Index)
{
	var Target=document.getElementById(List).rows[1].cells[1];
	var Images=Target.getElementsByTagName("table");
	document.getElementById("SearchNumber").value=Images[Index].getElementsByTagName("img")[0].getAttribute("value");
	__doPostBack("SearchNumberSubmit","");
};

System.List.browse=function(List,Direction)
{
	var Target=document.getElementById(List).rows[1].cells[1];
	if (((Target.getAttribute("value")=="0")&&(Direction>0))||((Target.getAttribute("value")==(CategoryPictures.length-3).toString())&&(Direction<0))) return;
	var Images=Target.getElementsByTagName("table");
	var Value=parseInt(Target.getAttribute("value"));
	for (var Index=0; Index<Images.length; Index++)
	{
		var OldImage=Images[Index].getElementsByTagName("img")[0];
		var NewImage=document.createElement("img");
		NewImage.src=OldImage.src.replace(/\/\d+\.jpg/,"/"+CategoryPictures[Value-Direction+Index].id+".jpg");
		NewImage.border=0;
		NewImage.setAttribute("value",CategoryPictures[Value-Direction+Index].number);
		var Parent=OldImage.parentNode;
		Parent.replaceChild(NewImage,OldImage);
	}
	Target.setAttribute("value",(Value-Direction).toString());
};

System.DropDownList=new Object();
System.DropDownList.onDropDownOver=function(evt,List)
{
	document.getElementById(List+'ItemList').style.display='block';
	if (System.Browser.isIE==true) evt=null;
	else
	{
		evt=document.createEvent('MouseEvents');
		evt.initEvent('mouseover',false,false);
	}
	document.getElementById(List+'ListContainer').onmouseout=function (){System.DropDownList.onDropDownOut(evt,List);};
	document.getElementById(List+'SelectedItem').onmouseover=null;
}

System.DropDownList.onDropDownOut=function(evt,List)
{
	if ((evt==null) && (System.Browser.isIE==true)) evt=window.event;
	Target=(evt.toElement==null?evt.relatedTarget:evt.toElement);
	if (Target==undefined) return;
	if ((!System.Browser.isIE) && (Target.id==List+'ListContainer')) return;
	if (document.getElementById(List+'ListContainer').contains(Target)==true) return;
	if ((Target.id) && (Target.id!=null) && (Target.id!="") && (Target.id.indexOf("Cover")!=-1)) return;
	document.getElementById(List+'ItemList').style.display='none';
	document.getElementById(List+'ListContainer').onmouseout=null;
	document.getElementById(List+'SelectedItem').onmouseover=function (){System.DropDownList.onDropDownOver(evt,List);};
}

System.DropDownList.onOptionClick=function(evt,List,Value,Option)
{
	var FinaliseEvent=true;
	if (!evt) evt=window.event;
	var Target=(evt.srcElement==null?evt.target:evt.srcElement);
	document.getElementById(List+'SelectedItem').innerHTML=
		(evt.srcElement==null?evt.target.innerHTML:evt.srcElement.innerHTML);
	document.getElementById(List+'ListContainer').getElementsByTagName("input")[0].value=Value;
	if (Option!=null)
	{
		Option(evt);
	}
	if (FinaliseEvent==true)
	{
		document.getElementById(List+'ItemList').style.display="none";
		document.getElementById(List+'ListContainer').onmouseout=null;
		document.getElementById(List+'SelectedItem').onmouseover=function (){System.DropDownList.onDropDownOver(evt,List);};
	}
}

System.Help=new Object();
System.Help.show=function show(ID)
{
	document.getElementById(ID+'_HelpListScrollBar').style.top=0;
	document.getElementById(ID+'_HelpList').style.top=0;
	document.getElementById(ID+'_HelpPage').style.left=10;
	if(System.Browser.isIE==true)
		document.getElementById(ID+'_HelpPage').style.top=-180;
	else
	{
		document.getElementById(ID+'_HelpPage').style.top=450;
		document.getElementById(ID+'_HelpPage').style.left=(screen.width)/2-260;
		document.getElementById(ID+'_HelpPage').style.padding=0;
	}
	document.getElementById(ID+'_HelpPage').style.backgroundImage="url(images/tlo_pomoc.gif)";
	document.getElementById(ID+'_HelpPage').style.display="block";
	if (document.getElementById(ID+'_HelpList').scrollHeight>206)
		document.getElementById(ID+'_HelpScrollGroup').style.visibility="visible";
	else
		document.getElementById(ID+'_HelpScrollGroup').style.visibility="hidden";
	var ImageList=document.getElementById(ID+'_HelpImages').getElementsByTagName("img");
	if (ImageList.length>0)
	{
		for (var Index=0; Index<ImageList.length; Index++)
			ImageList[Index].style.display=(Index==0?"block":"none");
		document.getElementById(ID+'_ImageHelpNext').style.visibility=(ImageList.length>1?"visible":"hidden");
		document.getElementById(ID+'_ImageHelpPrev').style.visibility="hidden";
	}
}

System.Help.browseImage=function(Target,Direction)
{
	ID=Target.id.substr(0,Target.id.lastIndexOf("_"));
	var ImageList=document.getElementById(ID+'_HelpImages').getElementsByTagName("img");
	var CurrentItem=-1;
	for (var Index=0; Index<ImageList.length; Index++)
	{
		if (ImageList[Index].style.display=="block")
		{
			ImageList[Index].style.display="none";
			CurrentItem=Index;
			break;
		}
	}
	CurrentItem+=Direction;
	ImageList[CurrentItem].style.display="block";
	document.getElementById(ID+'_ImageHelpNext').style.visibility=(CurrentItem==ImageList.length-1?"hidden":"visible");
	document.getElementById(ID+'_ImageHelpPrev').style.visibility=(CurrentItem==0?"hidden":"visible");
	document.getElementById(ID+'_ImageHelpCount').innerHTML=document.getElementById(ID+'_ImageHelpCount').innerHTML.replace((CurrentItem-Direction+1)+"/",(CurrentItem+1)+"/");
}

System.Help.close=function close(ID)
{
	document.getElementById(ID+'_HelpPage').style.display="none";
}

System.Help.onScrollBarDown=function(evt,MinYValue,MaxYValue,MaxContentYValue)
{
	if (!evt) evt=window.event;
	Target=(evt.srcElement?evt.srcElement:evt.target);
	ID=Target.id.substr(0,Target.id.lastIndexOf("_"));
	System.Browser.isButtonDown=true;
	System.Browser.minY=MinYValue;
	System.Browser.maxY=MaxYValue;
	System.Browser.maxContentY=MaxContentYValue;
	System.Browser.activeScrollBar=ID;
	System.Browser.oldY=evt.screenY;
	System.Browser.oldScrollBarY=parseInt(document.getElementById(ID+"_HelpListScrollBar").style.top);
	System.Browser.oldContentY=parseInt(document.getElementById(ID+"_HelpList").style.top);
	document.body.onmousemove=System.Help.onScrollBarMove;
	document.body.onmouseup=System.Help.onScrollBarUp;
}

System.Help.onScrollBarUp=function(evt)
{
	if (System.Browser.isButtonDown==true)
	{
		System.Browser.isButtonDown=false;
		System.Browser.activeScrollBar="";
	}
	document.body.onmousemove=null;
	document.body.onmouseup=null;
}

System.Help.onScrollBarMove=function(evt)
{
	if (evt==null) evt=window.event;
	Target=(evt.srcElement?evt.srcElement:evt.target);
	if (window.getSelection)
		window.getSelection().clear;
	else
	if (document.getSelection)
		document.getSelection.clear();
	else
		document.selection.clear();
	if (System.Browser.isButtonDown==true)
	{
		var NewScrollBarY=0;
		NewScrollBarY=(evt.screenY-System.Browser.oldY)-2+System.Browser.oldScrollBarY;
		if (NewScrollBarY<System.Browser.minY) NewScrollBarY=System.Browser.minY;
		if (NewScrollBarY>System.Browser.maxY) NewScrollBarY=System.Browser.maxY;
		document.getElementById(System.Browser.activeScrollBar+"_HelpListScrollBar").style.top=NewScrollBarY;
		var NewContentY=0;
		NewContentY=-(document.getElementById(System.Browser.activeScrollBar+"_HelpList").scrollHeight-System.Browser.maxContentY)*((NewScrollBarY-System.Browser.minY)/(System.Browser.maxY-System.Browser.minY));
		document.getElementById(System.Browser.activeScrollBar+"_HelpList").style.top=NewContentY;
	}
}

System.WhyUs=new Object();
System.WhyUs.id=new String("");
System.WhyUs.onSwapImages=function(evt,id)
{
	if (!evt) evt=window.event;
	var Source=(evt.srcElement?evt.srcElement:evt.target);
	while ((Source.nodeName.toLowerCase()!="a")&&(Source.parentNode!=null))
		Source=Source.parentNode;
	var Source1=Source.parentNode;
	var SourceFrom=Source1.innerHTML;
	var Source2=Source.parentNode.parentNode;
	var SourceTo=Source2.cells[0].innerHTML;
	Source1.innerHTML=SourceTo;
	Source2.cells[0].innerHTML=SourceFrom;
	if (System.WhyUs.id!="")
	{
		document.getElementById(System.WhyUs.id).style.display="none";
	}
	System.WhyUs.id=id;
	document.getElementById(id).style.display="block";
	return false;
};

System.WhyUs.imgNo=new Number(1);
System.WhyUs.onNextImg=function(id,Direction,Counter)
{
	if (((Direction==1)&&(System.WhyUs.imgNo<21))||((Direction==-1)&&(System.WhyUs.imgNo>1)))
	{
		System.WhyUs.imgNo+=Direction;
		document.getElementById(id).src="images/CreationProcess/"+System.WhyUs.imgNo+".jpg";
		document.getElementById(Counter).innerHTML=System.WhyUs.imgNo+"/21";
	}
};

System.Banners=new Object();
System.Banners.swap=function(evt)
{
	if (!evt) evt=window.event;
	var Source=(evt.srcElement?evt.srcElement:evt.target);
	if (Source.src.lastIndexOf("_1")!=-1)
		Source.src=Source.src.replace("_1","_2");
	else
		Source.src=Source.src.replace("_2","_1");
};

function cancel()
{
	var ShadowFrameConfigurator=document.getElementById("ShadowFrameConfigurator");
	document.getElementById("MainForm").style.display="";	
	ShadowFrameConfigurator.style.display="none";
	ShadowFrameConfigurator.src="";
}
