$(document).ready(function(){
	//switch out defaults
	$('#banner-action').hide();
	$('#contact input:text, #contact textarea').each(contactDefaultStyle);
	$('#contact input:text, #contact textarea').focus(function(){		
		if ($(this).val() == $(this).attr('default')){
			$(this).val('');
		}
		$(this).removeClass('default-text');
	}).blur(function(){		
		if ($(this).val() == '') {
			$(this).val($(this).attr('default'));
			$(this).addClass('default-text');
		}else{
			$(this).removeClass('default-text');
		}		
	});
	
	var j, 
		k = 0;
	$('#banner-center a').each(function(j){
		j = $(this).outerWidth(true);
		k = k + j;
	});
	$('#banner-center').css({'width' : k});
	
	//validate on contact form submit
	$('#contact form').submit(function(){
		var pass = true;
		$('.required').remove();		
		//name
		if ($('#ContactName').val() == '' || $('#ContactName').val() == $('#ContactName').attr('default')){
			pass = false;
			markContactError('#ContactName');
		}
		//text
		if ($('#ContactMessage').val() == '' || $('#ContactMessage').val() == $('#ContactMessage').attr('default')){
			pass = false;
			markContactError('#ContactMessage');
		}
		//email
		if ($('#ContactEmail').val() == '' || $('#ContactEmail').val() == $('#ContactEmail').attr('default')){
			pass = false;
			markContactError('#ContactEmail');
		}else{
			if (!validateEmail($('#ContactEmail').val())){
				pass = false;
				markContactError('#ContactEmail');
				alert ('Not a valid email!');
			}		
		}
		function markContactError(id){
			$(id).parent().append('<span class="required">*</span>');
		}
		//final check on phone and company, make sure they aren't defaults
		if (pass){
			$('#ContactPhone, #ContactCompany').each(function(){
				if ($(this).val() == $(this).attr('default')){
					$(this).val('');
				}
			});
		}
		return pass;
	});
	
	$('#banner').mouseover(function(){
		$('#banner-action').show();
	})
	.mouseout(function(){
		$('#banner-action').hide();
	});
	$('a.showVideo').fancybox({'overlayOpacity' : '0.6', 'overlayColor' : '#000000'});
	
	$("div.featured img").pixastic("desaturate");
	$("div.featured canvas").mouseenter(function(){ 
		$("div.featured img").pixastic("desaturate");	
		$("div.featured canvas").mouseenter(function(){ 
			Pixastic.revert(this);
		});
		var img = Pixastic.revert(this);
    });
});

//validates an email using unicode characters
function validateEmail(email){
	var emailreg = /^((([a-zA-Z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-zA-Z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-zA-Z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-zA-Z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-zA-Z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-zA-Z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-zA-Z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-zA-Z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-zA-Z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-zA-Z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/ 
	if (!emailreg.exec(email))
		return false;
	else
		return true;
}
function contactDefaultStyle(){	
	if ($(this).val() != $(this).attr('default')){
		$(this).removeClass('default-text');
	}else{
		$(this).addClass('default-text');
	}
}
