jQuery(function( $ ){
	//borrowed from jQuery easing plugin
	//http://gsgd.co.uk/sandbox/jquery.easing.php
	$.easing.elasout = function(x, t, b, c, d) {
		var s=1.70158;var p=0;var a=c;
		if (t==0) return b;  if ((t/=d)==1) return b+c;  if (!p) p=d*.3;
		if (a < Math.abs(c)) { a=c; var s=p/4; }
		else var s = p/(2*Math.PI) * Math.asin (c/a);
		return a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) + c + b;
	};
	// This one is important, many browsers don't reset scroll on refreshes
	// Reset all scrollable panes to (0,0)
	$('div.pane').scrollTo( 0 );
	// Reset the screen to (0,0)
	$.scrollTo( 0 );
	
	// $("body").onscroll = function() {
	// 	alert('scroll');
	// }
	
	if(isIOS()) {
		// alert('ios');
		$("#scaffold").css('position', 'relative')
		$("#container").attr('style', "width: 1000px; height: 800px; overflow-x: hidden; position: absolute; top: 0; left: 0;");
	}
	
	$bgresize = function(){
		if(($('#bg1').width()/$('#bg1').height()) > ($(window).width()/$(window).height())){
			for(x=1;x<5;x++){
			$('#bg'+x).css('width', 'auto');			
			$('#bg'+x).css('height', '100%');				
				}	
			}		
		else{
			for(x=1;x<5;x++){
			$('#bg'+x).css('width', '100%');			
			$('#bg'+x).css('height', 'auto');				
				}	
		}			
	}
	

	$('.home-scroll').click(function(){//$.scrollTo works EXACTLY the same way, but scrolls the whole screen
		if(isIOS()) {
			$("#scaffold").css('left', 0);
		} else {
			$.scrollTo( {top:0, left:0}, 2000, {easing:'swing'} );
		}
		
		//$.scrollTo( {top:0, left:0}, 2000, {easing:'swing', onAfter:function(){
		$('#bg1').css('display', 'none');		
		$('#bg1').css('z-index', -1000); //moves bg to top
		$('#bg2').css('z-index', -2000);
		$('#bg3').css('z-index', -3000);
		$('#bg4').css('z-index', -4000);		
		$('#bg1').fadeIn(2000, function() {
			$('#bg2').css('display', 'none');
			$('#bg3').css('display', 'none');
			$('#bg4').css('display', 'none');	
		});	
		// }} ); //scrolls
		return false;
	});	
	$('.capa-scroll').click(function(){//$.scrollTo works EXACTLY the same way, but scrolls the whole screen
		if(isIOS()) {
			$("#scaffold").css('left', -2000);
		} else {
			$.scrollTo( {top:0, left:2000}, 2000, {easing:'swing'} );
		}
		$('#bg2').css('display', 'none');		
		$('#bg2').css('z-index', -1000); //moves bg to top
		$('#bg1').css('z-index', -2000);
		$('#bg3').css('z-index', -3000);
		$('#bg4').css('z-index', -4000);		
		$('#bg2').fadeIn(2000, function() {
			$('#bg1').css('display', 'none');
			$('#bg3').css('display', 'none');
			$('#bg4').css('display', 'none');	
		});	
		return false;
	});	
	
	$('.proj-scroll').click(function(){//$.scrollTo works EXACTLY the same way, but scrolls the whole screen
		if(isIOS()) {
			$("#scaffold").css('left', -4000);
		} else {
			$.scrollTo( {top:0, left:4000}, 2000, {easing:'swing'} );
		}
		$('#bg3').css('display', 'none');		
		$('#bg3').css('z-index', -1000); //moves bg to top
		$('#bg1').css('z-index', -2000);
		$('#bg2').css('z-index', -3000);
		$('#bg4').css('z-index', -4000);		
		$('#bg3').fadeIn(2000, function() {
			$('#bg1').css('display', 'none');
			$('#bg2').css('display', 'none');
			$('#bg4').css('display', 'none');	
			});		
		return false;
	});	
	$('.cont-scroll').click(function(){//$.scrollTo works EXACTLY the same way, but scrolls the whole screen
		
		if(isIOS()) {
			$("#scaffold").css('left', -6000);
		} else {
			$.scrollTo( {top:0, left:6000}, 2000, {easing:'swing'} );
		}
		
		
		
		$('#bg4').css('display', 'none');		
		$('#bg4').css('z-index', -1000); //moves bg to top
		$('#bg1').css('z-index', -2000);
		$('#bg2').css('z-index', -3000);
		$('#bg3').css('z-index', -4000);		
		$('#bg4').fadeIn(2000, function() {
			$('#bg1').css('display', 'none');
			$('#bg2').css('display', 'none');
			$('#bg3').css('display', 'none');	
			});	
		//  //scrolls		
		return false;
	});		
	$(document).ready(function(){ //on page load
  		$('#capa').css('max-height', ($(window).height() - 240)); //resizes project white
		$('#capaContent').css('max-height', ($(window).height() - 203)); //resizes scroll area							   
  		$('#proj').css('max-height', ($(window).height() - 240)); //resizes project white
		$('#projContent').css('max-height', ($(window).height() - 203)); //resizes scroll area
		// $('#projNav').localScroll({ //target links for vertical scrolling
		// 		   target:'#projContent' /*,
		// 		 	hash: true */ //target area for vertical scrolling
		// 			});
		// $('#capaNav').localScroll({ //target links for vertical scrolling
		// 		   target:'#capaContent' //target area for vertical scrolling
		// 			});		
		$bgresize();
		});
	$(window).resize(function() { //on window resize
  		$('#capa').css('max-height', ($(window).height() - 240)); //resizes project white
		$('#capaContent').css('max-height', ($(window).height() - 203)); //resizes scroll area									  
		$('#proj').css('max-height', ($(window).height() - 240));	//resizes project white					  
		$('#projContent').css('max-height', ($(window).height() - 203)); //resizes scroll area  
		$bgresize();
	});
		
	$(window).resize();
	
	
	function isIOS(){
	    return (
	        (navigator.platform.indexOf("iPhone") != -1) ||
	        (navigator.platform.indexOf("iPod") != -1) ||
	        (navigator.platform.indexOf("iPad") != -1)
	    );
	}
	
//________________________________________________________________________________________
//																			
	
	//________________________________________________________________________________________
	//																			   Contact Us	
		$('#mailForm').ajaxForm(function() { 
			$("#contact_content").html("<h1>Thank You</h1><p>We will get back to you as soon as possible</p>");
		}); 

	//________________________________________________________________________________________
	//																		 Up / Down Arrows

	/*
		Preload Rollover States
	*/
		var arrowUpOver = new Image(); arrowUpOver.src="/images/btn_up-alt.gif";
		var arrowDownOver = new Image(); arrowDownOver.src="/images/btn_down-alt.gif";

		var arrowUp = new Image(); arrowUp.src="/images/btn_up.gif";
		var arrowDown = new Image(); arrowDown.src="/images/btn_down.gif";

	/* 
		Events
	*/				
		$(".upBtn").mouseout(function() { $(this).attr('src', arrowUp.src); });
		$(".upBtn").mouseover(function() { $(this).attr('src', arrowUpOver.src); });

		$(".downBtn").mouseout(function() { $(this).attr('src', arrowDown.src); });
		$(".downBtn").mouseover(function() { $(this).attr('src', arrowDownOver.src); });

	//________________________________________________________________________________________
	//																			 Capabilities

		var capaSelectedIndex = 0;

		$('#capaPrev').click(function() {
			prevCapability();
			return false;
		});

		$('#capaNext').click(function() {
			nextCapability();
			return false;
		});

		$("#capaNav>li>a").click(function() {
			gotoCapability($(this).parent('li').index());
			return false;
		});

		var scrollCapabilities = function() {
			var element = $('#capaContent').children()[capaSelectedIndex];
			if(element) { $('#capaContent').scrollTo($(element), 800); }
		}

		var gotoCapability = function(index) {
			capaSelectedIndex = index;
			scrollCapabilities();
		}

		var nextCapability = function() {
			if(capaSelectedIndex == $('#capaContent').children().length - 1) { capaSelectedIndex = 0;
			} else { capaSelectedIndex++; }
			scrollCapabilities();
		};

		var prevCapability = function() {	
			if(capaSelectedIndex <= 0) { capaSelectedIndex = Capabilities.length-1;
			} else { capaSelectedIndex--; }
			scrollCapabilities();		
		};

	//________________________________________________________________________________________
	//																				 Projects	
		var projSelectedIndex = 0;

		$('#projPrev').click(function() {
			prevProject();
			return false;
		});

		$('#projNext').click(function() {
			nextProject();
			return false;
		});

		$("#projNav>li>a").click(function() {
			gotoProject($(this).parent('li').index());
			return false;
		});

		var scrollProjects = function() {
			var element = $('#projContent').children()[projSelectedIndex];
			if(element) { $('#projContent').scrollTo($(element), 800); }
		}

		var gotoProject = function(index) {
			projSelectedIndex = index;
			scrollProjects();
		}

		var nextProject = function() {
			if(projSelectedIndex == $('#projContent').children().length - 1) { projSelectedIndex = 0;
			} else { projSelectedIndex++; }
			scrollProjects();
		};

		var prevProject = function() {	
			if(projSelectedIndex <= 0) { projSelectedIndex = projects.length-1;
			} else { projSelectedIndex--; }
			scrollProjects();		
		};

		
	

});
