function isValidEmailAddress(email) 
{
		var pattern = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
		return pattern.test(email);
}
function isValidTelephoneNumber(number)
{
	var phoneRegExp = /^((\(44\))( )?|(\(\+44\))( )?|(\+44)( )?|(44)( )?)?((0)|(\(0\)))?( )?(((1[0-9]{3})|(7[1-57-9][0-9]{2}))( )?([0-9]{3}[ -]?[0-9]{3})|(2[0-9]{2}( )?[0-9]{3}[ -]?[0-9]{4}))$/; 
	if (number.match(phoneRegExp)) 
	{
		return true;
	}
	else
	{
		return false;
	}	
}
$(function() 
{
  $('.formErrorText').hide();
  

  $("#submitButton").click(function() {
  
		// validate and process form
		// first hide any error messages
		$('.formErrorText').hide();
		
		var upperSpacer="";
		var lowerSpacer="";
		
		var affiliateType = $("[name=affiliateType]:checked").val();
		var name = $("input#name").val();
		if (name ==="") 
		{
			$("p#error_name").show();
			$("input#name").focus();
			return false;
		}	
				
		var emailAddress = $("input#emailAddress").val();
		if (emailAddress === "" || !isValidEmailAddress(emailAddress)) 
		{
			$("p#error_email").show();
			$("input#emailAddress").focus();
			return false;
		}
		
		var telephoneNumber = $("input#telephoneNumber").val();
		if (telephoneNumber != "" && !isValidTelephoneNumber(telephoneNumber)) 
		{
			$("p#error_telephoneNumber").show();
			$("input#telephoneNumber").focus();
			return false;
		}		
		var companyName = $("input#companyName").val();
		
		var website = $("input#website").val();
		if (website ==="") 
		{
			$("p#error_website").show();
			$("input#website").focus();
			return false;
		}		
		
		var websiteDescription = $("textarea#websiteDescription").val();
		if (websiteDescription ==="") 
		{
			$("p#error_websiteDescription").show();
			$("textarea#websiteDescription").focus();
			return false;
		}

		var websiteCategory=$("select#websiteCategory").val();
		if (websiteCategory ==="") 
		{
			$("p#error_websiteCategory").show();
			$("select#websiteCategory").focus();
			return false;
		}		
				
		var websiteStatus=$("select#websiteStatus").val();
		if (websiteStatus ==="") 
		{
			$("p#error_websiteStatus").show();
			$("select#websiteStatus").focus();
			return false;
		}			
			
		var numberOfVisitorsPerMonth=$("input#numberOfVisitorsPerMonth").val();
		
		var formData = 
		{
			affiliateType : affiliateType,
			name : name,
			emailAddress : emailAddress,
			telephoneNumber : telephoneNumber,
			companyName : companyName,
			website : website,
			websiteDescription : websiteDescription,
			websiteCategory : websiteCategory,
			websiteStatus : websiteStatus,
			numberOfVisitorsPerMonth : numberOfVisitorsPerMonth	
		};
		
		$.ajax(
		{
		  type: "POST",
		  url: "/consumer/affiliatesignup.st",
		  data: formData,
		  success: function() 
		  {
			$('#signup_form').html("<div id='message'  class='form'></div>");
			$('#message').html(upperSpacer)
			.append("<h2>Sign Up Form Submitted</h2>")
			.append("<p class='correctText'>We will be in touch soon.</p>")
			.append(lowerSpacer);
            
		  },
		  error:function (xhr, ajaxOptions, thrownError)
		  {
			$('#signup_form').html("<div id='message' class='form'></div>");
			$('#message').html(upperSpacer)
				.append("<h2>Sign Up Failed</h2>")
				.append("<p class='formErrorText2'>Please try again later.</p>")
				.append(lowerSpacer);
			
          }      
     	});
     	
    return false;
	});
});


