try
{
	document.execCommand("BackgroundImageCache", false ,true);
}
catch(e)
{
}

var current_active_gallery_picture = new Array();
var current_active_product_picture = new Array();
var scrolltimer = null;
var func_click = 0;
var func_click2 = 0;
var OpacityName = null;
var ShowThumbnails = true;
var navigateBack = false;
var leftSeconds = false;

var tmpArrButtonsName = false;
var tmpElement = false;
var CloseTimeOutID = false;

var AllowDebug = false;
var DebugTime = new Array();
var DebugFunction = new Array();
var DebugStarted = new Array();

var PicsLoaded = false;
var changedelay = 10000;
var Currentfade = 0;
var strExistingpictureID = 0;
var picPrefix = "changePic";
var divPrefix = "changePicContainer";
var yourImages = new Array();
var preImages = new Array();
var currCount = 0;
var loaded = new Array();
var loadingCounter = new Array();
var objfade = 100;
var objvisible = 0;
var loadfade = 100;
var OS,browser,version,total,thestring;
var LastPart = 0;
var browserVer=parseInt(navigator.appVersion);
var timer;
var StopRotation = false;
var yourImagesID = new Array();
var yourImagesThumbs = new Array();

var bSaf = (navigator.userAgent.indexOf('Safari') != -1);
var bOpera = (navigator.userAgent.indexOf('Opera') != -1);
var bMoz = (navigator.appName == 'Netscape');

function startDebug(Fname)
{
	if (!AllowDebug)
		return false;
	var d = new Date();
	var d2 = new Date(d.getYear(), d.getMonth(), d.getDate(), d.getHours(), d.getMinutes(), d.getSeconds(), d.getMilliseconds());
	//alert(d.getYear()+'/'+d.getMonth()+'/'+d.getDate()+' '+d.getHours()+'/'+d.getMinutes()+'/'+d.getSeconds()+'/'+d.getMilliseconds());
	var functionFound = false;
	
	if (DebugFunction.length)
	{
		for(var i=0; i<DebugFunction.length; i++)
		{
			if (DebugFunction[i] == Fname)
			{
				if (DebugStarted[i] == true)
				{
					stopDebug(Fname);
				}
				DebugStarted[i] = true;
				DebugFunction[i] = Fname;
				DebugTime[i] = d2.getTime();
				functionFound = true;
			}
		}
		if (!functionFound)
		{
			DebugStarted.push(true);
			DebugFunction.push(Fname);
			DebugTime.push(d2.getTime());
		}
	}
	else
	{
		DebugFunction[0] = Fname;
		DebugTime[0] = d2.getTime();
		DebugStarted[0] = true;
	}
}

function stopDebug(Fname)
{
	if (!AllowDebug)
		return false;
	var dd = new Date();
	var dd2 = new Date(dd.getYear(), dd.getMonth(), dd.getDate(), dd.getHours(), dd.getMinutes(), dd.getSeconds(), dd.getMilliseconds());
	//alert(dd.getYear()+'/'+dd.getMonth()+'/'+dd.getDate()+' '+dd.getHours()+'/'+dd.getMinutes()+'/'+dd.getSeconds()+'/'+dd.getMilliseconds());
	var StopTime = dd2.getTime();
	
	if (DebugFunction.length)
	{
		for(var i=0; i<DebugFunction.length; i++)
		{
			if (DebugFunction[i] == Fname)
			{
				DebugStarted[i] = false;
				var StartTime = DebugTime[i];
				DebugTime[i] = 0;
				var DebugWindow = document.getElementById('debugWindow');
				if (DebugWindow)
				{
					var Calculations = (parseInt(StopTime) - parseInt(StartTime));
					DebugWindow.innerHTML = DebugWindow.innerHTML + Fname + ' = ' + Calculations + ' msec<br />';
				}
				break;
			}
		}
	}
}

function autoNavigate(url, time)
{
	showSeconds(time);
	setInterval("showSeconds('" + time + "')", 1000);
	setTimeout("document.location.href='" + url + "'", time);
}

function showSeconds(time)
{
	var target = document.getElementById('secondsLeft');
	var SecondsToShow = 0;
		
	if (target)
	{
		if (leftSeconds === false)
			leftSeconds = time;
		else
			leftSeconds = leftSeconds - 1000;
		if (leftSeconds < 0)
			leftSeconds = 0;
		
		SecondsToShow = parseInt(leftSeconds/1000);
		target.innerHTML = SecondsToShow;
	}
}

function clearDefaultValue(elm)
{
  if (elm.defaultValue == elm.value) elm.value = "";
}

function restoreDefaultValue(elm)
{
  if (elm.value == "") elm.value = elm.defaultValue;
}

document.getElementsByClassName2 = function(Class, Tag)
{
	if (!Tag)
		Tag = '*';
	var retnode = [];
	var myclass = new RegExp('\\b'+Class+'\\b');
	var elem = this.getElementsByTagName(Tag);
		for (var i = 0; i < elem.length; i++)
		{
			var classes = elem[i].className;
			if (myclass.test(classes)) retnode.push(elem[i]);
		}
	return retnode;
};

function execJS(node)
{
	var st = node.getElementsByTagName('SCRIPT');
	var st2 = node.getElementsByTagName('script');
	var strExec;
	for(var i=0;i<st.length; i++)
	{     
		if (bSaf)
		{
			strExec = st[i].innerHTML;
		}
		else if (bOpera)
		{
			strExec = st[i].text;
		}
		else if (bMoz)
		{
			strExec = st[i].textContent;
		}
		else
		{
			strExec = st[i].text;
		}
		try
		{
			eval(strExec.split("<!--").join("").split("-->").join(""));
		}
		catch(e)
		{
			alert(e);
		}
	}
	for(var i=0;i<st2.length; i++)
	{     
		if (bSaf)
		{
			strExec = st2[i].innerHTML;
		}
		else if (bOpera)
		{
			strExec = st2[i].text;
		}
		else if (bMoz)
		{
			strExec = st2[i].textContent;
		}
		else
		{
			strExec = st2[i].text;
		}
		try
		{
			eval(strExec.split("<!--").join("").split("-->").join(""));
		}
		catch(e)
		{
			alert(e);
		}
	}
}

function showPicture(content, width, height)
{
	var popup = window.open(content, 'popup', 'location=no,menubar=no,status=no,titlebar=no,toolbar=no,width='+width+',height='+height);
	popup.focus();
}

function resizeBackgrounds(Class, Tag, Container)
{
	var arrElements = [];
	
	if (Container)
	{
		ContainerElm = setFnGetElementsByClassName(document.getElementById(Container));
		if (ContainerElm)
		{
			arrElements = ContainerElm.getElementsByClassName2(Class, Tag);
		}
	}
	else
	{
		arrElements = document.getElementsByClassName2(Class, Tag);
	}
	
	if (typeof(arrElements) == "object")
	{
		for (var i = 0; i < arrElements.length; i++)
		{
			var height = arrElements[i].offsetHeight;
			arrElements[i].style.background = "url('/resizedBackGround.php?file=" + Class + ".png&height=" + height + "') repeat-x";
		}
	}
}

function setFnGetElementsByClassName(elm)
{
	if (elm)
	{
		if (!elm.getElementsByClassName2)
		{
			elm.getElementsByClassName2 = function(Class, Tag)
			{
				if (!Tag)
					Tag = '*';
				var retnode = [];
				var myclass = new RegExp('\\b'+Class+'\\b');
				var elem = this.getElementsByTagName(Tag);
					for (var i = 0; i < elem.length; i++)
					{
						var classes = elem[i].className;
						if (myclass.test(classes)) retnode.push(elem[i]);
					}
				return retnode;
			};
		}
	}
	return elm;
}

function resizeBackgroundsSizes(Class, Tag, Container)
{
	var maxHeight = 100;
	var arrElements = new Array();
	
	if (Container)
	{
		var ContainerElm = document.getElementById(Container);
		if (ContainerElm)
		{
			ContainerElm = setFnGetElementsByClassName(ContainerElm);
			arrElements = ContainerElm.getElementsByClassName2(Class, Tag);
		}
	}
	else
	{
		arrElements = document.getElementsByClassName2(Class, Tag);
	}
	if (arrElements.length)
	{
		for (var i = 0; i < arrElements.length; i++)
		{
			if (maxHeight < arrElements[i].offsetHeight)
				maxHeight = arrElements[i].offsetHeight;
		}
		for (var i = 0; i < arrElements.length; i++)
		{
			arrElements[i].style.height = maxHeight - 5 + 'px';
			arrElements[i].style.background = "url('/resizedBackGround.php?file=" + Class + ".png&height=" + maxHeight + "') repeat-x";
		}
	}
}

function findPos(obj)
{
	var curleft = curtop = 0;
	if (obj.offsetParent)
	{
		do
		{
			curleft += obj.offsetLeft;
			curtop += obj.offsetTop;
		}
		while(obj = obj.offsetParent);
		
		return [curleft,curtop];
	}
}

function setParentCloseFormatBox(elm)
{
	var Element = document.getElementById(elm);
	if (Element)
	{
		Element.onclick = function(){CloseTimeOutID = setTimeout("closeFormatBox()", 50)};
	}
}

function closeFormatBox()
{
	startDebug('closeFormatBox');
	var arrClasses = new Array();
	arrClasses[0] = 'Visible';
	arrClasses[1] = 'Hidden';
	
	var box = document.getElementById('ChooseFormatBlock');
	if (box)
	{
		setClasses(1, arrClasses, box.id);
		clearTimeout(CloseTimeOutID);
		document.getElementById('main_block').onclick = function(){};
		
		var arrBoxFormats = new Array();
		
		box = setFnGetElementsByClassName(box);
		
		arrBoxFormats = box.getElementsByClassName2('select_format_active', 'div');
		
		if (arrBoxFormats.length)
		{
			for(var i=0; i<arrBoxFormats.length; i++)
			{
				setMouseFunctions(arrBoxFormats[i], 'select_format');
				arrBoxFormats[i].onmouseover = function(){setMouseFunctions(this, 'select_format_over')};
				arrBoxFormats[i].onmouseout = function(){setMouseFunctions(this, 'select_format')};
			}
		}
		
		arrBoxFormats = box.getElementsByClassName2('select_format_over', 'div');
		
		if (arrBoxFormats.length)
		{
			for(var i=0; i<arrBoxFormats.length; i++)
			{
				setMouseFunctions(arrBoxFormats[i], 'select_format');
				arrBoxFormats[i].onmouseover = function(){setMouseFunctions(this, 'select_format_over')};
				arrBoxFormats[i].onmouseout = function(){setMouseFunctions(this, 'select_format')};
			}
		}
		
		box.innerHTML = box.innerHTML;
	}
	stopDebug('closeFormatBox');
}

function showFormatBox(target)
{
	startDebug('showFormatBox');
	
	var arrClasses = new Array();
	arrClasses[0] = 'Visible';
	arrClasses[1] = 'Hidden';
	
	if (target)
	{
		clearTimeout(CloseTimeOutID);
		document.getElementById('main_block').onclick = function(){};
		
		var ArrPos = findPos(target);
		var targetID = target.id + "";
		var ArrID = targetID.split("_");
		var RealID = ArrID[1];
		var top = ArrPos[1] + 2;
		var left = ArrPos[0];
		var arrBoxFormats = new Array();
		var arrBoxFormats2 = new Array();
		currentPictureID = RealID;
		
		var box = document.getElementById('ChooseFormatBlock');
		if (box)
		{
			box = setFnGetElementsByClassName(box);
			box.style.top = top + 'px';
			box.style.left = left + 'px';
			
			arrBoxFormats2 = box.getElementsByClassName2('select_format_active', 'div');
			
			if (arrBoxFormats2.length && arrPictures[RealID])
			{
				for(var i=0; i<arrBoxFormats2.length; i++)
				{
					setMouseFunctions(arrBoxFormats2[i], 'select_format');
					arrBoxFormats2[i].onmouseover = function(){setMouseFunctions(this, 'select_format_over')};
					arrBoxFormats2[i].onmouseout = function(){setMouseFunctions(this, 'select_format')};
					arrBoxFormats2[i].onclick = function(){setFormatValue(this, currentPictureID)};
				}
			}
			
			arrBoxFormats2 = box.getElementsByClassName2('select_format_hidden', 'div');
			
			if (arrBoxFormats2.length && arrPictures[RealID])
			{
				for(var i=0; i<arrBoxFormats2.length; i++)
				{
					setMouseFunctions(arrBoxFormats2[i], 'select_format');
					arrBoxFormats2[i].onmouseover = function(){setMouseFunctions(this, 'select_format_over')};
					arrBoxFormats2[i].onmouseout = function(){setMouseFunctions(this, 'select_format')};
					arrBoxFormats2[i].onclick = function(){setFormatValue(this, currentPictureID)};
				}
			}
			
			arrBoxFormats = box.getElementsByClassName2('select_format', 'div');
			
			if (arrBoxFormats.length && arrPictures[RealID])
			{
				for(var i=0; i<arrBoxFormats.length; i++)
				{
					var ID = arrBoxFormats[i].id + "";
					var arrID = ID.split("_");
					var FormatID = arrID[1];
					for (var f=0; f<arrFormatID.length; f++)
					{
						if (arrFormatID[f] == FormatID)
						{
							var CurrentFormatIndex = f;
							break;
						}
					}
					
					if (parseInt(arrFormatSizeX[CurrentFormatIndex]) <= parseInt(arrPicturesSizeX[RealID]) && parseInt(arrFormatSizeY[CurrentFormatIndex]) <= parseInt(arrPicturesSizeY[RealID]))
					{
						if (arrBoxFormats[i].id == ("arrFormat2_" + arrPictureFormats[RealID]))
						{
							setMouseFunctions(arrBoxFormats[i], 'select_format_active');
							arrBoxFormats[i].onmouseover = function(){};
							arrBoxFormats[i].onmouseout = function(){};
							arrBoxFormats[i].onclick = function(){closeFormatBox()};
						}
						else
						{
							setMouseFunctions(arrBoxFormats[i], 'select_format');
							arrBoxFormats[i].onmouseover = function(){setMouseFunctions(this, 'select_format_over')};
							arrBoxFormats[i].onmouseout = function(){setMouseFunctions(this, 'select_format')};
							arrBoxFormats[i].onclick = function(){setFormatValue(this, currentPictureID)};
						}
					}
					else
					{
						setMouseFunctions(arrBoxFormats[i], 'select_format_hidden');
					}
				}
			}
			
			setClasses(0, arrClasses, box.id);
			resizeBackgrounds('rounded_box_body', 'div', 'ChooseFormatBlock');
			CloseTimeOutID = setTimeout("setParentCloseFormatBox('" + document.getElementById('main_block').id + "')", 50);
		}
	}
	stopDebug('showFormatBox');
}

function setFormatValue(elm, realID)
{
	startDebug('setFormatValue');
	var ID = elm.id + "";
	var arrID = ID.split("_");
	var FormatID = arrID[1];
	arrPictureFormats[realID] = FormatID;
	var PictureFormatContainer = document.getElementById("SelectedFormat_" + realID);
	var PicturePriceContainer = document.getElementById("SelectedFormatPrice_" + realID);
	if (PictureFormatContainer && PicturePriceContainer)
	{
		if (arrFormatID.length && arrPictureFormats[realID])
		{
			for (var f=0; f<arrFormatID.length; f++)
			{
				if (arrFormatID[f] == arrPictureFormats[realID])
				{
					var CurrentFormatIndex = f;
					break;
				}
			}
			
			arrPicturePrice[realID] = arrFormatPrice[CurrentFormatIndex];
			arrPicturePriceExpress[realID] = arrFormatPriceExpress[CurrentFormatIndex];
			
			var picturePriceTotal = parseFloat(arrPicturePrice[realID])*parseInt(arrPictureAmount[realID]);
			var picturePriceTotalExpress = parseFloat(arrPicturePriceExpress[realID])*parseInt(arrPictureAmount[realID]);
			
			arrPicturePriceFormatted[realID] = picturePriceTotal.toFixed(2);
			arrPicturePriceExpressFormatted[realID] = picturePriceTotalExpress.toFixed(2);
			
			arrPictureFormatsPaper[realID] = arrFormatPaper[CurrentFormatIndex];
			if (PictureFormatContainer && PicturePriceContainer)
			{
				PictureFormatContainer.innerHTML = arrFormatName[CurrentFormatIndex];
				PicturePriceContainer.innerHTML = "<span id=\"SelectedFormatNormalPrice_" + realID + "\" class=\"normalPrice\">" + arrPicturePriceFormatted[realID] + "</span><span id=\"SelectedFormatExpressPrice_" + realID + "\" class=\"expressPrice\">" + arrPicturePriceExpressFormatted[realID] + "</span>";
			}
		}
	}
	makeRequest(RequestURL, "", "changeCustom=1&ReturnSelection=1&pictureID=" + arrPictures[realID] + "&format=" + FormatID + "&rnd=" + Math.random());
	arrActivePicture[realID] = true;
	
	var arrClasses = new Array();
	arrClasses[0] = 'FoundError';
	arrClasses[1] = '';
	
	var targetId = 'pictureContainer_' + realID;
	var targetId2 = 'pictureNameContainer_' + realID;
	var targetId3 = 'SelectedFormat_' + realID;
	
	setClasses(1, arrClasses, targetId);
	setClasses(1, arrClasses, targetId2);
	setClasses(1, arrClasses, targetId3);
	
	closeFormatBox();
	calculateTotalPriceAmount();
	stopDebug('setFormatValue');
}

function change_amount(realID){
	startDebug('change_amount');
	var Amount = false;
	var txtAmount = "";
	txtAmount = document.getElementById("PictureAmount_" + realID).value;
	Amount = parseInt(txtAmount);
	if (Amount == 0)
		Amount = 1;
	if (Amount > 1000)
		Amount = 1000;
	if (Amount)
		document.getElementById("PictureAmount_" + realID).value = Amount;
	if (Amount && arrPictureAmount[realID] != Amount)
	{
		arrPictureAmount[realID] = Amount;
		var PicturePriceContainer = document.getElementById("SelectedFormatPrice_" + realID);
		if (PicturePriceContainer && arrActivePicture[realID])
		{
			if (arrFormatID.length && arrPictureFormats[realID])
			{
				for (var f=0; f<arrFormatID.length; f++)
				{
					if (arrFormatID[f] == arrPictureFormats[realID])
					{
						var CurrentFormatIndex = f;
						break;
					}
				}
				
				arrPicturePrice[realID] = arrFormatPrice[CurrentFormatIndex];
				arrPicturePriceExpress[realID] = arrFormatPriceExpress[CurrentFormatIndex];
				
				var picturePriceTotal = parseFloat(arrPicturePrice[realID])*parseInt(arrPictureAmount[realID]);
				var picturePriceTotalExpress = parseFloat(arrPicturePriceExpress[realID])*parseInt(arrPictureAmount[realID]);
				
				arrPicturePriceFormatted[realID] = picturePriceTotal.toFixed(2);
				arrPicturePriceExpressFormatted[realID] = picturePriceTotalExpress.toFixed(2);
				
				if (PicturePriceContainer)
				{
					PicturePriceContainer.innerHTML = "<span id=\"SelectedFormatNormalPrice_" + realID + "\" class=\"normalPrice\">" + arrPicturePriceFormatted[realID] + "</span><span id=\"SelectedFormatExpressPrice_" + realID + "\" class=\"expressPrice\">" + arrPicturePriceExpressFormatted[realID] + "</span>";
				}
			}
		}
		makeRequest(RequestURL, "", "changeCustom=1&ReturnSelection=1&pictureID=" + arrPictures[realID] + "&amount=" + Amount + "&rnd=" + Math.random());
		calculateTotalPriceAmount();
	}
	else if(isNaN(Amount) && txtAmount != "")
		document.getElementById("PictureAmount_" + realID).value = arrPictureAmount[realID];
	stopDebug('change_amount');
}

function selectRadioButton(arrButtonsName, element, value, functionName, functionsParams, message, noquestion)
{
	if (element)
	{
		if (element.className != 'vali_tahtaeg_option_active')
		{
			if (trim(message) && !noquestion)
			{
				tmpArrButtonsName = arrButtonsName;
				tmpElement = element;
				showTransparentLayer(message, "selectRadioButton", "tmpArrButtonsName, tmpElement, '" + value + "', '" + functionName + "', '" + functionsParams + "', '', false" , false);
			}
			else
			{
				if (trim(message) && noquestion)
				{
					showTransparentLayer(message, "hideLayers", "", noquestion);
				}
				var Buttons = eval(arrButtonsName);
				if (Buttons.length && (value || value == '0'))
				{
					for (var i=0; i<Buttons.length; i++)
					{
						var addition = "";
						
						if (i == value)
						{
							Buttons[i] = true;
							var target = document.getElementById(arrButtonsName + '_' + i);
							if (target)
							{
								setMouseFunctions(target, 'vali_tahtaeg_option_active');
								target.onmouseover = function(){};
								target.onmouseout = function(){};
							}
						}
						else
						{
							Buttons[i] = false;
							var target = document.getElementById(arrButtonsName + '_' + i);
							if (target)
							{
								setMouseFunctions(target, 'vali_tahtaeg_option');
								target.onmouseover = function(){setMouseFunctions(this, 'vali_tahtaeg_option_over')};
								target.onmouseout = function(){setMouseFunctions(this, 'vali_tahtaeg_option')};
							}
						}
					}
					if (functionName)
					{
						if (typeof eval(functionName) == "function")
						{
							eval(functionName + "(" + functionsParams + ")");
						}
					}
				}
			}
		}
	}
}

function setMouseFunctions(target, mainClass)
{
	if (target)
	{
		var SetClassName = "";
		var currentClass = target.className + "";
		var ArrClass = currentClass.split(" ");
		
		if (ArrClass.length > 1)
		{
			for (var i=1; i<ArrClass.length; i++)
			{
				SetClassName = SetClassName + " " + ArrClass[i];
			}
			target.className = mainClass + SetClassName;
		}
		else
		{
			target.className = mainClass;
		}
	}
}

function setClasses(value, arrClasses, targetId)
{
	var target = document.getElementById(targetId);
	if (target)
	{
		var SetClassName = "";
		var currentClass = target.className + "";
		var ArrClass = currentClass.split(" ");
		var skip = false;
		
		if (ArrClass.length > 1)
		{
			for (var i=0; i<ArrClass.length; i++)
			{
				for (var ii=0; ii<arrClasses.length; ii++)
				{
					if (ArrClass[i] == arrClasses[ii])
					{
						skip = true;
						break;
					}
				}
				if (!skip)
				{
					if (i == 0)
						SetClassName = ArrClass[i];
					else
						SetClassName = SetClassName + " " + ArrClass[i];
				}
				skip = false;
			}
		}
		else
		{
			SetClassName = ArrClass[0];
		}
		if (arrClasses[value])
			target.className = SetClassName + ' ' + arrClasses[value];
		else
			target.className = SetClassName;
	}
}

function setPaper(value)
{
	startDebug('setPaper');
	var targetId = 'formatSelection';
	var arrClasses = new Array();
	arrClasses[0] = 'GlossFormats';
	arrClasses[1] = 'MatteFormats';
	
	setClasses(value, arrClasses, targetId);
	
	var targetId = 'ordering_3_container';
	var arrClasses = new Array();
	arrClasses[0] = 'ShowGloss';
	arrClasses[1] = 'ShowMatte';
	
	setClasses(value, arrClasses, targetId);
	
	var targetId = 'ChooseFormatBlockFormats';
	var arrClasses = new Array();
	arrClasses[0] = 'GlossFormats';
	arrClasses[1] = 'MatteFormats';
	
	setClasses(value, arrClasses, targetId);
	
	makeRequest(RequestURL, "", "changeGlobal=1&ReturnSelection=1&paper=" + value + "&rnd=" + Math.random());
	
	if (arrPictures.length)
	{
		var arrClasses2 = new Array();
		arrClasses2[0] = 'FoundError';
		arrClasses2[1] = '';
						
		var FoundWrong = 0;
		var arrWrongPictures = new Array();
		
		for (var i=0; i<arrPictures.length; i++)
		{
			if (arrPictureFormatsPaper[i] != "0")
			{
				if ((value == "0" && arrPictureFormatsPaper[i] == "1") || (value == "1" && arrPictureFormatsPaper[i] == "2"))
				{
					var PictureFormatContainer = document.getElementById("SelectedFormat_" + i);
					var PicturePriceContainer = document.getElementById("SelectedFormatPrice_" + i);
					
					if (PictureFormatContainer && PicturePriceContainer)
					{
						PictureFormatContainer.innerHTML = txtChooseFormat;
						PicturePriceContainer.innerHTML = "";
						
						FoundWrong++;
						arrWrongPictures[FoundWrong] = i;
						if (arrActivePicture[i])
						{
							var targetId = 'pictureContainer_' + i;
							var targetId2 = 'pictureNameContainer_' + i;
							var targetId3 = 'SelectedFormat_' + i;
							
							setClasses(0, arrClasses2, targetId);
							setClasses(0, arrClasses2, targetId2);
							setClasses(0, arrClasses2, targetId3);
						}
						arrActivePicture[i] = false;
					}
				}
				else if (arrPictureFormatsPaper[i] == "0" || arrPictureFormatsPaper[i] == "1" || arrPictureFormatsPaper[i] == "2")
				{
					var PictureFormatContainer = document.getElementById("SelectedFormat_" + i);
					var PicturePriceContainer = document.getElementById("SelectedFormatPrice_" + i);
					if (PictureFormatContainer && PicturePriceContainer)
					{
						if (arrFormatID.length && arrPictureFormats[i])
						{
							for (var f=0; f<arrFormatID.length; f++)
							{
								if (arrFormatID[f] == arrPictureFormats[i])
								{
									var CurrentFormatIndex = f;
									break;
								}
							}
							
							if (!arrActivePicture[i])
							{
								var targetId = 'pictureContainer_' + i;
								var targetId2 = 'pictureNameContainer_' + i;
								var targetId3 = 'SelectedFormat_' + i;
								
								setClasses(1, arrClasses2, targetId);
								setClasses(1, arrClasses2, targetId2);
								setClasses(1, arrClasses2, targetId3);
							}
							
							arrActivePicture[i] = true;
							arrPictureFormatsPaper[i] = arrFormatPaper[CurrentFormatIndex];
							
							arrPicturePrice[i] = arrFormatPrice[CurrentFormatIndex];
							arrPicturePriceExpress[i] = arrFormatPriceExpress[CurrentFormatIndex];
							
							var picturePriceTotal = parseFloat(arrPicturePrice[i])*parseInt(arrPictureAmount[i]);
							var picturePriceTotalExpress = parseFloat(arrPicturePriceExpress[i])*parseInt(arrPictureAmount[i]);
							
							arrPicturePriceFormatted[i] = picturePriceTotal.toFixed(2);
							arrPicturePriceExpressFormatted[i] = picturePriceTotalExpress.toFixed(2);
							
							if (PictureFormatContainer && PicturePriceContainer)
							{
								PictureFormatContainer.innerHTML = arrFormatName[CurrentFormatIndex];
								PicturePriceContainer.innerHTML = "<span id=\"SelectedFormatNormalPrice_" + i + "\" class=\"normalPrice\">" + arrPicturePriceFormatted[i] + "</span><span id=\"SelectedFormatExpressPrice_" + i + "\" class=\"expressPrice\">" + arrPicturePriceExpressFormatted[i] + "</span>";
							}
						}
					}
				}
			}
		}
		if (FoundWrong > 0)
		{
			var txtOutput = txtWrongPictureFormats + ":<br /><br /><span class=\"smallText\">";
			for (var i=1; i < arrWrongPictures.length; i++)
			{
				txtOutput += arrPictures[arrWrongPictures[i]] + "<br />";
			}
			txtOutput += "</span>";
			showTransparentLayer(txtOutput, "", "", true);
		}
		calculateTotalPriceAmount();
	}
	resizeBackgrounds('rounded_box_body', 'div', 'vali_tahtaeg');
	stopDebug('setPaper');
}

function setPeriod(value)
{
	startDebug('setPeriod');
	if (value == 1)
	{
		arrPeriod[1] = true;
		arrPeriod[0] = false;
	}
	else
	{
		arrPeriod[0] = true;
		arrPeriod[1] = false;
	}
	var targetId = 'formatSelection';
	var arrClasses = new Array();
	arrClasses[0] = 'Express';
	arrClasses[1] = 'Standart';
	
	setClasses(value, arrClasses, targetId);
	
	var targetId = 'ordering_3_container';
	var arrClasses = new Array();
	arrClasses[0] = 'ShowExpress';
	arrClasses[1] = 'ShowNormal';
	
	setClasses(value, arrClasses, targetId);
	
	var targetId = 'ChooseFormatBlockFormats';
	var arrClasses = new Array();
	arrClasses[0] = 'Express';
	arrClasses[1] = 'Standart';
	
	setClasses(value, arrClasses, targetId);
	
	var targetId = 'TotalResults';
	var arrClasses = new Array();
	arrClasses[0] = 'Express';
	arrClasses[1] = 'Standart';
	
	setClasses(value, arrClasses, targetId);
	
	if (discount)
	{
		var targetId = 'TotalResultsDiscount';
		var arrClasses = new Array();
		arrClasses[0] = 'Express';
		arrClasses[1] = 'Standart';
		
		setClasses(value, arrClasses, targetId);
		
		var targetId = 'TotalResultsDiscounted';
		var arrClasses = new Array();
		arrClasses[0] = 'Express';
		arrClasses[1] = 'Standart';
		
		setClasses(value, arrClasses, targetId);
		
		var targetId = 'TotalResultsDiscount2';
		var arrClasses = new Array();
		arrClasses[0] = 'Express';
		arrClasses[1] = 'Standart';
		
		setClasses(value, arrClasses, targetId);
		
		var targetId = 'TotalResultsDiscounted2';
		var arrClasses = new Array();
		arrClasses[0] = 'Express';
		arrClasses[1] = 'Standart';
		
		setClasses(value, arrClasses, targetId);
	}
	else if (transportPriceFirst)
	{
		var targetId = 'TotalResultsDiscount2';
		var arrClasses = new Array();
		arrClasses[0] = 'Express';
		arrClasses[1] = 'Standart';
		
		setClasses(value, arrClasses, targetId);
		
		var targetId = 'TotalResultsDiscounted2';
		var arrClasses = new Array();
		arrClasses[0] = 'Express';
		arrClasses[1] = 'Standart';
		
		setClasses(value, arrClasses, targetId);
	}
	
	var targetId = 'TotalResults2';
	var arrClasses = new Array();
	arrClasses[0] = 'Express';
	arrClasses[1] = 'Standart';
	
	setClasses(value, arrClasses, targetId);
	
	makeRequest(RequestURL, "", "changeGlobal=1&ReturnSelection=1&period=" + value + "&rnd=" + Math.random());
	
	calculateTotalPriceAmount();
	stopDebug('setPeriod');
}

function setFormat(value)
{
	startDebug('setFormat');
	
	var arrClasses = new Array();
	arrClasses[0] = 'FoundError';
	arrClasses[1] = '';
	
	makeRequest(RequestURL, "", "changeGlobal=1&ReturnSelection=1&format=" + value + "&rnd=" + Math.random());
	if (arrFormatID.length && arrFormat.length && arrFormatSizeX.length && arrFormatSizeY.length)
	{
		var CurrentFormatIndex = false;
		var FoundWrong = 0;
		var arrWrongPictures = new Array();
		
		for (var i=0; i<arrFormatID.length; i++)
		{
			if (value == arrFormatID[i])
			{
				CurrentFormatIndex = i;
				break;
			}
		}
		if (CurrentFormatIndex || CurrentFormatIndex == 0)
		{
			if (arrPictures.length)
			{
				for (var i=0; i<arrPictures.length; i++)
				{
					var PictureFormatContainer = document.getElementById("SelectedFormat_" + i);
					var PicturePriceContainer = document.getElementById("SelectedFormatPrice_" + i);
					
					if (parseInt(arrFormatSizeX[CurrentFormatIndex]) <= parseInt(arrPicturesSizeX[i]) && parseInt(arrFormatSizeY[CurrentFormatIndex]) <= parseInt(arrPicturesSizeY[i]))
					{
						arrPictureFormats[i] = value;
						if (!arrActivePicture[i])
						{
							var targetId = 'pictureContainer_' + i;
							var targetId2 = 'pictureNameContainer_' + i;
							var targetId3 = 'SelectedFormat_' + i;
							
							setClasses(1, arrClasses, targetId);
							setClasses(1, arrClasses, targetId2);
							setClasses(1, arrClasses, targetId3);
						}
						arrActivePicture[i] = true;
						arrPicturePrice[i] = arrFormatPrice[CurrentFormatIndex];
						arrPicturePriceExpress[i] = arrFormatPriceExpress[CurrentFormatIndex];
						arrPictureFormatsPaper[i] = arrFormatPaper[CurrentFormatIndex];
						
						var picturePriceTotal = parseFloat(arrPicturePrice[i])*parseInt(arrPictureAmount[i]);
						var picturePriceTotalExpress = parseFloat(arrPicturePriceExpress[i])*parseInt(arrPictureAmount[i]);
						
						arrPicturePriceFormatted[i] = picturePriceTotal.toFixed(2);
						arrPicturePriceExpressFormatted[i] = picturePriceTotalExpress.toFixed(2);
						
						if (PictureFormatContainer && PicturePriceContainer)
						{
							PictureFormatContainer.innerHTML = arrFormatName[CurrentFormatIndex];
							PicturePriceContainer.innerHTML = "<span id=\"SelectedFormatNormalPrice_" + i + "\" class=\"normalPrice\">" + arrPicturePriceFormatted[i] + "</span><span id=\"SelectedFormatExpressPrice_" + i + "\" class=\"expressPrice\">" + arrPicturePriceExpressFormatted[i] + "</span>";
						}
					}
					else
					{
						FoundWrong++;
						arrWrongPictures[FoundWrong] = i;
						if (arrActivePicture[i])
						{
							var targetId = 'pictureContainer_' + i;
							var targetId2 = 'pictureNameContainer_' + i;
							var targetId3 = 'SelectedFormat_' + i;
							
							setClasses(0, arrClasses, targetId);
							setClasses(0, arrClasses, targetId2);
							setClasses(0, arrClasses, targetId3);
						}
						arrActivePicture[i] = false;
						arrPictureFormats[i] = "";
						if (PictureFormatContainer && PicturePriceContainer)
						{
							PictureFormatContainer.innerHTML = txtChooseFormat;
							PicturePriceContainer.innerHTML = "";
						}
					}
				}
				if (FoundWrong > 0)
				{
					var txtOutput = txtWrongPictures + " - (" + arrFormatSizeX[CurrentFormatIndex]  + "x" + arrFormatSizeY[CurrentFormatIndex] + "px):<br /><br /><span class=\"smallText\">";
					for (var i=1; i < arrWrongPictures.length; i++)
					{
						txtOutput += arrPictures[arrWrongPictures[i]] + " (" + arrPicturesSizeX[arrWrongPictures[i]] + "x" + arrPicturesSizeY[arrWrongPictures[i]] + "px)" + "<br />";
					}
					txtOutput += "</span>";
					showTransparentLayer(txtOutput, "", "", true);
				}
				calculateTotalPriceAmount();
			}
		}
	}
	stopDebug('setFormat');
}

function setCorrection(value)
{
	startDebug('setCorrection');
	makeRequest(RequestURL, "", "changeGlobal=1&ReturnSelection=1&correction=" + value + "&rnd=" + Math.random());
	stopDebug('setCorrection');
}

function hideThumbnails()
{
	startDebug('hideThumbnails');
	var arrClasses = new Array();
	arrClasses[0] = 'smallMargin';
	arrClasses[1] = '';
	
	
	var target = setFnGetElementsByClassName(document.getElementById('ordering_3_container'));
	if (target)
	{
		arrElements = target.getElementsByClassName2("ordering_3_picture", "td");
		
		if (arrElements)
		{
			if (ShowThumbnails)
			{
				ShowThumbnails = false;
				
				for (var i=0; i<arrElements.length; i++)
				{
					arrElements[i].className = 'ordering_3_picture hideThumbnails';
				}
				document.getElementById('small_picturesText').innerHTML = showPictures;
				
				setClasses(0, arrClasses, 'ChooseFormatBlock');
			}
			else
			{
				ShowThumbnails = true;
				
				for (var i=0; i<arrElements.length; i++)
				{
					arrElements[i].className = 'ordering_3_picture';
				}
				document.getElementById('small_picturesText').innerHTML = showList;
				setClasses(1, arrClasses, 'ChooseFormatBlock');
				arrElements = target.getElementsByClassName2("ordering2_picture_holder", "div");
				for (var i=0; i<arrElements.length; i++)
				{
					arrElements[i].innerHTML = arrElements[i].innerHTML;
				}
			}
			arrElements = target.getElementsByClassName2("redraw", "td");
			for (var i=0; i<arrElements.length; i++)
			{
				arrElements[i].innerHTML = arrElements[i].innerHTML;
			}
			resizeBackgrounds('rounded_box_body', 'div', 'ordering_2_picture_chooser');
		}
	}
	stopDebug('hideThumbnails');
}

function trim(string)
{
	return string.replace(/(^\s+)|(\s+$)/g, "");
}

function calculateTotalPriceAmount()
{
	startDebug('calculateTotalPriceAmount');
	var totalPriceFormatted = "";
	var totalPriceExpressFormatted = "";
	var totalDiscount = "";
	var totalDiscountExpress = "";
	var totalDiscountPriceFormatted = "";
	var totalDiscountPriceExpressFormatted = "";
	var TransportPrice = 0;
	var UsedTransport = false;
	
	var HasDisabled = false;
	
	if (arrActivePicture.length)
	{
		totalPrice = 0;
		totalAmount = 0;
		totalPriceExpress = 0;
		for(var i=0; i<arrActivePicture.length; i++)
		{
			if (arrActivePicture[i])
			{
				totalPrice += parseFloat(arrPicturePrice[i])*parseInt(arrPictureAmount[i]);
				totalPriceExpress += parseFloat(arrPicturePriceExpress[i])*parseInt(arrPictureAmount[i]);
				totalAmount += parseInt(arrPictureAmount[i]);
			}
			else
			{
				HasDisabled = true;
			}
		}
		
		if (transportPriceSecondTotal)
		{
			if ((transportPriceSecondTotal > totalPrice && totalPrice >= transportPriceFirstTotal && arrPeriod[1]) || (transportPriceSecondTotal > totalPriceExpress && totalPriceExpress >= transportPriceFirstTotal && arrPeriod[0]))
			{
				TransportPrice = parseFloat(transportPriceSecond);
				UsedTransport = 1;
			}
		}
		
		if (transportPriceFirstTotal)
		{
			if (((transportPriceFirstTotal > totalPrice && arrPeriod[1]) || (transportPriceFirstTotal > totalPriceExpress && arrPeriod[0])) && !TransportPrice)
			{
				TransportPrice = parseFloat(transportPriceFirst);
				UsedTransport = 0;
			}
		}
		
		if (discount)
		{
			var totalDiscountCalc = parseFloat(totalPrice)*parseFloat(discount);
			var totalDiscountExpCalc = parseFloat(totalPriceExpress)*parseFloat(discount);
			totalDiscount = totalDiscountCalc.toFixed(2);
			totalDiscountExpress = totalDiscountExpCalc.toFixed(2);
			
			var totalDiscountPriceFormattedCalc = parseFloat(totalPrice + TransportPrice) - parseFloat(totalDiscountCalc);
			var totalDiscountPriceExpressFormattedCalc = parseFloat(totalPriceExpress + TransportPrice) - parseFloat(totalDiscountExpCalc);
			totalDiscountPriceFormatted = totalDiscountPriceFormattedCalc.toFixed(2);
			totalDiscountPriceExpressFormatted = totalDiscountPriceExpressFormattedCalc.toFixed(2);
		}
		
		if (TransportPrice)
		{
			var TotalPriceWithTransport = totalPrice + TransportPrice;
			var TotalPriceExpressWithTransport = totalPriceExpress + TransportPrice;
			var totalPriceWithTransportFormatted = TotalPriceWithTransport.toFixed(2);
			var totalPriceExpressWithTransportFormatted = TotalPriceExpressWithTransport.toFixed(2);
		}
		totalPriceFormatted = totalPrice.toFixed(2);
		totalPriceExpressFormatted = totalPriceExpress.toFixed(2);
	}
	var AmountContainer = document.getElementById('pictureQnt');
	var TotalContainer = document.getElementById('pictureTotal');
	var TotalExpressContainer = document.getElementById('pictureTotalExpress');
	var AmountContainer2 = document.getElementById('pictureQnt2');
	var TotalContainer2 = document.getElementById('pictureTotal2');
	var TotalExpressContainer2 = document.getElementById('pictureTotalExpress2');
	
	if (discount)
	{
		var discountTotal  = document.getElementById('discountTotal');
		var discountTotalExpress = document.getElementById('discountTotalExpress');
		var pictureDiscountTotal = document.getElementById('pictureDiscountTotal');
		var pictureDiscountTotalExpress = document.getElementById('pictureDiscountTotalExpress');
		
		var discountTotal2  = document.getElementById('discountTotal2');
		var discountTotalExpress2 = document.getElementById('discountTotalExpress2');
		var pictureDiscountTotal2 = document.getElementById('pictureDiscountTotal2');
		var pictureDiscountTotalExpress2 = document.getElementById('pictureDiscountTotalExpress2');
		
		discountTotal.innerHTML = discountTotal2.innerHTML = totalDiscount;
		discountTotalExpress.innerHTML = discountTotalExpress2.innerHTML = totalDiscountExpress;
		
		pictureDiscountTotal.innerHTML = pictureDiscountTotal2.innerHTML = totalDiscountPriceFormatted;
		pictureDiscountTotalExpress.innerHTML = pictureDiscountTotalExpress2.innerHTML = totalDiscountPriceExpressFormatted;
	}
	else
	{
		var TransportTotalContainer2  = document.getElementById('TotalResultsDiscounted2');
		var TransportTotalContainer  = document.getElementById('TotalResultsDiscounted');
		
		if (TransportPrice && TransportTotalContainer)
		{
			TransportTotalContainer.style.visibility = 'visible';
			TransportTotalContainer2.style.visibility = 'visible';
			var TransportTotalContainerPriceExpress = document.getElementById('pictureDiscountTotalExpress');
			var TransportTotalContainerPrice = document.getElementById('pictureDiscountTotal');
			var TransportTotalContainerPriceExpress2 = document.getElementById('pictureDiscountTotalExpress2');
			var TransportTotalContainerPrice2 = document.getElementById('pictureDiscountTotal2');
			
			TransportTotalContainerPrice.innerHTML = TransportTotalContainerPrice2.innerHTML = totalPriceWithTransportFormatted;
			TransportTotalContainerPriceExpress.innerHTML = TransportTotalContainerPriceExpress2.innerHTML = totalPriceExpressWithTransportFormatted;
		}
		else if(TransportTotalContainer)
		{
			TransportTotalContainer.style.visibility = 'hidden';
			TransportTotalContainer2.style.visibility = 'hidden';
		}
	}
	
	if (!TransportPrice)
	{
		var TransportPriceContainer = document.getElementById('Transport');
		var TransportPriceContainer2 = document.getElementById('Transport2');
		if (TransportPriceContainer && TransportPriceContainer2)
		{
			TransportPriceContainer.style.visibility = 'hidden';
			TransportPriceContainer2.style.visibility = 'hidden';
		}
	}
	else
	{
		var TransportPriceContainer = document.getElementById('Transport');
		var TransportPriceContainer2 = document.getElementById('Transport2');
		if (TransportPriceContainer && TransportPriceContainer2)
		{
			TransportPriceContainer.style.visibility = 'visible';
			TransportPriceContainer2.style.visibility = 'visible';
			
			var targetId = 'Transport';
			var arrClasses = new Array();
			arrClasses[0] = 'FirstPrice';
			arrClasses[1] = 'SecondPrice';
			
			setClasses(UsedTransport, arrClasses, targetId);
			
			var targetId = 'Transport2';
			var arrClasses = new Array();
			arrClasses[0] = 'FirstPrice';
			arrClasses[1] = 'SecondPrice';
			
			setClasses(UsedTransport, arrClasses, targetId);
		}
	}
	if (AmountContainer && TotalContainer && TotalExpressContainer)
	{
		AmountContainer.innerHTML = totalAmount;
		TotalContainer.innerHTML = totalPriceFormatted;
		TotalExpressContainer.innerHTML = totalPriceExpressFormatted;
		if (AmountContainer2 && TotalContainer2 && TotalExpressContainer2)
		{
			AmountContainer2.innerHTML = totalAmount;
			TotalContainer2.innerHTML = totalPriceFormatted;
			TotalExpressContainer2.innerHTML = totalPriceExpressFormatted;
		}
	}
	
	if (!HasDisabled)
	{
		changeMenuHrefs(true);
		document.getElementById('forward').style.display = 'block';
	}
	else
	{
		changeMenuHrefs(false);
		document.getElementById('forward').style.display = 'none';
	}
	stopDebug('calculateTotalPriceAmount');
}

function checkOrderContacts(formID)
{
	var errorShown = false;
	var Name = document.getElementById('orderUserName');
	var Phone = document.getElementById('orderUserPhone');
	var Email = document.getElementById('orderUserEmail');
	var Address = document.getElementById('orderUserAddress');
	var City = document.getElementById('orderUserCity');
	var Pindex = document.getElementById('orderUserPindex');
	var test = false;
	
	if (Name && Phone && Email && Address && City && Pindex)
	{
		if (Name.value && Phone.value && Email.value && Address.value && City.value && Pindex.value)
		{
			if (!Name.value)
			{
				showTransparentLayer(txtNameNotValid, "", "", true);
				errorShown = true;
			}
			
			test = Phone.value.match(/([+0-9]{7,})/gi);
			
			if (!test && !errorShown)
			{
				showTransparentLayer(txtPhoneNotValid, "", "", true);
				errorShown = true;
			}
			else
			{
				Phone.value = test[0];
			}
			
			test = Email.value.match(/([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]{2,64}\.[a-zA-Z0-9._-]{2,})/gi);
			
			if (!test && !errorShown)
			{
				showTransparentLayer(txtEmailNotValid, "", "", true);
				errorShown = true;
			}
			else
			{
				Email.value = test[0];
			}
			
			if (!Address.value && !errorShown)
			{
				showTransparentLayer(txtAddressNotValid, "", "", true);
				errorShown = true;
			}
			
			if (!City.value && !errorShown)
			{
				showTransparentLayer(txtCityNotValid, "", "", true);
				errorShown = true;
			}
			
			if (!Pindex.value && !errorShown)
			{
				showTransparentLayer(txtPindexNotValid, "", "", true);
				errorShown = true;
			}
			
			if (!errorShown)
			{
				document.forms[formID].submit();
			}
		}
		else
		{
			showTransparentLayer(txtFillAll, "", "", true);
		}
	}
}

function startPayment(ID, formID)
{
	target = document.getElementById('bank_id');
	if (target && ID > 0 && ID <= 4)
	{
		target.value = ID;
		document.forms[formID].submit();
	}
}

function check_register_values(formID)
{
	var errorShown = false;
	var Name = document.getElementById('f_name');
	var Phone = document.getElementById('f_phone');
	var Email = document.getElementById('f_email');
	var Address = document.getElementById('f_address');
	var City = document.getElementById('f_city');
	var Pindex = document.getElementById('f_index');
	var UserName = document.getElementById('f_username');
	var UserPassword = document.getElementById('f_password');
	var UserPassword2 = document.getElementById('f_password2');
	var test = false;
	
	if (Name && Phone && Email && Address && City && Pindex && UserName && UserPassword && UserPassword2)
	{
		if (Name.value && Phone.value && Email.value && Address.value && City.value && Pindex.value && UserName.value && UserPassword.value && UserPassword2.value)
		{
			if (!Name.value)
			{
				showTransparentLayer(txtNameNotValid, "", "", true);
				errorShown = true;
			}
			
			test = Phone.value.match(/([+0-9]{7,})/gi);
			
			if (!test && !errorShown)
			{
				showTransparentLayer(txtPhoneNotValid, "", "", true);
				errorShown = true;
			}
			else
			{
				Phone.value = test[0];
			}
			
			test = Email.value.match(/([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]{2,64}\.[a-zA-Z0-9._-]{2,})/gi);
			
			if (!test && !errorShown)
			{
				showTransparentLayer(txtEmailNotValid, "", "", true);
				errorShown = true;
			}
			else if (test)
			{
				Email.value = test[0];
			}
			
			if (!Address.value && !errorShown)
			{
				showTransparentLayer(txtAddressNotValid, "", "", true);
				errorShown = true;
			}
			
			if (!City.value && !errorShown)
			{
				showTransparentLayer(txtCityNotValid, "", "", true);
				errorShown = true;
			}
			
			if (!Pindex.value && !errorShown)
			{
				showTransparentLayer(txtPindexNotValid, "", "", true);
				errorShown = true;
			}
			
			test = UserName.value.match(/([a-zA-Z0-9_-]{6,12})/gi);
			
			if (!test && !errorShown)
			{
				showTransparentLayer(txtUserNameNotValid, "", "", true);
				errorShown = true;
			}
			else if (test)
			{
				var oldValue = UserName.value;
				UserName.value = test[0];
				if (oldValue != UserName.value && !errorShown)
				{
					showTransparentLayer(txtUserNameTrunkated, "", "", true);
					errorShown = true;
				}
			}
			
			if (UserPassword.value == UserPassword2.value)
			{
				test = UserPassword.value.match(/([a-zA-Z0-9_-]{6,12})/gi);
				
				if (!test && !errorShown)
				{
					showTransparentLayer(txtPasswordNotValid, "", "", true);
					errorShown = true;
				}
				else if (test)
				{
					var oldValue = UserPassword.value;
					UserPassword.value = test[0];
					if (oldValue != UserPassword.value && !errorShown)
					{
						showTransparentLayer(txtPasswordsTrunkated, "", "", true);
						errorShown = true;
						UserPassword.value = "";
						UserPassword2.value = "";
					}
				}
			}
			else
			{
				showTransparentLayer(txtPasswordsNotMatch, "", "", true);
				errorShown = true;
			}
			
			if (!errorShown)
			{
				document.forms[formID].submit();
			}
		}
		else
		{
			showTransparentLayer(txtFillAll, "", "", true);
		}
	}
}


function getNode(id)
{
	if(document.all)
	{
	    var node = document.all[id];
	}
	else if(document.layers)
	{
	    var node = document.layers[id];
	}
	else
	{
	    var node = document.getElementById(id);
	}
	if(node)return node;
}

function getParentwindowNode(id)
{
	if(document.all)
	{
	    var node = parent.document.all[id];
	}
	else if(document.layers)
	{
	    var node = parent.document.layers[id];
	}
	else
	{
	    var node = parent.document.getElementById(id);
	}
	if(node)return node;
}

function emptyNode(node)
{
    if(node)
	{
	    while(node.firstChild)
		{
		    node.removeChild(node.firstChild);
		}
	}
}

function getNodeContentWidth(node)
{
    if(node)
	{
		if(document.body.scrollWidth)
		{
			var width = node.scrollWidth;
		}
		else if(document.body.offsetWidth)
		{
			var width = node.offsetWidth;
		}
		if(width)return width;
	}
}

function getNodeContentHeight(node)
{
    if(node)
	{
		if(document.body.scrollHeight)
		{
			var height = node.scrollHeight;
		}
		else if(document.body.offsetHeight)
		{
			var height = node.offsetHeight;
		}
		if(height)return height;
	}
}

function getdocumentscrollHeight()
{
  
		if(document.body.scrollHeight)
		{
			var height = document.body.scrollHeight;
		}
		else if(document.body.offsetHeight)
		{
			var height = document.body.offsetHeight;
		}
		if(height)return height;
}

function change_gallery_main_picture(target_name, picID, SizeX, SizeY, Description){
	obj = getNode("gal_" + target_name);
	obj2 = getNode("gal_text_" + target_name);
	obj3 = getNode("gal_" + target_name + "_thumb_" + picID);
	obj4 = getNode("gal_" + target_name + "_thumb_" + current_active_gallery_picture[target_name]);
	obj.style.background = "url('/picture_w.php?ID=" + picID + "&width=" + SizeX + "&height=" + SizeY + "')";
	obj2.innerHTML = Description;
	current_active_gallery_picture[target_name] = picID;
	obj3.style.display = 'none';
	obj4.style.display = 'block';
}

function change_product_main_picture(target_name, picID, SizeX, SizeY, external){
	obj = getNode("prod_" + target_name);
	obj3 = getNode("prod_" + target_name + "_thumb_" + picID);
	obj4 = getNode("prod_" + target_name + "_thumb_" + current_active_product_picture[target_name]);
	if (external){
		obj.style.background = "url('/productpicture_w.php?ID=" + picID + "&width=" + SizeX + "&height=" + SizeY + "&external=1')";
	}else{
		obj.style.background = "url('/productpicture_w.php?ID=" + picID + "&width=" + SizeX + "&height=" + SizeY + "')";
	}
	current_active_product_picture[target_name] = picID;
	obj3.style.display = 'none';
	obj4.style.display = 'block';
}

function change_product_main_print_picture(target_name, picID, SizeX, SizeY, external){
	obj = getNode("prod_" + target_name);
	obj3 = getNode("prod_" + target_name + "_thumb_" + picID);
	obj4 = getNode("prod_" + target_name + "_thumb_" + current_active_product_picture[target_name]);
	if (external){
		obj.style.background = "url('/productpicture_w.php?ID=" + picID + "&width=" + SizeX + "&height=" + SizeY + "&external=1&bg=ffffff')";
	}else{
		obj.style.background = "url('/productpicture_w.php?ID=" + picID + "&width=" + SizeX + "&height=" + SizeY + "&bg=ffffff')";
	}
	current_active_product_picture[target_name] = picID;
	obj3.style.display = 'none';
	obj4.style.display = 'block';
}

function move_content(obj_name, direction){
	var step = 0;
	
	obj = getNode(obj_name);
	if (direction == "right"){
		step = 10;
	}else{
		step = -10;
	}
	obj.scrollLeft = obj.scrollLeft + step;
	scrolltimer = window.setTimeout("move_content('"+obj_name+"', '"+direction+"')", 10);
}

function stopmove_content()
{
	clearTimeout(scrolltimer);
}

function stopRotation()
{
	clearTimeout(timer);
	StopRotation = true;
}

function startMenuChange(ID)
{
	for (i=1; i<=MenuItems.length; i++)
	{
		var nodeDiv = getNode('bottom_bg' + ID);
		if (i == ID && ShowHide[i] == 0 && nodeDiv)
		{
			MenuItems[i] = 1;
			clearTimeout(MenuTimers[i]);
			ShowHide[i] = 1;
			doFade(i);
		}
		else if(nodeDiv && ShowHide[i] == 1 && i != ID)
		{
			clearTimeout(MenuTimers[i]);
			ShowHide[i] = 0;
			doFade(i);
		}
	}
}

function doFade(Startelement)
{
	var currentfade = Fades[Startelement];
	if (ShowHide[Startelement] == 0)
	{
		currentfade += 2;
		if(currentfade >= 100)
		{
			currentfade = 100;
			clearTimeout(MenuTimers[Startelement]);
		}
	}
	else
	{
		currentfade += -2;
		if(currentfade <= 0)
		{
			currentfade = 0;
			clearTimeout(MenuTimers[Startelement]);
		}
	}
	Fades[Startelement] = currentfade;
	setFade('bottom_bg'+Startelement, 100 - currentfade);
	setFade('bottom_menu'+Startelement, 100 - currentfade);
	MenuTimers[Startelement] = window.setTimeout("doFade("+Startelement+")", 10);
}

function setFade(objectname, fade)
{
    var object = document.getElementById(objectname);
    if(object)
    {
    	if (fade > 0 && object.style.display == 'none')
    	{
    		object.style.display = 'block';
    	}
        if(OpacityName == "opacity"){
            object.style.opacity = fade / 100;
        }else if(OpacityName == "MozOpacity"){
        	object.style.MozOpacity = fade / 100;
        }else if(OpacityName == "KhtmlOpacity"){
        	object.style.KhtmlOpacity = fade / 100;
        }else if(OpacityName == "filter"){
        	var oAlpha = object.filters['DXImageTransform.Microsoft.alpha'] || object.filters.alpha;
			if (oAlpha) oAlpha.opacity = fade;
			else object.style.filter += "progid:DXImageTransform.Microsoft.Alpha(style=0, opacity="+fade+", FinishOpacity="+fade+")";
        }
        if (fade == "0")
        {
        	object.style.display = 'none';
        }
    }
}

function doOnLoad()
{
	OpacityName = getOpacityProperty();
	preload_pictures();
}

function changeMainPicture(id)
{
	Current = id;
	var nodePictureRotation = getNode(divPrefix + strExistingpictureID);
	var nodePicture = getNode(divPrefix + yourImagesID[id]);
	if (nodePictureRotation)
	{
		setFade2(divPrefix + strExistingpictureID, 0);
		nodePictureRotation.style.display = 'none';
	}
	setFade2(divPrefix + yourImagesID[id], 100);
	nodePicture.style.display = 'block';
	strExistingpictureID = yourImagesID[id];
}

function closeLeftMenu()
{
	var nodeMenu = getNode('left_menu_block');
	var nodeInfo = getNode('product_info_block');
	CurrentOffset = parseInt(CurrentOffset*1.1 + 1);
	if (nodeInfo && Fade > 0)
	{
		Fade = Fade - parseInt(CurrentOffset*0.8);
		if (Fade < 0)
			Fade = 0;
		setFade('product_info_block', Fade)
	}
	nodeMenu.style.left = '-' + CurrentOffset + 'px';
	if (CurrentOffset < 223)
		window.setTimeout("closeLeftMenu()", 10);
	else
		getNode('open_menu_button').style.display = 'block';
}

function openLeftMenu()
{
	var nodeMenu = getNode('left_menu_block');
	var nodeInfo = getNode('product_info_block');
	CurrentOffset = parseInt(CurrentOffset*0.9 - 1);
	if (nodeInfo && Fade < 80)
	{
		Fade = Fade - parseInt(CurrentOffset*0.8) + 80;
		if (Fade < 0)
			Fade = 0;
		if (Fade > 80)
			Fade = 80;
		setFade('product_info_block', Fade)
	}
	nodeMenu.style.left = '-' + CurrentOffset + 'px';
	if (CurrentOffset > 0)
	{
		window.setTimeout("openLeftMenu()", 10);
		getNode('open_menu_button').style.display = 'none';
	}
	else
	{
		nodeMenu.style.left = '0px';
	}
}

function show_content(ID)
{
	var nodeContent = getNode('product_info_block');
	nodeContent.innerHTML = Subcontent[ID];
}

function showNext()
{
	if (NextArr[Current])
	{
		changeMainPicture(NextArr[Current]);
	}
}

function showPrev()
{
	if (PrevArr[Current])
	{
		changeMainPicture(PrevArr[Current]);
	}
}

function getOpacityProperty(){
  if (typeof(document.body.style.opacity) == 'string') // CSS3 compliant (Moz 1.7+, Safari 1.2+, Opera 9, IE7)
    return 'opacity';
  else if (typeof(document.body.style.MozOpacity) == 'string') // Mozilla 1.6 && less, Firefox 0.8 
    return 'MozOpacity';
  else if (typeof(document.body.style.KhtmlOpacity) == 'string') // Konqueror 3.1, Safari 1.1
    return 'KhtmlOpacity';
  else if (document.body.filters && navigator.appVersion.match(/MSIE ([\d.]+);/)[1] >= 5.5 )// Internet Exploder 5.5+
    	return 'filter';
  return false;
}

	function checkIt(string){
		var detect = navigator.userAgent.toLowerCase();
		place = detect.indexOf(string) + 1;
		thestring = string;
		return place;
    }

	function preload_pictures(){
		for (i = 0; i < yourImages.length; i++) {
			preImages[i] = new Image();
			preImages[i].src = yourImages[i];
			loadingCounter[i] = 0;
		}
		checkLoad();
	}
	
	function checkLoad() {
		if (currCount == yourImages.length) { 
			if (currCount > 1) timer = window.setTimeout("startPictureChange()", changedelay);
			return;
		}
		for (i = 0; i < yourImages.length; i++){
			loadingCounter[i] = loadingCounter[i] + 20;
			if (loadingCounter[i] > 10000){
				var forse_load = true;
			}else{
				var forse_load = false;
			}
			var obj = document.getElementById(divPrefix + i);
			if ((preImages[i].complete || forse_load) && loaded[i] == false){
				loaded[i] = true;
				if (checkIt('msie') && browserVer < 7){
					var nodeImage = document.createElement("img");
					nodeImage.id = picPrefix + i;
					nodeImage.src = preImages[i].src;
				    nodeImage.style.width = '998px';
				    nodeImage.style.height = '512px';
				    nodeImage.style.display = 'block';
				    obj.appendChild(nodeImage);
				}else{
	    			preImages[i].id = picPrefix + i;
	    			preImages[i].style.width = '998px';
				    preImages[i].style.height = '512px';
					obj.appendChild(preImages[i]);
				}
				if (i > 0){
					hide_object(obj);
				}
				currCount++;
			}
		}
		timerID = setTimeout("checkLoad()",20);
	}
	
	function startPictureChange(){
		updateImages();
	}

	function updateImages(){
		var strStartelement = divPrefix + strExistingpictureID;
		var nodePicture1 = document.getElementById(strStartelement);
		var next = strExistingpictureID + 1;
		nodePicture1.style.zIndex = 10; //for 1 pic fade only
		if (yourImages[next]){
			var nodePicture2 = document.getElementById(divPrefix + next);
			var strEndelement = divPrefix + next;
			strExistingpictureID = next;
		}else{
			var nodePicture2 = document.getElementById(divPrefix + '0');
			var strEndelement = divPrefix + '0';
			strExistingpictureID = 0;
		}
		Currentfade = 0;
		nodePicture2.style.zIndex = 2; //for 1 pic fade only
		
		show_object(nodePicture2);
		doFade2(strStartelement, strEndelement);
		setFade2(strEndelement, 100); //for 1 pic fade only
	}
	
	function doFade2(strStartelement, strEndelement)
    {
        if(Currentfade < 100)
        {
            Currentfade += 2;
			setFade(strStartelement, 100 - Currentfade);
            window.setTimeout("doFade2('"+strStartelement+"', '"+strEndelement+"')", 30);
        }else{
        	var object = document.getElementById(strStartelement);
        	if (object){
        		hide_object(object);
        		if (!StopRotation)
        		timer = window.setTimeout("startPictureChange()", changedelay);
        		if(Selected)
        		{
        			getNode(Selected).className = '';
        		}
        		getNode(yourImagesThumbs[strExistingpictureID]).className = 'current_thumbnail';
        		Selected = yourImagesThumbs[strExistingpictureID];
        	}
        }
    }
	
    function setFade2(objectname, fade)
    {
        var object = document.getElementById(objectname);

        if(object)
        {
                if(OpacityName == "opacity"){
                    object.style.opacity = fade / 100;
                }else if(OpacityName == "MozOpacity"){
                	object.style.MozOpacity = fade / 100;
                }else if(OpacityName == "KhtmlOpacity"){
                	object.style.KhtmlOpacity = fade / 100;
                }else if(OpacityName == "filter"){
                	var oAlpha = object.filters['DXImageTransform.Microsoft.alpha'] || object.filters.alpha;
					if (oAlpha) oAlpha.opacity = fade;
					else object.style.filter += "progid:DXImageTransform.Microsoft.Alpha(style=0, opacity="+fade+", FinishOpacity="+fade+")";
                }
        }
    }

	function hide_object(obj){
		if(obj)
        {
                if(OpacityName == "opacity"){
                    obj.style.opacity = 0;
                }else if(OpacityName == "MozOpacity"){
                	obj.style.MozOpacity = 0;
                }else if(OpacityName == "KhtmlOpacity"){
                	obj.style.KhtmlOpacity = 0;
                }else if(OpacityName == "filter"){
                    obj.style.filter = "progid:DXImageTransform.Microsoft.Alpha(opacity=0)";
                }
                obj.style.display = "none";
        }
	}
	
	function show_object(obj){
		if(obj)
        {
           obj.style.display = "block";
        }
	}
	
	function addMouseOver (elem, action)
	{
		elem.onmouseover = function ()
		{
			eval(action);
		}
	}
	
	function addMouseOut (elem, action)
	{
		elem.onmouseout = function ()
		{
			eval(action);
		}
	}
	
	var ddHandler = 
		{
			dropDowns : new Object(),
			vLists : new Object(),
			dClasses : new Object
				({
					'mouseover' : 'dropDownButtonHover',
					'mouseout'	: 'dropDownButtonRegular',
					'mousedown'	: 'dropDownButtonDown',
					'mouseup'		: 'dropDownButtonHover'
				}),
			dBodyCls : 'dropDownBody',
			dListCls : 'dropDownVisibleList',
			dListCCls: this.dListCls + 'Content',
			selCls : 'dropDownSelected',
			recieve : function (i, e)
			{
				var event 	= e ? e : window.event;
				var parent	= i.parentNode;
				
				this.changeCls(i, event['type']);
				
				if ('mousedown' == event['type']) this.showDataList(parent);
			},
			changeCls : function (i, key)
			{
				var clses = i.className.split(' ');
				
				i.className = clses[0] + ' ' + this.dClasses[key];
			},
			register : function (id)
			{
				var datalist = this.dataList(document.getElementById(id + 'DataList').getElementsByTagName('p'));
				
				this.dropDowns[id] = new Object
					({
						'selected' 	: datalist[0],
						'datalist' 	: datalist[1],
						'refBody'		: this.findBody(id)
					});
					
				this.changeSelected(id, datalist[0]);
			},
			registerDropDowns : function ()
			{
				var elems = document.getElementsByClassName2('dropDownContainer', 'div');
				var ddID;
				
				for (var x = 0 ; x < elems.length ; x++)
				{
					ddID = elems[x].id;
					
					if ('undefined' == typeof(this.dropDowns[ddID])) this.register(ddID);
				}
			},
			dataList : function (nodes)
			{
				var dataList = new Array();
				var selected;
				var id;
				
				for (var x = 0 ; x < nodes.length ; x++)
				{
					id = nodes[x].id.split('_');
					dataList[id[1]] = nodes[x].innerHTML;
					
					if (this.selCls == nodes[x].className) selected = id[1];
				}
				
				return [(selected) ? selected : false, dataList];
			},
			findBody : function (id)
			{
				var nodes = document.getElementById(id).getElementsByTagName('div');
				
				for (var x = 0 ; x < nodes.length ; x++)
				{
					if (this.dBodyCls == nodes[x].className) return nodes[x];
				}
				
				return false;
			},
			getDecoration : function (id)
			{
				return '<div class="dropDownListTopLeft"></div><div class="dropDownListTop"></div><div class="dropDownListTopRight"></div><div class="dropDownListSideLeft"></div><div id="' + id + 'Content" class="dropDownListContent"></div><div class="dropDownListSideRight"></div><div class="dropDownListBottomLeft"></div><div class="dropDownListBottom"></div><div class="dropDownListBottomRight"></div>';
			},
			showDataList : function (i)
			{
				var elmID = i.id + 'VisibleList';
				
				if (!document.getElementById(elmID))
				{
					var pos = findPos(i);
					var elm = document.createElement('div');
					var dat = this.dropDowns[i.id]['datalist'];
					var opt;
					
					elm.id						= elmID;
					elm.className 		= this.dListCls;
					elm.style.width 	= i.offsetWidth + 'px';
					elm.style.top			= pos[1] + 2 + i.offsetHeight + 'px';
					elm.style.left		= pos[0] + 'px';
					elm.innerHTML			= ddHandler.getDecoration(elmID);
					
					elm.onmousedown = function ()
					{
						var action		= document.getElementById(i.id + 'Change').value;
						var postValue = ddHandler.dropDowns[i.id]['selected'];
						
						if ('undefined' != typeof(postValue)) document.getElementById(i.id + 'Value').value = postValue;
						if ('undefined' != typeof(postValue) && '' != postValue) eval(action);
						
						ddHandler.removeDataLists(i.id);
					}
					
					document.body.appendChild(elm);
					
					this.vLists[i.id] = 1;
					
					for (var x in dat)
					{
						opt = document.createElement('div');
						opt.className = 'dropDownItem';
						opt.innerHTML = dat[x];
						opt.style.width = elm.offsetWidth - 13 + 'px';
						
						if (false !== this.dropDowns[i.id]['selected'] && this.dropDowns[i.id]['selected'] == x) opt.className = 'dropDownItemOver';
						
						addMouseOver(opt, "this.className = 'dropDownItemOver'; ddHandler.changeSelected('" + i.id + "', '" + x + "');");
						addMouseOut(opt, "this.className = 'dropDownItem'; ddHandler.changeSelected('" + i.id + "', false);");
						
						document.getElementById(elmID + 'Content').appendChild(opt);
					}
				}
				else
				{
					this.removeDataLists(i.id);
				}
			},
			changeSelected : function (id, sel)
			{
				this.dropDowns[id]['selected'] = sel;
				this.dropDowns[id]['refBody'].innerHTML = (false !== sel) ? this.dropDowns[id]['datalist'][this.dropDowns[id]['selected']] : '';
			},
			removeDataLists : function ()
			{
				var elmID;
				
				if (0 != arguments.length)
				{
					for (var x = 0 ; x < arguments.length ; x++)
					{
						elmID = arguments[x] + 'VisibleList';
						
						document.body.removeChild(document.getElementById(elmID));
						this.vLists[arguments[x]] = 0;
					}
				}
				else
				{
					for (var x in this.vLists)
					{
						if (1 == this.vLists[x])
						{
							elmID = x + 'VisibleList';
							
							document.body.removeChild(document.getElementById(elmID));
							this.vLists[x] = 0;
						}
					}
				}
			}
		};
		
	function showHide (elmID, type)
	{
		var elm = document.getElementById(elmID);
		
		if (!type) var type = 'block';
		else if ('empty' == type) type = '';
		
		elm.style.display = type == elm.style.display ? 'none' : type;
	}
	
	function showHideElements ()
	{
		for (var x = 0 ; x < arguments.length ; x++)
		{
			showHide(arguments[x], 'empty');
		}
	}
		
	var cbHandler = 
		{
			clsSel : 'checkBoxChecked',
			clsReg : 'checkBox',
			valDump : '.dump',
			groupActions : new Object(),
			selected : new Object(),
			groupTypes : new Object(),
			selElements : new Array(),
			
			_radio : 0,
			_check : 1,
			
			mousedown : function (i)
			{
				var group = (-1 != i.id.indexOf('_')) ? i.id.split('_')[0] : i.id;

				if (i.id != this.selected[group] || this._check == this.groupTypes[group])
				{
					this.handleGroup(i.id, group);
					this.changeClass(i);
					
					if ('undefined' != typeof(this.groupActions[group])) eval(this.groupActions[group]);
				}
			},
			dumpValue : function (group, value)
			{
				if (document.getElementById(group + '_' + this.valDump))
				{
					document.getElementById(group + '_' + this.valDump).value = value;
				}
			},
			changeClass : function (i)
			{
				switch (i.className)
				{
					case this.clsSel: i.className = this.clsReg; break;
					case this.clsReg: i.className = this.clsSel;
				}
			},
			traverseGroup : function (group)
			{
				var _group;
				var elm;
				
				for (var x in this.selElements)
				{
					elm			= this.selElements[x];
					_group 	= (-1 != elm.id.indexOf('_')) ? elm.id.split('_')[0] : elm.id;
					
					if (_group == group)
					{
						this.selected[group] = elm.id;
						this.dumpValue(group, elm.id.split('_')[1]);
						
						delete this.selElements[x];
					}
				}
			},
			handleGroup : function (id, group)
			{
				var prev = this.selected[group];
				var val;
				
				if (document.getElementById(prev) && this._radio == this.groupTypes[group])
				{
					this.changeClass(document.getElementById(prev));
				}
				
				if (prev == id && this._check == this.groupTypes[group])
				{
					this.selected[group] = 0;
					this.dumpValue(group, '');
				}
				else
				{
					val = id.split('_')[1];
					
					this.selected[group] = id;
					this.dumpValue(group, val);
				}
			},
			setGroupAction : function (group, action)
			{
				if (group) this.groupActions[group] = action;
			},
			define : function ()
			{
				this.selElements = document.getElementsByClassName2(this.clsSel, 'div');

				var groups = arguments;
				
				for (var x = 0 ; x < groups.length ; x++)
				{
					this.groupTypes[groups[x][0]] = groups[x][1];
					this.traverseGroup(groups[x][0]);
				}
			}
		};
		
	document.onkeydown = function (e)
	{
		var keyCode;
		
		if (window.event) keyCode = window.event.keyCode;
		else if (e) keyCode = e.which;
		
		if (27 == keyCode) ddHandler.removeDataLists();
	}