var myRequest;

function addEvent(el,event,listener){
	if (el.addEventListener){
	  el.addEventListener(event, listener, false); 
	} else if (el.attachEvent){
	  el.attachEvent('on' + event, listener);
	}	
}

function validateEmail(){
	var re = /^[\w-]+(\.[\w-]+)*@([a-z0-9-]+(\.[a-z0-9-]+)*?\.[a-z]{2,6}|(\d{1,3}\.){3}\d{1,3})(:\d{4})?$/;
	
	var button = $("request_submit");
	var email_error = $("email_error");
	var email_input = $("email");
	var email = email_input.value;
	var errormsg = "";
	var valid = true;
	
	//check if postal code is required
	if (email==''){
		valid = false;
		errormsg = "Please enter your email address.";
	} else {
		if (!re.test(email)){
			valid = false;
			errormsg = "Not a valid email address.";
		}
	}
//alert('validating:' + signup_all.checked);
	//validate check boxes
	signup_all = $("signup_all");
	signup_movie = $("signup_movie");
	signup_music = $("signup_music");
	checkbox_error = $("checkbox_error");
	if (signup_all.checked || signup_movie.checked || signup_music.checked) {
		valid = valid & true;
		checkbox_error.innerHTML = "";
	} else {
		valid = false;
		checkbox_error.innerHTML = "Please check at least one email option to receive.";
	}

	//TO-DO: filter error message for html
	email_error.innerHTML = errormsg;
	button.disabled = !valid;
	return valid;
}

function initRequestForm(){
	var email = $("email");
	if (email == null) return;
	addEvent(email,"change",validateEmail);
	addEvent(email,"keyup",validateEmail);
	addEvent(email,"blur",validateEmail);

	signup_all = $("signup_all");
	signup_movie = $("signup_movie");
	signup_music = $("signup_music");
	addEvent(signup_all,"change",validateEmail);
	addEvent(signup_movie,"change",validateEmail);
	addEvent(signup_music,"change",validateEmail);
/*
	addEvent(signup_all,"click",validateEmail);
	addEvent(signup_movie,"click",validateEmail);
	addEvent(signup_music,"click",validateEmail);
	addEvent(signup_all,"blur",validateEmail);
	addEvent(signup_movie,"blur",validateEmail);
	addEvent(signup_music,"blur",validateEmail);
*/
	validateEmail();
}

addEvent(window,"load",initRequestForm);