// JavaScript Document
var displayForm	= false;

// prepare the form when the DOM is ready 
jQuery(document).ready(function() {
	// show a simple loading indicator
	var loader = jQuery('<div id="loader" style="background-color:#000000;color:#ffffff;padding:10;border: 1px solid #000;z-index: 99;">&nbsp;&nbsp;Processing...<br/><img src="/VPanel/images/loader.gif" alt="loading..." /></div>')
		.css({position: "absolute", top: "25em", left: "35em"})
		.appendTo("body")
		.hide();
	jQuery().ajaxStart(function() {
		loader.show();
	}).ajaxStop(function() {
		loader.hide();
	}).ajaxError(function(a, b, e) {
		throw e;
	});

	// add * to required field labels
	jQuery('label.required').append('<font color="#990000"><b>*</b></font>');

	jQuery.validator.addMethod("pageRequired", function(value, element) {
		var $element = $(element)
		return !this.optional(element);
	}, jQuery.validator.messages.required)

	var v = jQuery("#acctForm").validate({
		errorClass: "warning",
		onkeyup: false,
		onblur: false,
		submitHandler: function(form) {
			jQuery(form).ajaxSubmit(options);
		},
		rules: {
			txtTitle: {
				required: true
			},
			txtFirstname: {
				required: true,
				minlength: 2
			},
			txtLastname: {
				required: true,
				minlength: 2
			},
			txtEmail: {
				required: true,
				email: true
			}
		},
		messages: {
			txtTitle: "Please select your title",
			txtFirstname: {
				required: "Please enter your firstname",
				minlength: "Firstname must consist of at least 2 characters"
			},
			txtLastname: {
				required: "Please enter your lastname",
				minlength: "Lastname must consist of at least 2 characters"
			},
			txtEmail: "Please enter a valid email address"
		}
	});

	var v = jQuery("#passForm").validate({
		errorClass: "warning",
		onkeyup: false,
		onblur: false,
		submitHandler: function(form) {
			jQuery(form).ajaxSubmit(options);
		},
		rules: {
			txtPassword: {
				required: true,
				minlength: 6
			},
			txtPasscode: {
				required: true,
				minlength: 6
			},
			txtConfirm: {
				required: true,
				minlength: 6,
				equalTo: "#txtPasscode"
			}
		},
		messages: {
			txtPassword: {
				required: "Please enter current password",
				minlength: "Your password must be at least 6 characters long"
			},
			txtPasscode: {
				required: "Please provide a new password",
				minlength: "Your password must be at least 6 characters long"
			},
			txtConfirm: {
				required: "Please enter confirm password",
				minlength: "Your password must be at least 6 characters long",
				equalTo: "Please enter the same password as above"
			}
		}
	});

	var v = jQuery("#addrForm").validate({
		errorClass: "warning",
		onkeyup: false,
		onblur: false,
		submitHandler: function(form) {
			jQuery(form).ajaxSubmit(options);
		}
	});

	jQuery("#txtZip").mask("99999");
	jQuery("#txtZip4").mask("9999");
	jQuery('.password').pstrength();

	var id = jQuery("select#cboCountry").val();
	selectLocation(id);

	jQuery("select#cboCountry").change(function(){
		var id = jQuery(this).val();
		selectLocation(id);
	});

	jQuery("select#cboStatus").change(function(){
		var id = jQuery(this).val();
		window.location.href='account.php?view=List&page=1&status=' + id;
	});

});

function selectLocation(loc) {
	if (loc == 'United States of America') {
		jQuery("#txtPhone").mask("(999) 999-9999");
		jQuery("#txtAddress").addClass("pageRequired");
		jQuery("#txtCity").addClass("pageRequired");
		jQuery("#cboState").addClass("pageRequired");
		jQuery("#txtZip").addClass("pageRequired");
		jQuery("#USA").show();
		jQuery("#mtxForeign").removeClass("pageRequired");
		jQuery("#mtxForeign").val("");
		jQuery("#Foreign").hide();
	} else {
		jQuery("#txtPhone").unmask();
		jQuery("#txtAddress").removeClass("pageRequired");
		jQuery("#txtCity").removeClass("pageRequired");
		jQuery("#cboState").removeClass("pageRequired");
		jQuery("#txtZip").removeClass("pageRequired");
		jQuery("#txtAddress").val("");
		jQuery("#txtAddress2").val("");
		jQuery("#txtCity").val("");
		jQuery("#cboState").val("");
		jQuery("#txtZip").val("");
		jQuery("#txtZip4").val("");
		jQuery("#USA").hide();
		jQuery("#mtxForeign").addClass("pageRequired");
		jQuery("#Foreign").show();
	}
}