$(function()
{	
	Slideshow.init();
	
	Newsletter.init();
	
});

var Newsletter =
{
	init:function()
	{
		var $newsletter = $('#newsletter');
		
		// But label inside input and toggle on focus/blur
		
		$newsletter.find('input[type="text"]').val('Email').focus(function()
		{
			$newsletter.find('span.msg').remove();
			
			if($(this).val() == 'Email')
			{
				$(this).val('');
			}
		}
		).blur(function()
		{
			if ($(this).val() == '')
			{
				$(this).val('Email');
			}
		});
		
		// Ajaxify newsletter signup
		
		$newsletter.find('form').submit(function()
		{
			var $this = $(this);
			
			var email = $this.find('input#email').val();
		
			post_url = $this.attr('action');
			
			$.post(post_url,{'email':email},function(data)
			{
				var data = eval( "(" + data + ")" );
				
				var status = data.status;
				var msg = data.msg;
				
				$this.find('span.msg').remove();
				
				$this.append('<span class="msg">' + msg + '</span>')
				
				$msg = $this.find('span.msg');
				
				$msg.addClass(status);
				
				if (status == 'success')
				{
					$this.find('input#email').val('');
				}
			});
			
			return false;
		});
		
	}
};

var Slideshow =
{
	init:function()
	{
		$('#slideshow.large #slides').before('<div id="nav-slides">').cycle(
		{
			fx: 'fade',
			pager:  '#nav-slides',
			timeout: 5000
		});

		$('#slideshow.medium #slides').before('<ul id="nav-slides" class="prev-next"><li class="prev"><a href="#">Prev</a></li><li class="next"><a href="#">Next</a></li></ul>')
		.cycle(
		{ 
		    fx:     'fade', 
		    prev:   '#slideshow .prev', 
		    next:   '#slideshow .next',
			after: 	Slideshow.onAfter,
		    timeout: 0 
		});

		$('#slideshow .slide').not(':eq(0)').hide();
	},
	
	// Toggles nav btns if current slide is first or last
	onAfter:function(curr, next, opts)
	{
	    var index = opts.currSlide;
	    $('#slideshow .prev')[index == 0 ? 'hide' : 'show']();
	    $('#slideshow .next')[index == opts.slideCount - 1 ? 'hide' : 'show']();
	}
}