function setsTurning(arParams, count, first_elem, course){	
	var step = 324;
	var tbl = $('sets_list');
	
	if(tbl.getAttribute('in_proccess')==1){
		return false;
	}
	
	//елемент, который нужно запросить
	var cur_elem = parseInt(tbl.getAttribute('cur_elem'));
	//alert(cur_elem);
	var cur_elem_to_php;
	if(isNaN(cur_elem)){
		cur_elem_to_php = (first_elem+2*course+count-1)%count+1;
		cur_elem = (first_elem+course+count-1)%count+1;
	}else{
		cur_elem_to_php = (cur_elem+2*course+count-1)%count+1;
		cur_elem = (cur_elem+course+count-1)%count+1;
	}
	//alert(cur_elem_to_php);
	tbl.setAttribute('cur_elem', cur_elem);
	
	
	//перемещение с эффектом
	var start = parseInt(tbl.style.marginLeft);
	var myFx = new Fx.Style(tbl, 'margin-left', {transition: Fx.Transitions.Back.easeOut});
	myFx.start(start, start+step*course);
	tbl.setAttribute('in_proccess', 1);
	tbl.setAttribute('move', 1);
	tbl.setAttribute('course', course);
	myFx.addEvent('onComplete', function(){tbl.setAttribute('move', 0)});
	
	
	//callback функция 
	function __handlerSetsTurning(data){
		var tbl = $('sets_list');
		var tr = tbl.getElementsByTagName('tr')[0];
		var course = tbl.getAttribute('course');
		
		if(course < 0){
			var cell = tr.insertCell(-1);
			cell.innerHTML = data;
			cell.style.display = 'none';
		}else{
			var cell = tr.insertCell(0);
			cell.innerHTML = data;
			cell.style.display = 'none';
		}
		
		if(tbl.getAttribute('move')==1){
			setTimeout('onmovecomplete()', 200);
		}else{
			onmovecomplete();
		}
	}
	
	//ajax запрос
	var url = '/bitrix/templates/include/sets_turning.php'
	
	arParams = new Object();
	arParams.CUR_ELEMENT = cur_elem_to_php;
	
	var TID = CPHttpRequest.InitThread();
	CPHttpRequest.SetAction(TID, __handlerSetsTurning);
	CPHttpRequest.Post(TID, url, arParams);
}

function onmovecomplete(){
	var step = 324;
	var tbl = $('sets_list');
	if(tbl.getAttribute('move')==1){
		setTimeout('onmovecomplete()', 200);
		return false;
	}
	
	var tr = tbl.getElementsByTagName('tr')[0];
	var course = tbl.getAttribute('course');
	
	if(course < 0){
		tr.cells.item(tr.cells.length-1).style.display = '';
		tr.deleteCell(0);
		tbl.style.marginLeft = parseInt(tbl.style.marginLeft) + step;
	}else{
		tr.cells.item(0).style.display = '';
		tr.deleteCell(tr.cells.length-1);
		tbl.style.marginLeft = parseInt(tbl.style.marginLeft) - step;
	}
	
	tbl.setAttribute('in_proccess', 0);
}

function deleteSetItem(btn, price){
	var parent = btn;
	while(parent.tagName.toUpperCase()!='TR'){
		parent = parent.parentNode;
	}
	parent.parentNode.removeChild(parent);
	
	var set_price = parseFloat($('set_price').innerHTML.replace(/(\s*<[Ss][Pp][Aa][Nn][^>]*>)/, '.').replace(/[^\d\.]/g, ''));
	price = set_price-price;
	price = price.toString().replace(/\.(\d{2}).*$/, '<span class="cents">$1</span>');
	$('set_price').innerHTML = price+' руб.';
	
	$('reset_btn').src = $('reset_btn').src.replace('_inact', '');
	$('reset_btn').parentNode.href = '';
}

function check_pack(elem){	
	var i, div;
	var divs = elem.parentNode.getElementsByTagName('div');
	for(i=0; i<divs.length; i++){
		div = new Element(divs[i]);
		if(div.hasClass('pack_text')){			
			if(elem.value=="pack"){
				div.addClass('active');
			}else{
				div.removeClass('active');
			}
		}
	}
}

function change_banner(id, count, time, prefix, el_id){
	var next_id = id%count+1;
	var imgPreloader = new Image();
	
	imgPreloader.onload = (function(){
		var link = document.getElementById(el_id);
		var img_old = link.getElementsByTagName('IMG');
		if(img_old.length > 0){
			img_old = img_old[0];
			img_old.style.position = 'relative';
			img_old.style.zIndex = 1;
			
			var img = img_old.cloneNode(true);
			img.src = '/image/'+prefix+next_id+'.jpg';
			img.style.position = 'absolute';
			img.style.zIndex = 0;
			link.insertBefore(img, img_old);
			
			var myFx = new Fx.Style(img_old, 'opacity', {duration: 2000});
			myFx.start(1, 0);
			myFx.addEvent('onComplete', function(){
													link.removeChild(img_old);
													img.style.position = 'relative';
													img.style.zIndex = 1;
													setTimeout('change_banner('+next_id+', '+count+', '+time+', "'+prefix+'", "'+el_id+'")', time);
												   });
		}
	});
	imgPreloader.src = '/image/'+prefix+next_id+'.jpg';
}

function adToBasket(btn, redirect)
{
	var form = btn;
	while((form.tagName!='FORM') && (form = form.parentNode)){}
	
	if(redirect)
	{
		form.target = '';
		form.action = '';
	}
	else
	{
		form.target = 'toBasketFrame';
		form.action = '/catalog/_add_to_basket.php';
	}
	return true;
}

function fixed(e, pos)
{	
	//pos = parseInt((screen.height - e.offsetHeight) / 2);
    if (/MSIE ([\d\.]+).+Win/.test(navigator.userAgent))
    {
        e.style.position = 'absolute';
        var top = Math.max(document.body.scrollTop, document.documentElement.scrollTop);
        return (top + pos) + 'px';
    }
    else e.style.top = pos + 'px';
}
