  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-169623-1']);
  //_gaq.push(['_trackPageview']);
  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();

var currentColumn;
var numOfCols;
var animDuration;
var arrow_timer;
var deviceAgent = navigator.userAgent.toLowerCase();
var is_iOS = deviceAgent.match(/(iphone|ipod|ipad)/);

$(function() {
// -----------------------------
// SETTINGS
//------------------------------
	currentColumn = $('.column').index('.active-col');
	numOfCols = $('#slider-inner .column').size();
	animDuration = 500;
	arrow_timer;

// -----------------------------
// EVENTS
//------------------------------
	/* On-screen buttons */
	$('#right').click(function() { tal_load_page('right', (currentColumn + 1) % numOfCols); });	
	$('#left').click(function() { if (currentColumn > 0) tal_load_page('left', (currentColumn - 1) % numOfCols); });	
	
	/* Arrow keys */
	$(document).keydown(function(e){
		switch (e.keyCode) {
			case 37: // left
				$('#left').trigger('click'); break;
			case 39: // right
				$('#right').trigger('click'); break;
		}
	});
	
	/* Navbar Links */
	$('#logo a').click(function(e){ 
		e.preventDefault(); 
		//$('nav a').first().trigger('click'); 
		var element = $('#'+$(this).attr('href'));
		var index = $('#slider-inner .column').index(element);
		if (currentColumn != index) tal_load_page((index > currentColumn ? 'right' : 'left'), index);
	});
	$('nav a').click(function(e)
	{
		e.preventDefault();
		var page = $(this).attr('href');
		var element = $('#'+page);
		var index = $('#slider-inner .column').index(element);
		if (currentColumn != index) tal_load_page((index > currentColumn ? 'right' : 'left'), index, page);
	});
	
	/**** Mobile Touch Events ****/
	/*if (is_iOS) {
		$('#controls').hide();
		$("#viewport").touchwipe(
		{
			wipeLeft: function(){ $('#left').trigger('click'); },
			wipeRight: function(){ $('#right').trigger('click'); },
			min_move_x: 100,
		});
	} else {*/
		/* Fade the arrows back in on mouse move */
		$(document).mousemove(function()
		{
			clearTimeout(arrow_timer);
			if($('#controls').is(':hidden')) {
				$('#controls').fadeIn();
			}
			tal_fade_out(2000);
		});
		tal_fade_out(3000);
	//}
	
	tal_update_arrows();
	tal_load_page('right', currentColumn);
	
});

// -----------------------------
// FUNCTIONS
//------------------------------
	function tal_loader(el) {
		var href = el.attr('href').split('/');
		var sect = href[0];
		var page = href[1];
		var index = $('#slider-inner .column').index($('#'+sect));
		if (currentColumn != index) tal_load_page((index > currentColumn ? 'right' : 'left'), index, page);
	}

	/**** Determines if the arrows are clickable. ****/
	function tal_update_arrows() 
	{
		// start with all arrows enabled
		$('#controls .disabled').each(function() {
			$(this).removeClass('disabled').addClass('enabled');
		});
		
		// Determine which column we're on
		if ((numOfCols - 1) == 0) { // There's only one column. Disable both left and right arrows
			$('#controls #left').removeClass('enabled').addClass('disabled');
			$('#controls #right').removeClass('enabled').addClass('disabled');
		} else if (currentColumn == 0) { // disable left arrow
			$('#controls #left').removeClass('enabled').addClass('disabled');
		}
	}

	/**** Fades out the arrows after a given time ****/
	function tal_fade_out(time)
	{
		var o = $('#controls');
		arrow_timer = setTimeout(function()
		{
			o.fadeOut();
		}, time);
	}
	
	function tal_load_page(direction, index, href) {
		var section = $('.column').eq(index);
		var page = (href ? href : section.attr('id'));
		if (!section.hasClass('loaded') || section.attr('rel') != page) {
			section.load(page+'.php', function(){
				tal_slide_page(direction, index);
			}).addClass('loaded').attr('rel', page);
		} else {
			tal_slide_page(direction, index);
		}
	}
	
	/**** The slider animation ****/
	function tal_animate(el, x) 
	{
		el.animate({ "left": "+="+x }, animDuration);
	}


	/**** Determines the direction and amount to slide ****/
	function tal_slide_page(direction, index) // direction should be the arrow you clicked on
	{
		if (index == currentColumn) { return; }
		
		// get the column width
		var colWidth = $('.column').width();
		
		// determine the slide amount
		var x;
		if (direction == 'right') { x = index == 0 ? (numOfCols -1) * colWidth +'px' : (index - currentColumn) * -colWidth +'px'; }
		if (direction == 'left')  { x = (currentColumn - index) * colWidth +'px'; }
		
		// set active class
		$('.active-col').removeClass('active-col');
		$('.column').eq(index).addClass('active-col');
		
		// reset currentColumn
		currentColumn = index;
		
		// update the navbar
		$('nav a').filter('.active-link').removeClass('active-link');
		if (currentColumn > 0) {
			$('nav a').eq(currentColumn-1).addClass('active-link');
		}

		// slide, baby, slide
		tal_animate($("#slider-inner"), x);

		tal_update_arrows();
		
		// Track it in Google Analytics
		var faux_page = '/'+$('.column').eq(index).attr('id');
		_gaq.push(['_trackPageview', faux_page]);
		return true;
	}

