$(document).ready(function() {                  	

	// CUFON REPLACEMENT
	Cufon.replace('#navbar li a, h1.name, #main h2', { fontFamily: 'PT Sans Narrow' }); 
	
	Cufon.replace('#navbar li a span, .post h3 a, a.read_more, #sidebar h3, #main h3, #main h4, #pagination a',  { fontFamily: 'PT Sans' }); 
	
	Cufon.replace('a.button', {
	fontFamily: 'PT Sans',
	textShadow: '1px 1px #434343'
	});

	//DROPDOWN SCRIPT
	$('#navbar ul').css({display: "none"}); 
	$('#navbar li').hover(function(){
		$(this).find('ul:first').css({visibility: "visible", display: "none"}).fadeIn('fast');
		},function(){
		$(this).find('ul:first').css({visibility: "hidden"});
		});	
	
		// IE navbar last child fix		
		$('#navbar li ul li:last-child').css('border-bottom', 'none');	

	
	//SHOW THE LOADER AND HIDE BACKGROUND IMAGE UNTIL IT IS LOADED
	$('#bg img').css('display', 'none');
	$('body').append('<span id="body_loader"></span>');	
	$('#body_loader').fadeIn();
	
	
	//RANDOM IMAGE ON PAGE LOAD 	
	$.randomImage = {
		defaults: {
			
			//you can change these defaults to your own preferences.
			path: 'images/', //change this to the path of your images
			myImages: ['background 1.jpg', 'background 2.jpg', 'background 3.jpg', 'background 4.jpg', 'background 5.jpg', 'background 6.jpg', 'background 7.jpg', 'background 8.jpg', 'background 9.jpg', 'background 10.jpg', 'background 11.jpg', 'background 12.jpg', 'background 13.jpg', 'background 14.jpg', 'background 15.jpg', 'background 16.jpg' ] //put image names in this bracket. 
			
		}			
	}
	
	$.fn.extend({
			randomImage:function(config) {	
				var config = $.extend({}, $.randomImage.defaults, config); 
				 return this.each(function() {		
						var imageNames = config.myImages;	
						//get size of array, randomize a number from this
						// use this number as the array index
						var imageNamesSize = imageNames.length;
						var lotteryNumber = Math.floor(Math.random()*imageNamesSize);
						var winnerImage = imageNames[lotteryNumber];
						var fullPath = config.path + winnerImage;
						//put this image into DOM at class of randomImage
						// alt tag will be image filename.
						$(this).attr( {
										src: fullPath,
										alt: winnerImage
									});	
				});	
			}
	});
	
		
	//run the random script
	$('.random').randomImage();
	
	//random image script ends here



    //GALLERY IMAGES HOVER SCRIPT
		
		//add span that will be shown on hover on gallery item
		$(".gallery li a.image").append('<span class="image_hover"></span>'); //add span to images
		$(".gallery  li a.video").append('<span class="video_hover"></span>'); //add span to videos

		$('.gallery  li a span').css('opacity', '0').css('display', 'block') //span opacity = 0 
		
		// show / hide span on hover
		$(".gallery li a").hover(
			 function () {
				 $(this).find('.image_hover, .video_hover').stop().fadeTo('slow', .7); }, 
			function () {
		  		  $('.image_hover, .video_hover').stop().fadeOut('slow', 0);
		});
			
	
             
    //IF BODY HAS CLASS VIDEO_BACKGROUND, MAKE HTML HEIGHT 100% AND ABILITY TO HIDE AND SHOW NAVIGATION ON HOME PAGE
	if($('body').hasClass('video_background'))
	{
		$('html').css('height', '100%');		
		
		
	$('#hide_menu a').css('display', 'block');	
		                  	         
   //SHOWING MENU TOOLTIP ------ delete if you don't want it!                    
    $('#hide_menu a').hover( function(){
         $('.menu_tooltip').stop().fadeTo('fast', 1);            	
     },
     function () {
     	$('.menu_tooltip').stop().fadeTo('fast', 0);  
	});
             
	
	 
		            
    //HIDING MENU         
    
    //click on hide menu button (arrow points up)                            
    $('#hide_menu a.menu_visible').live('click',function(){	
		
	    	//add class hidden
	        $('#hide_menu a.menu_visible')
		        .removeClass('menu_visible')
		        .addClass('menu_hidden')
		        .attr('title', 'Show the navigation');
		   
		    // hide the tooltip     
	        $('.menu_tooltip').css('opacity', '0');
	          
	        //move navigation up, after replace the text                  
		    $('#menu_wrap').animate({top: "-=480px"}, "normal", function() {      	
		                $('.menu_tooltip p').text('Show the navigation');	//tooltip text in when menu is 'hidden' 
	        });
	                       	
            return false;
            
     	});
	          
     	       	
	//SHOWING MENU	
		//click on show menu button (arrow points down)                      	
		 $('#hide_menu a.menu_hidden').live('click', function(){	
		    
		     //add class visible	
		     $('#hide_menu a.menu_hidden')
			     .removeClass('menu_hidden')
			     .addClass('menu_visible');
		
			// hide the tooltip      
		      $('.menu_tooltip').css('opacity', '0');    
		        $('#menu_wrap').animate({ top: "+=480px"}, 'normal');  
		            $('.menu_tooltip p').text('Hide the navigation'); //tooltip text in when menu is 'visible' 
		            
		            return false;    
		 });

	};  

						

	//FORM (CONTACT & COMMENTS) SCRIPTS

		//set variables
		var nameVal = $("#form_name").val();
		var emailVal = $("#form_email").val();
		var websiteVal = $("#form_website").val();
		var messageVal = $("#form_message").val();
				

		//if name field is empty, show label in it
		if(nameVal == '') {
		$("#form_name").parent().find('label').css('display', 'block');	
		}
		
		//if email field is empty, show label in it
		if(emailVal == '') {
		$("#form_email").parent().find('label').css('display', 'block');	
		}
		
		//if website field is empty, show label in it
		if(websiteVal == '') {
		$("#form_website").parent().find('label').css('display', 'block');	
		}
					
		
		//if message field is empty, show label in it
		if(messageVal == '') {
		$("#form_message").parent().find('label').css('display', 'block');	
		}

				
		//hide labels on focus		
		$('form input, form textarea').focus(function(){
			$(this).parent().find('label').fadeOut('fast');		
		});		
		
		//show labels when field is not focused - only if there are no text
		$('form input, form textarea').blur(function(){
			var currentInput = 	$(this);	
			if (currentInput.val() == ""){
   			 $(this).parent().find('label').fadeIn('fast');
 			 }
		});		
		
		
	// CONTACT FORM HANDLING SCRIPT - WHEN USER CLICKS "SUBMIT"
	$("#contact_form #form_submit").click(function(){		
				   				 		
		// hide all error messages
		$(".error").hide();
		
		// remove "error" class from text fields
		$("form input, form textarea").focus(function() {
 			$(this).removeClass('error_input');
			});
		
		// remove error messages when user starts typing		
		$("form input, form textarea").keypress(function() {
 			$(this).parent().find('span').fadeOut();	
		});
		
		$("#form_message").keypress(function() {	
			$(this).animate({ 
  			  width: "380px"
 			 }, 100); 
		});
		
		// set variables
		var hasError = false;
		var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
		
		
		// validate "name" field
		var nameVal = $("#form_name").val();
		if(nameVal == '') {
			$("#form_name")
			.after('<span class="error">Please enter your name</span>')
			.addClass('error_input')				  
			hasError = true;
		}
		
	
	
		// validate "e-mail" field - andd error message and animate border to red color on error
		var emailVal = $("#form_email").val();
		if(emailVal == '') {
			$("#form_email")
			.after('<span class="error">Please enter your e-mail</span>')
			.addClass('error_input')
			hasError = true; 
				
		} else if(!emailReg.test(emailVal)) {	
			$("#form_email")
			.after('<span class="error">Please provide a valid e-mail</span>')
			.addClass('error_input')
			hasError = true;
		}
		
				
		// validate "message" field
		var messageVal = $("#form_message").val();
		if(messageVal == '') {
			
			$("#form_message")
			.animate({ 
  			  	width: "250px"
 			 }, 100 )
			.after('<span class="error comment_error">Please enter your message</span>')
			.addClass('error_input')
			hasError = true;
		}
		
                // if the are errors - return false
                if(hasError == true) { return false; }
            
		// if no errors are found - submit the form with AJAX
		if(hasError == false) {
			
		var dataString = $('#contact_form').serialize();

			//hide the submit button and show the loader image	
			$("#form_submit").fadeOut('fast', function () {
			$('#contact_form').append('<span id="loader"></span>'); 
			});
			       
			
		// make an Ajax request
        $.ajax({
            type: "POST",
            url: "php/contact-send.php",
            data: dataString,
            success: function(){ 
           
          // on success fade out the form and show the success message
          $('#loader').remove();
          $('#contact_form').children().fadeOut('fast');
          $('.contact_info').fadeOut('fast');
           $('.success').fadeIn();    	
            }
        }); // end ajax

		 return false;  
		} 	
		
	});		
	
	//CONTACT PAGE MAP - CHANE OPACITY ON HOVER
		$('img.map').css('opacity', '.5');
		
		$('img.map').hover(function(){
			$(this).fadeTo('fast', 1);	
		},
		function(){
			$(this).fadeTo('fast', .5);	
		});

}); //document.ready function ends here

//WAIT UNTIL CONTENT IS LOADED
$(window).load(function() {
	 
	//hide loader
	$('#body_loader').hide().remove();
	
	//append grid if not on the home page
	if (!$('body').hasClass('body_home')) {	
	$('.grid_overlay, #bg').fadeTo('fast', .8).append('<div class="grid"></div>');
	}
	
	//fade in the image
	$('#bg img').fadeIn('normal');
	   	
});






	


