function parse_url (str, component) 
{
	var o = {
		strictMode: false,
		key: ["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],
		q: {
			name:	"queryKey",
			parser: /(?:^|&)([^&=]*)=?([^&]*)/g
		},
		parser: {
			strict: /^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,
			loose:  /^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/\/?)?((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/ // Added one optional slash to post-protocol to catch file:/// (should restrict this)
		}
	};
	var m   = o.parser[o.strictMode ? "strict" : "loose"].exec(str),
	uri = {},
	i   = 14;
	while (i--) {uri[o.key[i]] = m[i] || "";}

	uri[o.q.name] = {};
	uri[o.key[12]].replace(o.q.parser, function ($0, $1, $2) {
	if ($1) uri[o.q.name][$1] = $2;
	});
	return uri;
}

function fixPNG(element)
{
	if(/MSIE (5\.5|6).+Win/.test(navigator.userAgent))
	{
		var src;
		if(element.tagName=='IMG')
		{
			if(/\.png$/.test(element.src))
			{
				src=element.src;
				element.src="/styles/null.gif";
			}
		}
		else
		{
			src=element.currentStyle.backgroundImage.match(/url\("(.+\.png)"\)/i);
			if(src)
			{
				src=src[1];
				element.runtimeStyle.backgroundImage="none";
			}
		}
		if(src)
			element.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "',sizingMethod='scale')";
	}
}
/*
function MyURLEncode(str)
{
	var ret = '';

	for (i=0; i<str.length; i++)
	{
		var n = str.charCodeAt(i);
		if (n >= 0x410 && n <= 0x44F)
			n -= 0x350;
		else
			if (n == 0x451)
				n = 0xB8;
			else
				if (n == 0x401)
					n = 0xA8;
		if ((n < 65 || n > 90) && (n < 97 || n > 122) && n < 256)
		{
			if (n < 16)
				ret += '%0'+n.toString(16);
			else
				ret += '%'+n.toString(16);
		}
		else
			ret += String.fromCharCode(n);
	}
	return ret;
}
*/
function js_set_cookies(name,value,path,reload)
{
	var str=name+"="+value+"; domain="+document.domain+"; path="+path;
	document.cookie=str;
	if(reload)
		document.location.reload();
}

function js_set_cookies_noreload(name, value,expires)
{
	var today = new Date();
	var expires_date = new Date( today.getTime() + 1000*expires );
	var str=name+"="+value+"; expires=" + expires_date.toGMTString()+"; domain="+document.domain+"; path=/";
	document.cookie=str;
}

function js_get_cookies(name)
{
	if(document.cookie.length>0)
	{
		c_start=document.cookie.indexOf(name + "=")
		if(c_start!=-1)
		{
			c_start=c_start + name.length+1
			c_end=document.cookie.indexOf(";",c_start)
			if (c_end==-1) c_end=document.cookie.length
			return document.cookie.substring(c_start,c_end);
		}
	}
	return "";
}

function fstyle(name,style,value)
{
	if(document.getElementById(name))
		document.getElementById(name).style[style]=value;
}

function trim(str, charlist)
{
    return ltrim(rtrim(str, charlist), charlist);
}

function ltrim(str, charlist)
{
	if(!charlist)
		charlist = "\\s";
	return str.replace(new RegExp("^[" + charlist + "]+", "g"), "");
}

function rtrim(str, chars)
{
	if(!charlist)
		charlist = "\\s";
	return str.replace(new RegExp("[" + charlist + "]+$", "g"), "");
}

function number_format(number, decimals, dec_point, thousands_sep)
{
	var x = Math.round(number*Math.pow(10,decimals));
	var y = (''+Math.abs(x)).split('');
	var z = y.length - decimals;
	if(z<0) z--;

	for(var i=z; i<0; i++)
		y.unshift('0');
	if(!dec_point)
		dec_point='.';
	y.splice(z,0,dec_point);
	if(Math.abs(number)<1 && x)
		y.unshift('0');
	if(!thousands_sep)
		thousands_sep=" ";
	for(var i=z;i>3;i-=3)
		y.splice(i-3,0,thousands_sep);
	return ((x<0)?'-':'')+y.join('');
}

function fadedel(id,pid)
{
	var elem;

	if(!(elem=document.getElementById(id)))
		return;
	if(!elem.opacityfilter)
	{
		elem.style.backgroundColor="#ffa0a0";
		elem.opacityfilter=1;
		elem.opacity=100;
	}
	opacity=elem.opacity
	if(elem.opacity > 0)
	{
		elem.opacity-=5;
		if(elem.filters && elem.filters.alpha)
			elem.filters.alpha.opacity = elem.opacity;
		else
		{
			elem.style.MozOpacity = elem.opacity/100;
			elem.style.opacity = elem.opacity/100;
		}
		setTimeout('fadedel("'+id+'","'+pid+'","+type+")', 50);
	}
	else
	{
		document.getElementById(pid).deleteRow(document.getElementById(id).rowIndex);
	}
}

/**/
function fYes(f,x)
{
	if(typeof(f)=="undefined") return (0);
	if(typeof(f.elements)=="undefined") return (0);
	if(typeof(f.elements[x])=="undefined") return (0); else return (f.elements[x]);
}

function fSet(f,x,y,type,text)
{
	var Work;
	switch((Work=fYes(f,x))?Work.type:0)
	{
	case "text":Work.value=y;break;
	case "select-one":
		if(type==1)
		{
			for(var i=0;i<Work.length;i++)
				if(Work.options[i].value==y) {Work.options[i].selected=1;break;}
			if(i==Work.length)
				Work.options[i]=new Option(text,y);
		}
		else
			Work.options[y].selected=1;
		break;
	}
}

function fGet(f,x,type,y)
{
	var Work;
	switch((Work=fYes(f,x))?Work.type:0)
	{
	case "text":return(Work.value);
	case "select-one":
		switch(type)
		{
		case 0:
			return(Work.selectedIndex);
		case 1:
			return(Work.options[Work.selectedIndex].text);
		case 2:
			return(Work.options[Work.selectedIndex].value);
		case 3:
			for(var i=0;i<Work.length;i++)
				if(Work.options[i].value==y) return i;
			return false;
		}
	}
	return (0);
}

function FGet(f,x,type)
{
	var Work;
	switch((Work=fYes(f,x))?Work.type:0)
	{
	case "text":return(Work.value);
	case "select-one":
		switch(type)
		{
		case 'elem':
			return(Work.options[Work.selectedIndex]);
		case 'value':
			return(Work.options[Work.selectedIndex].value);
		case 'text':
			return(Work.options[Work.selectedIndex].text);
		case 'index':
			return(Work.selectedIndex);
		}
	}
	return (0);
}

function form_clean(f)
{
	var i,j;
	for(i=0;i<f.length;i++)
	{
		e=f.elements[i];
		switch(e.type)
		{
		case "text":
			e.value='';
			break;
		case "select-one":
			if(!e.length)
				break;
			e.options[0].selected=1;
			break;
		}
	}
}

function is_number(sText)
{
	var ValidChars = "0123456789.,";
	var Char;

   	for(var i=0;i<sText.length;i++)
	{
		Char = sText.charAt(i);
		if (ValidChars.indexOf(Char) == -1)
			return false;
	}
	return true;
}

function is_dmy(sText)
{
	adate = sText.split('.');
	if(adate.length!=3)
		return false;
	for(i=0;i<3;i++)
	{
		adate[i]=parseInt(adate[i],10);
		if(isNaN(adate[i]) || adate[i]<=0)
			return false;
	}
	odate=new Date(adate[2],adate[1]-1,adate[0]);
	if(odate.getDate()!=adate[0] || odate.getMonth()!=(adate[1]-1) || odate.getFullYear()!=adate[2])
		return false;
	return true;
}


function intformat(n,m)
{
	var s=""+n;
	if(s.length>=m)
		return s;
	//add m-s.length '0'
	var r="";
	for(ii=0;ii<m-s.length;ii++)
		r+="0";
	r+=s;
	return r;
}

var floatpoint='.';

function floatformat(n,m)
{
	res='0.00';
	var s=""+n;
	var idot=s.indexOf(".");
	if(s.length<=0)
		res="0.00";
	else
		if(idot<0)
			res=s+".00";
		else
			if(idot==s.length-1)
				res=s+"00";
			else
				if(idot==s.length-2)
					res=s+"0";
				else
					res=s.substring(0,idot+m+1);
	if(floatpoint!='.')
	{
		nres='';
		for(j=0;j<res.length;j++)
		{
			if(res.charAt(j)=='.'){nres+=',';continue;}
			nres+=res.charAt(j);
		}
		return nres;
	}
	return res;
}

function offsetx(e)
{
	var x = e.offsetLeft;
	for(var i=e.offsetParent; i; i=i.offsetParent) x+=i.offsetLeft;
	return x;
}

function offsety(e)
{
	var y = e.offsetTop;
	for(var i=e.offsetParent; i; i=i.offsetParent)y+=i.offsetTop;
	return y;
}

function date_parse(sdate)
{
	var adate = sdate.split('.');
	if(adate.length!=3)
		return 1;
	for(var i=0;i<3;i++)
	{
		adate[i]=parseInt(adate[i],10);
		if(isNaN(adate[i]) || adate[i]<=0)
			return 2;
	}
	var odate=new Date(adate[2],adate[1]-1,adate[0]);
	if(odate.getDate()!=adate[0] || odate.getMonth()!=(adate[1]-1) || odate.getFullYear()!=adate[2])
		return 3;
	return odate;
}

var stormDialog=null;
var stormDialogForm=null;
var stormDialogField=null;
var stormDialogElem=null;

function storm_showModalDialog(url,param)
{
	if(stormDialog==null || stormDialog.closed)
	{
		stormDialog=window.open (url,'stormdialog',param);
		if(stormDialog==null)
		{
			alert('Cannot open dialog window');
			return;
		}
	}
	stormDialog.window.focus();
}
function dialog_param(parentelem,w,h)
{
	return "left="+(screen.availWidth-w)/2+",top="+(screen.availHeight-h)/2+",width="+w+", height="+h+", center=yes, help=no, resizable=yes, status=no";
}

function dialog_open(parentelem,ename,fname,href,w,h)
{
	stormDialogForm=fname;
	stormDialogField=ename;
	stormDialogElem=document.forms[fname].elements[ename];
	param=dialog_param(parentelem,w,h);
	storm_showModalDialog(href,param);
}


function c_ajax()
{
	this.request=false;
	if(window.XMLHttpRequest)
		this.request = new XMLHttpRequest();
	else
		if(window.ActiveXObject)
		{
			this.request = new ActiveXObject("Microsoft.XMLHTTP");
			if(!this.request)
				this.request = new ActiveXObject("Msxml2.XMLHTTP");
		}
	if(!window.a_ajax)
		window.a_ajax=new Array();
	this.numb=a_ajax.length;
	a_ajax[this.numb]=this;
}

c_ajax.prototype.exec = function()
{
	if(!this.hand)
		return;
	if(!this.request)
		return;
	if(this.request.readyState == 4)
		if(this.request.status == 200 || this.request.status == 304)
			this.hand(this,this.request.responseText);
}

c_ajax.prototype.post = function(s_url,f_hand,a_data)
{
	var s_data='';

	if(!this.request)
		return false;
	if(a_data)
		for(var name in a_data)
			s_data+=encodeURIComponent(name)+"="+encodeURIComponent(a_data[name])+"&";
	if(f_hand)
		this.hand=f_hand;
	var numb = this.numb;
	this.request.onreadystatechange = function(){a_ajax[numb].exec();}
	this.request.open("POST",s_url,true);
	this.request.setRequestHeader("X-Referrer",document.location);
	this.request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	this.request.setRequestHeader("Content-length", s_data.length);
	this.request.setRequestHeader("Connection", "close");
	this.request.send(s_data);
	return true;
}

c_ajax.prototype.get = function(s_url,f_hand,a_data)
{
	var s_data='';

	if(!this.request)
		return false;
	if(a_data)
		for(var name in a_data)
			s_data+=encodeURIComponent(name)+"="+encodeURIComponent(a_data[name])+"&";
	if(f_hand)
		this.hand=f_hand;
	var numb = this.numb;
	this.request.onreadystatechange = function(){a_ajax[numb].exec();}
	if(s_data)
		if(s_url.indexOf("?")==-1)
			s_url=s_url+'?'+s_data;
		else
			s_url=s_url+'&'+s_data;
	this.request.open("GET",s_url,true);
	this.request.setRequestHeader("X-Referrer",document.location);
	this.request.send(null);
	return true;
}

function comment_submit(f,lang)
{
	var load=new c_ajax();
	load.form=f;
	load.lang=lang;
	load.data=new Array();
	load.data['TEXT']=f.elements['TEXT'].value;
	load.data['PATH']=f.elements['PATH'].value;
	if(f.elements['MAIL'])
		load.data['MAIL']=f.elements['MAIL'].value;
	if(f.elements['NAME'])
		load.data['NAME']=f.elements['NAME'].value;
	load.post("/users/register/comment.html",comment_submit_hand,load.data);
}

function comment_submit_hand(ajax,text)
{
	if(text=='OK')
	{
		ajax.form.elements['TEXT'].value='';
		comment_box();
		if(ajax.lang=='ru')
			alert('Спасибо! Ваш комментарий будет опубликован после проверки администрацией сайта');
		else
			if(ajax.lang=='uk')
				alert('Дякуємо! Ваш коментарій буде опублікований після перевірки адміністрацією сайту');
			else
				alert('Thank you!');
		return;
	}
	alert(text);
}

function comment_box()
{
	if(!document.getElementById("commentbox"))
		return;
	if(document.getElementById("commentbox").style.display=="block")
		document.getElementById("commentbox").style.display="none";
	else
		document.getElementById("commentbox").style.display="block";
}

/**/
var IE=(window.navigator.appName=="Microsoft Internet Explorer");

function js_set_event(element, eventName, handler)
{
	  if(element.addEventListener)
			element.addEventListener(eventName, handler, false);
	  else
		if(element.attachEvent)
			element.attachEvent('on' + eventName, handler);
}

function onload_linkthis()
{
	var href=document.location.href;

	for(var i=0;i<document.links.length;i++)
	{
		if(document.links[i].className == "link" && href == document.links[i].href)
		{
			document.links[i].className="this";
		}
	}
}

function go(h)
{
	document.location=h;
}

function c_backet()
{
	this.cookie='NULL';
	this.order_sum=0;
	this.field=0;
	this.cost=new Array();
	this.count=new Array();
	this.prod=new Array();

	this.downcode=0;
	this.downnumb=0;
	
	this.delivery_name=new Array();
	this.delivery_cost=new Array();
	this.delivery=js_get_cookies("DELIVERY");
	if(!this.delivery)
		this.delivery=50;
		
}

var backet=new c_backet();

c_backet.prototype.delivery_add = function (id,name,cost)
{
	this.delivery_name[id]=name;
	this.delivery_cost[id]=cost;
}
c_backet.prototype.delivery_click = function(type)
{
	$.cookie('DELIVERY',type);
	this.delivery=type;
	
	$('input[name=S_USER_ADDRESS_CITY]').css({'background':'#ffffff'});
	$('input[name=S_USER_ADDRESS_INDEX]').css({'background':'#ffffff'});
	$('input[name=S_USER_ADDRESS]').css({'background':'#ffffff'});
	$('input[name=S_USER_NAME]').css({'background':'#ffffff'});
	$('input[name=S_USER_TEL]').css({'background':'#ffffff'});
	
	$('input[name=S_USER_EMAIL]').css({'background':'#ffffff'});
	$('input[name=S_USER_PASSWORD]').css({'background':'#ffffff'});
	$('input[name=S_USER_PASSWORD_WORK]').css({'background':'#ffffff'});

	type=type*1;
	switch(type)
	{
	case 10: //Автолюкс 		На склад перевозчика
	case 20: //Ин-Тайм 			На склад перевозчика
	case 30: //Ночной Экспресс	На склад перевозчика
		break;
	case 21: //Ин-Тайм			До двери получателя
	case 31: //Ночной Экспресс	До двери получателя
	case 41: //ТНТ				До двери получателя
		$('input[name=S_USER_ADDRESS]').css({'background':'#ffe0d0'});
		break;
	case 50: //Укрпочта			В любом отделении
		$('input[name=S_USER_ADDRESS_INDEX]').css({'background':'#ffe0d0'});
		$('input[name=S_USER_ADDRESS]').css({'background':'#ffe0d0'});
		break;
	}
	$('select[name=REGION]').css({'background':'#ffe0d0'});
	
//	if(!$('input[name=S_USER_ADDRESS_CITY]').val())
		$('select[name=CITY]').css({'background':'#ffe0d0'});
	
//	if(!$.cookie('CITY'))
		//$('input[name=S_USER_ADDRESS_CITY]').css({'background':'#ffe0d0'});

	
	$('input[name=S_USER_NAME]').css({'background':'#ffe0d0'});
	$('input[name=S_USER_TEL]').css({'background':'#ffe0d0'});

	$('input[name=S_USER_EMAIL]').css({'background':'#ffe0d0'});
	$('input[name=S_USER_PASSWORD]').css({'background':'#ffe0d0'});
	$('input[name=S_USER_PASSWORD_WORK]').css({'background':'#ffe0d0'});
	
	this.fill();
}

c_backet.prototype.getfield = function()
{
	this.field++;
	return this.field;
}

c_backet.prototype.parse = function()
{
	var read=unescape(js_get_cookies('BACKET')),prod=read.split("|");
	for(var i=0;i<prod.length;i++)
	{
		var elem=prod[i].split("#");
		if(elem.length!=3 || elem[1]*1<=0)
			continue;
		this.cost[elem[0]]=elem[2]*1;
		this.count[elem[0]]=elem[1]*1;
	}
}

c_backet.prototype.sum = function()
{
	var data=0;
	
	for(prod in this.count)
		data+=this.count[prod]*this.cost[prod];
	this.order_sum=number_format(Math.round(100*data)/100.0, 2, '.',' ');

	this.delivery_summ_null=0;
	this.delivery_summ=0;
	if(this.delivery_cost[this.delivery])
		this.delivery_summ=1*this.delivery_cost[this.delivery];
	if(data*1>100)
	{
		this.delivery_summ=0;
		this.delivery_summ_null=1;
	}
	return this.order_sum;
}

c_backet.prototype.elem = function(elem,code,cost)
{
	if(elem && elem.value)
		this.count[code]=elem.value*1;
	else
		this.count[code]=0;
	this.set(code,cost,this.count[code]);
	if(elem && elem.type && elem.type=="text")
		elem.value=this.count[code];
}

c_backet.prototype.set = function(code,cost,numb)
{
	this.reload=0;
	if(!this.cost[code])
		this.reload=1;
	this.count[code]=numb;
	this.cost[code]=cost;
	if(this.count[code]<0 || isNaN(this.count[code]))
		this.count[code]=0;
	var data="BACKET=";
	for(var prod in this.count)
		if(this.count[prod]>0)
			data+=prod+'#'+this.count[prod]+'#'+this.cost[prod]+'|';
	document.cookie=data+"; path=/";
}

c_backet.prototype.add = function(code,cost,numb,fnumb)
{
	if(!this.count[code])
		this.count[code]=0;
	this.count[code]=this.count[code]*1+numb*1;
	this.set(code,cost,this.count[code]);
	if(document.forms['PRODUCT'])
	if(document.forms['PRODUCT'].elements['P_'+fnumb])
		document.forms['PRODUCT'].elements['P_'+fnumb].value=this.count[code];
	if(document.forms['PRODUCT_TAB'])
	if(document.forms['PRODUCT_TAB'].elements['P_'+fnumb])
		document.forms['PRODUCT_TAB'].elements['P_'+fnumb].value=this.count[code];
}

c_backet.prototype.get = function(code)
{
	return (this.count[code]?this.count[code]*1:0);
}

c_backet.prototype.update = function()
{
	if(this.cookie==document.cookie)
	{
		setTimeout("backet.update()",500);
		return;
	}
	this.parse();
	this.cookie=document.cookie;
	$('#BACKET_SUMM').html(backet.sum() + ' грн');
	this.fill();
	setTimeout("backet.update()",500);
}

c_backet.prototype.fill = function()
{
	$('#SUM1').html(backet.sum() + ' грн');
	$('#SUM2').html(backet.sum() + ' грн');
	
	if(document.forms['PRODUCT'])
	{
		for(var i=0;i<document.forms['PRODUCT'].elements.length;i++)
		{
			var elem=document.forms['PRODUCT'].elements[i];
			if(elem.type=="text" && elem.getAttribute('prod'))
			{
				elem.value=backet.get(elem.getAttribute('prod'));
				if(elem.value*1!=0)
					elem.className="orderactv";
				else
					elem.className="order";
			}
		}
	}
	if(document.forms['PRODUCT_TAB'])
	{
		for(var i=0;i<document.forms['PRODUCT_TAB'].elements.length;i++)
		{
			var elem=document.forms['PRODUCT_TAB'].elements[i];
			if(elem.type=="text" && elem.getAttribute('prod'))
			{
				elem.value=backet.get(elem.getAttribute('prod'));
				if(elem.value*1!=0)
					elem.className="orderactv";
				else
					elem.className="order";
			}
		}
	}
	if(document.forms['ORDER'])
	{
		for(var i=0;i<document.forms['ORDER'].elements.length;i++)
		{
			var elem=document.forms['ORDER'].elements[i];
			if(elem.type=="text" && elem.getAttribute('prod'))
			{
				elem.value=backet.get(elem.getAttribute('prod'));
			}
		}
	}
	for(var code in this.count)
	{
			if(this.count[code])
				$("div[pid='S_"+code+"']").html(number_format(Math.round(100*this.count[code]*this.cost[code])/100.0, 2, '.',' ')+' грн');
			else
				$("div[pid='S_"+code+"']").html('');
	}
	$("#DELIVERY_"+this.delivery).attr("checked","checked");
	$("#DELIVERY_NAME").html(this.delivery_name[this.delivery]);
	if(this.delivery_summ_null)
		$("#DELIVERY_COST").html("<span style='color:#ff0000'>"+number_format(this.delivery_summ, 2, '.',' ')+' грн</span>');
	else
		if(this.delivery_summ)
			$("#DELIVERY_COST").html(number_format(this.delivery_summ, 2, '.',' ')+' грн');
		else
			$("#DELIVERY_COST").html('');
}

c_backet.prototype.onmousedown = function(code,cost,numb,fnumb)
{
	this.add(code,cost,numb,fnumb);
	this.downcode=code;
	this.downnumb=numb;
}
c_backet.prototype.onmouseup = function()
{
	this.downcode=0;
	this.downnumb=0;
}
c_backet.prototype.down = function(fnumb)
{
	if(this.downcode && this.downnumb)
	{
		this.add(this.downcode,this.cost[this.downcode],this.downnumb,fnumb);
		setTimeout("backet.down("+fnumb+")",200);
	}
}
c_backet.prototype.delivery_save = function(elem,field)
{
	$.cookie(field,urlencode(elem.value));
}
c_backet.prototype.delivery_city_clean = function(el)
{
	$.cookie('S_USER_ADDRESS_CITY',urlencode(el.value));
	$('select[name=CITY]').val(0);
	$("#DOR_10").hide();
	$("#DOR_20").hide();
	$("#DOR_30").hide();
	$("#DOR_21").hide();
	$("#DOR_13").hide();
	$("#DOR_41").hide();
	backet.delivery_click(50); 
}
c_backet.prototype.delivery_city = function(el)
{
	$.cookie('CITY',el?$(el).val():0);
	$.post(
		"/users/orders/comm.html", 
		{COMM:'LOAD_DELIVERY',CITY:el?$(el).val():0},
		function(data){
			$('#DIV_DELIVERY').html(data.html+data.mess);
			if(!$("#DELIVERY_"+backet.delivery).length) 
				backet.delivery_click(50); 
			else 
				backet.delivery_click(backet.delivery);
			if(el)
			{
				$('input[name=S_USER_ADDRESS_CITY]').val('');
				$.cookie('S_USER_ADDRESS_CITY','');
			}
		},
		"json"
		);
}

c_backet.prototype.delivery_region = function(el)
{
	$.cookie('REGION',$(el).val());
	$.cookie('CITY',0);
	$.post(
		"/users/orders/comm.html", 
		{COMM:'LOAD_DELIVERY_CITY',REGION:$(el).val()},
		function(data){
			$('select[name=CITY] option').remove();
			$('select[name=CITY]').append('<option value="">Выберите город</option>');
			for(var i in data.city)
				$('select[name=CITY]').append('<option value="'+i+'">'+data.city[i]+'</option>');
			$('#DIV_DELIVERY').html(data.html+data.mess);
			if(!$("#DELIVERY_"+backet.delivery).length) 
				backet.delivery_click(50); 
			else 
				backet.delivery_click(backet.delivery);
		},
		"json"
		);
}

function js_add_id(name,code,cost)
{
	var numb=backet.getfield();
	$("div[pid='"+name+"_"+code+"']").html('<input type="hidden" name="H_'+numb+'" value="'+code+'"><input type="text" maxlength="8" class="order" autocomplete="off" prod="'+code+'" name="P_'+numb+'" + onchange="backet.elem(this,\''+code+'\','+cost+');" value="0" onkeypress="return add_onkey(event,this,\''+code+'\','+cost+');"  onkeyup="return add_onkey(event,this,\''+code+'\','+cost+');" onfocus="add_onfocus(this,\''+code+'\','+cost+');" onblur="add_onblur(this,\''+code+'\','+cost+');" ondblclick="add_ondblclick(this,\''+code+'\','+cost+');"  >');
}

function js_add(code,cost,type)
{
	var data='',numb=backet.getfield();

	data+='<table class=null border=0 cellpadding=0 cellspacing=0 width="100%">';
	data+='<tr>';
	data+='<td><input type="hidden" name="H_'+numb+'" value="'+code+'"><input type="text" maxlength="8" class="order" prod="'+code+'" name="P_'+numb+'" + onchange="backet.elem(this,\''+code+'\','+cost+');" value="0" onkeypress="add_onkey(event,this,\''+code+'\','+cost+');" onkeyup="add_onkey(event,this,\''+code+'\','+cost+');" onfocus="add_onfocus(this,\''+code+'\','+cost+');" onblur="add_onblur(this,\''+code+'\','+cost+');" ondblclick="add_ondblclick(this,\''+code+'\','+cost+');" ></td>';
	if(type==1)
		data+='<td><img style="padding-left:10px;cursor:pointer" src="/styles/2009/del.gif"  alt="Удалить товар из корзины" title="Удалить товар из корзины" onclick="backet.set(\''+code+'\','+cost+',0); rowdel(\'ROW_'+code+'\',\'PRODTABLE\');"></td>';
	data+='<td><input type="text" maxlength="8" class="ordersumm" readonly prodsumm="'+code+'" name="S_'+numb+'"></td>';
	data+='</tr>';
	data+='</table>';
	return data;
}

function add_onfocus(e,code,cost)
{
	if(e.value==0) e.value='';
}

function add_onblur(e,code,cost)
{
	backet.fill();
}

function add_ondblclick(e,code,cost)
{
	e.value++;
	backet.set(code,cost,e.value);
}

function add_onkey(e,elem,code,cost)
{
	var unicode=e.charCode? e.charCode : e.keyCode;

	if(elem.value==0) elem.value='';
	backet.set(code,cost,elem.value*1);
	backet.fill();
	if(elem.value==0) elem.value='';
	return true;
}

function rowdel(id,pid)
{
	var elem;

	if(!(elem=document.getElementById(id)))
		return;
	document.getElementById(pid).deleteRow(document.getElementById(id).rowIndex);
}

function getid(id)
{
	if(document.getElementById(id))
		return document.getElementById(id);
	return '';
}

function js_user_order(elem)
{
	if(!document.getElementById('userorg'))
		return;
	if(elem.value==1)
		document.getElementById('userorg').style.display="block";
	else
		document.getElementById('userorg').style.display="none";
}

function settab(active,count)
{
	if(!count)count=10;
	for(var i=1;i<=count;i++)
	{
		$("#TAB_"+i).css('display','none');
		$("#TAB_LI_"+i).attr("class","passive");
	}
	$("#TAB_"+active).css('display','block');
	$("#TAB_LI_"+active).attr("class","active");
}

function recipes_show(id)
{
	$("#RC"+id).toggle(100);
	if($("#RA"+id).attr("isshow")==1)
	{
		$("#RA"+id).attr("isshow",0);
		$("#RA"+id).html('Заказать составляющие рецепта');
	}
	else
	{
		$("#RA"+id).attr("isshow",1);
		$("#RA"+id).html('Закрыть блок заказа');
	}
}

function onload_products()
{
	$(".truncate300").truncate( 300, {chars: /\s/,x_trail: [ " ( <a href='#' class='truncate_show'>more</a> . . . )", " ( . . . <a href='#' class='truncate_hide'>less</a> )" ]});
	$('select[name=REGION]').val($.cookie('REGION'));
	if(!$('select[name=REGION]').val())
	{
		$('select[name=REGION]').val(0);
		$.cookie('REGION',0);
	}

	$('select[name=CITY]').val($.cookie('CITY'));
	if(!$('select[name=CITY]').val())
	{
		$('select[name=CITY]').val(0);
		$.cookie('CITY',0);
	}

	if(!$("#DELIVERY_"+backet.delivery).length) backet.delivery_click(50); else backet.delivery_click(backet.delivery);
	
	$.cookie('RAND',Math.random());
	backet.update();
	
	var str='';
	for(var i in herbs_letter )
		if(herbs_letter[i])
			str+="<span class='l' title='Найдено "+herbs_letter[i]+" лекарственных трав на букву \""+i+"\"' onclick=\"go('/shop/herbs/?l="+i+"');\">"+i+"</span>";
		else
			str+="<span class='lp'>"+i+"</span>";
	$("#herbs_content").html(str);
}

js_set_event(window, 'load', onload_products);


function del_product(id,code)
{
	if(confirm("Вы действительно хотите удалить этот товар из заказа?"))
	{
		$.post("/admin/comm.html", 
			{COMM:'DEL_ORDER_ITEM',I_ORDER_ID:id,S_PRODUCT_CODE:code},
			function(data)
			{
				if(data.error)
				{
					alert("Код ошибки:"+data.code+".\n"+data.error);
					return;
				}
				$('input[name=N_ORDER_SUM]').val(data.N_ORDER_SUM);
				$('tr#ROW_'+code).animate({ backgroundColor: "#fbc7c7" }, "fast").animate({ opacity: "hide" }, "slow");
			},
			"json"
		);
	}
}

function change_product(id,code)
{
	var count=$('#F'+code).val();

	if(1*count<=0)
	{
		alert("Введите число");
		return;
	}
	if(confirm("Вы действительно хотите изменить количество?"))
	{
		$.post("/admin/comm.html", 
			{COMM:'CHANGE_ORDER_ITEM',I_ORDER_ID:id,S_PRODUCT_CODE:code,COUNT:count},
			function(data)
			{
				if(data.error)
				{
					alert("Код ошибки:"+data.code+".\n"+data.error);
					return;
				}
				$('input[name=N_ORDER_SUM]').val(data.N_ORDER_SUM);
			},
			"json"
		);
	}
}

function add_product(id)
{
	var count=$('#addcount').val();
	var code=$('#addcode').val();

	if(1*count<=0)
	{
		alert("Введите число");
		return;
	}
	if(confirm("Вы действительно хотите добавить товар?"))
	{
		$.post("/admin/comm.html", 
			{COMM:'ADD_ORDER_ITEM',I_ORDER_ID:id,S_PRODUCT_CODE:code,COUNT:count},
			function(data)
			{
				if(data.error)
				{
					alert("Код ошибки:"+data.code+".\n"+data.error);
					return;
				}
				document.location.reload();
			},
			"json"
		);
	}
}

function urlencode (str) {
	str = (str+'').toString();
	return encodeURIComponent(str).replace(/!/g, '%21').replace(/'/g, '%27').replace(/\(/g, '%28').replace(/\)/g, '%29').replace(/\*/g, '%2A').replace(/%20/g, '+');
}

function urldecode (str) {
	return decodeURIComponent(str.replace(/\+/g, '%20'));
}
