// JavaScript Document

 window.addEvent('domready', function() { 
		startCal = new Calendar({ startDate: 'm/d/Y', endDate: 'm/d/Y' }, {pad:30, direction: 0.5});
		
		sbmt = new Element('input', {
			'type': 'button',
			'value': 'Submit',
			'events': {
				'click': function() {
					validateAndSubmit();
				}
			}
		});
		
		$('submitBtn').replaceWith(sbmt);
		
		$$('label.required').each(function(elm, i) {
			elm.appendText("*");
		});
		$$('label.text').each(function(elm, i) {
			elm.appendText(":");
		});
		
	});
	
	function validateAndSubmit() {
		//Reset stuff
		ok = true;
		$('rules-error').setStyle('display', 'none');
		$('age-error').setStyle('display', 'none');
		$('AgeStart').removeClass('error');
		$('AgeEnd').removeClass('error');
		
		//Check for country and adjust required fields
		if($('country').getValue() == "US") {
			$('territory').removeClass('required');
			$('intlpostalcode').removeClass('required');
		} else {
			$('state').removeClass('required');
			$('zipCode').removeClass('required');
		}
		
		//Check required fields
		$$('input.required').each(function(elm, i) {
			elm.removeClass('error');
			if(!elm.getValue()) {
				elm.addClass('error');
				ok=false;
			}
		});
		
		//Check State
		if($('country').getValue() == "US") {
			if($('state').getValue() == 'none') {
				$('state').addClass('error');
				ok=false;
			}
		} else {
			if($('territory').getValue() == 'none') {
				$('territory').addClass('error');
				ok=false;
		}
		
		//Check age range
		if($('AgeStart').getValue()>$('AgeEnd').getValue())
		{
			$('AgeStart').addClass('error');
			$('AgeEnd').addClass('error');
			$('age-error').setStyle('display', 'block');
			ok=false;
		}
		
		//Check for rules + regulations
		if(!$('rules').checked) {
			$('rules-error').setStyle('display', 'block');
			$('rules').addClass('error');
				ok=false;
		}
		if(ok)
			$('signupForm').submit();
		else
			$('validation-error').setStyle('display', 'block');
	}