$(function() {
	
	var totalPanels			= $(".slide-container").children().size();
	var movingDistance	    = 210;
	var $panels				= $('#slider .slide-container > div');
	var $container			= $('#slider .slide-container');
	
	function spGetHashParams() {
		var loc = (document.location+"");
		var pos = loc.indexOf("#");
		if (pos == -1) return 1;
		var hashQs = loc.substring(pos+1, loc.length);
		return hashQs;
	}
	
	var curPanel = parseInt(spGetHashParams());
	
	$panels.css({'float' : 'left','position' : 'relative'});
	$("#slider").data("currentlyMoving", false);
	
	if(totalPanels <= 1) {
		$('.arrow').hide();
		$('#panel_1').css('left','205px');
	} 
	if(totalPanels == 2) {
		$('.arrow').hide();
		$('#panel_1').css('left','105px');
		$('#panel_2').css('left','105px');
	}
	
	if(totalPanels <= 3) {
		$('.arrow').hide();
	}
	
	$container
		.css('width', ($panels[0].offsetWidth * $panels.length) + 210 )
		.css('left','0px');
	
	if(curPanel != 1) {
		$container.css('left','-'+((curPanel-1)*630)+'px');	
	}
	if(curPanel == 1) {
		$("a.slide-left").addClass('disabled');
	}
	if(curPanel == totalPanels-2) {
		$("a.slide-right").addClass('disabled');
	}
		
	var scroll = $('#slider .slide-wrapper').css('overflow', 'hidden');
	
	function change(direction) {
		if((direction && !((curPanel+2) < totalPanels)) || (!direction && (curPanel <= 1))) { return false; }
        if (($("#slider").data("currentlyMoving") == false)) {
			$("#slider").data("currentlyMoving", true);
			var next         = direction ? curPanel + 1 : curPanel - 1;
			var leftValue    = $(".slide-container").css("left");
			var movement	 = direction ? parseFloat(leftValue, 10) - movingDistance : parseFloat(leftValue, 10) + movingDistance;
			$(".slide-container")
				.stop()
				.animate({
					"left": movement
				}, function() {
					$("#slider").data("currentlyMoving", false);
				});
			//returnToNormal("#panel_"+curPanel);		
			//growBigger("#panel_"+next);
			curPanel = next;
			//remove all previous bound functions
			$("#panel_"+(curPanel+1)).unbind();	
			//go forward
			$("#panel_"+(curPanel+1)).click(function(){ change(true); });
            //remove all previous bound functions															
			$("#panel_"+(curPanel-1)).unbind();
			//go back
			$("#panel_"+(curPanel-1)).click(function(){ change(false); }); 
			//remove all previous bound functions
			$("#panel_"+curPanel).unbind();
		}
		//disable arrows
		if(curPanel <= 1) {
			$("a.slide-left").addClass('disabled');
		} else {
			$("a.slide-left").removeClass('disabled');
		}
		if((curPanel+2) >= totalPanels) {
			$("a.slide-right").addClass('disabled');
		} else {
			$("a.slide-right").removeClass('disabled');
		}
	}
	
	
	
	$("#panel_"+(curPanel+1)).click(function(){ change(true); });
	$("#panel_"+(curPanel-1)).click(function(){ change(false); });
	//when the left/right arrows are clicked
	$("a.slide-right").click(function(){ change(true); });	
	$("a.slide-left").click(function(){ change(false); });
	$(window).keydown(function(event){
		switch (event.keyCode) {
			case 13: //enter
				$("a.slide-right").click();
				$("a.slide-right").css({ 'background-position' : 'right center' });
				break;
			case 32: //space
				$("a.slide-right").click();
				$("a.slide-right").css({ 'background-position' : 'right center' });
				break;
	    	case 37: //left arrow
				$("a.slide-left").click();
				$("a.slide-left").css({ 'background-position' : 'left center' });
				break;
			case 39: //right arrow
				$("a.slide-right").click();
				$("a.slide-right").css({ 'background-position' : 'right center' });
				break;
		}
		setTimeout(function(){ 
		    $("a.slide-left").css({ 'background-position' : 'left top' });
		    $("a.slide-right").css({ 'background-position' : 'right top' });
		}, 500 );
	});
});