$(document).ready(function() {
	
	// ratio height magic
	
	$("div.item.studio a, div.item.ideas a").each(function(){
		$(this).css("min-height",$(this).width()*.65)
	});
	
	// nav
	
	$("li.current").children("a.nav_button:first").addClass("first");
	$("li.current").children("a.nav_button:last").addClass("last");
	$("li.current").prev("li").children("a.nav_button").addClass("last");
	$("li.current").next("li").children("a.nav_button").addClass("first");
	
	// search and login
	
	$("li#nav_actions_search a.nav_button").toggle(
		function() {
			$(this).addClass("current");
			$("div#nav_actions_search_sub").show();
			$("#search_query").focus();
		},
		function() {
			$(this).removeClass("current");
			$("div#nav_actions_search_sub").hide();
		}
	);
	
	$("li#nav_actions_login a.nav_button").hover(
		function() {
			$(this).addClass("current");
			$("div#nav_actions_login_sub").show();
		},
		function() {
			$(this).removeClass("current");
			$("div#nav_actions_login_sub").hide();
		}
	);
	
	$("input#search_query").keypress(function(event) {
		if(event.which == 13) {
			window.location.href = "search/"+$("#search_query").val()+"/";
			return false;
		}
	});
	
	$("#search").submit(function() {
		window.location.href = "search/"+$("#search_query").val()+"/";
		return false;
	});
	
	// slideshow
	
	$("div.slideshow").cycle({
		fx: 'fade',
		speed: 'normal',
		timeout: 0,
		prev: '.slide_prev',
		next: '.slide_next', 
		after: function(curr, next, opts) {
			var count = (opts.currSlide + 1) + ' of ' + opts.slideCount;
			$("span.slide_count").html(count);
			$("div#slideshow_caption_container div.slideshow_caption").hide().eq(opts.currSlide).show();
		}	
	});
	
	// case studies slideshow hover
	
	$("div#case_studies_slideshow div.slideshow a").hover(
		function() {
			$("div.slideshow_nav").addClass("over");
		},
		function() {
			$("div.slideshow_nav").removeClass("over");
		}
	);
	
	// filters 
	// to-do: simplify
	
	$("li#filter_client a.filter_button").click(function(){
		$(this).toggleClass("current");
		if($("div#filter_service_panel").is(":visible")){
			$("li#filter_service a.filter_button").toggleClass("current");
			$("div#filter_service_panel").slideToggle("500",function(){
				$("div#filter_client_panel").slideToggle("500");
			});
		}
		else {
			$("div#filter_client_panel").slideToggle("500");
		}
		return false;
	});
	
	$("li#filter_service a.filter_button").click(function(){
		$(this).toggleClass("current");
		if($("div#filter_client_panel").is(":visible")){
			$("li#filter_client a.filter_button").toggleClass("current");
			$("div#filter_client_panel").slideToggle("500",function(){
				$("div#filter_service_panel").slideToggle("500");
			});
		}
		else {
			$("div#filter_service_panel").slideToggle("500");
		}
		return false;
	});
	
	$("a.filter_panel_close").click(function(){
		if($(this).parent("div#filter_client_panel").length){
			$("li#filter_client a.filter_button").toggleClass("current");
			$("div#filter_client_panel").slideToggle("500");
		}
		if($(this).parent("div#filter_service_panel").length){
			$("li#filter_service a.filter_button").toggleClass("current");
			$("div#filter_service_panel").slideToggle("500");
		}
		return false;
	});
	
	/*
	$("li#filter_client").hover(
		function() {
			$(this).children("a.filter_button").addClass("current");
			$("div#filter_client_sub").show();
		},
		function() {
			$(this).children("a.filter_button").removeClass("current");
			$("div#filter_client_sub").hide();
		}
	);
	
	$("li#filter_service").hover(
		function() {
			$(this).children("a.filter_button").addClass("current");
			$("div#filter_service_sub").show();
		},
		function() {
			$(this).children("a.filter_button").removeClass("current");
			$("div#filter_service_sub").hide();
		}
	);
	*/
	
	// external links
	
	$('#content a:not(.no_external_icon)').filter(function() {
		return this.hostname && this.hostname !== location.hostname;
	// }).after(' <span class="external_link_icon blue"></span>');
	}).addClass('external_link');
	
	$('a').filter(function() {
		return this.hostname && this.hostname !== location.hostname;
	}).each(function(){
		$(this).attr("target","_blank");
	});
	
	// setup social media links
	
	$(".share_email").each(function(){
		$(this).attr("href","mailto:?subject=Check this out!&body=Look what I found on the 2x4 site: "+escape(document.location.href));
	});
	
	$(".share_facebook").each(function(){
		$(this).attr("href","http://www.facebook.com/share.php?u="+document.location.href);
		$(this).attr("target","_blank");
	});
	
	$(".share_twitter").each(function(){
		$(this).attr("href","http://twitter.com/home?status=Currently Reading: "+document.location.href);
		$(this).attr("target","_blank");
	});
	
	
});
