/* Author: Analytics Ninja

This file was written using jQuery 1.4.2. Copyright 2010 Analytics Ninja. All rights reserved.

*/

function setActiveSlide(link) {
	$('#home-slide-nav li').removeClass('active');
	$(link).parent().addClass('active');
	var slidename = $(link).attr('href');
	var slideposition = 0;
	switch (slidename) {
		case '#welcome' : slideposition = 0; break;
		case '#analytics' : slideposition = 960; break;
		case '#ppc' : slideposition = 1920; break;
		case '#optimization' : slideposition = 2880; break;
	}
	$('#home-slides').stop().animate({
		scrollLeft: slideposition
	}, 600);
}
function slideToNext() {
	var currentslide = $('#home-slide-nav li.active');
	var nextslide;
	(currentslide.find('a').attr('href') == '#optimization') ? nextslide = $('#home-slide-nav li.welcome a') : nextslide = currentslide.next().find('a');
	setActiveSlide(nextslide);
}
function configureHomeSlideshow() {
	if ($('.primary-content').hasClass('home')) {
		setActiveSlide($('#home-slide-nav li.welcome a'));
		var autoslide = setInterval(slideToNext, 10000);
		$('#home-slide-nav li a').click(function() {
			window.clearInterval(autoslide);
			setActiveSlide(this);
			return false;
		});
	}
}
function configureTestimonials() {
	if ($('.primary-content').hasClass('client-testimonials')) {
		$('.testimonial').each(function() {
			var testimonial = $(this);
			var blockquote = testimonial.find('blockquote');
			if ( blockquote.find('p').length > 1 ) {
				blockquote.find('p:first-child').append('&nbsp;<span class="expand-testimonial">Expand</span>')
				blockquote.append('<div><span class="collapse-testimonial">Collapse</span></div>');
				var collapsedheight = blockquote.find('p:first-child').outerHeight() - 8;
				var expandedheight = blockquote.innerHeight();
				blockquote.css({
					height: collapsedheight
				});
				blockquote.find('.expand-testimonial').click(function() {
					blockquote.find('.expand-testimonial').css({display:'none'});
					blockquote.stop().animate({
						height: expandedheight
					});
				});
				blockquote.find('.collapse-testimonial').click(function() {
					blockquote.stop().animate({
						height: collapsedheight
					}, function() {
						blockquote.find('.expand-testimonial').css({display:'inline'});
					});
				});
			}
		});
	}
}
function configureCaseStudySlideshow() {
	if ($('.primary-content').hasClass('portfolio')) {
		var slideshow = $('.featured-case-studies > ul');
		var nav = $('ul.case-study-nav');
		nav.find('li:first-child').addClass('active');
		nav.find('a').each(function() {
			$(this).click(function() {
				nav.find('li').removeClass('active');
				$(this).parent().addClass('active');
				var target = $(this).attr('href');
				var slideposition = $(target).position();
				slideshow.parent().scrollLeft(slideposition.left);
				return false;
			});
		});
	}
}
function configureBlogArchiveDropdown() {
	$('select.blog-archive-dropdown').change(function() {
		document.location.href = $(this).attr('value');
	});
}
function configureFreeConsultationForm() {
	if ($('.primary-content').hasClass('free-consultation')) {
		$('#consultation-form').submit(function() {
			$('#consultation-form .error').remove();
			var validname = ($('#name').val() != '');
			var validemail = ($('#email').val().match(/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i));
			if (validname && validemail) {
				return true;
			} else {
				if (!validname) {
					$('.consultation-form-name').prepend('<div class="error">Invalid name</div>');
					$('.consultation-form-name input').keyup(function() {
						$('.consultation-form-name .error').remove();
					});
				}
				if (!validemail) {
					$('.consultation-form-email').prepend('<div class="error">Invalid email address</div>');
					$('.consultation-form-email input').keyup(function() {
						$('.consultation-form-email .error').remove();
					});
				}
				return false;
			}
		});
	}
}
function configureSharebar() {
	if (document.getElementById('sharebar')) {
		$(window).scroll(function() {
			if ($(this).scrollTop() >= 87) {
				if (!$('#sharebar-anchor').hasClass('fixed')) {
					$('#sharebar-anchor').addClass('fixed');
				}
			} else {
				$('#sharebar-anchor').removeClass('fixed');
			}
		});
	}
}
$(function() {
	configureHomeSlideshow();
	configureTestimonials();
	configureCaseStudySlideshow();
	configureBlogArchiveDropdown();
	configureFreeConsultationForm();
	configureSharebar();
});
