$(document).ready(function(){

	// MAKE USERS KNOW THAT THEY CLICKED SOMETHING...
	$('#branding a, #nav #products li:not(.closed, .open) > a, #nav #products > li > a, #nav #pages li > a, #nav #tools li:not(#tools-list, #symbols-list) > a:not(.anchor), body:not(#postcards) #content a[href*=nucraft.mightyinthemidwest.com]:not(.share-link), body:not(#postcards) #content a[href*=nucraft.com]:not(.share-link, .colorbox-video, .vimeo)').click(function(){
		$('#content, #download-thumbs').hide();
	});

	// EXTERNAL LINKS
	$('a.external').click(function(){
		window.open(this.href);
		return false;
	});


	// HOMEPAGE SLIDESHOW
	$('#home #slideshow').cycle({
		fx: 'fade',
		speed: '1000'
	});
	
	
	// SHOW/HIDE SUBCATEGORIES
	$('.closed > a:not(#ispec-btn, .category), body:not(#online-tools) #tools-list > a').toggle(function(){
		$(this).siblings('ol, ul').animate({height: 'show'}, 'fast');
		$(this).parent().addClass('open').removeClass('closed');
	}, function(){
		$(this).siblings('ol, ul').animate({height: 'hide'}, 'fast');
		$(this).parent().addClass('closed').removeClass('open');
	});
	
	$('.open ol .open > a').click(function(e){
		e.preventDefault();
	});
	
	$('#products li ol a.active').parent().parent().parent().removeClass('closed').addClass('open');
	

	// SHOW/HIDE TOOLBAR
	var toolbarHeight = $('#toolbar').height();
	
	if($.browser.msie){
		toolbarHeight -= 15;
	}
	
	$('#toolbar').css('height',toolbarHeight);
	
	$('#toolbar .close').toggle(function(){
		$(this).addClass('closed').text('Open Toolbar');
		$(this).parent().animate({height: '15px'});
		$(this).parent().children('div').children('h3').css('visibility','hidden');
		$(this).parent().children('h3').css('visibility','visible');
		$('#toolbar #images').css({borderRight: 'none', paddingRight: '11px'});
		$('#toolbar #downloads').css({borderLeft: 'none', paddingLeft: '11px'});
	}, function(){
		$(this).removeClass('closed').text('Close Toolbar');
		$(this).parent().animate({height: toolbarHeight});
		$(this).parent().children('div').children('h3').css('visibility','visible');
		$(this).parent().children('h3').css('visibility','hidden');
		$('#toolbar #images').css({borderRight: '1px solid #fff', paddingRight: '10px'});
		$('#toolbar #downloads').css({borderLeft: '1px solid #fff', paddingLeft: '10px'});
	});
	
	
	// SHOW/HIDE THUMBNAIL PREVIEWS
	$('.detail-thumbs a').live('mouseover mouseout', function(event){
		if(event.type == 'mouseover'){
			var currentHover = $('img.zoom').attr('src');
			var imageHovered = $(this).attr('rev');
			
			$('img.zoom').css('display','none');
			$('#zoom-holder').css('display','block');
			
			if(currentHover != imageHovered){
				$('img.zoom').attr('src',imageHovered);
				$('img.zoom').load(function(){
					$(this).css('display','block');
				});
			} else {
				$('img.zoom').css('display','block');
			}
		} else {
			$('#zoom-holder').css('display','none');
		}
	});
	
	
	// SET DEFAULT ACTIVES
	$('#primary > .detail-shots:first-child, .detail-shots > li:first-child, #images ul li:first-child a, #thumb-groups ul:first-child, #thumb-groups ul li:first-child a').addClass('active');
	
	var imageCaption = $('.detail-shots.active li.active img').attr('alt');
	$('#secondary #caption').text("Image: " + imageCaption);
	
	var groupTitle = $('.detail-thumbs.active').attr('itemprop');
	$('#thumb-groups h4').text(groupTitle);
	
	
	// CHOOSE THUMBNAIL GROUP
	$('#images a').click(function(e){
		e.preventDefault();
		$('#images a.active').removeClass();
		$(this).addClass('active');
		var thumbGroup = $(this).attr('rel');
		var linkClicked = $(this).parent().index() + 1;
		$('#primary ul.detail-shots.active').removeClass('active').css('display','none');
		$('#primary ul:nth-child('+linkClicked+')').addClass('active').css('display','block');
		$('.detail-shots.active li:first-child').css('display','block').addClass('active');
		$('#secondary #caption').css('display','none');
		$('#thumb-groups').empty().load('/_embeds/thumbnails/' + thumbGroup, 
			function(){
				$('.detail-thumbs li:first-child a').addClass('active');
				
				var imageCaption = $('.detail-shots.active li.active img').attr('alt');
				if(imageCaption == "") {
					$('#secondary #caption').css('display','none');
				} else {
					$('#secondary #caption').css('display','inline').text("Image: " + imageCaption);
				}
			}
		);
	});
	
	$('#thumbs-loading').ajaxStart(function() {
		$(this).show();
		}).ajaxStop(function() {
		$(this).hide();
	});


	// DETAIL IMAGE SWITCHER
	$('#thumb-groups .detail-thumbs a').live('click', function(e){
		e.preventDefault();
		$('#zoom-holder').css('display','none');
		var currentImage = $('.detail-shots.active img').attr('src');
		var newImage = $(this).attr('href');
		var newCaption = $(this).attr('rel');
		$('.detail-thumbs a.active').removeClass();
		$(this).addClass('active');
		$('.detail-shots.active img').css('display','none');
		
		if(currentImage != newImage){
			$('.detail-shots.active img').attr('src',newImage);
			$('.detail-shots.active img').load(function(){
				$(this).css('display','block');
			});
		} else {
			$('.detail-shots.active img').css('display','block');
		}
		
		if(newCaption == "") {
			$('#secondary #caption').css('display','none');
		} else {
			$('#secondary #caption').css('display','inline').text("Image: " + newCaption);
		}
	});
	
	$('#download-thumbs .detail-thumbs a').click(function(){
		$('.zoom').css('display','none');
	});
	
	
	// IMAGE CAPTIONS
	var imageCaption = $('.detail-shots.active li.active img').attr('alt');
	if(imageCaption == "") {
		$('#secondary #caption').css('display','none');
	} else {
		$('#secondary #caption').css('display','inline').text("Image: " + imageCaption);
	}
	
	
	// LOCATION SELECT
	$('#country').change(function(){
		var countryChosen = $(this).val();
		$('.location').css('display','none');
		$('#'+countryChosen+', label[for="'+countryChosen+'"]').fadeIn('fast');
	});
	
	$('select.location').change(function(){
		var country = $('#country').val();
		var location = $(this).val();
		if(location != "Choose a location"){
			window.location.replace('/find-a-rep/' + country + '/' + location);
		}
	});
	
	$('#government select').change(function(){
		var contract = $(this).val();
		$('#content').hide();
		if(contract != "gsa"){
			window.location.replace('/contracts/' + contract);
		} else {
			window.location.replace('/contracts/');		
		}
	});
	
	var country = jQuery.url.segment(1);
	var location = jQuery.url.segment(2);
	
	$('#country option[value="'+country+'"]').attr('selected', 'selected');
	$('.location option[value="'+location+'"]').attr('selected', 'selected').parent().addClass('selected').prev().css('display','block');
	
	$('#find.selected').each(function(){
		var locationSelected = $('.location option[value="'+location+'"]').html();
		if(locationSelected == null){
			window.location.replace('/find-a-rep/');
		}
	});
	
	
	var locationName = $('.location option[value="'+location+'"]').text();
	$('#find #secondary h2').text(locationName);
	
	
	// POSTCARD COLORBOX
	$('#postcard-list a').colorbox({
		initialHeight: 100,
		initialWidth: 100
	}, function(){
		$('#postcard-detail a').click(function(){
			parent.$.fn.colorbox.close();
		});
	});
	
	// DISCOVERY COLORBOX
	$(".colorbox-video").colorbox({
		iframe:true,
		innerWidth:601,
		innerHeight:338,
		scrolling: false
	});
	
	// PRODUCT VIDEO COLORBOX
	$(".vimeo").colorbox({
		iframe: true,
		innerWidth: 580,
		innerHeight: 442,
		scrolling: false
	});
	
	
	// EMAIL COLORBOX
	$('.share-link').colorbox({
		initialHeight: 100,
		initialWidth: 100,
		scrolling: false
	}, function(){
		$('#contact_form').validate({
			invalidHandler: function(e, validator) {
				var errors = validator.numberOfInvalids();
				if (errors) {
					var message = errors == 1
						? 'You missed 1 field. It has been highlighted above'
						: 'You missed some fields.  They have been highlighted above';
					$("#error-msg").html(message);
					$("#error-msg").show();
				} else {
					$("#error-msg").hide();
				}
			},
			highlight: function(element, errorClass, validClass) {
				$(element).addClass(errorClass).removeClass(validClass);
				$(element).siblings('span, .select-label').css('color','#b72126');
			},
			unhighlight: function(element, errorClass, validClass) {
				$(element).removeClass(errorClass).addClass(validClass);
				$(element).siblings('span.error, .select-label').css('color','#ffffff');
			}
		});
	});
	
	
	// FORM VALIDATION
	$('.register form').validate({
		invalidHandler: function(e, validator) {
			var errors = validator.numberOfInvalids();
			if (errors) {
				var message = errors == 1
					? 'You missed 1 field. It has been highlighted above'
					: 'You missed some fields.  They have been highlighted above';
				$("#error-msg").html(message);
				$("#error-msg").show();
			} else {
				$("#error-msg").hide();
			}
		},
		highlight: function(element, errorClass, validClass) {
			$(element).addClass(errorClass).removeClass(validClass);
			$(element).siblings('span, .select-label').css('color','#b72126');
		},
		unhighlight: function(element, errorClass, validClass) {
			$(element).removeClass(errorClass).addClass(validClass);
			$(element).siblings('span.error, .select-label').css('color','#ffffff');
		}
	});
	
	
	// ORDER FORM
	$('#brochures h4').each(function(){
		var orderFields = $(this).next().children().size();
		
		if(orderFields == 0){
			$(this).hide();
			$(this).next().hide();
		}
	});
	
	$('#check-out-btn').click(function(e){
		e.preventDefault();
		var brochureOrderDetails = '';
		var woodOrderDetails = '';
		var brochureOrderInfo = '';
		var woodOrderInfo = '';
		
		$('#brochures .order-form input').each(function(){
			var orderCount = $(this).val();
			
			if(orderCount != '' && orderCount > 0){
				brochureOrderDetails += $(this).prev().text() + ' (' + $(this).val() + ')' + '\n';
				brochureOrderInfo += $(this).prev().text() + ' (' + $(this).val() + ') <br/>';
			}
		});
		
		$('#wood-samples .order-form input').each(function(){
			var orderCount = $(this).val();
			
			if(orderCount != '' && orderCount > 0){
				woodOrderDetails += $(this).prev().text() + ' (' + $(this).val() + ')' + '\n';
				woodOrderInfo += $(this).prev().text() + ' (' + $(this).val() + ') <br/>';
			}
		});
		
		if(brochureOrderDetails == ''){
			brochureOrderInfo == ''
		}
		if(woodOrderDetails == ''){
			woodOrderInfo == ''
		}
		
		$('#brochure-order-details').val(brochureOrderDetails);
		$('#wood-order-details').val(woodOrderDetails);
		
		if(brochureOrderInfo != ''){
			$('#brochure-section').css('display','block');
			$('#brochure-details').html(brochureOrderInfo);
		} else {
			$('#brochure-section').css('display','none');
			$('#brochure-details').html('');		
		}
		
		if(woodOrderInfo != ''){
			$('#wood-section').css('display','block');
			$('#wood-details').html(woodOrderInfo);
		} else {
			$('#wood-section').css('display','none');
			$('#wood-details').html('');		
		}
		
		if(brochureOrderDetails != '' || woodOrderDetails != ""){
			$('#brochures, #wood-samples, #order-nav').css('display','none');
			$('#check-out-form').fadeIn('fast');
		} else {
			alert('You haven’t selected anything yet.');
		}
	});
	
	$('.brochure-btn').click(function(e){
		e.preventDefault();
		
		$('#check-out-form, #wood-samples, #order-nav .brochure-btn').css('display','none');
		$('#brochures, #order-nav').fadeIn('fast');
		$('.wood-btn').css('display','inline');
	});
	
	$('.wood-btn').click(function(e){
		e.preventDefault();
		
		$('#check-out-form, #brochures, #order-nav .wood-btn').css('display','none');
		$('#wood-samples, #order-nav').fadeIn('fast');
		$('.brochure-btn').css('display','inline');
	});
	
	
	// AWARDS LIST COLUMNS
	$('#awards #content > ol').makeacolumnlists({
		cols: 2
	});
	
	
	// EMAIL OBFUSCATION
	$('.email-link').mailto();
	
	
	// IE7 SELECTOR FIXES
	if($.browser.msie){
		$('#category #content ol > li:nth-child(4n) + li, .order-form li:nth-child(3n) + li').addClass('break');
	}
	
});
