function getObjectBW(name) {
	if(!name || name == null) return null;
	else if(document.getElementById) return document.getElementById(name);
	else if(document.all) return document.all[name];
	else return null;
}

function onDisplay(){
	var elem_id = null;
	this.check=function(id){
		if((elem_id = getObjectBW(id))!= null){
			if(elem_id.style.display !="none") return true;
		}
		return false;
	}
	this.set=function(id, viz){
		if((elem_id = getObjectBW(id))!= null) elem_id.style.display = viz;
		return;
	}
}
var dis = new onDisplay();

var flag = 0;

function klop2(inn)
{
	var t=0;
	if( dis.check("div_"+inn) )
	{
		flag = 1;
		dis.set("div_"+inn, "none");
		if( inn.indexOf("-") < 0 )
		{
			if( !flag )
			{
				for( i in vmenu )
				{
					if( (vmenu[i].indexOf("-")<0) && (vmenu[i]!=inn) )
					{
						roll("img_"+vmenu[i], 'images/img_menu_minus0.gif');
					}
				}
			}
			roll("img_"+inn, 'images/img_menu_plus0.gif');
		}
	}
	else
	{
		if( inn.indexOf("-") < 0 )
		{
			for(i in vmenu)if((vmenu[i].indexOf("-")<0)&&(vmenu[i]!=inn))
			{
				roll("img_"+vmenu[i], 'images/img_menu_plus0.gif');
			}
			else
			{
				roll("img_"+inn, 'images/img_menu_minus0.gif');
			}
		}
		if((t=inn.lastIndexOf("-"))>0)
		{
			for(i in vmenu)
			{
				if(vmenu[i].indexOf(inn.substring(0, t)+"-") == 0)
				{
					dis.set("div_"+vmenu[i], "none");
				}
			}
		}
		dis.set("div_"+inn, "");
	}
	if( ( t=inn.lastIndexOf("-") )<0 )
	{
		for(i in vmenu)
		{
			if((vmenu[i].indexOf("-")<0)&&(vmenu[i] != inn))
			{
				dis.set("div_"+vmenu[i], "none");
			}
		}
	}
}


function preloadImg()
{
	var args = preloadImg.arguments;
	document.imageArray = new Array(args.length);
	for(var i=0; i<args.length; i++)
	{
		document.imageArray[i] = new Image;
		document.imageArray[i].src = args[i];
	}
}


function zoom_image(image,width,height)
{
	new_window=window.open("inc/zoom_image.php?img="+image,'','resizable=no,width='+(width+20)+',height='+(height+20),false);
}

// Goods & orders

function getCookieVal (offset)
{
	var endstr = document.cookie.indexOf (';', offset);
	if (endstr == -1)
		endstr = document.cookie.length;
	return unescape(document.cookie.substring(offset, endstr));
}

function GetCookie (name)
{
	var arg = name + '=';
	var alen = arg.length;
	var clen = document.cookie.length;
	var i = 0;
	while (i < clen)
	{
		var j = i + alen;
		if (document.cookie.substring(i, j) == arg)
			return getCookieVal (j);
		i = document.cookie.indexOf(' ', i) + 1;
		if (i == 0) break;
	}
	return null;
}
function SetCookie (name,value,expires,path,domain,secure)
{
	document.cookie = name + '=' + escape (value) +
		((expires) ? '; expires=' + expires.toGMTString() : '') +
		((path) ? '; path=' + path : '') +
		((domain) ? '; domain=' + domain : '') +
		((secure) ? '; secure' : '');
}

function roll(namePic, path)
{
	if (document.images[namePic])
		document.images[namePic].src=path;
}

function DeleteCookie (name,path,domain)
{
	if (GetCookie(name))
	{
		document.cookie = name + '=' +
			((path) ? '; path=' + path : '') +
			((domain) ? '; domain=' + domain : '') +
			'; expires=Thu, 01-Jan-70 00:00:01 GMT';
	}
}

function writeNumber( num, one, two, five )
{
	num+="";
	sResText = five; // по умолчанию выводим «пять дней»
	nDaysLeftLength = num.length;
	if( num.charAt(nDaysLeftLength - 2) != "1" )
	{
		if( num.charAt(nDaysLeftLength - 1) == "2" ||
			num.charAt(nDaysLeftLength - 1) == "3" ||
			num.charAt(nDaysLeftLength - 1) == "4" )
		{
			sResText = two;
		}
		else if (num.charAt(nDaysLeftLength - 1) == "1")
		{
			sResText = one;
		}
	}
	return sResText.replace( /%number%/i, num );
}

function roll_item(id)
{
	if (!navigator.cookieEnabled)
	{
		window.alert('К сожалению ваш браузер не поддерживает возможность работы с нашей системой через cookies или эта возможность отключена. Позвоните нам, и мы сможем оформить ваш заказ вручную.');
		return 0;
	}

	korzinaData=GetCookie( CART_COOKIE );
	goods_num_span = document.getElementById( "top_cart_goods" );

	var expdate = new Date ();
	expdate.setTime (expdate.getTime() + (1 * 60 * 60 * 1000)); // 1 hr from now

	if( korzinaData==null )
	{
		SetCookie(CART_COOKIE,id+'&',expdate,'/',SERVER_NAME);
		roll('korz_'+id,'images/cart_rem.gif');
		if( goods_num_span )
			goods_num_span.innerHTML="(1 товар)";
	}
	else if (korzinaData.indexOf(id+'&')==-1)
	{
		SetCookie(CART_COOKIE,korzinaData+id+'&',expdate,'/',SERVER_NAME);
		roll('korz_'+id,'images/cart_rem.gif');
		num_goods = korzinaData.split("&").length;
		if( goods_num_span )
			goods_num_span.innerHTML=writeNumber(num_goods, "(%number% товар)", "(%number% товара)", "(%number% товаров)");
	}
	else
	{
		var re=new RegExp('(&|^)'+id+'&');
		re.test(korzinaData);
		korzinaData=korzinaData.replace(re,'$1');
		SetCookie(CART_COOKIE,korzinaData,expdate,'/',SERVER_NAME);
		roll('korz_'+id,'images/cart_add.gif');
		num_goods = korzinaData.split("&").length-1;
		if( goods_num_span )
		{
			if( num_goods )
				goods_num_span.innerHTML=writeNumber(num_goods, "(%number% товар)", "(%number% товара)", "(%number% товаров)");
			else
				goods_num_span.innerHTML="(нет товаров)";
		}
	}
	return 1;
}

function roll_item1(id,btn)
{
	if (!navigator.cookieEnabled)
	{
		window.alert('К сожалению ваш браузер не поддерживает возможность работы с нашей системой через cookies или эта возможность отключена. Позвоните нам, и мы сможем оформить ваш заказ вручную.');
		return 0;
	}

	korzinaData=GetCookie( CART_COOKIE );
	goods_num_span = document.getElementById( "top_cart_goods" );

	var expdate = new Date ();
	expdate.setTime (expdate.getTime() + (1 * 60 * 60 * 1000)); // 1 hr from now

	if( korzinaData==null )
	{
		SetCookie(CART_COOKIE,id+'&',expdate,'/',SERVER_NAME);

		btn.className="btn_cart_rem";
		btn.value="Убрать";
		btn.onmouseover=function() {this.className='btn_cart_rem_mover';};
		btn.onmouseout=function() {this.className='btn_cart_rem';};

		if( goods_num_span )
			goods_num_span.innerHTML="(1 товар)";
	}
	else if (korzinaData.indexOf(id+'&')==-1)
	{
		SetCookie(CART_COOKIE,korzinaData+id+'&',expdate,'/',SERVER_NAME);

		btn.className="btn_cart_rem";
		btn.value="Убрать";
		btn.onmouseover=function() {this.className='btn_cart_rem_mover';};
		btn.onmouseout=function() {this.className='btn_cart_rem';};

		num_goods = korzinaData.split("&").length;
		if( goods_num_span )
			goods_num_span.innerHTML=writeNumber(num_goods, "(%number% товар)", "(%number% товара)", "(%number% товаров)");
	}
	else
	{
		var re=new RegExp('(&|^)'+id+'&');
		re.test(korzinaData);
		korzinaData=korzinaData.replace(re,'$1');
		SetCookie(CART_COOKIE,korzinaData,expdate,'/',SERVER_NAME);

		btn.className="btn_cart_add";
		btn.value="Добавить";
		btn.onmouseover=function() {this.className='btn_cart_add_mover';};
		btn.onmouseout=function() {this.className='btn_cart_add';};

		num_goods = korzinaData.split("&").length-1;
		if( goods_num_span )
		{
			if( num_goods )
				goods_num_span.innerHTML=writeNumber(num_goods, "(%number% товар)", "(%number% товара)", "(%number% товаров)");
			else
				goods_num_span.innerHTML="(нет товаров)";
		}
	}
	return 1;
}

function isEMailAddr(elem)
{
	var str = elem.value;
	str = str.toLowerCase( );
	if (str.indexOf("@") > 1)
	{
		var addr = str.substring(0, str.indexOf("@"));
		var domain = str.substring(str.indexOf("@") + 1, str.length);
		// at least one top level domain required
		if (domain.indexOf(".") == -1)
		{
			alert("Проверьте заполнение имени сервера в вашем e-mail.");
			return false;
		}
		// parse address portion first, character by character
		for (var i = 0; i < addr.length; i++)
		{
			oneChar = addr.charAt(i).charCodeAt(0);
			// dot or hyphen not allowed in first position; dot in last
			if( (i == 0 && (oneChar == 45 || oneChar == 46))  ||
				(i == addr.length - 1 && oneChar == 46) )
			{
				alert("Проверьте имя пользователя в вашем e-mail.");
				return false;
			}
			// acceptable characters (- . _ 0-9 a-z)
			if ( oneChar == 45 || oneChar == 46 || oneChar == 95 ||
				(oneChar > 47 && oneChar < 58) || (oneChar > 96 && oneChar < 123)) {
				continue;
			}
			else
			{
				alert("Проверьте имя пользователя в вашем e-mail.");
				return false;
			}
		}
		for (i = 0; i < domain.length; i++)
		{
			oneChar = domain.charAt(i).charCodeAt(0);
			if( (i == 0 && (oneChar == 45 || oneChar == 46)) ||
				((i == domain.length - 1  || i == domain.length - 2) && oneChar == 46))
			{
				alert("Проверьте заполнение имени сервера в вашем e-mail.");
				return false;
			}
			if( oneChar == 45 || oneChar == 46 || oneChar == 95 ||
				(oneChar > 47 && oneChar < 58) || (oneChar > 96 && oneChar < 123)) {
				continue;
			}
			else
			{
				alert("Проверьте заполнение имени сервера в вашем e-mail.");
				return false;
			}
		}
		return true;
	}
	alert("Проверьте заполнение поля e-mail.");
	return false;
}
