
$(document).ready(function() {
	//$('div.content').hide();
	$.preloadCssImages();
	
	// check for hashname, show corresponding div
	if (location.hash) { 
		var hashname = location.hash.replace(/#/,'');
		
		if (hashname=='work') {
			$('#work').show();
			$('ul.nav a#workNav').removeClass('collapsed');
		} else if (hashname=='contact') {
			$('#contact').show();
			$('ul.nav a#contactNav').removeClass('collapsed');
		}
	}
	 
	
	// tab functionality
	$("a[href='work.shtml']").click(function(event) {
		event.preventDefault();
		$('div.content#work').show();
		$('div.content#contact').hide();
		$('ul.nav a#workNav').removeClass('collapsed');
		$('ul.nav a#contactNav').addClass('collapsed');
	});
	
	$("a[href='contact.shtml']").click(function(event) {
		event.preventDefault();
		$('div.content#contact').show();
		$('div.content#work').hide();
		$('ul.nav a#contactNav').removeClass('collapsed');
		$('ul.nav a#workNav').addClass('collapsed');
	});
	
	
	$('a.screenshot').fancybox({
		'overlayOpacity' : 0.7
	});
	
	// Smooth scrolling
	function filterPath(string) {
		return string
		.replace(/^\//,'')
		.replace(/(index|default).[a-zA-Z]{3,4}$/,'')
		.replace(/\/$/,'');
	}
	var locationPath = filterPath(location.pathname);
	$('a[href*=#]').each(function() {
		var thisPath = filterPath(this.pathname) || locationPath;
		if (  locationPath == thisPath && (location.hostname == this.hostname || !this.hostname) && this.hash.replace(/#/,'') ) {
			var hashname = this.hash.replace(/#/,'');
			var $target = $("a[name='" +hashname+ "']").next(), target = this.hash;
			if (target) {
				var targetOffset = $target.offset().top;
				$(this).click(function(event) {
					event.preventDefault();
					$('html, body').animate({scrollTop: targetOffset}, 400, function() {
						location.hash = target;
					});
				});
			}
		}
	});

	
	// random background
	var numberOfImages = 6;
	var randomImageNumber = Math.floor(Math.random() * (numberOfImages + 1));
	var background = new Array();
		background[0] = "/img/bg/bg1.jpg";
		background[1] = "/img/bg/bg2.jpg";
		background[2] = "/img/bg/bg3.jpg";
		background[3] = "/img/bg/bg4.jpg";
		background[4] = "/img/bg/bg5.jpg";
		background[5] = "/img/bg/bg6.jpg";
	$('img.bg').hide().attr({ 
          src: background[randomImageNumber]
	}).fadeIn();
	
	
	$('#contactForm').validate({
		errorElement: 'div',
		errorPlacement: function(error, element) {
			error.prependTo( element.parent() );
		},
		invalidHandler: function(form, validator) {
			$('#contact .success').hide();
		},
    	rules: {
      		name: 'required',
      		email: {
      			required: true,
      			email: true	
      		},
		  message: {
			required: true
		  }
		},
		messages: {
			name: 'Please specify your name.',
			email: {
				required: 'Please enter your email address so I can contact you.',
				email: 'Your email address must be in the format of name@domain.com.'
			},
		  	message: 'Please enter a message.'
		},
		submitHandler: function(form) {
			$(form).ajaxSubmit();
			$('#contact .success').fadeIn();
			$('#contactForm').resetForm();
		},
		debug: true
	});
	
	
	$("#contactForm input[type='text']").blur(function() {
		if(this.value=='')this.value=this.defaultValue;
	});
	
	$("#contactForm input[type='text']").focus(function() {
		if(this.value == this.defaultValue) {
			this.select();
		}
	});
	
});



	


