﻿$(document).bind("ready", function() {
	current = 1;
	activeScroll = new Array();

			 fixMinMaxwidth();
			 slideText();
			
			
			$(".good_img").bind("mouseover", function(e) {
				var check = $(this).parent();
				var desc=check.find('.description')
				desc.children("div.text").css("overflow","auto");
				desc.fadeIn(200, function() {
					desc.children("div.text").show();
				});
				check.hover(function() {
				},function(){  
					desc.children("div.text").css("overflow","hidden");
					desc.fadeOut(200, function() {
						desc.children("div.text").hide();
					});	
				});
			});
			  
			$('#type_pay.active a').click(function(){
                var $this = $(this);
				var n = /[0-9]+/.exec($(this).attr("id"));
				move($this);
				$('#type_pay a').removeClass('active');		
				$('.csv_popup').hide();					
				$($this).addClass('active');
				$("form").attr("action", "/basket/pay/"+n);
				$("input[class*='noactive']").removeAttr("disabled").removeClass("noactive").addClass("active");					
			}); 

			function move($elem){
			var id = $elem.attr('id');
				$('#cont_'+id).stop(true,true).fadeIn(400).siblings().not(this).fadeOut(400);
				var conti = $('#cont_'+id);
				$('#cont_'+id).parent().animate({height:$(conti).height()});
				return false;
			};

		$.each($(".text_input"), function() {
		$(this).bind("focus",function(){
			$(this).addClass('focus');
		});
			$(this).bind("blur",function(){
				$(this).removeClass('focus');
			});		
		});
		
		$.each($(".lform select"), function() {
		$(this).bind("focus",function(){
			$(this).addClass('focus');
		});
			$(this).bind("blur",function(){
				$(this).removeClass('focus');
			});		
		});
		
		$.each($("textarea"), function() {
		$(this).bind("focus",function(){
			$(this).addClass('focus');
		});
			$(this).bind("blur",function(){
				$(this).removeClass('focus');
			});		
		});
		
		
			$(".slider .ireload").bind("click", function(e) {
			var check = $(this).parent().parent();
			if (check.is(".slider-active")) {
				check.toggleClass("slider-active");
				check.find(".inner").slideUp(200);
				return false;
				
			}
			if (!check.is(".slider-active")) {
				check.toggleClass("slider-active");
				check.find(".inner").slideDown(200);
				return false;
			}
			
			});
		
		$(".lightbox").click(
		function(){
			popup_img(this);
			return false;
		});
		
	$("a.scroll").bind("click",function(){
		var id=$(this).attr("href");//.replace(/#/g, "");
		$("body").scrollTo(id,600,{axis:"y"});
		//location.href = location.href.replace(/#[\w]+/g, "") + id;
		return false;	
	});

	$('div.anc').click(function(){
		if ($(this).attr('href')){
			location.href = $(this).attr('href');
		}
	});
		
//Случайный факт	
		
	$('#random_fact').click(function(){
		var facts = $('table','#random_fact_container');
		var curr = facts.filter(':visible').hide();
		var pool = facts.not(curr);		
		var rand = Math.round((Math.random() * (pool.length-1)));		
		pool.eq(rand).show();
	});
	
//Машинка
		
	var car_speed = 350; // px/sec - скорость
	var carLen = 220;
	var finOffs = 430;
	var bgLen = 1975;
	var city_2 = $('#city_2').width();
	
 	$('#city_2').hover(
		function(){	
			clearInterval(activeScroll["city_2"]);
			var strtOffs = $('#move_left_block').offset().left;			
			var len = $('#move_left_block').width() - carLen;						
			var count = Math.ceil(len/1200);
			var bgOffs = bgLen * count - 50 - finOffs - carLen - len;		
			var time = carGo(len);			
			$('#city_2').bgscroll({scrollSpeed:1 , direction:'h' });
			$('#city_1').stop().animate({backgroundPosition: -bgOffs}, time, 'linear');			
			return false;	
		},
		function(){
			clearInterval(activeScroll["city_2"]);
			var time = carGo(0);
			if($.browser.msie)	{
				pos = $('#move_left_block').width()-424;
				time += 100;
			} else {
				pos = 0;
			}
			$('#city_1').stop(true,false).animate({backgroundPosition: pos}, time, 'linear');			
			$('#city_2').bgscroll({scrollSpeed:1 , direction:'h', sign:'+'});
			return false;
		}
	);
	
	$('#clouds_1').bgscroll({scrollSpeed:15 , direction:'h' });
	
	$('.arr_link','#distributor_text').hover(
		function(){	
			var len = $('#move_left_block').width() * 2 - $('#car_1').width();		
			carGo(len);			
			return false;			
		},
		function(){
			carGo(0);
			return false;
		}
	);
	
	function carGo(offs){
		var roadWidth = $('#move_left_block').width()*1;
		var position = $('#car_1').position().left;		
		var position2 = position*1 - roadWidth;
		var time = (Math.abs(offs - position) / car_speed * 1000);
		
		showWeel();
		$('#car_1').stop(true).css({'left': position}).animate({'left': (offs)+'px'}, time, 'linear', hideWeel);
		$('#car_2').stop(true).css({'left': position2}).animate({'left': (offs - roadWidth)+'px'}, time, 'linear', hideWeel);
		
		return time;
	};
	
	function showWeel(){
		$('.car .moved_wheel').show();
		$('#circle_1').stop(true,true).fadeOut(500);
		$('#circle_2').stop(true,true).fadeOut(500);
	}	
	function hideWeel(){
		$('.car .moved_wheel').hide();
		$('#circle_1').stop(true,true).fadeIn(500);
		$('#circle_2').stop(true,true).fadeIn(500);
		//$('#city_2').width(city_2);
		clearInterval(activeScroll["city_1"]);
		clearInterval(activeScroll["city_2"]);
	}
		
	
	
	
	
//Меню на главной		
	//myWidth = new Array(134,250,282,132);
	var menuItemsCount = 4;
	var catButtons = $("#menu_catalog_slide .cat_button");
	catButtons.slice(menuItemsCount).hide();
	
	var catSlider = $('#menu_catalog_slide').carouFredSel({
		auto: false,
		items: {
			visible: menuItemsCount,
			width: 'variable',
			minimum: 2
		},
		scroll: {
			duration: 1000,
			onBefore : function (){
				catButtons.show();	
			}
		},
		//width: 800,
		width: 'variable',
		height: 80,
		circular:true
	});
	
	catButtons.click(function() {
		if ($(this).hasClass("active")){
			return false;
		}
		current = /[0-9]+/.exec($(this).attr("id"));
		catSlider.stop(true,true).trigger("next", $(this).index());
		promoSlide(current);
		return false;
	});
		
	$('.b_right_n1').parent().hover(
		function(){
			if ($(window).width() <= 1469) {
				$(this).find(".random_item_block").stop().animate({right:'50%'}, 700, 'easeOutQuart');
			}
		},
		function(){
			if ($(window).width() <= 1469) {
				$(this).find(".random_item_block").stop().animate({right:'8%'}, 1000, 'easeOutQuart');
			}
		}
	);
	
	
	
//process production
	var to_small_left = {height:300,top:60,left:220};			
	var to_small_right = {height:300,top:60,left:0};			
	var to_large = {height:410,top:0,left:0};	
	
	var crollEasing = 'easeInOutBack';
	var zoomInEasing = 'easeInQuart';
	var zoomOutEasing = 'easeOutQuart';
	
	var leftButton = $('#arr_left', '#scroll-panel');
	var rightButton = $('#arr_right', '#scroll-panel');
	var splash = $('#splash');
	var isLast = false;
	
	$('.item-scroll.empty').removeClass('empty');
	var carousel = $('#scroll-content').carouFredSel({
		circular: false,
		infinite: false,
		height: 435,
		items: {
			visible: 3,
			minimum: 3,
			width: "variable",
			height: 435
		},
		scroll: {
			items: 1,
			duration: 1200,
			easing: 'easeInOutBack',
			onBefore: function( oldItems, newItems, newSizes, duration ) {
				var halfDuration = duration/2;
				var old_order = oldItems.eq(1).attr('order');				
				var order = newItems.eq(1).attr('order');				
				var newInfo = $('#info_'+order,'#info-container');							
						
				$('.info','#info-container').fadeOut(duration/2);
				newInfo.delay(duration/2).fadeIn(duration/2);
				slider.slider("value" , order);
				
				if(order > old_order){
					oldItems.eq(1).find('img').removeClass('active').stop(true).animate(to_small_left, duration, zoomOutEasing);					
				}else{
					oldItems.eq(1).find('img').removeClass('active').stop(true).animate(to_small_right, duration, zoomOutEasing);
				}
				newItems
					.eq(0).find('img').stop(true).animate(to_small_left, duration, zoomOutEasing).end().end()
					.eq(1).find('img').stop(true).animate(to_large, duration, zoomInEasing).addClass('active').end().end()
					.eq(2).find('img').stop(true).animate(to_small_right, duration, zoomOutEasing);
				
				if (isLast){
					setTimeout(showShlash, duration);
					isLast = false;
				} else {
					splash.fadeOut(500);
				}					
			},
			onAfter: function(){
				setTimeout(syncSlider,10);
			}
		},
		auto: false,
		prev: {
			button: leftButton,
			onEnd: function() {
				leftButton.hide();
			},
			onAfter: function( oldItems, newItems, newSizes, duration ) {
				rightButton.show();
				setTimeout(syncSlider,10);
			}
		},
		next: {
			button: rightButton,
			onEnd: function() {
				isLast = true;				
				rightButton.hide();				
			},
			onAfter: function( oldItems, newItems, newSizes, duration ) {
				leftButton.show();
				setTimeout(syncSlider,10);				
			}
		}
	});	
	leftButton.hide();
	
	
	$('.item-scroll img','#scroll-panel').click(function(){
		var ord = $(this).attr('order') - 1; 	
		carousel.trigger("slideTo", ord);
	});
	
	
	var slider = $( "#ui-slider" ).slider({
		range: "max",
		animate: true,
		min: 1,
		max: 12,
		value: 1,
		change: function( event, ui ) {
			carousel.trigger("slideTo", ui.value-1);
		},
		slide: function( event, ui ) {
			carousel.trigger("slideTo", ui.value-1);
		},
		start: function( event, ui ) {
			$(this).css('cursor', 'pointer');
		},
		stop: function( event, ui ) {
			$(this).css('cursor', '');
		}			
	});
	
	function syncSlider (){
		if(slider.length > 0){
			carousel.trigger("slideTo", slider.slider('value')-1);
		}
	};
		
	function showShlash (){
		splash.fadeIn(500);
	};

	
	
});

//анонимная функция для проверки всех элементов с классом .fixMinMaxwidth
var fixMinMaxwidth=function(){
   //только для браузеров без поддержки этого свойства
   if (typeof document.body.style.maxHeight !== "undefined" &&
      typeof document.body.style.minHeight !== "undefined") return false;

   	var maxWidth = parseInt($('#corper').css("max-width"));
	var minWidth = parseInt($('#wrap').css("min-width"));
   //получаем значение максимальной и минимальной ширины
	if (minWidth>0 && $('#corper').width()<minWidth) {
		$('#corper').width(minWidth);
		}
	if (minWidth>0 && $(document.body).width()>maxWidth) {
		$('#wrap').width(maxWidth);
		$('#footer').width(maxWidth);
	}
      //Выполняем,если min-/maxwidth установлены
}
 
//запускаем проверку после изменения размера окна
$(window).bind("resize", function(){
   fixMinMaxwidth();
});

//Движение фона
(function() {
	$.fn.bgscroll = $.fn.bgScroll = function( options ) {
		var sign = options.sign ? options.sign : "-";
		if($(this).css("background-position")) {
			var bgPos = $(this).css("background-position").split(" ");
		} else {
			var bgPos = 0;
		}
		bgPos = /[0-9]+/.exec(bgPos[0]);
		if( !this.length ) return this;
		if( !options ) options = {};
		if( !window.scrollElements ) window.scrollElements = {};

		for( var i = 0; i < this.length; i++ ) {

			//var allowedChars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
			var randomId = $(this).attr("id");
			//for( var l = 0; l < 5; l++ ) randomId += allowedChars.charAt( Math.floor( Math.random() * allowedChars.length ) );
				this[ i ].current = 0 - bgPos;
				this[ i ].scrollSpeed = options.scrollSpeed ? options.scrollSpeed : 70;
				this[ i ].direction = options.direction ? options.direction : 'h';
				window.scrollElements[ randomId ] = this[ i ];

				eval( 'window[randomId]=function(){var axis=0;var e=window.scrollElements.' + randomId + ';e.current ' + sign + '= 1;if (e.direction == "h") axis = e.current + "px 0";else if (e.direction == "v") axis = "0 " + e.current + "px";else if (e.direction == "d") axis = e.current + "px " + e.current + "px";$( e ).css("background-position",axis);}' );

				activeScroll[randomId] = setInterval( 'window.' + randomId + '()', options.scrollSpeed ? options.scrollSpeed : 70 );
		}
			send = false;
			return this;
		}
})(jQuery);

function slideText() {
	var count=$('#slidePromo .products_details').size();
	
	$("#slidePromo #arr_left").click(
		function(){
		//$("body").scrollTo('#slidePromo',600,{axis:"y"});
		current--;	
		$("#menu_catalog_slide").stop(true,true).trigger("prev", 1);
		//$("body").scrollTo('#cn_'+current),600,{axis:'x'});
		if (current<=0) {current=count;}
			promoSlide(current);
		return false;
		});
	
	$("#slidePromo #arr_right").click(
		function(){
		//$("body").scrollTo('#slidePromo',600,{axis:"y"});	
		current++;
		$("#menu_catalog_slide").stop(true,true).trigger("next", 1);
		if (current>count) {current=1;}
			promoSlide(current);
		return false;
		});
};


function promoSlide(current) {
		$('.cat_button', '#menu_catalog').removeClass('active');
		$('#cn_'+current, '#menu_catalog').addClass('active');	
		$('#slidePromo #products_details'+current).stop(true,true).fadeIn(150).siblings().not(this).fadeOut(150);
		$('#slidePromo #promo_img'+current).stop(true,true).fadeIn(250).siblings().not(this).fadeOut(250);
		$('#slidePromo #random_good'+current).stop(true,true).fadeIn(250).siblings().not(this).stop(true,true).fadeOut(250);		
};


