// Bag script v1.1 (mixed)
function showRegMessage(obj)
{
	showVoiceHint(260,77,obj,-37,0,15,'Вы автоматически опознаны системой.<br>Для просмотра и изменения данных<br>необходимо ввести свой логин и пароль.');
}

function touchLogin(obj,mode)
{
	if(mode && obj.value=='Логин') obj.value='';
	else if(!mode && (obj.value.replace(/ /g, ''))=='') obj.value='Логин';
}

function touchPass(obj,mode)
{
	if(mode) 
	{
		var obj2 = document.getElementById('fpass');
		obj.style.display='none';
		obj2.style.display='block';
		obj2.focus();		
	}
	else if(!mode && obj.value=='')
	{
		var obj2 = document.getElementById('fpass_double');
		obj.style.display='none';
		obj2.style.display='block';			
	}
}

function passKey()
{
	if(window.event.keyCode==13) 
	{
		testreg();
		return false;
	}
	else return true;
}

function getObjPos(elem)
{
    var w = elem.offsetWidth;
    var h = elem.offsetHeight;
    var l = 0;
    var t = 0;
    while (elem)
    {
        l += elem.offsetLeft;
        t += elem.offsetTop;
        elem = elem.offsetParent;
    }
    return {"left":l, "top":t, "width": w, "height":h};
}

function showVoiceHint(width,height,obj,xoffset,yoffset,xvoice,text)
{
	if(typeof obj != "object" && obj) obj=document.getElementById(obj);
	if(obj) var coord=getObjPos(obj);
	else var coord = {"left":0, "top":0};
	var mainObj=document.getElementById('voicehintpanel');
	var contObj=document.getElementById('voicehintcont');
	var nonIEcssRecovery = /MSIE ((5\.5)|[6789])/.test(navigator.userAgent) ? 0 : 10;
		
	mainObj.style.left=coord.left+xoffset;
	mainObj.style.top=coord.top+yoffset-height;
	mainObj.style.width=width;
	mainObj.style.height=height;		

	contObj.style.width=width-16-nonIEcssRecovery;
	contObj.style.height=height-20-nonIEcssRecovery;		

	var voicePos=Math.round((width-46)*(xvoice/100));
	if(voicePos<1 || voicePos>(width-46)) voicePos=1;
	
	document.getElementById('voiceh_top').width=width-16;
	document.getElementById('voiceh_left').height=height-20;
	document.getElementById('voiceh_right').height=height-20;
	document.getElementById('voiceh_btleft').width=voicePos;
	document.getElementById('voiceh_btright').width=width-voicePos-46;

	contObj.innerHTML=text;

	mainObj.style.display='block';
}

function hideVoiceHint()
{                            
	document.getElementById('voicehintpanel').style.display='none';
}

function testreg()
{
	//keepQuantRelease();
	document.bag.actmode.value="testreg";
	document.bag.submit();
}

function refrBag()
{
	//keepQuantRelease();
	document.bag.actmode.value="rbag";
	document.bag.submit();
}

function delpos(id)
{
	document.bag.delid.value=id+1;
	document.bag.actmode.value="rbag";
	document.bag.submit();
}

function sendorder()
{
	//keepQuantRelease();
	document.getElementById('button3').disabled=true;
	document.getElementById('inprg').style.display='block';
	if(document.bag.goodcou.value<1)
	{
		alert('Нет выбранных товаров!')
		return;
	}
	document.bag.actmode.value="order";
	document.bag.action='purchase.cgi';
	document.getElementById('rldstatus').value='false';
	document.bag.submit();
}


function addrDisabled(mode)
{
	if(addrdisables & 1) document.getElementById('fadv_1').disabled=mode;
	if(addrdisables & 2) document.getElementById('fadv_2').disabled=mode;
	document.getElementById('fadv_3').disabled=mode;
	document.getElementById('addrtit').className=mode ? 'bag_sptit_dis' : 'bag_sptit';
	document.getElementById('addrtab').className=mode ? 'n_bagdis' : 'n';	
}

function cardDisabled(mode)
{
	var obj=document.getElementById('fpay_4');
	if(obj.checked && mode) 
	{
		document.getElementById('fpay_2').checked=true;
		payautocr2=true;
	}
	else if(payautocr2 && !mode)
	{
		obj.checked=true;
		payautocr2=false;
	}
	obj.disabled=mode;
	document.getElementById('cardpay').className=mode ? 'n_bagdis' : 'n';		
}

function mskpayDisabled(mode)
{
	var obj=document.getElementById('fpay_1');
	if(obj.checked && mode) 
	{
		document.getElementById('fpay_2').checked=true;
		payautocr=true;
	}
	else if(payautocr && !mode)
	{
		obj.checked=true;
		payautocr=false;
	}
	obj.disabled=mode;
	document.getElementById('mskpay').className=mode ? 'n_bagdis' : 'n';	
}

function delListener()
{
	addrDisabled(document.getElementById('fdel_5').checked || document.getElementById('fdel_7').checked || document.getElementById('fdel_8').checked);
	//mskpayDisabled(document.getElementById('fdel_4').checked || document.getElementById('fdel_3').checked);
	//mskpayDisabled(document.getElementById('fdel_3').checked);
	cardDisabled(!(document.getElementById('fdel_3').checked || document.getElementById('fdel_8').checked));
	
}

appear_part_obj = null;
appear_part_hgt = null;
intervalID = null;

function rollDownOrder()
{
	appear_part_hgt = 10;
	appear_part_obj = document.getElementById('appear_part');
	appear_part_obj.style.height=appear_part_hgt;
	appear_part_obj.style.display='block';
	intervalID = setInterval("rolldown_anm()", 10);
	document.getElementById('rldstatus').value='true';
}

function rolldown_anm()
{
	if(appear_part_hgt>400 && intervalID)
	{
	 clearInterval(intervalID);
	 document.getElementById("ordlevel1").style.display='none';
	 document.getElementById("ordlevel2").style.display='block';	 
	}
	appear_part_hgt+=10;
	appear_part_obj.style.height=appear_part_hgt;
}

function set_border(color)
{
	var target = (window.event.target) ? window.event.target : window.event.srcElement;
	target.offsetParent.style.backgroundColor=color;
// ---------
}


function getOrderSum(final)
{
	var goodCou=bag_gcou;
	var sum=0;
	for(var p=0;p<goodCou;p++)
	{
		var tQ=digitAnalyze(document.getElementById('fcol'+p).value);
		var tP=bag_chain[p*3+1];
		//var tP=parseInt(document.getElementById("fullprice"+p).value);
		sum+=tQ*tP;
	}
	return sum;
}

function getDscBySum(sum)
{
	var dsc=0;
	for(var i=0;i<dsTable.length;i++)
	{
		if(sum>=dsTable[i].sum && dsc<dsTable[i].dsc) dsc=dsTable[i].dsc;
	}
	return dsc;
}

function getDiscont(final)
{
	return Math.max(usaccumdis,getDscBySum(getOrderSum(final)));
}

function price_format(sum)
{
	var ps=sum.toString();
	var ret='';
	var count=0;
	for(var p=ps.length-1;p>=0;p--)
	{
		if(count>2)	
		{
			ret=' '+ret;
			count=0;
		}
		count++;
		ret=ps.substr(p,1)+ret;

	}
	return ret;
}

function rtSumRecount(final)
{
	var goodCou=bag_gcou;
	// parseInt(document.getElementById('goodcou').value);
	var sumPrice=0;
	var dsc = 0;
	var errflg=false;
	//var keepQuant= new Array(); //-------------------------------------------------- depricated
	var mnruNoDsc = document.getElementById('emnru_1');
	if(mnruNoDsc)
	{
		if(!mnruNoDsc.checked) dsc = getDiscont(final);
	}
	else dsc = getDiscont(final);
	for(var p=0;p<goodCou;p++)
	{
		var tPO=document.getElementById("pricefield"+p);
		var tPR=bag_chain[p*3];
		var tFP=bag_chain[p*3+1];
		//var tPR=parseInt(document.getElementById("actprice"+p).value);
		//var tFP=parseInt(document.getElementById("fullprice"+p).value);
		var tQ=quantValidate(p,final);
		//keepQuant.push(p+"-"+tQ); //-------------------------------------------------- depricated
		updateQuantInBag(p+1,tQ); // cookie version --- new --- req: rtbagfnc & cookfnc 
		//updateQuantInBagRemote(globalPokePoint,p+1,tQ); // session version ---
		//updateQuantInBagDLink(p+1,tQ); // session version --- update DLink varble used for direct bag exchange
		if(bag_chain[p*3+2]==0)
		{
			var disprice=Math.round(tFP*(1-dsc/100));
			sumPrice+=tQ*disprice;
			if(dsc>0) tPO.innerHTML=tFP+'р. <span class="npink">Скидка: '+dsc+'% - <b>'+disprice+'р.</b></span>';
			else tPO.innerHTML='<b>'+tFP+'р.</b>';
		}
		else
		{
			sumPrice+=tQ*tPR;
		}
		if(tQ==0) errflg=true;
	}
	var sOut = document.getElementById("rsumpr");
	if(final || !errflg) sOut.value=price_format(sumPrice)+"р.";
	else sOut.value=price_format(sumPrice)+"р.+?";
	//document.cookie = "keepq="+keepQuant.join(":"); //-------------------------------------------------- depricated
}

/* depricated
function keepQuantRelease()
{
	var exp = new Date( );
	var upd = exp.getTime( ) - 1000;
	exp.setTime(upd);
	document.cookie = "keepq=0; expires="+exp.toGMTString();
}

function getCookie(name) {
	var cookie = " " + document.cookie;
	var search = " " + name + "=";
	var setStr = null;
	var offset = 0;
	var end = 0;
	if (cookie.length > 0) {
		offset = cookie.indexOf(search);
		if (offset != -1) {
			offset += search.length;
			end = cookie.indexOf(";", offset)
			if (end == -1) {
				end = cookie.length;
			}
			setStr = unescape(cookie.substring(offset, end));
		}
	}
	return(setStr);
}

function keepQuantRestore()
{
	var content=getCookie("keepq");
	if(content)
	{
		var pairs = content.split(":");
		for(var p=0;p<pairs.length;p++)
		{
			var parts=pairs[p].split("-");
			var tPO=document.getElementById("fcol"+parts[0]);
			if(tPO)	tPO.value=parts[1];
		}
	}
	rtSumRecount(true);
}
*/

function digitAnalyze(val)
{
	var tval=parseInt(val);
	if(tval<1) return 1;
	else if(isNaN(tval)) return 1;
	else return tval;
}

function quantplus(num)
{
	var obj = document.getElementById("fcol"+num);
	obj.value=parseInt(obj.value)+1;
	rtSumRecount(true);
}

function quantValidate(num,final)
{
	var obj=document.getElementById('fcol'+num);
	obj.value.replace(/^\s\s*/, '').replace(/\s\s*$/, '');
	var reg=/^[0-9]{1,5}$/;
	if(!reg.test(obj.value) || obj.value=='0')
	{
		if(!final) 
		{
			if(obj.value!='') obj.style.color="#F00";
			return 0;
		}
	}
	obj.style.color="#000";	
	var tVal=digitAnalyze(obj.value)
	obj.value=tVal;
	return tVal;
}
