$(function(){
	//
	$('#logo').click(function(){ location.href = '/' });
	//
	//$('a[href^="http://"]').each(function(){ $(this).attr('target','_blank') });
	//
	$('.back').click(function(){ history.back(); return false; });
	//
	$(window).keypress(function(e){ if(e.keyCode==27) { sh_pop(); sh_popup(); } });
	//
	sh_glcat();
	//
	sh_pop_cat();
	//
	$(".btn-consultant").hover(function(){
		$(".conslink").animate({"width": "+=148px"}, "slow");
		$(this).toggleClass("active"); return false;
	},function(){
		$(".conslink").animate({"width": "-=148px"}, "slow");
		$(this).toggleClass("active"); return false;
	});
});

function toCart(id,kol,tbl)
{
	$.ajax({
		type: "GET",
		url: "/cart.php",
		data: "action=tocart&id="+id+"&kol="+(kol*1<1?1:kol)+'&tbl='+tbl,
		success: function(data){
			data = str_replace('<script>','',data);
			data = str_replace('</script>','',data);
			eval(data);
		}
	});
}

jQuery.fn.MyScroll = function(settings){
	
	// Settings
	settings = $.extend({
		id : 'scroll',
		width : 21,
		height : 80,
		zone : Object,
		zone_inner : Object,
		wheel : true
	}, settings);
	
	var $obj = $(this); // объект к которому ляпаем скрол
	var $zone = settings.zone; // прокручиваемая область
	var $zone_inner = settings.zone_inner; // таблица или div внутри прокручиваемой области (для определения высоты)
	
	// область скрола
	var $scroll = $(document.createElement('DIV'));
			$scroll.attr('id',settings.id);
	$scroll.css({
		'width' : settings.width,
		'height' : settings.height,
		'text-align' : 'left',
		'background' : 'url(/img/scroll_back.png) repeat-y'
	});
	// стрелка вверх
	var $scroll_u = $(document.createElement('DIV'));
			$scroll_u.attr('id',settings.id+'_u');
	$scroll_u.css({
		'position' : 'absolute',
		'width' : settings.width,
		'height' : 21,
		'background' : 'url(/img/scroll_u.png) no-repeat',
		'margin-top' : -21,
		'cursor' : 'pointer'
	});
	// стрелка вниз
	var $scroll_b = $(document.createElement('DIV'));
			$scroll_b.attr('id',settings.id+'_b');
	$scroll_b.css({
		'position' : 'absolute',
		'width' : settings.width,
		'height' : 21,
		'background' : 'url(/img/scroll_b.png) no-repeat',
		'margin-top' : settings.height,
		'cursor' : 'pointer'
	});
	// ролик
	var $scroll_r = $(document.createElement('DIV'));
			$scroll_r.attr('id',settings.id+'_r');
	$scroll_r.css({
		'position' : 'absolute',
		'width' : settings.width,
		'height' : 20, /* произвольное значение */
		'background' : 'url(/img/scroll_roller.png) repeat-y top',
		'cursor' : 'pointer'
	});
	
	$zone.scrollTop(0);
	
	// если высота содержимого больше самой области прокрутки
	if($zone.attr('scrollHeight')>$zone.height())
	{
		// значит скролл нужен
		
		$scroll.prepend($scroll_u);
		$scroll.prepend($scroll_b);
		$scroll.prepend($scroll_r);
		
		$obj.prepend($scroll);
	
		// определим высоту роллера
		$scroll_r.height(Math.round( $zone.height()*$scroll.height()/$zone.attr('scrollHeight') ));
		
		// возможно скролл находится в popup
		$popup = $scroll_r.parents('div#popup');
		var inpop = $popup.size() ? true : false;
		
		var rollerPosTop = 0;
		var rollerTop = $scroll_r.offset().top;
		var rollerStartPos = rollerTop;
		var rollerStopPos = rollerTop + $scroll.height() - $scroll_r.height();
		var rollerRange = $zone.height()-$scroll_r.height();
		
		var step = ($zone.attr('scrollHeight')-$zone.height())/($scroll.height()-$scroll_r.height());
		
		$scroll_r.draggable({
			containment: $scroll,
			axis: 'y',
			drag: function(event, ui){
				
				$zone.scrollTop(rollerPosTop*step);
				rollerTop = ui.offset.top;
				rollerPosTop = rollerTop - rollerStartPos;
			}
		});
		
		var int;
		
		$scroll_u.mousedown(function(){
			move(1,30);
			int = setInterval(function(){ move(1,10) },1);
		});
		$scroll_u.mouseup(function(){ clearInterval(int) });
		
		$scroll_b.mousedown(function(){
			move(-1,30);
			int = setInterval(function(){ move(-1,10) },1);
		});
		$scroll_b.mouseup(function(){ clearInterval(int) });
		
		
		if(settings.wheel)
			$zone.mousewheel(function(event,delta){ move(delta);return false; });
		
		function move(delta,mnog)
		{				
			// delta>0?'up':'down')
			mnog = mnog ? mnog : 30;
			
			$zone.scrollTop($zone.scrollTop()-(delta*mnog));
			
			top_ = $scroll_r.offset().top;
			
			if( $zone.scrollTop()>=0 && top_<=rollerStopPos )
			{
				// если скролл наверху
				if($zone.scrollTop()==0)
				{
					rollerPosTop = 0;
					$scroll_r.css({'top' : inpop ? 40 : rollerStartPos });
					return false;
				}
				// если скролл внизу
				if($zone.scrollTop()==$zone.attr('scrollHeight')-$zone.height())
				{
					$scroll_r.css({'top' : rollerStopPos-(inpop ? $obj.offset().top : 0) });
					rollerPosTop = rollerTop - rollerStartPos;
					return false;
				}		
				
				$scroll_r.css({'top' : top_-(inpop ? $obj.offset().top : 0)-(delta*mnog/step) });
				
				rollerTop = $scroll_r.offset().top;
				rollerPosTop = rollerTop - rollerStartPos;
			}
		}
	}
}

function sh_pop(show)
{
	var bs = BodySize();
	var $pop = $("#pop");
	
	// отображаем окно
	if(show)
	{
		$('body').blackout({z:50,color:'#442210',opacity:50});
		$('#blackout').show();
		$pop.css('top',Math.round( (bs.height/2) - ($pop.height()/2) + $('body').scrollTop() ));
		setTimeout(function(){
			$pop.show().animate({left: Math.round((bs.width/2) - ($pop.width()/2)) + 'px'}, 100);
		},400);
	}
	// скрываем
	else
	{
		$pop.show().animate({left:-1000}, 100);
		setTimeout(function(){ $('#blackout').fadeOut('fast') },200);
	}
}
function sh_popup(show,id,show_info,script,lnk)
{
	var bs = BodySize();
	var $popup = $("#popup");
	var $loader = $('#popup_loader');
	
	// отображаем окно
	if(show)
	{
		$('body').blackout({z:50,color:'#442210',opacity:50});
		$('#blackout').show();
		$popup.height(bs.height*0.75);
		var H = $popup.height()-60;
		$('#popup_block').height(H);
		$('#popup_scroll_zone').height(H);
		$popup.css('top',Math.round( (bs.height/2) - ($popup.height()/2) + $('body').scrollTop() ));
		$popup.css('left',Math.round( (bs.width/2) - ($popup.width()/2) ));
		$loader.css({
			'top' : Math.round( ($popup.height()/2) - ($loader.height()/2) ),
			'left': Math.round( ($popup.width()/2) - ($loader.width()/2) ) 
		});
		setTimeout(function(){
			$popup.show();
			$.ajax({
				type: "GET",
				url: script ? script : '/show_goods.php',
				data: lnk ? lnk : 'action=spec_info&id='+id+(show_info?'&info':''),
				success: function(data){
					$loader.hide();
					$('#popup_content').html(data);
					$('#popup_scroll_zone').MyScroll({
						id : 'popup_scroll',
						height : H-80,
						zone : $('#popup_block'),
						wheel: true
					});
				}
			});			
		},400);
	}
	// скрываем
	else
	{
		$popup.hide();
		$('#blackout').fadeOut('fast');
		$('#popup_content').html('');
		$('#popup_scroll').remove();
	}
}
function sh_tying(show,id)
{
	var bs = BodySize();
	var $popup = $("#popup");
	var $loader = $('#popup_loader');
	
	// отображаем окно
	if(show)
	{
		$('body').blackout({z:50,color:'#442210',opacity:50});
		$('#blackout').show();
		$popup.height(bs.height*0.75);
		var H = $popup.height()-60;
		$('#popup_block').height(H);
		$('#popup_scroll_zone').height(H);
		$popup.css('top',Math.round( (bs.height/2) - ($popup.height()/2) + $('body').scrollTop() ));
		$popup.css('left',Math.round( (bs.width/2) - ($popup.width()/2) ));
		$loader.css({
			'top' : Math.round( ($popup.height()/2) - ($loader.height()/2) ),
			'left': Math.round( ($popup.width()/2) - ($loader.width()/2) ) 
		});
		setTimeout(function(){
			$popup.show();
			$.ajax({
				type: "GET",
				url: "/show_goods.php",
				data: "action=tying&id="+id,
				success: function(data){
					$loader.hide();
					$('#popup_content').html(data);
					$('#popup_scroll_zone').MyScroll({
						id : 'popup_scroll',
						height : H-80,
						zone : $('#popup_block'),
						wheel: true
					});
				}
			});			
		},400);
	}
	// скрываем
	else
	{
		$popup.hide();
		$('#blackout').fadeOut('fast');
		$('#popup_content').html('');
		$('#popup_scroll').remove();
	}
}
function reload_tying(id)
{
	var $popup = $("#popup");
	var $loader = $popup.find('#popup_loader');
	var $popup_scroll_zone = $popup.find('#popup_scroll_zone');
	var $popup_block = $popup.find('#popup_block');
	var $popup_content = $popup_block.find('#popup_content');
	
	$popup_scroll_zone.html('');
	$popup_content.html('');
	$loader.show();
	
	//setTimeout(function(){
		$.ajax({
			type: "GET",
			url: "/show_goods.php",
			data: "action=tying&id="+id,
			success: function(data){
				$loader.hide();
				$popup_content.html(data);
				$popup_scroll_zone.MyScroll({
					id : 'popup_scroll',
					height : $popup.height()-60-80,
					zone : $popup_block,
					wheel: false
				});
			}
		});
	//},400);
}

function sh_glcat()
{
	$('.hcat').click(function(){
		var $cat_block = $(this).next('.line').next('.cat_block');
		if(!$.browser.msie)
			$cat_block.toggle("slow");
		else
		{
			if(!$cat_block.is(':visible'))
				$cat_block.show();
			else
				$cat_block.hide();
		}
	});
}
function sh_pop_cat()
{
	$pc = $('#pop_cat');
	$inner_pc = $pc.find('#inner_pap_cat');
	$btn = $('#sh_pop_cat');
	
	var hide = true;
	var t1,t2;
	
	$btn.hover(
		function(){
			clearTimeout(t2);
			if(!$pc.is(':visible'))
			{
				/*ww = $(window).width();
				ww = ww>1090 ? 1090 : ww-($.browser.msie?11:6);
				$pc.width(ww);
				$inner_pc.width(ww+($.browser.msie?5:0));*/
				$pc.show();
			}
		},
		function(){
			hide = true;
			t1 = setTimeout(function(){
				if(hide && $pc.is(':visible'))
				{
					clearTimeout(t2);
					$pc.hide()
				}
			},300);
		}
	);
	
	$pc.hover(
		function(){
			hide = false;
		},
		function(){
			hide = true;
			t2 = setTimeout(function(){
				if(hide && $pc.is(':visible'))
				{
					clearTimeout(t1);
					$pc.hide();
				}
			},300);
		}
	);
}
