$(document).ready(function(){	
	$('#projects').prepend('<div id="loader" style="background:#fff; width:769px; height:440px; position:absolute; top:0; left:0; z-index:100;"><img src="/images/ajax-loader.gif" style="position:absolute; left:384px; top:150px;"></div>');
	
	var preloader = {
		finish: function(){ cycle_images(); $('#loader').fadeOut('fast'); },
		idx:-1,
		img:null,
		imgs:[],
		update:function(){
			preloader.idx++; 
			if (preloader.idx<preloader.imgs.length) {
				preloader.img = document.createElement("img");
				preloader.img.onload = preloader.update;
				preloader.img.onerror = preloader.update;
				preloader.img.src = preloader.imgs[preloader.idx];
			} //else {
				//preloader.finish();
			//}
			
			if(preloader.idx==3) preloader.finish();
		}
	}	
	
	preloader.imgs = new Array('/_projects/69_berg_1.jpg','/_projects/sm/69_berg_1.jpg','/_projects/80_berg_1.jpg','/_projects/4_berg_2.jpg','/_projects/awards/39_aapslogo.jpg','/_projects/74_eb_vet_1.jpg','/_projects/sm/74_eb_vet_1.jpg','/_projects/52_eb_vet_1.jpg','/_projects/26_eb_vet_2.jpg','/_projects/87_eb_vet_3.jpg','/_projects/28_eb_vet_4.jpg','/_projects/37_eb_vet_5.jpg','/_projects/37_first_pres_church_1.jpg','/_projects/sm/37_first_pres_church_1.jpg','/_projects/77_first_pres_church_1.jpg','/_projects/100_first_pres_church_2.jpg','/_projects/68_first_pres_church_3.jpg','/_projects/72_first_pres_church_4.jpg','/_projects/44_churchpews.jpg','/_projects/awards/80_aapslogo.jpg','/_projects/47_little_house_cafe_1.jpg','/_projects/sm/47_little_house_cafe_1.jpg','/_projects/74_little_house_cafe_1.jpg','/_projects/98_little_house_cafe_2.jpg','/_projects/23_little_house_cafe_3.jpg','/_projects/awards/28_aapslogo.jpg','/_projects/16_perforce_1.jpg','/_projects/sm/16_perforce_1.jpg','/_projects/5_perforce_1.jpg','/_projects/11_perforce_2.jpg','/_projects/96_perforce_3.jpg','/_projects/35_perforce_4.jpg','/_projects/81_perforce_5.jpg','/_projects/83_orinda1.jpg','/_projects/sm/83_orinda1.jpg','/_projects/57_orinda1.jpg','/_projects/42_orinda2.jpg','/_projects/72_orinda3.jpg');
	preloader.update();
	
	function cycle_images() {
		$('#curr_img').html('1');
		$('#total_imgs').html( $('#projectmain').find('img').length );
		
		$('#projectmain').cycle({
			fx:     'fade',
			speed:  'fast',
			timeout: 3000,
			after: function (currSlideElement, nextSlideElement, options, forwardFlag){
				$('#curr_img').html(options.currSlide+1);
			},
			pause: 1,
			next:   '#next_img',
			prev:   '#prev_img',
			prevNextClick: function(isNext, index, slide){
				$('#curr_img').html(index+1);
			}
		});	
	}
	
	$('.project').css({position:'relative',display:'block',height:'45px','margin-bottom':'7px','text-decoration':'none'}).find('img:not(.active)').fadeTo("fast", 0.23);
	$('.project').find('img').each(function(){
		if($(this).hasClass('active')) $(this).prev().hide();
		else $(this).prev().show();
	});
	
	$('.project').click(function(){
	 	//remove all active classes
		$('.project').find('img').each(function(){
			$(this).removeClass('active').addClass('not_active').fadeTo("fast", 0.23).prev().show();
		});
		
		//set active class to current image
		$(this).find('img').addClass('active').removeClass('not_active').fadeTo("fast", 1).prev().hide();
		
		//get photos for clicked project
		$.getJSON("project.php?id="+$(this).attr('projectid'),
        function(data){			
			$('#projectmain').find("img:not(:visible)").remove();
			
			//set the text content sections
			if(data.project_title) $('#project_title').html( data.project_title ); else $('#project_title').html( '' );	
			if(data.location){ $('#location_show').show(); $('#location').html( data.location ); }else{ $('#location_show').hide(); }
			if(data.location){ $('#scope_show').show(); $('#scope').html( data.scope ); }else{ $('#scope_show').hide(); }
			
			if(data.arch.arch_text){ 
				$('#arch_text').html( data.arch.arch_text );
				if(data.arch.arch_url)
				{
					if($('#arch_text').parent().is('a'))
					{
						$('#arch_text').parents('a').attr('href', data.arch.arch_url).attr('target','_blank');
					}
					else
					{
						$('#arch_text').wrap( '<a href="'+data.arch.arch_url+'" target="_blank">' );
					}

					if(!$('#arch_text').closest('td').find('img').length) $('#arch_text').closest('td').append('<img style="vertical-align:middle;" src="/images/icon-newwindow.gif" width="4" border="0" height="4" alt="Opens in New Window" />');
				}
				else
				{
					if($('#arch_text').parent().is('a')){
						$('#arch_text').unwrap();
						$('#arch_text').closest('td').find('img').remove();
					}
				}
				$('#arch_show').show();
			}else{
				$('#arch_show').hide();
			}
			
			if(data.land.land_text){ 
				$('#land_text').html( data.land.land_text ); 
				if(data.land.land_url) 
				{
					if($('#land_text').parent().is('a'))
					{
						$('#land_text').parents('a').attr('href', data.land.land_url).attr('target','_blank');
					}
					else
					{
						$('#land_text').wrap( '<a href="'+data.land.land_url+'" target="_blank">' );
					}
					
					if(!$('#land_text').closest('td').find('img').length) $('#land_text').closest('td').append('<img style="vertical-align:middle;" src="/images/icon-newwindow.gif" width="4" border="0" height="4" alt="Opens in New Window" />');
				}
				else
				{
					if($('#land_text').parent().is('a')){
						$('#land_text').unwrap();
						$('#land_text').closest('td').find('img').remove();
					}
				}
				$('#land_show').show();
			}else{
				$('#land_show').hide();
			}
			
			
			if(data.int_designer.text){ 
				$('#int_designer_text').html( data.int_designer.text ); 
				if(data.int_designer.url) 
				{
					if($('#int_designer_text').parent().is('a'))
					{
						$('#int_designer_text').parents('a').attr('href', data.int_designer.url).attr('target','_blank');
					}
					else
					{
						$('#int_designer_text').wrap( '<a href="'+data.int_designer.url+'" target="_blank">' );
					}
					
					if(!$('#int_designer_text').closest('td').find('img').length) $('#int_designer_text').closest('td').append('<img style="vertical-align:middle;" src="/images/icon-newwindow.gif" width="4" border="0" height="4" alt="Opens in New Window" />');
				}
				else
				{					
					if($('#int_designer_text').parent().is('a')){
						$('#int_designer_text').unwrap();
						$('#int_designer_text').closest('td').find('img').remove();
					}
				}
				$('#int_designer_show').show();
			}else{
				$('#int_designer_show').hide();
			}
			
			if(data.award_1){ 
				$('#award_1').show(); $('#award_1').attr( 'src', data.award_1 );
				if(data.award_1_url){ $('#award_1').wrap( '<a href="'+data.award_1_url+'">' ); }else{ if($('#award_1').parent().is('a')) $('#award_1').unwrap(); }
			}
			else{ $('#award_1').hide(); }
			
			if(data.award_2){ 
				$('#award_2').show(); $('#award_2').attr( 'src', data.award_2 ); 
				if(data.award_2_url){ $('#award_2').wrap( '<a href="'+data.award_2_url+'">' ); }else{ if($('#award_2').parent().is('a')) $('#award_2').unwrap(); }
			}
			else{ $('#award_2').hide(); }
			
			
			if(data.descr){ $('#descr').html( data.descr ); }else{ $('#descr').html( '' ); }
			
			$.each(data.images, function(i,image){
				$("<img/>").attr("src", image.img).css({position:'absolute',top:'0px',left:'0px',display:'block','z-index':(i+1),opacity:(i==0?'1':'0')}).appendTo("#projectmain");
			});
			
			//fade out the first child from the previous project
			$('#projectmain').find('img:first').fadeTo(1300, 0, function(){ $(this).remove(); $('#projectmain').cycle('destroy'); cycle_images(); });
        });
	});
});