jQuery(document).ready(function($) {
    
    $('input[type="text"],textarea,input[type="password"]').each(function(e){
		if (this.value == this.defaultValue){ 
			$(this).addClass("idleField");
		}
	});
	$('input[type="text"],textarea,input[type="password"]').focus(function() {
		$(this).removeClass("idleField").addClass("focusField");
		if (this.value == this.defaultValue){ 
			this.value = '';
		}
		if(this.value != this.defaultValue){
			this.select();
		}
	});
	$('input[type="text"],textarea,input[type="password"]').blur(function() {
		if($.trim(this.value) == '' || $.trim(this.value) == this.defaultValue){
			$(this).removeClass("focusField").addClass("idleField");
			this.value = (this.defaultValue ? this.defaultValue : '');
			if($(this).hasClass('required')){
				$(this).parent().addClass('errorField');
			}
		} else {
			if($(this).hasClass('required')){
				$(this).parent().removeClass('errorField');
			}
		}
	});
    
    $('a[title="Contact"]').bind("click",function(){
    	$('#contact-popup').fadeIn(200,function(){
    		contactform();
    		$('#contact-popup-background').unbind("click").bind("click",function(){
    			$('#contact-popup').fadeOut(200);
    			return false;
    		});
    		$('#contact-popup .close-btn').unbind("click").bind("click",function(){
    			$('#contact-popup').fadeOut(200);
    			return false;
    		});
    	});
    	return false;
    });
    
    contactform = function(){
    
		$('form[name="contact-form"]').unbind("submit").bind("submit",function(){
		
			var error = "";
			
			$('input.required,textarea.required',this).each(function(){
				if($(this).hasClass('idleField')){
					$(this).parent().addClass('errorField');
					error = "Please fill in all required fields!";
				}
			});
			
			// Verify email
			if(error==""){
				$('input#email',this).each(function(){
					if(!validateEmail($(this).val())){
						$(this).parent().addClass('errorField');
						error = "Please provide a valid e-mail address!";
					}
				});
			}
			
			// Send form
			if(error==""){
				var d = $(this).serialize();
				
				$.ajax({
					type: "POST",
					url: $(this).attr('action'),
					data: d+'&ajax=1',
					success: function(msg){
						if(msg=="error"){
							alert("There was an error sending your request. Please try again.");
						} else {
							window.location = msg;
						}
					},
					error: function(XMLHttpRequest,textStatus,errorThrown){
						alert("error");
					}
				});
			} else {
				alert(error);
			}
			
			return false;
		});
	
	}
	
	contactform();
    
});

function validateEmail(id)  {  
	var emailPattern = /^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$/
	return emailPattern.test(id);  	 
}
