// JavaScript Document

$(document).ready(function(){

	//// SET COLORBOX LINKS FOR PORTFOLIO ////
	$("a[rel='featuredImage']").colorbox({rel:'nofollow', returnFocus:'false'});
	$("a[rel='galleryImage_1']").colorbox({returnFocus:'false'});
	$("a[rel='galleryImage_2']").colorbox({returnFocus:'false'});
	$("a[rel='galleryImage_3']").colorbox({returnFocus:'false'});
	
	//// SET ETYLES FOR ALTERNATING ARTICLES ////
  	$("article:odd").addClass('featured_post_odd');
	$("article:even").addClass('featured_post_even');
	
	//// INIT ////
	$('header > nav').hide();
	$('#contact_info').hide();
	$('#sub_nav').hide();
	$('#divider_nav_b').hide();
	$('#divider_contact').hide();
	

	//// CLICK EVENTS ////
	$('#portfolio_nav').click(expand_portfolio);
	$('#portfolio_nav').click(set_portfolio);
	
	$('#services_nav').click(collapse_portfolio);
	$('#services_nav').click(set_services);
	
	$('#contact_nav').click(collapse_portfolio);
	$('#contact_nav').click(set_contact);
	
	$('#open_contact').click(show_contact_from_body);
	
	$('#menu').click(reveal_navigation);
	$('#menu').click(collapse_portfolio);
	$('#menu').click(set_overState);
	
	$('#categories').click(expand_portfolio_from_menu);
	$('#categories').click(set_portfolio);
	
	$('#sub_nav li').click(goTo_portfolio);
	$('.gallery_link').click(show_gallery);
	$('.blog_gallery_link').click(show_blog_gallery);
	$('#show_comments').click(show_comments);
	
	
	//// FUNCTIONS ////
	function expand_portfolio () {
		$('#contact_nav').animate({width:'214'}, 500);
		$('#services_nav').animate({width:'214'}, 500);
		$('#portfolio_nav').animate({width:'512'}, 500);
		$('#sub_nav').delay(500).fadeIn(3000);
		return false;
	};
	
	function expand_portfolio_from_menu () {
		$('#menu').css('background-image', 'url(/images/site/menu_over.jpg)');
		$('#menu > a:link').css('color', '#aaa');
		
		$('#menu').unbind('click', set_overState);
		$('#menu > a').html('&nbsp; Close Menu &nbsp;');
		$('#menu').click(remove_overState);
		
		$('header > nav').slideDown('slow');
		$('#sub_nav').delay(500).fadeIn(3000);
		$('#services_nav').animate({width:'214'}, 500);
		$('#contact_nav').animate({width:'214'}, 500);
		$('#portfolio_nav').animate({width:'512'}, 500);
		
		$('#divider_nav_b').show();
		
		return false;
	};
	
	function collapse_portfolio () {
		$('#sub_nav').hide();
		$('#portfolio_nav').animate({width:'316'}, 500);
		$('#services_nav').animate({width:'320'}, 500);
		$('#contact_nav').animate({width:'316'}, 500);
		return false;
	};
	
	function reveal_navigation () {
		$('#menu').unbind('click', set_overState);
		$('#menu').click(remove_overState);
		$('#menu > a').html('&nbsp; Close Menu &nbsp;');
		
		$('#contact_nav').unbind('click', reset_subNav);
		$('#contact_nav').click(set_contact);
		$('#open_contact').click(show_contact_from_body);
			
		$('header > nav').slideToggle('slow');
		$('#contact_info').slideUp('slow');
		$('#divider_contact').hide();
		$('#portfolio_nav').css('background-image', '');
		$('#services_nav').css('background-image', '');
		$('#contact_nav').css('background-image', '');
				
		if( $('#divider_nav_b').is(':hidden')) {
				$('#divider_nav_b').show();
			
		} else {
				$('#divider_nav_b').hide();
		}
		return false;
	}
	
	function set_overState () {
		$('#menu').css('background-image', 'url(/images/site/menu_over.jpg)');
		$('#menu > a:link').css('color', '#aaa');
	}
	
	function remove_overState () {
		$('#menu').unbind('click', remove_overState);
		$('#menu').click(set_overState);
		$('#menu > a').html('&nbsp; Open Menu &nbsp;');
		$('#menu').css('background-image', '');
		$('#menu > a:link').css('color', '');
		$('#portfolio_nav > a:link').css('color', '');
		$('#services_nav > a:link').css('color', '');
		$('#contact_nav > a:link').css('color', '');
	}
	
	function set_portfolio () {
		$('#contact_info').slideUp('slow');
		$('#divider_contact').hide();
		$('#portfolio_nav').css('background-image', 'url(/images/site/nav_over.jpg)');
		$('#portfolio_nav > a:link').css('color', '#aaa');
		$('#contact_nav > a:link').css('color', '');
		$('#contact_nav').css('background-image', '');
		$('#services_nav').css('background-image', '');
		
		$('#contact_nav').unbind('click', reset_subNav);
		$('#contact_nav').click(set_contact);
		return false;
	};
	
	function set_services () {
		$('#contact_info').slideUp('slow');
		$('#divider_contact').hide();
		$('#services_nav').css('background-image', 'url(/images/site/nav_over.jpg)');
		$('#services_nav > a:link').css('color', '#aaa');
		$('#portfolio_nav').css('background-image', '');
		$('#portfolio_nav > a:link').css('color', '');
		$('#contact_nav').css('background-image', '');
		$('#contact_nav > a:link').css('color', '');
		window.location=$(this).find('a').attr('href');
		return false;
	};
	
	function set_contact () {
		$('#contact_nav').unbind('click', set_contact);
		$('#contact_nav').click(reset_subNav);
		
		$('#contact_info').slideDown('slow');
		$('#divider_contact').show();
		$('#contact_nav').css('background-image', 'url(/images/site/nav_over.jpg)');
		$('#contact_nav > a:link').css('color', '#aaa');
		$('#portfolio_nav > a:link').css('color', '');
		$('#portfolio_nav').css('background-image', '');
		$('#services_nav').css('background-image', '');
		return false;
	};
	
	function show_contact_from_body () {
		$('#open_contact').unbind('click', show_contact_from_body);
		
		$('#menu').css('background-image', 'url(/images/site/menu_over.jpg)');
		$('#menu > a:link').css('color', '#aaa');
		$('#menu > a').html('&nbsp; Close Menu &nbsp;');
		
		$('#menu').unbind('click', set_overState);
		$('#menu').click(remove_overState);
		
		$('header > nav').slideDown('slow');
		
		$('#contact_nav').unbind('click', set_contact);
		$('#contact_nav').click(reset_subNav);
		
		$('#contact_info').slideDown('slow');
		$('#divider_contact').show();
		$('#contact_nav').css('background-image', 'url(/images/site/nav_over.jpg)');
		$('#contact_nav > a:link').css('color', '#aaa');
		$('#portfolio_nav > a:link').css('color', '');
		$('#portfolio_nav').css('background-image', '');
		$('#services_nav').css('background-image', '');
		
		
		if( $('#divider_nav_b').is(':hidden')) {
				$('#divider_nav_b').show();
			
		} else {
				$('#divider_nav_b').hide();
		}
		
		$('html, body').animate({scrollTop:0}, 'slow');
		return false;
	};
	
	function reset_subNav () {
		$('#contact_nav').unbind('click', reset_subNav);
		$('#contact_nav').click(set_contact);
		
		$('#contact_nav').css('background-image', '');
		$('#contact_nav > a:link').css('color', '');
		
		$('#contact_info').slideUp('slow');
		$('#divider_contact').hide();
	};
	
	function goTo_portfolio () {
		window.location=$(this).find('a').attr('href');
		return false;
	}
	
	function show_gallery () {
		$(this).parent().siblings('.image_column').children('.gallery').slideToggle(500);
		$(this).html('Close Gallery<span>-</span>');
		$('.gallery_link').unbind('click', show_gallery);
		$('.gallery_link').click(hide_gallery);
		return false;
	}
	
	function hide_gallery () {
		$(this).parent().siblings('.image_column').children('.gallery').slideToggle(500);
		$(this).html('View Gallery<span>+</span>');
		$('.gallery_link').unbind('click', hide_gallery);
		$('.gallery_link').click(show_gallery);
		return false;
	}
	
	function show_blog_gallery () {
		$(this).parent().siblings('.gallery_container').children('.gallery').slideToggle(500);
		$(this).html('Close Gallery<span>-</span>');
		$('.blog_gallery_link').unbind('click', show_blog_gallery);
		$('.blog_gallery_link').click(hide_blog_gallery);
		return false;
	}
	
	function hide_blog_gallery () {
		$(this).parent().siblings('.gallery_container').children('.gallery').slideToggle(500);
		$(this).html('View Gallery<span>+</span>');
		$('.blog_gallery_link').unbind('click', hide_blog_gallery);
		$('.blog_gallery_link').click(show_blog_gallery);
		return false;
	}
	
	function show_comments () {
		$(this).parent().siblings('#comments_container').slideToggle(500);
		$(this).html('<a href="#" title="open comments">close<span>-</span></a>');
		$('#show_comments').unbind('click', show_comments);
		$('#show_comments').click(hide_comments);
		return false;
	}
	
	function hide_comments () {
		$(this).parent().siblings('#comments_container').slideToggle(500);
		$(this).html('<a href="#" title="open comments">open<span>+</span></a>');
		$('#show_comments').unbind('click', hide_comments);
		$('#show_comments').click(show_comments);
		return false;
	}
});
