	var spread_wellness = {
			head: "SPREAD WELLNESS",
			body: "At Spectrum LifeWorks we’re all about spreading wellness. If you try a CE webinar and like us, tell your friends! Your friend will save $5 off their first program and you’ll get a $5 credit in your account. There’s no limit to how many friends you can refer!"
		};

/************************************************************
*						TELL A FRIEND FORM					*
*************************************************************/

	function sendTAFButtonClicked() {
		if (validateTAFForm())
			$("#form-taf").submit();
		return false;
	}

	function validateTAFForm() {
		$name = $("#name");
		$email = $("#email");
		$recipient1 = $("#recipient1");
		validEmail = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
		validEmailList = /^([a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}[ ,]*)+$/;

		if ($name.val() == "") {
			alert("Please enter your name");
			$name.focus();
			$name.select();
			return false;
		}

		if ($email.val() == "") {
			alert("Please enter your email");
			$email.focus();
			$email.select();
			return false;
		}
		else if (!validEmail.test($email.val())) {
			alert("Please enter a valid email address");
			$email.focus();
			$email.select();
			return false;
		}

		if ($recipient1.val() == "") {
			alert("Please enter your friend's email");
			$recipient1.focus();
			$recipient1.select();
			return false;
		}

		for(var i=1; i<4; ++i) {
			$recipient = $("#recipient" + i);
			if ($recipient.val() != "" && !validEmail.test($recipient.val())) {
				alert("Please enter one or more valid email addresses separated by commas");
				$recipient.focus();
				$recipient.select();
				return false;
			}
		}

		return true;
	}


/************************************************************
*						CHANGE PASSWORD FORM				*
*************************************************************/

	function savePasswordButtonClicked() {
		if (validatePasswordEditForm())
			$("#form-password").submit();
		return false;
	}
	
	function validatePasswordEditForm() {
		$oldpassword = $("#oldpassword");
		$password1 = $("#password1");
		$password2 = $("#password2");

		if ($oldpassword.val() == "") {
			alert("Please enter your current password");
			$oldpassword.focus();
			$oldpassword.select();
			return false;
		}

		if ($password1.val() == "") {
			alert("Please enter your new password");
			$password1.focus();
			$password1.select();
			return false;
		}

		if ($password2.val() == "") {
			alert("Please enter your new password for confirmation");
			$password2.focus();
			$password2.select();
			return false;
		}
		else if ($password1.val() != $password2.val()) {
			alert("The two new passwords do not match. Please enter them again");
			$password1.focus();
			$password1.select();
			return false;
		}


		return true;
	}


/************************************************************
*							CHECKOUT1 FORM					*
*************************************************************/

	function checkout1RadiosChanged() {
		if ($("#new-customer-y").attr("checked")) {
	 		$('#password').attr("disabled","disabled");
// 	 		$('#password').hide();
		}
		else {
			$('#password').removeAttr("disabled");
// 	 		$('#password').show();
		}
	}

	function checkout1ButtonClicked() {
		if (validateCheckout1Form())
			$("#form-checkout1").submit();
		return false;
	}
	
	function validateCheckout1Form() {
		$email = $("#email");
		$newCustomerY = $("#new-customer-y");
		$newCustomerN = $("#new-customer-n");
		$password = $("#password");
		validEmail = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;

		if ($email.val() == "") {
			alert("Please enter your email address");
			$email.focus();
			$email.select();
			return false;
		}
		else if (!validEmail.test($email.val())) {
			alert("You need to enter a valid email address, like jsmith@aol.com");
			$email.focus();
			$email.select();
			return false;
		}

		// they're a new customer, no need to check password
		if ($newCustomerY.attr("checked"))
			return true;

		if ($password.val() == "") {
			alert("Please enter your password");
			$password.focus();
			$password.select();
			return false;
		}

		return true;
	}


/************************************************************
*								CHECKOUT2 FORM				*
*************************************************************/

	function checkout2ButtonClicked(newFlag, shipFlag) {
		if (validateCheckout2Form(newFlag, shipFlag))
			$("#form-checkout2").submit();
		return false;
	}
	
	function validateCheckout2Form(newFlag, shipFlag) {
		newFlag = (newFlag == 'new');
		shipFlag = (shipFlag == 'ship');
		validZip = /^[0-9]{5}(-?[0-9]{4})?$/;


		max = (shipFlag ? 2 : 1);
		
		for (i=0; i<max; ++i) {

			if (i == 0) {
				prefix = "#";
				which = "Billing";
			}
			else {
				prefix = "#ship-";
				which = "Shipping";
			}


			$firstname	= $(prefix + "firstname");
			$lastname	= $(prefix + "lastname");
			$address1	= $(prefix + "address1");
			$address2	= $(prefix + "address2");
			$city		= $(prefix + "city");
			$state		= $(prefix + "state");
			$zip		= $(prefix + "zip");
			$phone		= $(prefix + "phone");

			if ($firstname.val() == "") {
				alert("Please enter your First Name");
				$firstname.focus();
				$firstname.select();
				return false;
			}

			if ($lastname.val() == "") {
				alert("Please enter your Last Name");
				$lastname.focus();
				$lastname.select();
				return false;
			}

			if ($address1.val() == "") {
				alert("Please enter your Address");
				$address1.focus();
				$address1.select();
				return false;
			}

			if ($city.val() == "") {
				alert("Please enter your City");
				$city.focus();
				$city.select();
				return false;
			}

			if ($state.val() == "" || $state.val() == "--" || $state.val() == undefined) {
				alert("Please choose your State");
				$state.focus();
				$state.select();
				return false;
			}

			if ($zip.val() == "") {
				alert("Please enter your Zip Code");
				$zip.focus();
				$zip.select();
				return false;
			}
			else if (!validZip.test($zip.val())) {
				alert("You need to enter a valid zip code, either 5 or 9 digits");
				$zip.focus();
				$zip.select();
				return false;
			}

			if ($phone.val() == "") {
				alert("Please enter your Phone");
				$phone.focus();
				$phone.select();
				return false;
			}
		}

		if (newFlag) {

			$email 		= $("#email");
			$email2 	= $("#email2");
			$password 	= $("#password");
			$password2 	= $("#password2");
			validEmail = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;

			if ($email.val() == "") {
				alert("Please enter the Email Address for your account");
				$email.focus();
				$email.select();
				return false;
			}
			else if (!validEmail.test($email.val())) {
				alert("You need to enter a valid email address, like jsmith@aol.com (" + $email.val() + ")" );
				$email.focus();
				$email.select();
				return false;
			}

			if ($email2.val() != $email.val()) {
				alert("Please double-check your email addresses (they are not the same)");
				$email2.focus();
				$email2.select();
				return false;
			}

			if ($password.val() == "") {
				alert("Please enter a password for your account");
				$password.focus();
				$password.select();
				return false;
			}

			if ($password2.val() != $password.val()) {
				alert("The second password does not match the first!");
				$password2.focus();
				$password2.select();
				return false;
			}
		}

		return true;
	}


	function copyAddress() {
		if ($("#same").attr("checked")) {
			$("#ship-firstname").val($("#firstname").val());
			$("#ship-lastname").val($("#lastname").val());
			$("#ship-address1").val($("#address1").val());
			$("#ship-address2").val($("#address2").val());
			$("#ship-city").val($("#city").val());
			$("#ship-state").val($("#state").val());
			$("#ship-zip").val($("#zip").val());
			$("#ship-phone").val($("#phone").val());
		}
		else {
			$("#ship-firstname").val("");
			$("#ship-lastname").val("");
			$("#ship-address1").val("");
			$("#ship-address2").val("");
			$("#ship-city").val("");
			$("#ship-state").val("");
			$("#ship-zip").val("");
			$("#ship-phone").val("");
		}
	}
	
/************************************************************
*								CHECKOUT3 FORM				*
*************************************************************/

	function checkout3ButtonClicked() {
		if (validateCheckout3Form())
			$("#form-checkout3").submit();
		return false;
	}
	
	function validateCheckout3Form() {
		$card_visa = $("#card-visa");
		$card_mc = $("#card-mc");
		$card_disc = $("#card-disc");
		$card_amex = $("#card-amex");
		$number = $("#number");
		$exp_month = $("#exp_month");
		$exp_year = $("#exp_year");
		$cvv = $("#cvv");
		validCVV = /^\d{3}$/;
		validAmexCVV = /^\d{4}$/;
		
		var card = '';
		if ($card_visa.attr("checked"))
			card = 'Visa';
		else if ($card_mc.attr("checked"))
			card = 'MasterCard';
		else if ($card_disc.attr("checked"))
			card = 'Discover';
		else if ($card_amex.attr("checked"))
			card = 'AmEx';
		if (card == "") {
			alert("Please choose a Payment Method");
			return false;
		}

		var number = jQuery.trim($number.val());
		if (number == "") {
			alert("Please enter your Credit Card number");
			$number.focus();
			$number.select();
			return false;
		}
		else if (!validateCardNumber(card, number)) {
			alert("Please double-check the Credit Card number");
			$number.focus();
			$number.select();
			return false;
		}

		if ($exp_month.val() == "") {
			alert("Please select the Card Expiration Month");
			$exp_month.focus();
			$exp_month.select();
			return false;
		}

		if ($exp_year.val() == "") {
			alert("Please select the Card Expiration Year");
			$exp_year.focus();
			$exp_year.select();
			return false;
		}
		
		var currentTime = new Date()
		var month = currentTime.getMonth() + 1
		var year = currentTime.getYear() % 100
		if ($exp_year.val() < year || ($exp_month.val() < month && $exp_year.val() == year)) {
			alert("That Card Expiration has passed. Please re-enter the correct expiration date.");
			$exp_year.focus();
			$exp_year.select();
			return false;
		}
		
		if ($cvv.val() == "") {
			alert("Please enter your card's Security Code");
			$cvv.focus();
			$cvv.select();
			return false;
		}
		else if ($card_amex.attr("checked") && !validAmexCVV.test($cvv.val())) {
			alert("You need to enter a valid 4-digit Security Code");
			$cvv.focus();
			$cvv.select();
			return false;
		}
		else if (!$card_amex.attr("checked") && !validCVV.test($cvv.val())) {
			alert("You need to enter a valid 3-digit Security Code");
			$cvv.focus();
			$cvv.select();
			return false;
		}

		return true;
	}


	function validateCardNumber(card, number)
	{
		if (card == "Visa") {
			// Visa: length 16, prefix 4, dashes optional.
			var re = /^4\d{3}-?\d{4}-?\d{4}-?\d{4}$/;
		} else if (card == "MasterCard") {
			// Mastercard: length 16, prefix 51-55, dashes optional.
			var re = /^5[1-5]\d{2}-?\d{4}-?\d{4}-?\d{4}$/;
		} else if (card == "Discover") {
			// Discover: length 16, prefix 6011, dashes optional.
			var re = /^6011-?\d{4}-?\d{4}-?\d{4}$/;
		} else if (card == "AmEx") {
			// American Express: length 15, prefix 34 or 37.
			var re = /^3[4,7]\d{13}$/;
		} else if (card == "Diners") {
			// Diners: length 14, prefix 30, 36, or 38.
			var re = /^3[0,6,8]\d{12}$/;
		}
		if (!re.test(number)) return false;
		// Remove all dashes for the checksum checks to eliminate negative numbers
		number = number.split("-").join("");
		// Checksum ("Mod 10")
		// Add even digits in even length strings or odd digits in odd length strings.
		var checksum = 0;
		for (var i=(2-(number.length % 2)); i<=number.length; i+=2) {
			checksum += parseInt(number.charAt(i-1));
		}
		// Analyze odd digits in even length strings or even digits in odd length strings.
		for (var i=(number.length % 2) + 1; i<number.length; i+=2) {
			var digit = parseInt(number.charAt(i-1)) * 2;
			if (digit < 10) { checksum += digit; } else { checksum += (digit-9); }
		}
		if ((checksum % 10) == 0)
			return true;
		else
			return false;
	}


/************************************************************
*							CONTACT US FORM					*
*************************************************************/

	function sendButtonClicked() {
		if (validateContactForm())
			$("#form-contact").submit();
		return false;
	}
	
	function validateContactForm() {
		$name = $("#name");
		$email = $("#email");
		$subject = $("#subject");
		$comments = $("#comments");
		validEmail = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;

		if ($name.val() == "") {
			alert("Please enter your name");
			$name.focus();
			$name.select();
			return false;
		}

		if ($email.val() == "") {
			alert("Please enter your email address");
			$email.focus();
			$email.select();
			return false;
		}
		else if (!validEmail.test($email.val())) {
			alert("You need to enter a valid email address, like jsmith@aol.com");
			$email.focus();
			$email.select();
			return false;
		}

		if ($subject.val() == "") {
			alert("Please choose a subject for your email");
			$subject.focus();
			$subject.select();
			return false;
		}

		if ($comments.val() == "") {
			alert("Please use the Comments area to tell us what's on your mind");
			$comments.focus();
			$comments.select();
			return false;
		}

		return true;
	}
	

/************************************************************
*							EDIT ACCOUNT FORM				*
*************************************************************/

	function saveAccountButtonClicked() {
		if (validateAccountEditForm())
			$("#form-accountedit").submit();
		return false;
	}
	
	function validateAccountEditForm() {
		$firstname = $("#firstname");
		$lastname = $("#lastname");
		$address1 = $("#address1");
		$address2 = $("#address2");
		$city = $("#city");
		$state = $("#state");
		$zip = $("#zip");
		$phone = $("#phone");
		$email = $("#email");
		validEmail = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;

		if ($firstname.val() == "") {
			alert("Please enter your First Name");
			$firstname.focus();
			$firstname.select();
			return false;
		}

		if ($lastname.val() == "") {
			alert("Please enter your Last Name");
			$lastname.focus();
			$lastname.select();
			return false;
		}

		if ($address1.val() == "") {
			alert("Please enter your Address");
			$address1.focus();
			$address1.select();
			return false;
		}

		if ($city.val() == "") {
			alert("Please enter your City");
			$city.focus();
			$city.select();
			return false;
		}

		if ($state.val() == "" || $state.val() == "--") {
			alert("Please enter your State");
			$state.focus();
			$state.select();
			return false;
		}

		if ($zip.val() == "") {
			alert("Please enter your Zip Code");
			$zip.focus();
			$zip.select();
			return false;
		}

		if ($phone.val() == "") {
			alert("Please enter your Phone");
			$phone.focus();
			$phone.select();
			return false;
		}

		if ($email.val() == "") {
			alert("Please enter the Email Address for your account");
			$email.focus();
			$email.select();
			return false;
		}
		else if (!validEmail.test($email.val())) {
			alert("You need to enter a valid email address, like jsmith@aol.com (" + $email.val() + ")" );
			$email.focus();
			$email.select();
			return false;
		}

		return true;
	}


/************************************************************
*							EVALUATION FORM					*
*************************************************************/

	function evaluationButtonClicked() {
		if (validateEvaluationForm())
			$("#form-evaluation").submit();
		return false;
	}
	
	function validateEvaluationForm() {
		var valid = true;
		var answer = '';
		questions = new Array('Q1A', 'Q1B', 'Q1C', 'Q2A', 'Q2B', 'Q3A', 'Q4A', 'Q4B', 'Q4C');	// Q3B removed

		for (k in questions) {
			var q = questions[k];
			if (q == 'Q4A') {
				answer = $("input[name='" + q + "']").val();
				missed = 0;
			}
			else if (q == 'Q4C') {
				answer = $("#eligible").attr("checked");
				missed = false;
			}
			else {
				answer = $("input[name='" + q + "']:checked").val();
				missed = undefined;
			}
			if (answer == missed) {
				$("#" + q).addClass("error-row");
				valid = false;
			}
			else
				$("#" + q).removeClass("error-row");
		}

		return valid;
	}
	
	// user is rating an item immediately (no ajax)
	function rateItem(index, rating) {

		$("#current-rating-" + index).css({ width:  "" + 20*rating + "%"});
		$("#Q4A1").val(rating);

	}

	
/************************************************************
*						VIDEO PLAYER PAGE					*
*************************************************************/

var player = null;
var playerCode = '';
var playerCheckInID = null;
var playerAction = 'unknown';
var playerPosition = 0;
var playerFurthest = 0;
var playerReset = false;
var playerResume = 0;
var playerResumeState = 0;

$(document).ready(function() {
// 	playerShowStatus("document ready()");
});

function playerReady(thePlayer) {
	playerShowStatus("player ready");
	player = document.getElementById(thePlayer.id);
	playerAddListeners();
	playerCheckInID = setInterval ("playerCheckIn()", 15000);
	if (playerResume > 0)
		setTimeout("playerPlay()", 1000);
}

function playerPlay() {
	playerShowStatus("playerPlay(), " + playerResumeState);
	switch (playerResumeState) {
		case 0: // just starting
			playerShowStatus("hitting PLAY");
			player.sendEvent("PLAY");
			playerResumeState = 1;
			setTimeout("playerPlay()", 1000);
			break;
		
		case 1: // pause after starting
			playerShowStatus("hitting PAUSE");
			player.sendEvent("PLAY","false");
			break;
		
		default:
		
	}
}


function playerAddListeners() {
	if (player) { 
		player.addModelListener("STATE", "playerStateListener");
		player.addModelListener("TIME", "playerTimeListener");
		player.addControllerListener("SEEK", "playerSeekListener");
	} else {
		setTimeout("playerAddListeners()",100);
	}
}

function playerCheckIn() {
	playerShowStatus("playerCheckIn(): position=" + playerPosition + " playerResume=" + playerResume);
	if (playerResume > 0 && playerPosition < playerResume) {
		player.sendEvent('SEEK', playerResume);
		lastPosition = playerResume;
		return;
	}
	status = "{action:" + playerAction + 
				", position:" + playerPosition + 
				", furthest:" + playerFurthest + 
				"}";
	playerShowStatus(status);
	$.ajax({url : "/program/checkin",
			data : {
				'code': playerCode,
				'action': playerAction,
				'position': playerPosition,
				'furthest': playerFurthest
			},
			timeout: 10000,
			type : 'POST',
			dataType : 'json',
			success : function(data) {
				playerShowStatus("status=" + data.status);
			},
			error: function (XMLHttpRequest, textStatus, errorThrown) {
				playerShowStatus(ERROR + "<br />" + textStatus);
			}
	});
}


function playerStateListener(obj) { //IDLE, BUFFERING, PLAYING, PAUSED, COMPLETED
	playerAction = obj.newstate;
	currentState = obj.newstate; 
	previousState = obj.oldstate; 

 	var message = "state: " + previousState + 
		" -> " +  currentState; 
	playerShowStatus(message);

	if (previousState == 'BUFFERING' && currentState == 'PLAYING' && playerResume > 0) {
		setTimeout("playerResumePlease()",1000);
	}

	if (currentState == "COMPLETED") {
		clearInterval(playerCheckInID);
		playerCheckIn();
		$("#evaluation-link").show();
		// ask them if they want to do the evaluation form in 5 seconds
// 		setTimeout("confirmEvaluation()", 5*1000);
// 		document.location = "/evaluation/" + playerCode;
	}

}

function playerResumePlease() {
	if (playerResume > 0) {
		$("#resuming-message").show();
		playerShowStatus("SEEK " + playerFurthest);
		player.sendEvent('SEEK', playerResume);
		playerShowStatus("resuming from position: " + playerResume);
	}
// 	playerResume = 0;
}

var statuses = new Array();
function playerShowStatus(msg) {
	statuses.push(msg);
	while (statuses.length > 15)
		statuses.shift();
	var messages = "";
	for (var i = 0; i < statuses.length; i++)
		messages += statuses[i] + "<br />";
	
	$stat = $("#stat");
	$stat.html(messages);
}

function playerSeekListener(obj) {
	
	playerShowStatus("SEEK TO " + obj.position + ", playerFurthest=" + playerFurthest);
	if (obj.position > playerFurthest) {
		playerReset = true;
		playerShowStatus("PLAYER RESET!");
	}

}


var lastPosition = 0;
function playerTimeListener(obj) {
	playerPosition = parseInt(obj.position, 10);
	
	if (playerResume > 0 && playerPosition >= playerResume) {
		playerResume = 0;
		lastPosition = playerPosition;
		$("#resuming-message").slideUp();
	}
	
	if (playerPosition > lastPosition+10) {
		playerShowStatus("TIME LISTENER: " + lastPosition + " now " + playerPosition + " furthest " + playerFurthest);
		lastPosition = playerPosition;
		if (playerPosition > playerFurthest + 30) {
			playerShowStatus("RESET PLAYER!");
			playerReset = true;
		}
	}
	lastPosition = playerPosition;

	if (playerReset) {
		playerShowStatus("TIME LISTENER: " + playerPosition);
		if (playerPosition <= playerFurthest + 5)
			playerReset = false;
		else {
			playerShowStatus("SEEK " + playerFurthest);
			player.sendEvent("SEEK", playerFurthest);
			playerShowStatus("TIME LISTENER SEEKING furthest: " + playerFurthest + " (" + playerPosition + ")");
		}
		return;
	}

	if (playerPosition > playerFurthest)
		playerFurthest = playerPosition;
	
}


function confirmEvaluation() {
	if (confirm("Do you want to fill out the evaluation form now?"))
		document.location = "/evaluation/" + playerCode;
}
	

/************************************************************
*								TOOLTIP					*
*************************************************************/
		function showTooltip(where) {
			n = where.substr(5);

			$tooltip = $("#tooltip");
			$where = $("#"+where);
			var pos = $where.offset();
			// alert(where + ": " + pos.left + "," + pos.top)

			var head;
			var body;
			var top = pos.top;

			// top = $where.offset().top;
			
			if (n == 0 || where == "badge") {
				head = spread_wellness.head;
				body = spread_wellness.body;
				top -= 40;
			}
			else {
				head = programList[n].head;
				body = programList[n].body;
				top -= 200;
			}


			$("#tooltip .head").html(head);
			$("#tooltip .body").html(body);

			var height = $tooltip.height();
			var width = $tooltip.width();

			var windowWidth = $("body").width();

			if (pos.left < windowWidth/2) {
				$tooltip.addClass("right")
				offset = $where.width() - 20;
			}
			else {
				$tooltip.removeClass("right")
				offset = 20-width;
			}


			$tooltip.show();
			$tooltip.css({
				"left": (pos.left + offset) + "px",
				"top": top + "px"
				});
		}
		
		function hideTooltip() {
			$("#tooltip").hide();
		}


/************************************************************
*							SIGN IN FORM					*
*************************************************************/

	function signinButtonClicked() {
		if (validateSigninForm())
			$("#form-signin").submit();
		return false;
	}
	
	function validateSigninForm() {
		email = $("#signin-email");
		password = $("#signin-password");
		validEmail = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;

		if (email.val() == "") {
			alert("Please enter the email address for your account");
			email.focus();
			email.select();
			return false;
		}
		else if (!validEmail.test(email.val())) {
			alert("You need to enter a valid email address, like jsmith@aol.com");
			email.focus();
			email.select();
			return false;
		}

		if (password.val() == "") {
			alert("Please enter the password for your account");
			password.focus();
			password.select();
			return false;
		}

		return true;
	}
	
/************************************************************
*							SIGN UP FORM					*
*************************************************************/

	function signupButtonClicked() {
		if (validateSignupForm())
			$("#form-signup").submit();
		return false;
	}
	
	function validateSignupForm() {
		$firstname = $("#signup-firstname");
		$lastname = $("#signup-lastname");
		$email = $("#signup-email");
		$email2 = $("#signup-email2");
		$password = $("#signup-password");
		$password2 = $("#signup-password2");
		$zip = $("#signup-zip");
		validEmail = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
		validZip = /^[0-9]{5}(-?[0-9]{4})?$/;
		
		if ($firstname.val() == "") {
			alert("Please enter your first name");
			$firstname.focus();
			$firstname.select();
			return false;
		}

		if ($lastname.val() == "") {
			alert("Please enter your last name");
			$lastname.focus();
			$lastname.select();
			return false;
		}

		if ($email.val() == "") {
			alert("Please enter the email address for your account");
			$email.focus();
			$email.select();
			return false;
		}
		else if (!validEmail.test($email.val())) {
			alert("You need to enter a valid email address, like jsmith@aol.com");
			$email.focus();
			$email.select();
			return false;
		}

		if ($email2.val() != $email.val()) {
			alert("Please double-check your email addresses (they are not the same)");
			$email2.focus();
			$email2.select();
			return false;
		}

		if ($password.val() == "") {
			alert("Please enter a password for your account");
			$password.focus();
			$password.select();
			return false;
		}

		if ($password2.val() != $password.val()) {
			alert("The second password does not match the first!");
			$password2.focus();
			$password2.select();
			return false;
		}

// 		if ($zip.val() == "") {
// 			alert("Please enter your zip code");
// 			$zip.focus();
// 			$zip.select();
// 			return false;
// 		}
// 		else if (!validZip.test($zip.val())) {
// 			alert("You need to enter a valid zip code, either 5 or 9 digits");
// 			$zip.focus();
// 			$zip.select();
// 			return false;
// 		}

		return true;
	}
	

/************************************************************
*							FACEBOOK FORM					*
*************************************************************/

	function facebookButtonClicked(button) {
		$("#btn").val(button);
		if (validateFacebookForm()) {
			$("#form-facebook").submit();
			return false;
		}
		return false;
	}
	
	function validateFacebookForm() {
		$firstname = $("#firstname");
		$lastname = $("#lastname");
		$email = $("#email");
		$password = $("#password");
		$password2 = $("#validate_password");
		validEmail = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
		
		if ($firstname.val() == "") {
			alert("Please enter your first name");
			$firstname.focus();
			$firstname.select();
			return false;
		}

		if ($lastname.val() == "") {
			alert("Please enter your last name");
			$lastname.focus();
			$lastname.select();
			return false;
		}

		if ($email.val() == "") {
			alert("Please enter the email address for your account");
			$email.focus();
			$email.select();
			return false;
		}
		else if (!validEmail.test($email.val())) {
			alert("You need to enter a valid email address, like jsmith@aol.com");
			$email.focus();
			$email.select();
			return false;
		}

		if ($password.val() == "") {
			alert("Please enter a password for your account");
			$password.focus();
			$password.select();
			return false;
		}

		if ($password2.val() != $password.val()) {
			alert("The second password does not match the first!");
			$password2.focus();
			$password2.select();
			return false;
		}

		return true;
	}
	

/************************************************************
*							SIGNUP FORM						*
*************************************************************/

	function signup_submit()
	{
		// validate form
		// more robust email pattern, works in JavaScript and PHP
		validEmail = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;

		var el;

		el = $('#f');
		if (el.val() == "")
			return validate_error(el, "Please enter your First Name");

		el = $('#e');
		if (el.val() == "")
			return validate_error(el, "Please enter your Email address");
		else if (!validEmail.test(el.val()))
			return validate_error(el, "Please enter a valid Email address");

		$.ajax({
			url : '/signup',
			data : {
				't': $('#t').val(),
				'e': $('#e').val(),
				'f': $('#f').val(),
				's': $('#s').val(),
				'ajax': "Y"
			},
			type : 'POST',
			dataType : 'text',
			success : function(data) {
				$("#signup").html(data);
			}
		});

		return false;
	}

	function validate_error(el, msg) {
		alert(msg);
		el.focus();
		el.select();
		return false;
	}



