$(document).ready(function()
{

	$('#websouth_slideshow_wrapper img').hide();
	$('#websouth_slideshow_wrapper img').first().addClass('active');
	$('#websouth_slideshow_wrapper img.active').fadeIn();
	var fullscreen = false;
	var paused = false;
	var browserWidth = $(window).width() - 4;
	var browserHeight = $(window).height() - 4;
	
	var controller_open = '<div id="controls"><div id="status">PAUSED</div><div id="controls_wrapper">';
	var control_previous = '<div id="previous"></div>';
	var control_pause = '<div id="pause"></div>';
	var control_resume = '<div id="resume"></div>';
	var control_next = '<div id="next"></div>';
	var control_fullscreen = '<div id="fullscreen"></div>';
	var controller_close = '</div></div>';
	
	var controller_data = '';//controller_open + control_previous + control_pause + control_resume + control_next + control_fullscreen + controller_close;
	$('#websouth_slideshow_wrapper').append(controller_data);
	
	$('#controls').hide();
	$('#status').hide();
	
	$('#websouth_slideshow_wrapper').hover(function enterControls()
	{
		$('#controls').fadeIn();
	}, function exitControls(){
		$('#controls').fadeOut();
	});
	
	var wrapper_position = 'static';
	var wrapper_top = '0';
	var wrapper_left = '0';
	var wrapper_margin = '15px auto 15px auto';
	var wrapper_width = '620px';
	var wrapper_height = '620px';
	var wrapper_zindex = 'auto';
	var image_width = '620px';
	var image_height = '400px';
	var controls_width = '620px';
	var controls_margin = '520px 0 0 0';
	var body = 'auto';
	
	setInterval(function()
	{
		if (paused == false)
		{
			var active = $('#websouth_slideshow_wrapper img.active');
			var previous = $('#websouth_slideshow_wrapper img.active').prev();
			var next = $('#websouth_slideshow_wrapper img.active').next();
			var first = $('#websouth_slideshow_wrapper img').first();
			var last = $('#websouth_slideshow_wrapper img').last();
		
			if (!last.hasClass('active'))
			{
				active.fadeOut(1000);
				active.removeClass('active');
				next.fadeIn(1000);
				next.addClass('active');
			} else {
				active.fadeOut(1000);
				active.removeClass('active');
				first.fadeIn(1000);
				first.addClass('active');
			}
		}
				
    }, 3000);
	
	$('#fullscreen').click(function toggleFullScreen()
	{
		if (fullscreen == false)
		{
			fullscreen = true;
			
			$('#websouth_slideshow_wrapper').css('position', 'fixed');
			$('#websouth_slideshow_wrapper').css('top', '0');
			$('#websouth_slideshow_wrapper').css('left', '0');
			$('#websouth_slideshow_wrapper').css('margin', '0');
			$('#websouth_slideshow_wrapper').css('width', browserWidth);
			$('#websouth_slideshow_wrapper').css('height', browserHeight);
			$('#websouth_slideshow_wrapper').css('zIndex', '9999');
			$('#websouth_slideshow_wrapper img').css('width', browserWidth);
			$('#websouth_slideshow_wrapper img').css('height', browserHeight);
			$('#controls').css('width', browserWidth);
			$('#controls').css('marginTop', browserHeight - 75);
			$('body').css('overflow', 'hidden');
		} else {
			fullscreen = false;
					
			$('#websouth_slideshow_wrapper').css('position', wrapper_position);
			$('#websouth_slideshow_wrapper').css('top', wrapper_top);
			$('#websouth_slideshow_wrapper').css('left', wrapper_left);
			$('#websouth_slideshow_wrapper').css('margin', wrapper_margin);
			$('#websouth_slideshow_wrapper').css('width', wrapper_width);
			$('#websouth_slideshow_wrapper').css('height', wrapper_height);
			$('#websouth_slideshow_wrapper').css('zIndex', wrapper_zindex);
			$('#websouth_slideshow_wrapper img').css('width', image_width);
			$('#websouth_slideshow_wrapper img').css('height', image_height);
			$('#controls').css('width', controls_width);
			$('#controls').css('margin', controls_margin);
			$('body').css('overflow', body);
		}
	});
	
	$('#pause').click(function pauseSlideshow()
	{
		if (paused != true)
		{
			paused = true;
			$('#status').show();
		}
	});
	
	$('#resume').click(function resumeSlideshow()
	{
		if (paused == true)
		{
			paused = false;
			$('#status').hide();
		}
	});
	
	$('#previous').click(function previousSlide()
	{
		if (paused != true)
		{
			paused = true;
			$('#status').show();
		}
	
		var active = $('#websouth_slideshow_wrapper img.active');
		var previous = $('#websouth_slideshow_wrapper img.active').prev();
		var next = $('#websouth_slideshow_wrapper img.active').next();
		var first = $('#websouth_slideshow_wrapper img').first();
		var last = $('#websouth_slideshow_wrapper img').last();
		
		if (!first.hasClass('active'))
		{
			active.fadeOut(1000);
			active.removeClass('active');
			previous.fadeIn(1000);
			previous.addClass('active');
		} else {
			active.fadeOut(1000);
			active.removeClass('active');
			last.fadeIn(1000);
			last.addClass('active');
		}
	});
	
	$('#next').click(function nextSlide()
	{
		if (paused != true)
		{
			paused = true;
			$('#status').show();
		}
	
		var active = $('#websouth_slideshow_wrapper img.active');
		var previous = $('#websouth_slideshow_wrapper img.active').prev();
		var next = $('#websouth_slideshow_wrapper img.active').next();
		var first = $('#websouth_slideshow_wrapper img').first();
		var last = $('#websouth_slideshow_wrapper img').last();
		
		if (!last.hasClass('active'))
		{
			active.fadeOut(1000);
			active.removeClass('active');
			next.fadeIn(1000);
			next.addClass('active');
		} else {
			active.fadeOut(1000);
			active.removeClass('active');
			first.fadeIn(1000);
			first.addClass('active');
		}
	});

});
