$(document).ready(function(){
	
	$('.clearinput').formclear();	
		
  		$("#hostname").keyup(function(){
  			$("#hostnamepreview").text("http://"+$("#hostname").val()+".mediasilo.com");
  		})
  		
  		jQuery.validator.addMethod("lettersnumbersonly", function(value, element) {
			return this.optional(element) || /^[a-zA-Z0-9]+$/i.test(value);
		}, "Example: myname (.focusmediashare.com)");
		
		jQuery.validator.addMethod("nowhitespace", function(value, element) {
			return this.optional(element) || /^\S+$/i.test(value);
		}, "No white space please");  
		
		jQuery.validator.addMethod("phoneUS", function(phone_number, element) {
    	phone_number = phone_number.replace(/\s+/g, ""); 
		return this.optional(element) || phone_number.length > 9 &&
		phone_number.match(/^(1-?)?(\([2-9]\d{2}\)|[2-9]\d{2})-?[2-9]\d{2}-?\d{4}$/);}, "Please specify a valid phone number");


  		
  		 $("#getstartedForm").validate({
  		   success: function(label) {
     		label.addClass("valid").text("Ok!")
   			},
  		  submitHandler: function(form) {
  		  	form.submit(); 
  		  	},
  			
  			rules: {
  				hostname: {
  					required: true,
  					lettersnumbersonly: true,
  					nowhitespace: true,
  					remote: "AccountSignupAPI.cfc?method=checkhostname"
  				},
  				username: "required",
  				password: "required",
  				passwordverification: {
  					equalTo: "#password"
  				},
  				phone: {
  					required: true	
  				},
  				captcha: {
  					required: true
  				}
  					
  			},
  			messages: {
	  			username: {
	  				minlength: "Your username must be at least 5 characters long",
	  				required: "Please enter a username"
	  			},
	  			hostname: {
	  				remote: "This hostname is not available",
	  				required: "Please enter a hostname"
	  			},
	  			passwordverification: "Passwords don't match.",
	  			couponcode: {
	  				remote: "Coupon could not be found"
	  				}
  		},
  		invalidHandler: function(form, validator) {
		var errors = validator.numberOfInvalids();
		if (errors) {
        	var message = errors == 1
          	? 'You missed 1 field. It has been highlighted'
          	: 'You missed ' + errors + ' fields. They have been highlighted';
        	$("div.error span").html(message);
        	$("div.error").show();
      	} else {
        	$("div.error").hide();
      	}
      }
	
 	})
 });
