// JavaScript Document
function chkUsername(username)
{
	var chk = "";
		$.ajax({
		url: "ajax/chkUsername.php",
		type: "POST",
		dataType: "text",
		async: false,
		data:"username="+username,
		success: function(data,status)
		{
			chk = data;
		},
		error: function(xhr, textStatus, errorThrown)
		{
			alert(xhr+"---"+textStatus+"---"+errorThrown);
		}
	});
	
	return chk;
}
$(document).ready(function(){
	
	$("#frmContact").validate({
		rules: 
		{
			name: { required:true, minlength:2, maxlength:12 },
			subject: { required:true, minlength:4 },
			comment: { required:true, minlength:10, maxlength:200 },
			email: { required:true, email:true }
		},
		
		messages:
		{
			name: { required: "Enter your name or screen name.", minlength: jQuery.format("Enter at least {0} characters") },
			subject: { required: "Enter a subject.", minlength: jQuery.format("Enter at least {0} characters") },
			comment: { required: "Enter your comment/question. No more than 200 characters.", minlength: jQuery.format("Enter at least {0} characters") },
			email: { required: "Enter a valid email so we can respond to you." }
		},
		
		// the errorPlacement has to take the table layout into account
		errorPlacement: function(error, element)
		{
			var errorM = $(element).parent().next();
			
			$(errorM).html(error).css({'display':'block','font-size':'12px', 'color':'red', 'text-align':'center'});
			var message = $(errorM).find(".error").html();
			$(errorM).html(message);			
		},
		//hides the status after the user successfully enters the data
		success: function(element)
		{
			$(element).css({'display':'none'});
		}
		
	});
	
	$("#regform").validate({
		rules: 
		{
			//validate regular registration form
			//create ajax communication using cfc or php for checking of field value. implement later
			//reg_Name: { minlength:2, maxlength:40, remote: {url: "ajaxcheck.cfm", type: "post", data: {'key': 'true'},},}
			username: { required:true, minlength:5, maxlength:12 },
			pword: { required:true, minlength:6 },
			pass2: { required:true, minlength:6, equalTo:"#pword" },
			emailaddress: { required:true, email:true },
			fname: { required:true, minlength:3, maxlength:40 },
			lname: { required:true, minlength:3, maxlength:40 },
			terms: { required:true }
		},
		
		messages:
		{
			username: { required: "Enter a username", minlength: jQuery.format("Enter at least {0} characters") },
			pword: { required: "Enter a password", minlength: jQuery.format("Enter at least {0} characters") },
			pass2: { required: "Repeat your password", minlength: jQuery.format("Enter at least {0} characters"), equalTo: "Enter the same password as above" },
			emailaddress: { required: "Enter a valid email" },
			fname: { required: "Your first name is required", minlength: jQuery.format("Enter at least {0} characters") },
			lname: { required: "Your last name is required", minlength: jQuery.format("Enter at least {0} characters") },
			terms: { required: "You must agree to our terms and privacy policy" }	
		},
		
		errorPlacement: function(error, element)
		{
			var errorM = $(element).parent().next();
			
			$(errorM).html(error).css({'display':'block','font-size':'12px', 'color':'red', 'text-align':'center'});
			var message = $(errorM).find(".error").html();
			$(errorM).html(message);
		},
		//hides the status after the user successfully enters the data
		success: function(element)
		{
			$(element).css({'display':'none'});
		}
		
	});
	
	
	//check to make sure the user chose a group before submitting the create-group form
	$('#regform').submit(function() {
		var username=$("form#regform input[name='username']").val();
		var chkName = chkUsername(username).search("false");
		if( chkName > -1 )
		{
			alert(username+" is not available. Please try another user name.");
			return false;
		}
			
  		if($("#country").val() == 0)
		{
			alert('You must choose a country to register.');
			return false;
		}		
	});
	
	
	
	
	
});
