validateBasic = function(validator) {
	validator.clearAllValidations();
	validator.addValidation("firstname","req","Please enter your first name.");
	validator.addValidation("firstname","alpha","Your first name can only contain alphabetic characters (A-Z).");
	validator.addValidation("firstname","maxlen=20","Your first name can be no longer than 20 characters.");
	validator.addValidation("lastname","req","Please enter your last name.");
	validator.addValidation("lastname","maxlen=20","Your last name can be no longer than 20 characters.");
	validator.addValidation("email","maxlen=50", "Your e-mail address can be no longer than 50 characters.");
	validator.addValidation("email","req", "Please enter your e-mail address.");
	validator.addValidation("email","email", "Please provide us with a valid e-mail address.");
	validator.addValidation("bandname","maxlen=50", "Your band's name can be no longer than 50 characters.");
	validator.addValidation("bandname","req", "Please enter your band's name.");  
	validator.addValidation("storeid","maxlen=20", "Your store ID can be no longer than 10 characters.");
	validator.addValidation("storeid","req", "Please enter your store ID.");
	validator.addValidation("storeid","alnum", "Your store ID can only contain alphanumeric characters (A-Z, 0-9).");
	validator.addValidation("paypalemail","maxlen=50", "Your PayPal e-mail address can be no longer than 50 characters.");
	validator.addValidation("paypalemail","req", "Please enter your PayPal e-mail address.");
	validator.addValidation("paypalemail","email", "Please provide us with a valid PayPal e-mail address.");
	validator.addValidation("storelevel","req", "Please select a store level.");
	validator.addValidation("agree","shouldselchk", "To signup for a ZamStore, you must agree to the Merchant User Agreement");	
},

validateAll = function(validator){
	validator.clearAllValidations();
	validator.addValidation("firstname","req","Please enter your first name.");
	validator.addValidation("firstname","alpha","Your first name can only contain alphabetic characters (A-Z).");
	validator.addValidation("firstname","maxlen=20","Your first name can be no longer than 20 characters.");
	validator.addValidation("lastname","req","Please enter your last name.");
	validator.addValidation("lastname","maxlen=20","Your last name can be no longer than 20 characters.");
	validator.addValidation("email","maxlen=50", "Your e-mail address can be no longer than 50 characters.");
	validator.addValidation("email","req", "Please enter your e-mail address.");
	validator.addValidation("email","email", "Please provide us with a valid e-mail address.");
	validator.addValidation("bandname","maxlen=50", "Your band's name can be no longer than 50 characters.");
	validator.addValidation("bandname","req", "Please enter your band's name.");  
	validator.addValidation("storeid","maxlen=20", "Your store ID can be no longer than 10 characters.");
	validator.addValidation("storeid","req", "Please enter your store ID.");
	validator.addValidation("storeid","alnum", "Your store ID can only contain alphanumeric characters (A-Z, 0-9).");
	validator.addValidation("paypalemail","maxlen=50", "Your PayPal e-mail address can be no longer than 50 characters.");
	validator.addValidation("paypalemail","req", "Please enter your PayPal e-mail address.");
	validator.addValidation("paypalemail","email", "Please provide us with a valid PayPal e-mail address.");
	validator.addValidation("storelevel","req", "Please select a store level.");
	validator.addValidation("agree","shouldselchk", "To signup for a ZamStore, you must agree to the Merchant User Agreement");
	validator.addValidation("ccnumber","req", "Please enter your credit card number.");
	validator.addValidation("ccnumber","numeric", "Your credit card number can only contain numeric characters (0-9).");
	validator.addValidation("cccode","req", "Please enter your credit card's security code.");
	validator.addValidation("cccode","numeric", "Your credit card's security code can only contain numeric characters (0-9).");
	validator.addValidation("ccexpmonth","req", "Please select your credit card's expiration month.");
	validator.addValidation("ccexpdate","req", "Please select your credit card's expiration year.");
	validator.addValidation("ccfirstname","req", "Please enter the first name on your credit card.");
	validator.addValidation("cclastname","req", "Please enter the last name on your credit card.");
	validator.addValidation("ccaddress1","req", "Please enter the billing address for your credit card.");
	validator.addValidation("cccity","req", "Please enter the billing city for your credit card.");
	validator.addValidation("ccstate","req", "Please enter the billing state for your credit card.");
	validator.addValidation("cczip","req", "Please enter the billing zip code for your credit card.");
},

validateBillingOnly = function(validator){
	validator.clearAllValidations();
	validator.addValidation("ccnumber","req", "Please enter your credit card number.");
	validator.addValidation("ccnumber","numeric", "Your credit card number can only contain numeric characters (0-9).");
	validator.addValidation("cccode","req", "Please enter your credit card's security code.");
	validator.addValidation("cccode","numeric", "Your credit card's security code can only contain numeric characters (0-9).");
	validator.addValidation("ccexpmonth","req", "Please select your credit card's expiration month.");
	validator.addValidation("ccexpdate","req", "Please select your credit card's expiration year.");
	validator.addValidation("ccfirstname","req", "Please enter the first name on your credit card.");
	validator.addValidation("cclastname","req", "Please enter the last name on your credit card.");
	validator.addValidation("ccaddress1","req", "Please enter the billing address for your credit card.");
	validator.addValidation("cccity","req", "Please enter the billing city for your credit card.");
	validator.addValidation("ccstate","req", "Please enter the billing state for your credit card.");
	validator.addValidation("cczip","req", "Please enter the billing zip code for your credit card.");
},

validateSignup = function(optionId, formValidator){
	if( optionId == 2 || optionId == 3 ){		
		validateAll(formValidator);
	} else {
		validateBasic(formValidator);		
	}
},

bindBilling = function(){	
	var frmvalidator  = new Validator("myform");
	validateBasic(frmvalidator);

	$("#billingInfo").hide();
	

	
	// Shows billing info if headliner or opening act is selected
	// Necessary for page reloads to function right
	$(".storelevel option:selected").each(function() {	
		optionId = $(this).attr("value");
		if( optionId == 2 || optionId == 3 ){
			$("#billingInfo").show();
		} else {
			optionId = 1;
		}
		
		validateSignup(optionId, frmvalidator);	
		
	});

	// Store level options click show and hide functions
	
	$(".storelevel").change(function(){
		optionId = $(".storelevel").children(":selected").attr("value");
		
		if( optionId == 2 || optionId == 3 ){
			$("#billingInfo").show();
		} else {
			$("#billingInfo").hide();
		}
		
		optionIdValChange = $(".storelevel").children(":selected").attr("value");		
		//if( optionIdValChange == 2 || optionIdValChange == 3 ){
			validateSignup(optionIdValChange, frmvalidator);
		//} 
	});	
	
},

bindBillingTab = function (){
	var frmvalidator  = new Validator("myform");
	validateBasic(frmvalidator);
},

bindBillingOnly = function (){
	var frmvalidator  = new Validator("myform");
	validateBillingOnly(frmvalidator);
}

