var fixScrollTopOffset = 50; 

function checkSliderArrows(target, arrowTarget){
	if(target.children("li.active").index() == 0){
		arrowTarget.parents(".main").children(".arrow.left").addClass("dis");
	}else{
		arrowTarget.parents(".main").children(".arrow.left").removeClass("dis");
	}
	if(target.children("li.active").index() == (target.children("li").length - 1)){
		arrowTarget.parents(".main").children(".arrow.right").addClass("dis");
	}else{
		arrowTarget.parents(".main").children(".arrow.right").removeClass("dis");
	}
}

function caseTitle(newActive){
	$(".case-titles ul li.active").fadeOut(300, function(){
		$(this).removeClass("active");
		$(".case-titles ul li:eq(" + newActive + ")").fadeIn(300, function(){
			$(this).addClass("active");
		});
	});
}

function resizeSlider(){
	$(".slider ul").each(function(){
		var activeSlide = $(this).children("li.active").index();
		var slideWidth = $(this).children("li.active").width();
		var newMargin = slideWidth * activeSlide;
		$(this).css("margin-left", "-" + newMargin + "px");

	});
}

function dynamicMenu(){
	if($(window).scrollTop() > ($("#chapter-1").offset().top - 80)){
		$("header nav a.active").removeClass("active");
		$("header nav li:eq(0) a").addClass("active");
	}
	if($(window).scrollTop() > ($("#chapter-2").offset().top - 80)){
		$("header nav a.active").removeClass("active");
		$("header nav li:eq(1) a").addClass("active");
	}
	if($(window).scrollTop() > ($("#chapter-3").offset().top - 80)){
		$("header nav a.active").removeClass("active");
		$("header nav li:eq(2) a").addClass("active");
	}
	if($(window).scrollTop() > ($("#chapter-4").offset().top - 80)){
		$("header nav a.active").removeClass("active");
		$("header nav li:eq(3) a").addClass("active");
	}
}

function setScrollOffset(){
	if($(window).width() < 700 && $(window).width() > 460) {
		fixScrollTopOffset = 120; 	
	} else if($(window).width() < 460) {
		fixScrollTopOffset = 120; 
	}
}


$(document).ready(function(){
	
	$(window).scrollTo(0, 1);

	// iOS scaling fix when rotating
	(function(doc) {
	
		var addEvent = 'addEventListener',
		type = 'gesturestart',
		qsa = 'querySelectorAll',
		scales = [1, 1],
		meta = qsa in doc ? doc[qsa]('meta[name=viewport]') : [];
		
		function fix() {
			meta.content = 'width=device-width,minimum-scale=' + scales[0] + ',maximum-scale=' + scales[1];
			doc.removeEventListener(type, fix, true);
		}
		
		if ((meta = meta[meta.length - 1]) && addEvent in doc) {
			fix();
			scales = [.25, 1.6];
			doc[addEvent](type, fix, true);
		}
	}(document));
	
	// Animate header images after they are loaded
	
	$("#chapter-1 figure img").each(function(){
		$(this).load(function(){
			$(this).parent().addClass("animate");
		});
	});

	// fitText
	
	$(".slider h1").fitText(0.8, { minFontSize: '45px', maxFontSize: '84px' });
	
	
	$("header nav a").click(function(){
		$("header nav a.active").removeClass("active");
		var destination = "#" + $(this).attr("data-attr");
		$.scrollTo(destination, 300, {offset: {top:30, left:0} });
		$(this).addClass("active");
	});
	
	setScrollOffset();
	
	$("#advantages-link").click(function(){
		$.scrollTo("#chapter-2", 300, {offset: {top:fixScrollTopOffset, left:0} });
	});
	
	$(window).resize(function(){
		resizeSlider();
		 setScrollOffset()
	});
		
	$(window).scroll(function(){
		dynamicMenu();
	});
	
	// Form fallback placeholder
	if (Modernizr.input.placeholder) {
	  // placeholder support		
	} else {
		// placeholder fallback
		$("[placeholder]").each(function(){
			$(this).val($(this).attr("placeholder"));
			if($(this).val() == $(this).attr("placeholder")){
				$(this).css("color", "#9fa7ab");
			}
		});
		
		$("[placeholder]").focus(function(){
			$(this).css("color", "#122f43");
			if($(this).val() == $(this).attr("placeholder")){
				$(this).val("");
			}
		});
		
		$("[placeholder]").blur(function(){
			if($(this).val().length == 0){
				$(this).val($(this).attr("placeholder"));
				$(this).css("color", "#9fa7ab");
			}else{
				$(this).css("color", "#122f43");
			}
		});
		
		$(".submit").click(function(){
			$(".required[placeholder]").each(function(){
				if($(this).val() == $(this).attr("placeholder"))
				{
					$(this).val("");
				}
			});
		});
		
	}
	
	// Slider 
	var sliderSpeed = 300;
	var animateTitle = false;
	var oldieBrowser = false;
	
	if($("html").hasClass("oldie")){
		oldieBrowser = true;
	}
	
	$(".arrow").click(function(){
			
		if($(this).parents(".holder").hasClass("cases")){
			var target = $(this).parents(".holder").prev(".holder").find(".slider ul");
			var arrowTarget = $(this);
			sliderSpeed = 800;
			animateTitle = true;
		} else {
			var target = $(this).parent().find(".slider ul");
			var arrowTarget = target;
			sliderSpeed = 300;
			animateTitle = false;
		}
		
		if(!$(this).hasClass("dis") && !target.is(":animated")){
			
			var slideWidth = target.children("li.active").width();
			var currentActive = target.children("li.active").index();
			
			target.parents(".holder").next(".holder").find("nav.controls ul li.active").removeClass("active");
			target.children("li.next").removeClass("next");
			target.children("li.prev").removeClass("prev");
			
			if($(this).hasClass("left")){
				// LEFT ARROW
				target.parents(".holder").next(".holder").find("nav.controls ul li:eq(" + (currentActive - 1) + ")").addClass("active");
				target.children("li.active").removeClass("active");
				target.children("li:eq(" + (currentActive - 1) + ")").addClass("active");
				if(oldieBrowser === false){
					target.children("li:gt(" + (currentActive - 1) + ")").addClass("next");
					target.children("li:lt(" + (currentActive - 1) + ")").addClass("prev");
				}
				if(animateTitle === true){
					caseTitle(currentActive - 1);
				}
				target.animate({marginLeft: "+="+slideWidth}, sliderSpeed);
				checkSliderArrows(target, arrowTarget);
			}else {
				// RIGHT ARROW
				target.parents(".holder").next(".holder").find("nav.controls ul li:eq(" + (currentActive + 1) + ")").addClass("active");
				target.children("li.active").removeClass("active");
				target.children("li:eq(" + (currentActive + 1) + ")").addClass("active");
				if(oldieBrowser === false){
					target.children("li:gt(" + (currentActive + 1) + ")").addClass("next");
					target.children("li:lt(" + (currentActive + 1) + ")").addClass("prev");
				}
				if(animateTitle === true){
					caseTitle(currentActive + 1);
				}
				target.animate({marginLeft: "-="+slideWidth}, sliderSpeed);
				checkSliderArrows(target, arrowTarget);
			}
		}
	});
	
	$("nav.controls a").click(function(){
		
		if($(this).parents(".controls").hasClass("cases")){
			var target = $(this).parents(".holder").prev(".holder").find(".slider ul");
			var arrowTarget = $(this);
			sliderSpeed = 800;
			animateTitle = true;
		} else {
			var target = $(this).parents(".holder").prev(".holder").find(".slider ul");
			var arrowTarget = target;
			sliderSpeed = 300;
			animateTitle = false;
		}
		
		if(!$(this).hasClass("active") && !target.is(":animated")){
			var slideWidth = target.children("li.active").width();
			var newActive = $(this).parent("li").index();
			var animation =  (slideWidth * newActive);
			
			$(this).parents("nav.controls").find("li.active").removeClass("active");
			$(this).parent("li").addClass("active");
			
			target.children("li.active").removeClass("active");
			target.children("li.next").removeClass("next");
			target.children("li.prev").removeClass("prev");
			target.children("li:eq(" + newActive + ")").addClass("active");
			if(oldieBrowser === false){
				target.children("li:gt(" + newActive + ")").addClass("next");
				target.children("li:lt(" + newActive + ")").addClass("prev");
			}
			
			if(animateTitle === true){
				caseTitle(newActive);
			}
			target.animate({marginLeft: "-"+animation}, sliderSpeed);
			checkSliderArrows(target, arrowTarget);
		}
	});
	
	// Slider swipe function
	
	$("#chapter-2 .slider").touchwipe({
	     wipeLeft: function() { $("#chapter-2").find(".arrow.right").click(); },
	     wipeRight: function() { $("#chapter-2").find(".arrow.left").click(); },
	     min_move_x: 60,
	     min_move_y: 100,
	     preventDefaultEvents: false
	});
	
	$("#chapter-3 .slider").touchwipe({
	     wipeLeft: function() { $(".cases").find(".arrow.right").click(); },
	     wipeRight: function() { $(".cases").find(".arrow.left").click(); },
	     min_move_x: 60,
	     min_move_y: 100,
	     preventDefaultEvents: false
	});

	
}); // end document ready

