jQuery(document).ready(function($) {
	
	//$('.debug').show(); // HIDE IF LIVE

	/**************** INT ****************/
	$("a.fancybox").fancybox();

	var baseUrl; var siteURL;
	baseUrl = $('.page').attr('baseURL');
	siteURL = $(location).attr('href');
	siteURL = siteURL.replace('http://','');
	siteURL = siteURL.split('/');
	var slideNum = 1;
	var slideToMe = '';
	var foundMe = '';
	
	if( siteURL[1] == 'projects' ) {	
		$('#menu-item-22').find('ul').remove();
		createNav();
	}

	$('img').each(function(){
		$(this).removeAttr('title');
		$(this).removeAttr('alt');
	});

	$(window).load(function(event){
		
		var findLoc = '';
		if( siteURL[1] == 'projects' && siteURL[2]) {
			if( $('#'+siteURL[2]).length > 0 ) {
				findLoc = $('#'+siteURL[2]).position().left;
			} else {
				findLoc = 0;
			}
			//$('.debug').text( 'findLoc: '+findLoc+' | siteURL[2]: '+siteURL[2] );
		}

		if($('.people').length > 0) {
			$('.jspTrack').hide();
			var adjustWidth = getPeopleSizing(); 
			$('.people').width(adjustWidth);
			callScrollPane(0);
			$('.jspTrack').fadeIn(600);
			$('.loading').fadeOut(200);
		}

		if($('.projects').length > 0) {
			$('.jspTrack').hide();
			placeWhere = '';
			$('.project-box-hover').hide();
			var adjustWidth = resizeProjects(); 
			var projectLoaderWidths = getProjectLoaderWidths(); 
			$('.projects').width(adjustWidth);
			$('.container').css({ 'overflow':'auto' })
			callScrollPane(findLoc);
			if( findLoc <= 0 ) {
				$('#scroll-projects-back').hide();
			}
			$('.jspTrack').fadeIn(600);
			$('.loading').fadeOut(200);
		}

		if($('.home').length > 0) {
			findMiddle = Math.round( ( ($('.home').length-1) /2) );
			slideToMe = $('.home').eq(findMiddle);
			slideMiddle(slideToMe);
		}
	});

	$(window).resize(function() {
		callScrollPane(0);
	});

	/**************** GO ****************/

	$('.menu-item').hover(
		function () {
			whichDiv = $(this).find('.sub-menu');
			if (whichDiv.is(':animated')) {
				whichDiv.stop().fadeTo(200, .9);
			} else {
				whichDiv.fadeIn(100);
			}
		},
		function () {
			whichDiv.fadeOut();
		}
	);

	$('.sub-menu').mouseover(function () {
		$(this).show();
	});

	$('.container').mouseover(function () {
		$('.sub-menu').hide();
	});

	function callScrollPane(loadPos) {
		var scrollPane = $('.container').jScrollPane();
		var jScrollPaneAPI = scrollPane.data('jsp');
		jScrollPaneAPI.scrollToX(loadPos,true);
	};
	
	
	/* FOR PEOPLE */
	
	function getPeopleSizing() {
		adjustWidth = 0;
		$('.person-block').each(function(){
			adjustWidth += $(this).outerWidth(true);
		});
		adjustWidth += 20;
		return adjustWidth;
	};
	
	$('.person').click(function(){
		/* REMOVE BAR AND ADD WIDTH TO AREA */
		$('.jspTrack').fadeOut();
		$('.projects').width(200000);

		placeWhere = $(this).attr('id'); 
		postData = 'post_ID='+$(this).attr('post_ID');
			
		if($('.person-loader').length > 0 ) {
			$('.person-loader').remove();
			callScrollPane(0);
			loadPerson(this);
		} else {
			loadPerson(this);
		}
		
	});

	function loadPerson(clickedDIV) {
		projectWidth = '';
		$.post(baseUrl+'/jquery-loads/person-loader.php', postData, function(returnData) {
	
			$(clickedDIV).parent().after(returnData);
	
			/* FADE IT IN */
			$('.person-loader-block').each(function(){
				$(this).fadeTo(600, 1);
			});
	
			/* RESIZE AREA TO FIT */
			projectWidth = ($('.person-loader').outerWidth(true)+100);
			$('.people').width(adjustWidth+projectWidth);
	
			/* SCROLL TO */
			loadPos = ($('.person-loader').position().left-50);
			callScrollPane(loadPos);
			/* PUT SCROLLBAR BACK */
			$('.jspTrack').fadeIn(800);
		});
	};

	$('.person-loader-close').live('click', function() {
		$('.projects').width(200000);

		$(this).parent().parent().parent().fadeOut(200, function(){
			loadPos = $(this).prev().position().left;
			$(this).remove();
			$('.people').width(adjustWidth);
			callScrollPane(loadPos);
		});
	});


	/* PROJECTS */

	$('.project-box').hover(
		function () {
			whichDiv = $(this).find('.project-box-hover');
			if (whichDiv.is(':animated')) {
				whichDiv.stop().fadeTo(200, .9);
			} else {
				whichDiv.fadeTo(200, .9);
			}
		},
		function () {
			if( !whichDiv.hasClass('project-box-active') ) {
				whichDiv.fadeTo(200, 0);
			}
		}
	);

	$('.project-loader-close').live('click', function() {
		$('.jspTrack').fadeOut();
		$('.projects').width(200000);
		closeThis = $(this).parent().parent().parent().parent();
		loadPos = $(closeThis).prev().position().left;
		//alert( closeThis );
		$(closeThis).fadeOut(400, function() {
			$(closeThis).remove();
			/* RESIZE AREA TO FIT */
			projectLoaderWidths = getProjectLoaderWidths(); 
			$('.projects').width(adjustWidth+projectLoaderWidths);
			callScrollPane(loadPos);

			/* PUT SCROLLBAR BACK */
			$('.jspTrack').fadeIn(800);
		})
	});

	$('.project-slides').click(function(){
		//$('.sub-menu').hide();
		loadPos = $( $(this).attr('id') ).position().left;
		callScrollPane(loadPos);
	});

	function resizeProjects() {
		adjustWidth = 0;
		$('.project').each(function(){
			adjustWidth += $(this).outerWidth(true);
		});
		adjustWidth += 20;
		return adjustWidth;
	};

	function getProjectLoaderWidths() {
		projectLoaderWidths = 0;
		$('.project-loader').each(function(){
			projectLoaderWidths += $(this).outerWidth(true);
		});
		return projectLoaderWidths;
	};

	$('.project-box').click(function(){
		placeWhere = $(this).parent().parent().attr('id'); 
		loadProject(this, placeWhere);
	});

	$('.project-img').click(function(){
		placeWhere = $(this).parent().attr('id'); 
		loadProject(this, placeWhere);
	});

	function loadProject(clickedBox, placeWhere) {
		//$('.project-box-hover').hide();
		//$('.project-box-hover').removeClass('project-box-active');
		//$(this).find('.project-box-hover').addClass('project-box-active');
		//$(this).find('.project-box-hover').show();
		
		/* REMOVE BAR AND ADD WIDTH TO AREA */
		$('.jspTrack').fadeOut();
		$('.projects').width(200000);

		postData = '';
		postData = 'post_ID='+$(clickedBox).attr('post_ID');
		postData += '&title='+$(clickedBox).attr('id');
		
		projectWidth = '';
		$.post(baseUrl+'/jquery-loads/project-loader.php', postData, function(returnData) {
	
			/* TO REPLACE OR TO PLACE AFTER */
			if( $('.'+placeWhere+'-active').length > 0 ) {
				$('.'+placeWhere+'-active').replaceWith(returnData);
			} else {
				$('#'+placeWhere).after(returnData);
			}
	
			/* ADD CLASS TO LOADER SO WE CAN WORK WITH IT */
			$('#'+placeWhere).next('.project-loader').addClass(placeWhere+'-active');
	
			/* FADE IT IN */
			$('.project-loader-block').each(function(){
				$(this).fadeTo(600, 1);
			});
	
			/* RESIZE AREA TO FIT */
			projectLoaderWidths = getProjectLoaderWidths(); 
			$('.projects').width(adjustWidth+projectLoaderWidths);
			
			//$('.debug').text('adjustWidth: '+adjustWidth+' | projectLoaderWidths: '+projectLoaderWidths+' | adjustWidth+projectLoaderWidths: '+(adjustWidth+projectLoaderWidths)+' | projects width: '+$('.projects').width());
	
			/* SCROLL TO */
			loadPos = ($('.'+placeWhere+'-active').position().left-50);
			callScrollPane(loadPos);

			/* PUT SCROLLBAR BACK */
			$('.jspTrack').fadeIn(800);
		});
	};
	
	function createNav() {
		navBuild = '<ul class="sub-menu">';
		$('.project').each(function(index) {
			if(slideName = $(this).attr('id')) {
				navBuild += '<li class="menu-item"><a class="project-slides" id="#'+slideName+'">'+slideName.replace(/\b-\b/gi,' ')+'</a></li>';
			}
		});
		navBuild += '</ul>';
		$('.menu-item-22').append(navBuild);
	};


	/* HOME */

	$('#scroll-left').click(function(){
		slideToMe = slideToMe.prev();
		slideMiddle( slideToMe );
	});
		
	$('#scroll-right').click(function(){
		slideToMe = slideToMe.next();
		slideMiddle( slideToMe );
	});

	function slideMiddle(slideToMe) {
		
		if( slideToMe.index() < $('.home').length && slideToMe.index() >= 0  ) {
			$('.home').removeClass('home-active');
			slideToMe.addClass('home-active');

			windowHalf = ($(window).width()/2);
			slideHalf = (slideToMe.width()/2);
			slidePos = slideToMe.position().left;
			move_left = ( windowHalf - slideHalf );
			slideMe = (slidePos- move_left);
			callScrollPane(slideMe);
		};

		if( slideToMe.index() >= ($('.home').length-1) ) {
			$('#scroll-right').removeClass('scroll-me');
			$('#scroll-right').addClass('home-inactive');
		} else {
			$('#scroll-right').addClass('scroll-me');
			$('#scroll-right').removeClass('home-inactive');
		}

		if( slideToMe.index() == 0 ) {
			$('#scroll-left').removeClass('scroll-me');
			$('#scroll-left').addClass('home-inactive');
		} else {
			$('#scroll-left').addClass('scroll-me');
			$('#scroll-left').removeClass('home-inactive');
		}

	};
    
	$('#scroll-right').mousemove(function(e){
		$('.follow-me').text('NEXT >');
		$('.follow-me').show();
		var whereTo = (( e.pageX - $('.follow-me').outerWidth(true) ) - 10);
		followMe(whereTo, e);
	});

	$('#scroll-left').mousemove(function(e){
		$('.follow-me').text('< PREVIOUS');
		$('.follow-me').show();
		var whereTo = e.pageX+10;
		followMe(whereTo, e);
	});
    
	$('.scroll-me').mouseout(function(){
		$('.follow-me').text('');
		$('.follow-me').hide();
	});

	function followMe(whereTo, e) {
//		var pageCoords = "( " + e.pageX + ", " + e.pageY + " )";
//		var clientCoords = "( " + e.clientX + ", " + e.clientY + " )";
//		$('.debug').text( 'LEFT: ( e.pageX, e.pageY ): '+pageCoords+' | ( e.clientX, e.clientY ): '+clientCoords );
		$('.follow-me').css({
			left:  whereTo,
			top:   (e.pageY - ($('.follow-me').outerHeight(true)/2) )
		});
	};

	$('#scroll-projects-forward').mousemove(function(e){
		$('.follow-me').text('NEXT >');
		$('.follow-me').show();
		var whereTo = (( e.pageX - $('.follow-me').outerWidth(true) ) - 10);
		followMe(whereTo, e);
	});

	$('#scroll-projects-back').mousemove(function(e){
		$('.follow-me').text('< PREVIOUS');
		$('.follow-me').show();
		var whereTo = e.pageX+10;
		followMe(whereTo, e);
	});

		
	$('#scroll-projects-forward').live('click', function(){
		slideMe = slideMe+800;
		$('#scroll-projects-back').show();
		callScrollPane(slideMe);
		$('.debug').text( 'slideMe: '+slideMe );
	});
	
	$('#scroll-projects-back').live('click', function(){
		slideMe = slideMe-800;
		if(slideMe <= 0) {
			$('#scroll-projects-back').hide();
			slideMe == 0;
		}
		callScrollPane(slideMe);
		//$('.debug').text( 'slideMe: '+slideMe );
	});

	$('.container').jScrollPane().bind('jsp-scroll-x', function(event, scrollPositionX, isAtLeft, isAtRight)  {
		$(document).unbind('mouseup.jsp').bind( 'mouseup.jsp', function() {
			slideMe = scrollPositionX;
			if(slideMe > 0) {
				$('#scroll-projects-back').show();
				$('#scroll-projects-forward').show();
			}
			$(document).unbind('mouseup.jsp');
		});
	}).data('jsp');



});

