$(document).ready( function() {	
	current = 0;
	old = 0;
	count = $("#news-scroller li").size();
	$("#news-scroller li").eq(current).css("top", "0")
	var headline_interval = setInterval("headlines()", 5000);
	$("#news-scroller li").mouseover( function() {
		clearInterval(headline_interval);
	}).mouseout( function() {
		headline_interval = setInterval("headlines()", 5000);
	});
	
	$(".content-section:first").append('<div class="close-section"><a href="#"><img src="/images/close-section.gif" alt="Close Me" /></a></div>');

	$("div.close-section a").click( function() {
		$(this).parent().parent().slideToggle('slow').prev().find('.expand').attr({
			src: "images/section-headers/plus.gif",
			alt: "Expand Section"
		});
		return false;
	});

	$("#friends a").click( function() {
		pos = $(this).find("img").position();
		who = $(this).attr("rel");
		$("#friends-callout-content").load("friends-sidebar.html #" + who + "");
		$("#friends-callout").css({
			position: "absolute",
			top: pos.top,
			left: pos.left
		}).fadeIn("fast");
		$("#friends-callout .close").click( function() {
			$(this).parent().hide();
		});
		return false;
	});

	$("#appearances").click( function() {
		pos = $(this).find("img").position();
		w = $(this).find("img").width();
		$("#appearances-callout-content").load("appearances-sidebar.html #current");
		$("#appearances-callout").css({
			position: "absolute",
			top: pos.top,
			left: pos.left + w + 5
		}).fadeIn("fast");
		$("#appearances-callout .close").click( function() {
			$(this).parent().hide();
		});
		return false;
	});

	$("#our-purpose").click( function() {
		pos = $(this).position();
		w = $(this).width();
		$("#purpose-callout-content").load("purpose-sidebar.html");
		$("#purpose-callout").css({
			position: "absolute",
			top: pos.top,
			left: pos.left
		}).fadeIn("fast");
		$("#purpose-callout .close").click( function() {
			$(this).parent().hide();
		});
		return false;
	});

	$(".asset-description").css("display","none");
	
	$(".our-work-toolbar a").click( function() {
		var asset_index = $(".our-work-toolbar a").index(this); // which one
		$(".asset-description").hide().eq(asset_index).show("slow"); // show what we found.
		$(".our-work-toolbar img").css("border", "1px solid #d7d7d7"); // reset borders for all
		
		var me = this;
		$(me).find("img").css("border", "1px solid #a30202");
		setTimeout(function() { // stall a second incase this is external, have to wait for scroll to finish
			$(me).find("img").css("border", "1px solid #a30202"); // add border to current asset
		}, 1000)
		
		var asset = $(this).attr("href");
		var type = $(this).attr("rel");
		var stage = '#' + type + '-stage';
		var width = 0;
		var height = 0;
		var stage_html = '';
		var player = ''
		
		location.hash = type + '/' + asset_index;
		
		switch(type) {
			case 'interactive':
			  width = 466;
				height = 430;
				player = 'interactive.swf'
			  break;
			case 'television':
				width = 480;
				height = 360;
				player = 'television.swf'
			  break;
			case 'case-study':
				width = 466;
				height = 430;
				player = 'case-study.swf'
			  break;
			default:
				stage_html = '<img src="' + asset + '" alt="' + type + '" />';
		}
		
		// handle if we're dealing w/ flv video... hopfully nobody names a file fail.flv.jpg
		if (asset.indexOf('.flv') > -1) {
			stage_html = '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="' + width + '" height="' + height + '" id="vidPlayer" align="middle">';
			stage_html += '<param name="allowScriptAccess" value="sameDomain" />';
			stage_html += '<param name="allowFullScreen" value="false" />';
			stage_html += '<param name="FlashVars" value="videoFile=' + asset + '" />';
			stage_html += '<param name="movie" value="videos/' + player + '" />';
			stage_html += '<param name="quality" value="high" />';
			stage_html += '<param name="bgcolor" value="#000" />';
			stage_html += '<embed src="videos/' + player + '" FlashVars="videoFile=' + asset + '" quality="high" bgcolor="#000" width="' + width + '" height="' + height + '" name="vidPlayer" align="middle" allowScriptAccess="sameDomain" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />';
			stage_html += '</object>';
		}
		
		$(stage).html(stage_html);
		return false;
	});
	
	$(".video-case-study").fancybox({
		'zoomSpeedIn':	0,
		'zoomSpeedOut':	0, 
		'overlayShow': true,
		'frameWidth': 466,
		'frameHeight': 390
	});
	
	$(".wonder-map").fancybox({
		'zoomSpeedIn':	0,
		'zoomSpeedOut':	0, 
		'overlayShow': true,
		'frameWidth': 700,
		'frameHeight': 394
	});
	
	$("#general-form").ajaxForm({
		target: "#general"
	});
	
	$("#employment-form").ajaxForm({
		target: "#employment"
	});
	
	// contact forms
	$("#contact-form div").css({
		position: "absolute",
		top: "0px"
	});
	$("#contact-form #employment").css("display", "none");
	
	$(".form-toggle").click(function() {
		$("#form-toggle a").click();
	});
	
	$("#form-toggle a").click( function() {
		var where_to = $(this).attr("href");
		$("#contact-form div").not($(where_to)).fadeOut("slow");
		$(where_to).fadeIn("slow");
		$("#form-toggle a").removeClass("current");
		$(this).addClass("current");
		return false;
	});
	
	if (window.location.hash) {
		$('#form-toggle a[href$="' + window.location.hash.substr(1) + '"]').click();
	} else {
		$('#form-toggle a[href="#general"]').addClass("current");
	}
	// end contact forms
	
	// slider effect
	var $panels = $('#our-work .scroll-container > div');
	var $container = $('#our-work .scroll-container');
	
	$panels.css({
		'float' : 'left',
		'position' : 'relative'
  });
	if ($panels.length > 0) {
		$container.css('width', $panels[0].offsetWidth * $panels.length);
	}
	var $scroll = $('#our-work .scroll').css('overflow', 'hidden');
	var scroll_options = {
	  target: $scroll,
	  items: $panels,
	  navigation: '.scroll-nav a',
	  axis: 'xy',
	  duration: 250,
		onBefore: slider_cleanup,
		onAfter: update_navs
	};
	
	$('#our-work').serialScroll(scroll_options);
	
	if (window.location.hash) {
		var segments = location.hash.split('/'); // get our paths.
		
		$('.scroll-nav a[href$="' + segments[0] + '"]').click().addClass("current");
		
		if (segments.length == 2) {
			$(".our-work-toolbar a").eq(segments[1]).click();
		}
		
	} else {
		$(".scroll-nav a:first").addClass("current");
	}
	
	function update_navs(data) {
		$(".our-work-toolbar").slideToggle("fast");
		var el = $('#our-work .scroll-nav').find('a[href$="' + data.id + '"]').get(0); // who just got clicked
		$(el).parent().find('a').removeClass("current").end().end().addClass("current"); // update main scroll nav
		$("#our-work .our-work-toolbar img").css("border", "1px solid #d7d7d7"); // deselect toolbar icons
	}
	
	function slider_cleanup() {
		location.hash = $(this).attr('href') + '/';
		
		$(".our-work-toolbar").slideToggle("fast");
		$("#our-work div[id='print-stage']:not(:has(.player-bg))").html('<img src="/images/wg-print-bg.gif" alt="View our work." class="player-bg" />');
		$("#our-work div[id$='-stage']:not(:has(.player-bg))").html('<img src="/images/wg-video-bg.gif" alt="Select a video." class="player-bg" />'); // clear the stage for next hit
		$(".asset-description").hide();
	}
	// end slider effect 
}); // end document.ready

function headlines() {
	current = (old + 1) % count;
	
	$("#news-scroller li").eq(old).animate({
		top: "-20px"
	}, 500, function() {
		$(this).css("top", "20px")
	});
	
	$("#news-scroller li").eq(current).animate({
		top: "0px"
	}, 500);
	old = current;
}
