$.extend( jQuery.easing, {
	def: 'easeOutQuad',
	easeOutCirc: function (x, t, b, c, d) {
		return c * Math.sqrt(1 - (t=t/d-1)*t) + b;
	}
});

if ($.browser.msie && $.browser.version < 7) {
	document.location = 'http://sundaymorning.jaysalvat.com/update';	
}
			
$(function() { 
	// BOOKMARKLET GENERATOR -------------------------------------------
	
	$('.fancybox').fancybox({
		zoomSpeedIn:0, 
		zoomSpeedOut:0, 
		overlayShow:true,
		overlayOpacity:0.5,
		frameWidth:310,
		frameHeight:490
	});
			
	// CLOAK EMAIL -------------------------------------------
		   
	$("#email a").click(function(e)	{
		a = $(this).attr("href");
		a = a.replace("#", "").replace("|", "@");
		document.location = "ma"+"il"+"to:"+a+"?subject=[sundayMorning] ";
		return false;
	});
	
	// OPEN/CLOSE -------------------------------------------
	
	$('dd').not('#column1 dd').hide();
	$('dt').not('#column1 dt').addClass('closed').css('cursor', 'pointer')
	.dblclick(function() {
		$(this).parent().addClass('closed').find('dd').hide();
	})
	.click(function() {
		$(this).toggleClass('open').next().toggle();
	});

	// ROTATE Hello -------------------------------------------

	var lang = [ 'Hello!', 'Bonjour!', 'Hola!', 'Ciao!', 'Hallo!' ];
	function rotateHello(i) {
		if (i == lang.length) i = 0;
		$('#hello').html(lang[i]);
		Cufon('#hello');
		setTimeout(function() { rotateHello(++i) }, 5000);
	}
	rotateHello(0);

	// SLIDE PAGES -------------------------------------------
	
	var speedSlide = 400;
	var speedFade  = 200;
	
	$("#slider .more").click(function() {
		var current = $(this).parents('div').eq(2);
		var next 	= current.next();
		var step	= next.outerWidth();
		//$('html,body').animate({scrollTop: 0}, function() {
			$("#slider").animate({ right:'+='+step+"px" }, speedSlide, 'easeOutCirc', function() {
				next.fadeIn(speedFade, function() {
					$('html,body').animate({scrollTop: 0}, 900); 							
				});
			});
		//});
		$('#demo pre').hide();
		$('.moreLink', current).hide();
		
		//$('html,body').animate({scrollTop: 0}, 900);  
		
		return false;
	});
	$("#slider .close").click(function() {
		var current = $(this).parents('div').eq(2);
		var prev 	= current.prev();
		var step	= current.outerWidth();
		current.fadeOut(speedFade, function() {
			$("#slider").animate({ right:'-='+step+"px" }, speedSlide, 'easeOutCirc');
		});				
		$('.moreLink', prev).show();
		return false;
	});

	// EXAMPLES -------------------------------------------

	$('#example1 a, #example2 a, #example3 a').click(function() {
		$('#demo pre').hide();
		var pre = $(this).parents('div').eq(0).find('pre');
		pre.toggle();
		pre.css({ marginTop: -(pre.height()/2)-30 });
		return false;
	});

	// GOOGLE ANALYTICS -------------------------------------------
	
	$("li.download").click(function(){
		pageTracker._trackPageview('Download on Git');
	});

	$("li.source").click(function(){
		pageTracker._trackPageview('Browse Source Code on Git');
	});
	
	$("#documentation li.moreLink").click(function() {
		pageTracker._trackPageview('Documentation');
	});

	$('#example1 .example').dblclick(function() {
		pageTracker._trackPageview('Example 1');
	});
	$('#example2 .example').dblclick(function() {
		pageTracker._trackPageview('Example 2');
	});
	$('#example3 .example input[type=button]').click(function() {
		pageTracker._trackPageview('Example 3');
	});
	
	$(document).dblclick(function() {
		pageTracker._trackPageview('Double-click on the page');
	});
});