// ---------------
// inline redirect
// ---------------
function goThere(target){
    window.location = target;
}

// -----------------------
// validate profile editor
// -----------------------
function validate_editProfile() {
	
	if (document.editProfile.firstname.value == "") {
	alert ("Please enter your first name.")
	document.editProfile.firstname.focus();
	return false;
	}

	if (document.editProfile.lastname.value == "") {
	alert ("Please enter your last name.")
	document.editProfile.lastname.focus();
	return false;
	}

	var username = document.forms[ "editProfile" ].emailaddress.value;
	var at = username.indexOf( "@" );
	var dot = username.indexOf( "." );
	if( at == -1 ||
		dot == -1 ||
		( username.length < 5 ) ) {
		alert( "Please enter a valid e-mail address (ie: yourname@aol.com)" );
		document.editProfile.emailaddress.focus();
		return false;
	}	
	
	if (document.editProfile.password.value != document.editProfile.re_password.value) {
	alert ("The passwords you entered do not match.")
	document.editProfile.re_password.focus();
	return false;
	}

	if (document.editProfile.screenname.value == "") {
	alert ("Please enter a screen name.")
	document.editProfile.screenname.focus();
	return false;
	}
	
	return true;
}

// -------------------------
// validate new registration
// -------------------------
function validate_newRegistration() {
	
	if (document.register.firstname.value == "") {
	alert ("Please enter your first name.")
	document.register.firstname.focus();
	return false;
	}

	if (document.register.lastname.value == "") {
	alert ("Please enter your last name.")
	document.register.lastname.focus();
	return false;
	}
	
	var username = document.forms[ "register" ].emailaddress.value;
	var at = username.indexOf( "@" );
	var dot = username.indexOf( "." );
	if( at == -1 ||
		dot == -1 ||
		( username.length < 5 ) ) {
		alert( "Please enter a valid e-mail address (ie: yourname@aol.com)" );
		document.register.emailaddress.focus();
		return false;
	}
	
	if (document.register.password.value == "") {
	alert ("Please create a password.")
	document.register.password.focus();
	return false;
	}
	
	if (document.register.password.value != document.register.re_password.value) {
	alert ("The passwords you entered do not match.")
	document.register.re_password.focus();
	return false;
	}
	
	if (document.register.screenname.value == "") {
	alert ("Please enter a screen name.")
	document.register.screenname.focus();
	return false;
	}
	
	if (document.register.vice.value == "") {
	alert ("Please select your vice.")
	document.register.vice.focus();
	return false;
	}
	
	// cigarettes
	if (document.register.vice.value == 1) {
	
		if (document.register.usage_average_packs.value == "") {
		alert ("How many packs a day do you smoke?")
		document.register.usage_average_packs.focus();
		return false;
		}
	
	}
	
	// pipes & cigars
	if (document.register.vice.value > 1) {
	
		if (document.register.usage_average_count.value == "") {
		alert ("How many cigars or pipes do you smoke each day?")
		document.register.usage_average_count.focus();
		return false;
		}
	
	}
	
	// user entered a mobile #
	if (document.register.mobile_number.value != '') {
		
		// verify mobile phone format
		var myNum = document.register.mobile_number.value;
		var newNum ="";
		var index = 0;
		while (index != myNum.length) {
			if (isNaN(parseInt(myNum.charAt(index)))) {
			
			} else { 
				newNum = newNum + myNum.charAt(index); 
			}
	        index = index + 1;
		}
		if (newNum.length == 10) {
	        newNum = "(" + newNum.substring(0,3) + ") " + newNum.substring(3,6) + "-" + newNum.substring(6,10);
			document.register.mobile_number.value = newNum;
		} else {
			newNum = myNum;
			alert("Mobile phone number must be entered in the following format: (888) 555-1212");
			document.register.mobile_number.focus();
			return false;
		}
	
		// carrier selection
		if (document.register.mobile_provider.value == '') {
		alert ("Please select your mobile provider.")
		document.register.mobile_provider.focus();
		return false;
		}
	
	}
	
	return true;
}

// ------------------
// toggle average use
// ------------------
function averageUse() {

	var x = document.getElementById("usage_cigarettes");
	var y = document.getElementById("usage_other");
	
	// register
	if (document.register.vice.value > 1) {
		x.style.display = 'none';
		y.style.display = 'block';
	} else {
		x.style.display = 'block';
		y.style.display = 'none';
	}
	
	document.register.usage_average.value = '';
	
	return true;
}

// -------------------------
// toggle quit date selecter
// -------------------------
function notReady() {

	var x = document.getElementById("imReady");
	var y = document.getElementById("imNotReady");
	var z = document.register.quit_ready;
	
	// register
	if (x.style.display == 'block') {
		x.style.display = 'none';
		y.style.display = 'block';
		z.value = 0;
	} else {
		x.style.display = 'block';
		y.style.display = 'none';
		z.value = 1;
	}

}

  
// ----------------------
// validate mobile editor
// ----------------------
function validate_editMobile() {

	if (document.editMobile.mobile_number.value != '') {
		var myNum = document.editMobile.mobile_number.value;
		var newNum ="";
		var index = 0;
		while (index != myNum.length) {
			if (isNaN(parseInt(myNum.charAt(index)))) {
			
			} else { 
				newNum = newNum + myNum.charAt(index); 
			}
	        index = index + 1;
		}
		if (newNum.length == 10) {
	        newNum = "(" + newNum.substring(0,3) + ") " + newNum.substring(3,6) + "-" + newNum.substring(6,10);
			document.editMobile.mobile_number.value = newNum;
		} else {
			newNum = myNum;
			alert("Mobile phone number must be entered in the following format: (888) 555-1212");
			document.editMobile.mobile_number.focus();
			return false;
		}
	}
	
	
	if (document.editMobile.mobile_number.value != "" && document.editMobile.mobile_provider.value == '') {
	alert ("Please select your mobile provider.")
	document.editMobile.mobile_provider.focus();
	return false;
	}

	return true;

}

// -----------------------------
// validate adding a new message
// -----------------------------
function validate_newMessage() {

	if (document.newMessage.message_content.value == "") {
	alert ("Please enter a message.")
	document.newMessage.message_content.focus();
	return false;
	}
	
	if (document.newMessage.send_frequency.value == 0) {
	alert ("Please select a frequency.")
	document.newMessage.send_frequency.focus();
	return false;
	}
	
	// send once
	// ---------
	if (document.newMessage.send_frequency.value == 1) {
		
		// year
		if (document.newMessage.send_year.value == "") {
			alert ("Please select a delivery date from the calendar");
			return false;
		}
		// month
		if (document.newMessage.send_month.value == "" || document.newMessage.send_month.value == "--") {
			alert ("Please select a delivery date from the calendar")
			return false;
		}
		// day
		if (document.newMessage.send_day.value == "" || document.newMessage.send_day.value == "--") {
			alert ("Please select a delivery date from the calendar")
			return false;
		}
		
		// hour
		if (document.newMessage.send_hour.value == "" || document.newMessage.send_hour.value == "--") {
			alert ("Please select a delivery time")
			document.newMessage.sel_hour.focus();
			return false;
		}
		
		// min
		if (document.newMessage.send_min.value == "" || document.newMessage.send_min.value == "--") {
			alert ("Please select a delivery time")
			document.newMessage.sel_min.focus();
			return false;
		}
		
		// ampm
		if (document.newMessage.send_ampm.value == "" || document.newMessage.send_ampm.value == "--") {
			alert ("Please select a delivery time")
			document.newMessage.sel_ampm.focus();
			return false;
		}
		
		
	// send weekly
	// -----------
	} else if (document.newMessage.send_frequency.value == 2) {
	
		// daynum
		if (document.newMessage.send_daynum.value == "" || document.newMessage.send_daynum.value == "--") {
			alert ("Please select a day of the week")
			document.newMessage.send_daynum.focus();
			return false;
		}
		
		// hour
		if (document.newMessage.send_hour.value == "" || document.newMessage.send_hour.value == "--") {
			alert ("Please select a delivery time")
			document.newMessage.sel_hour.focus();
			return false;
		}
		
		// min
		if (document.newMessage.send_min.value == "" || document.newMessage.send_min.value == "--") {
			alert ("Please select a delivery time")
			document.newMessage.sel_min.focus();
			return false;
		}
		
		// ampm
		if (document.newMessage.send_ampm.value == "" || document.newMessage.send_ampm.value == "--") {
			alert ("Please select a delivery time")
			document.newMessage.sel_ampm.focus();
			return false;
		}
	
	// send daily
	// ----------
	} else if (document.newMessage.send_frequency.value == 3) {
	
		// hour
		if (document.newMessage.send_hour.value == "" || document.newMessage.send_hour.value == "--") {
			alert ("Please select a delivery time")
			document.newMessage.sel_hour.focus();
			return false;
		}
		
		// min
		if (document.newMessage.send_min.value == "" || document.newMessage.send_min.value == "--") {
			alert ("Please select a delivery time")
			document.newMessage.sel_min.focus();
			return false;
		}
		
		// ampm
		if (document.newMessage.send_ampm.value == "" || document.newMessage.send_ampm.value == "--") {
			alert ("Please select a delivery time")
			document.newMessage.sel_ampm.focus();
			return false;
		}
	
	}

	return true;

}

// ----------------------------------
// delete a photo from message editor
// ----------------------------------
function deletePhoto() {

	var send_thumb	= document.getElementById('imageThumbnail');
	var actionLabel = document.getElementById('imageActionLabel');
	var actionField = document.editMessage.deletePhoto;
	
	send_thumb.innerHTML = '';
	actionLabel.innerHTML = 'Photo (optional):';
	actionField.value = 1;

}

// -------------------------
// validate send to a friend
// -------------------------
function validate_sendToFriend() {
	
	if (document.sendToFriend.sender_name.value == "") {
	alert ("Please enter your name.")
	document.sendToFriend.sender_name.focus();
	return false;
	}
	
	var username = document.forms[ "sendToFriend" ].sender_email.value;
	var at = username.indexOf( "@" );
	var dot = username.indexOf( "." );
	if( at == -1 ||
		dot == -1 ||
		( username.length < 5 ) ) {
		alert( "Please enter a valid e-mail address for sender (ie: yourname@aol.com)" );
		document.sendToFriend.sender_email.focus();
		return false;
	}
	
	if (document.sendToFriend.recipient_name.value == "") {
	alert ("Please enter your friend's name.")
	document.sendToFriend.recipient_name.focus();
	return false;
	}
	
	var username = document.forms[ "sendToFriend" ].recipient_email.value;
	var at = username.indexOf( "@" );
	var dot = username.indexOf( "." );
	if( at == -1 ||
		dot == -1 ||
		( username.length < 5 ) ) {
		alert( "Please enter a valid e-mail recipient address (ie: yourname@aol.com)" );
		document.sendToFriend.recipient_email.focus();
		return false;
	}
	
	return true;
}


// --------------------------
// validate inviting a friend
// --------------------------
function validate_inviteFriend() {
	
	if (document.inviteFriend.fullname.value == "") {
	alert ("Please enter your friend's name.")
	document.inviteFriend.fullname.focus();
	return false;
	}
	
	var username = document.forms[ "inviteFriend" ].emailaddress.value;
	var at = username.indexOf( "@" );
	var dot = username.indexOf( "." );
	if( at == -1 ||
		dot == -1 ||
		( username.length < 5 ) ) {
		alert( "Please enter a valid e-mail address for your friend (ie: yourname@aol.com)" );
		document.inviteFriend.emailaddress.focus();
		return false;
	}
	
	return true;
}


// ------------------------
// limit message text entry
// ------------------------
function limitCharacters(field,limit) {
	var cnt;
	if(field.value.length > limit) {
		field.value = field.value.substring(0, limit);
	} else {
		cnt = limit - field.value.length;
		updateRemaining(cnt);
	}
}
function updateRemaining(val) {
	var newtitle = val;
	var remainingCharacters = document.getElementById("remainingCharacters");
	remainingCharacters.firstChild.nodeValue=newtitle;
}

// -----------------
// hilight readiness
// -----------------
function doReadiness(target,list) {

	for (ii=1; ii<=10; ii++) {
		document.getElementById('li'+ii+list).className = 'li'+ii;
	}
		
	document.getElementById(target).className = document.getElementById(target).className+' active';

}


function f1toggle(tar,val) {

	switch (tar) {
		case 1:
		case 2:
		case 4:	
			document.getElementById('fb'+tar+'other').style.display = 'none';
			if (val == 'other') {
				document.getElementById('fb'+tar+'other').style.display = 'block';
			}
		break;
	}
	

}