$(document).ready(function() {	
	
	$('body').removeClass('nojs');
	
	var $anext = $('a.next'),
		$aprev = $('a.prev'),
		$container = $('#photo-slider-container'),
		$imgdivs = $container.children('div'),
		$imgps = $imgdivs.children('p'),
		$bottomlinks = $('ul#bottomlinks'),
		$thumbs = $('ul#thumbnails'),
		$thumbsli = $thumbs.children('li'),
		$pcounter = $('#counter'),
		$worknav = $('#worknav'),
		width = parseInt($imgdivs.eq(0).outerWidth(true)),
		height = parseInt($container.outerHeight(true));
	
	$worknav.mouseover(function() { $('#subnav').slideDown(); });
		
	// on load
	$idxactive = $imgdivs.index($('.active')),
	$thumbsli.eq($idxactive).addClass('current');
	
	$imgdivs.each(function() { 
		
		var $imgc = $(this).children('img'),
			imgcheight = $imgc.outerHeight();
			
		if (imgcheight < height)
		{
			var mrgn = (height - imgcheight) / 2;
			$imgc.css('margin-top', mrgn);
		}
		
	});
	
	$bottomlinks.find('a[href="#thumbs"]').click(function() {
		if($thumbs.is(':visible'))
		{
			$thumbs.slideUp({ duration: 400, easing: 'swing'});
		}
		else
		{
			$thumbs.slideDown({ duration: 400, easing: 'swing'});
		}
		return false;
	});

	$bottomlinks.find('a[href="#info"]').hover(
		function() { $imgps.eq($imgdivs.index($('.active'))).show(); },
		function() { $imgps.hide(); }
	);

	$('#closehref').click(function() {
		$thumbs.slideUp({ duration: 400, easing: 'swing'});
		return false;		
	});
		
	$thumbs.find("a:not(#closehref)").click(function() {
		var idx = $imgdivs.index($($(this).attr('href'))),
			$this = $(this);
		
		if (idx >= 0)
		{
			var lft = (idx * width) * -1;
			$container.animate({left: lft + 'px'}, 500, 'swing');
			
			$imgdivs.removeClass('active');
			$imgdivs.eq(idx).addClass('active');
			
			if (idx > 0)
			{
				$aprev.removeClass('disabled');
			}
			else
			{
				$aprev.addClass('disabled');
			}
	
			$this.parent().siblings().removeClass('current');
			$this.parent().addClass('current');
			
			setCounter(idx + 1);
		
		}
		
		return false;
	});
	
	$thumbsli.hover(
		function() { $(this).addClass('onhover'); },
		function() { $(this).removeClass('onhover'); }
	);
	
	$anext.click(function() {
		
		var $this = $(this),
			$idxactive = $imgdivs.index($('.active')),
			$idxlast = $imgdivs.length - 1;
			
		$container.stop();
		
		if ($idxactive != $idxlast)
		{
			var lft = parseInt(($idxactive * width) + width) * -1;
			$container.animate({left: lft + 'px'}, 500, 'swing');
			
			$imgdivs.removeClass('active');
			$imgdivs.eq($idxactive + 1).addClass('active');

			setCounter($idxactive + 2);
	
			$thumbsli.removeClass('current');
			$thumbsli.eq($idxactive + 1).addClass('current');
			
			$aprev.removeClass('disabled');
		}
		else
		{
			$container.animate({left: '0px'}, 1200, 'swing');
			$imgdivs.removeClass('active');
			$imgdivs.eq(0).addClass('active');
			$aprev.addClass('disabled');
		
			$thumbsli.removeClass('current');
			$thumbsli.eq(0).addClass('current');
				
			setCounter(1);

		}
							
		return false;
		
	});
	
	$aprev.click(function() {
		
		var $this = $(this),
			$idxactive = $imgdivs.index($('.active')),
			$idxlast = $imgdivs.length - 1,
			lft = parseInt($container.css('left')),
			newlft = lft + width;

		$container.stop();

		if ($idxactive > 0)
		{
	
			$container.animate({left: newlft + 'px'}, 500, 'swing');

			$imgdivs.removeClass('active');
			$imgdivs.eq($idxactive - 1).addClass('active');		
			
			if ($idxactive === 1)
			{
				$this.addClass('disabled');
			}	

			setCounter($idxactive);
			
		}
		
		return false;
		
	});
		
	function setCounter(num)
	{
		$pcounter.html(num + '/' + $imgdivs.length);
	}
	
    $(document).bind("contextmenu",function(e){  
        alert("All works on this site are property of Ashley Gieseking and cannot be used without consent.");
        return false;  
    }); 
	
});