// JavaScript Document
$(function() {

	// call the validate function on our form
	/*
	$('#RegisterForm').validate({
		onkeyup:false,
        errorPlacement: errorMessagePlacement,
		success: function(element) {
     		element.parent().parent().remove();
   		},
		rules: {
			email: {
				required:true,
				email:true,	
				maxlength:255,
				emailCheck:true 		// remote
			},
			password: {
				required:true,
				minlength:6,	
				maxlength:20
			},
			cpass: {
				required:true,
				equalTo: "#password"
			}
		},
		messages: {
			email: {
				required: "Email address is required.",
				email: "Email address is not valid.",
				maxlength: jQuery.format("Email is too long."),
				emailCheck: "Email already in use."
			},
			password: {
				required: "Password is required.",
				minlength: jQuery.format("Password must be at least {0} characters"),
				maxlength: jQuery.format("Password can not exceed {0} characters.")
			},
			cpass: {
				required: "Re-enter password to confirm.",
				equalTo: "Passwords do not match."
			}

		}

	});	
	*/
	   
	// call the validate function on our form
	/*
	$('#LoginForm').validate({
		onkeyup:false,
        errorPlacement: errorMessagePlacement,
		success: function(element) {
     		element.parent().parent().remove();
   		},
		rules: {
			login: {
				required:true,
				email:true
			},
			password: {
				required:true
			}
		},
		messages: {
			login: {
				required: "Email address is required.",
				email: "Email address is not valid."
			},
			password: {
				required: "Password is required."
			}
		}
	});
	*/
	
	// pre-register form - start
	$('#pre_register_form').validate({
		onkeyup:false,
		errorPlacement: errorMessagePlacement,
		success: function(element) {
			element.parent().parent().remove();
		},
		submitHandler: function(form) {
			$.post('/preregister/process', $('form').serialize(), function(data){
				if(data.response == 'success') {
					$('#pre_register_form').remove();
					$('#pre_register_msg').addClass('message success').html(data.msg);
				} else if (data.response == 'error') {
					$('#pre_register_msg').addClass('message error').html(data.msg);
				}
				
			}, 'json');
		},
		rules: {
			firstname: {
				required:true
			},
			lastname: {
				required:true
			},
			email: {
				required:true,
				email:true,
				emailPreRegCheck:true
			},
			opt_in: {
				required:true
			}
		},
		messages: {
			firstname: {
				required: "First name is required."
			},
			lastname: {
				required: "Last name is required."
			},
			email: {
				required: "Email address is required.",
				email: "Email address is not valid.",
				emailPreRegCheck: "Email is already pre-registered."
			},
			opt_in: {
				required: "Receive communications is required."
			}
		}
	}); // pre-register form - end
}); // jquery ready - end

// remote check for unique email
/*
jQuery.validator.addMethod('emailCheck', function(email) {
	var postURL = "/join/email_check";
	$.ajax({
		cache:	false,
		async:	false,
		type: 	"POST",
		data: 	"email=" + email,
		url: 	postURL,
		success: function(msg) {
			result = (msg=='TRUE') ? true : false;
		}
	});
	return result;
}, '');
*/

// remote check for unique prereg email
jQuery.validator.addMethod('emailPreRegCheck', function(email) {
	var postURL = "/preregister/email_check";
	$.ajax({
		cache:	false,
		async:	false,
		type: 	"POST",
		data: 	"email=" + email,
		url: 	postURL,
		success: function(msg) {
			result = (msg=='TRUE') ? true : false;
		}
	});
	return result;
}, '');

// check for unwanted characters
/*
$.validator.addMethod('validChars', function (value) {
	var result = true;
	// unwanted characters
	var iChars = "!@#$%^&*()+=-[]\\\';,./{}|\":<>?";
	for (var i = 0; i < value.length; i++) {
		if (iChars.indexOf(value.charAt(i)) != -1) {
			return false;
		}
	}
	return result;
}, '');
*/
