var website = {
		
	email_regex : /^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-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-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i,
				
    /**
     * Form Signup verification code
     */
	checksignup: function (form)
	{
		var has_errors = false;
		
		//loop through all of the required form elements
		// by andrew + matt
		$(form).find('input.required').each(function(){
			if($(this).attr('type') == 'checkbox'){
				if(!$(this).is(':checked')){
					alert("Please check your signup form, all fields are required");
					has_errors = true;
					return false;
				}
			}
			if($(this).val() == ''){
				alert("Please check your signup form, all fields are required");
				has_errors = true;
				return false;
			}
			else if($(this).hasClass('email')){
				if(!website.email_regex.test($(this).val())){
					alert("Invalid email address");
					has_errors = true;
					return false;
				}
			}
			else if($(this).hasClass('password')){
				if($(this).val() == $(form).find('input.password-confirm').val())
				{
					return true;
				}
				else
				{
					alert("Your passwords do not match.");
					has_errors = true;
					return false;
				}
			}
			
		});
		
		if(has_errors){
			return false;
		}
		
		return true;
		
		
		// inputs with wrong IDs threw errors. broke for some reason.  by christian
		/*
		if( jQuery('#sContact_First_Name')[0].value == "" || 
				jQuery('#sOrganizationNameTrial')[0].value == "" ||
				jQuery('#sContact_PublicPhoneTrial')[0].value == "" ||
				jQuery('#sAccountEmail')[0].value == "" ||
				jQuery('#sPassword')[0].value == ""
				)
		{
			alert("Please check your signup form, all fields are required");
			return false;
		}
		else if(!website.email_regex.test(jQuery('#sAccountEmail')[0].value))
		{
			alert("Invalid email address");
			return false;
		}
		else if(jQuery('#sPassword')[0].value == jQuery('#x_sPasswordConfirm')[0].value )
		{
			return true;
		}
		else
		{
			alert("Your passwords do not match.");
			return false;
		}
		*/
	},
	
	/**
	 * Populates tracking fields in the signup form with refferer and offer data
	 */
	populatetrackingfields: function ()
	{
		//offercode differentiates different offers in the landing page form
		var offerElement = jQuery('#lp-offer-code')[0];

		if(offerElement) {
			var offercode = offerElement.innerHTML;
			jQuery('.sg-offer').val(offercode);
		}
		
		if (document.referrer != '') 
		{
			jQuery('.refferer').val(offercode);
		}
		
	}
	
};
