var gUnits = 0;
var gValidatingSuccess = false;

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function numbersOnly(obj)
{
	var regex = /[^0-9\.]+/g;// /(\D|\.)+/g;
	var itemVal = obj.value;
	itemVal = itemVal.replace(regex, "");
	var posOfDot = itemVal.indexOf('.');
	// limit to one period
	if ( -1 != posOfDot ) {
		var nextDot = itemVal.indexOf('.', posOfDot + 1 );
		while ( nextDot != -1 ) {
			itemVal = itemVal.substr(0, nextDot) + itemVal.substr(nextDot + 1);
			nextDot = itemVal.indexOf('.', posOfDot + 1 );
		}
		
		// limit to one place after decimal
		if ( itemVal.length > (posOfDot + 2) )
			itemVal = itemVal.substr(0, posOfDot + 2);
		
	}
	if ( obj.value != itemVal )
		obj.value = itemVal;
}

function ipNumbersOnly(obj)
{
	var regex = /[^0-9\.]+/g;// /(\D|\.)+/g;
	var itemVal = obj.value;
	itemVal = itemVal.replace(regex, "");
	
	if ( obj.value != itemVal )
		obj.value = itemVal;
}

function fileExtension(fileName)
{
	// return val includes dot
	var posOfDot = fileName.lastIndexOf(".");
	if ( posOfDot == -1 )
		return "";
	return fileName.substr(posOfDot).toLowerCase();
}

function fileIsImage(fileName)
{
	var ext = fileExtension(fileName);
	if ((ext == ".jpg") || (ext == ".jpeg") || (ext == ".gif") || (ext == ".png"))
		return true;
	return false;
}



function intsOnly(obj)
{
	var regex = /[^0-9]+/g;// /(\D|\.)+/g;
	var itemVal = obj.value;
	itemVal = itemVal.replace(regex, "");
	if ( obj.value != itemVal )
		obj.value = itemVal;
}
function setSelectionOptionByValue(obj, val)
{
	//alert ("got here" + val);
	for (var i=0; i<obj.length; i++ ) {
		if ( obj.options[i].value == val ) {
			obj.options[i].selected = true;
			return;
		}
	}
}
function selectedOptionValue(selObj)
{
	return selObj.options[selObj.selectedIndex].value;
}

function selectedOptionText(selObj)
{
	return selObj.options[selObj.selectedIndex].text;
}

function setRadioByValue(obj, val)
{
	var len = obj.length;
	for (var i=0; i<len; i++ ) {
		obj[i].checked = (obj[i].value == val );
	}
}

function radioGroupValue(radioGrp)
{
	for (var i = 0; i< radioGrp.length; i++) {
    	if (radioGrp[i].checked) {
      	  return radioGrp[i].value;
    	}
	} 
	return null;
}
function isRadioGroupValueSelected(radioGrp)
{
	for (var i = 0; i< radioGrp.length; i++) {
    	if (radioGrp[i].checked) {
      	  return true;
    	}
	} 
	return false;
}

function formattedHeight(hgtIn)
{
	var inches = hgtIn % 12;
	var ft = (hgtIn - inches) / 12;
	var str = "" + ft + "'" + inches + "\"";
	return str;
}

function getCookie(name) {
   name = cookiePrefix + name;
   var result = null; 
   var myCookie = " " + document.cookie + ";";
   var searchName = " " + name + "=";
   var startOfCookie = myCookie.indexOf(searchName); 
   var endOfCookie; 
   if (startOfCookie != -1) {
      startOfCookie += searchName.length; 
      endOfCookie = myCookie.indexOf(";", startOfCookie); 
      result = unescape(myCookie.substring(startOfCookie,
      endOfCookie)); 
   }
   return result; 
}

function setCookie(name, value, lifeSpan) {
   name = cookiePrefix + name;
  // alert("setting cookie: " + name + " to " + value);
   var dat = new Date();
   dat.setTime(dat.getTime() + lifeSpan*24*60*60*1000); 
   var expString = "; expires=" + dat.toGMTString();
   var pathStr = "; path=/";
   document.cookie = name + "=" + escape(value) + expString + pathStr; 
}
function setCookiePath(name, value, lifeSpan, path) {
   name = cookiePrefix + name;
  // alert("setting cookie: " + name + " to " + value);
   var dat = new Date();
   dat.setTime(dat.getTime() + lifeSpan*24*60*60*1000); 
   var expString = "; expires=" + dat.toGMTString();
   var pathStr = "; path=" + (path ? path : "/");
   document.cookie = name + "=" + escape(value) + expString + pathStr;
}



function setUnits(units)
{
	var usDiv = MM_findObj('us');
	var us_wgt = MM_findObj('us_wgt');
	var british_wgt = MM_findObj('british_wgt');
	var metricDiv = MM_findObj('metric');
	if ( units == 0 ) {
		usDiv.style.display = 'block';
		us_wgt.style.display = 'inline';
		british_wgt.style.display = 'none';
		metricDiv.style.display = 'none';
		
	}
	else if ( units == 1 )  {
		usDiv.style.display = 'block';
		us_wgt.style.display = 'none';
		british_wgt.style.display = 'inline';
		metricDiv.style.display = 'none';
	}
	else if ( units == 2 )  {
		usDiv.style.display = 'none';
		us_wgt.style.display = 'none';
		british_wgt.style.display = 'none';
		metricDiv.style.display = 'block';
	}
	gUnits = units;
	setCookie("units", units, 1000);
}

//Get stored items
function setUp() {
	var savedVals = getCookie('boardVals');
	var vals = ( savedVals ==  null ) ? Array() : savedVals.split('|');
	
	// 'saveVals | name | age | sex | units
	
	document.message.SaveCookie.checked = ((vals.length > 0) && (0 == vals[0])) ? false : true;
	
	if ( vals.length > 4 )
		gUnits = vals[4];
	setUnits(gUnits);
	
	var measureRadioGroup = MM_findObj('measure');
	setRadioByValue( measureRadioGroup, gUnits);
		
	document.message.name.value = ( vals.length > 1 ) ? vals[1] : "";

	document.message.age.value = ( vals.length > 2 ) ? vals[2] : "";
		
	setRadioByValue(document.message.sex, (( vals.length > 3 ) ? vals[3] : ""));
	
	if ( gUnits == 0 ) {
	// 'saveVals | name | age | sex | units | USHeight | USWeight | start_weight_us | goal_weight_us
		setUSHeight( (( vals.length > 5 ) ? vals[5] : "")  );

		document.message.cur_weight_us.value = (( vals.length > 6 ) ? vals[6] : "");
		document.message.start_weight_us.value = (( vals.length > 7 ) ? vals[7] : "");
		document.message.goal_weight_us.value = (( vals.length > 8 ) ? vals[8] : "");
		
		numbersOnly(MM_findObj('feet'));
		numbersOnly(MM_findObj('inches'));
		numbersOnly(MM_findObj('start_weight_us'));
		numbersOnly(MM_findObj('goal_weight_us'));
		numbersOnly(MM_findObj('cur_weight_us'));
		
	}		
	else if ( gUnits == 1 ) {
	// 'saveVals | name | age | sex | units | USHeight | USWeight | start_weight_brit_lb  | start_weight_brit_stone | goal_weight_brit_lb | goal_weight_brit_stone		
		setUSHeight( (( vals.length > 5 ) ? vals[5] : "")  );

		setBritishWeight( (( vals.length > 6 ) ? vals[6] : "") );
		document.message.start_weight_brit_lb.value = (( vals.length > 7 ) ? vals[7] : "");
		document.message.start_weight_brit_stone.value = (( vals.length > 8 ) ? vals[8] : "");
		document.message.goal_weight_brit_lb.value = (( vals.length > 9 ) ? vals[9] : "");
		document.message.goal_weight_brit_stone.value = (( vals.length > 10 ) ? vals[10] : "");
	
		numbersOnly(MM_findObj('feet'));
		numbersOnly(MM_findObj('inches'));
		numbersOnly(MM_findObj('start_weight_brit_stone'));
		numbersOnly(MM_findObj('start_weight_brit_lb'));
		numbersOnly(MM_findObj('goal_weight_brit_stone'));
		numbersOnly(MM_findObj('goal_weight_brit_lb'));
		numbersOnly(MM_findObj('cur_weight_brit_stone'));
		numbersOnly(MM_findObj('cur_weight_brit_lb'));
	}
	else {
	// 'saveVals | name | age | sex | units | MetricHeight | MetricWeight | start_weight_metric | goal_weight_metric
		document.message.height_cm.value = (( vals.length > 5 ) ? vals[5] : "");		
		document.message.cur_weight_metric.value = (( vals.length > 6 ) ? vals[6] : "");
		document.message.start_weight_metric.value = (( vals.length > 7 ) ? vals[7] : "");
		document.message.goal_weight_metric.value = (( vals.length > 8 ) ? vals[8] : "");
		
		numbersOnly(MM_findObj('height_cm'));
		numbersOnly(MM_findObj('start_weight_metric'));
		numbersOnly(MM_findObj('goal_weight_metric'));
		numbersOnly(MM_findObj('cur_weight_metric'));
	}
}

function checkClientTime(serverGMTTime)
{
	
}

function getUSHeight()
{
	if ( gUnits == 2 ) 
		return;
	
	var hgtIn = 0;

	if(document.message.feet.value != "") 
		hgtIn += (parseInt(document.message.feet.value) * 12);
	if(document.message.inches.value != "") 
		hgtIn += parseFloat(document.message.inches.value);
	return hgtIn;
}

function getUSStartingHeight()
{
	if ( gUnits == 2 ) 
		return;
	
	var hgtIn = 0;

	if(document.message.starting_feet.value != "") 
		hgtIn += (parseInt(document.message.starting_feet.value) * 12);
	if(document.message.starting_inches.value != "") 
		hgtIn += parseFloat(document.message.starting_inches.value);
	return hgtIn;
}

function setUSHeight(hgtIn)
{
	if ( gUnits == 2 ) 
		return;	
	
	var val = "";
	if ( hgtIn == 0 )
		hgtIn = "";
	else {
		var leftOver;
		if ( hgtIn >= 12 ) {
			leftOver = hgtIn % 12;
			val = (hgtIn - leftOver) / 12;
			hgtIn = leftOver.toFixed(1);
		}
	}
	
	document.message.feet.value = val;
	document.message.inches.value = hgtIn;
}



function getBritishWeight()
{
	if (  gUnits != 1 ) 
		return 0;
	
	var wgt = 0;
	
	if(document.message.cur_weight_brit_stone.value != "") 
		wgt += (parseInt(document.message.cur_weight_brit_stone.value) * 14);
	if(document.message.cur_weight_brit_lb.value != "") 
		wgt += parseFloat(document.message.cur_weight_brit_lb.value);
	return wgt;	
}

function setBritishWeight( wgt )
{
	if ( gUnits != 1 ) 
		return;
//	alert("brit wgt in lbs: " + wgt);
	var stones = "";
	var val = "";
	if ( wgt > 0 ) {
		var leftOver;
		if ( wgt >= 14 ) {
			leftOver = wgt % 14;
//	alert("leftOver wgt in lbs: " + leftOver);
			stones = ( wgt - leftOver ) / 14;
			
			wgt = wgt - (stones * 14);
			wgt = wgt.toFixed(1);
		}
	
		val = wgt;
	}
	document.message.cur_weight_brit_stone.value = stones;
	document.message.cur_weight_brit_lb.value = val;
}
/*
function setMetricHeight(hgtCm)
{
	if (  gUnits != 2 ) 
		return;	
	
	var val = "e";
	var val10 = "e";
	var val100 = "e";
	
	if ( hgtCm > 0 ) {
		var leftOver;
		if ( hgtCm >= 100 ) {
			leftOver = hgtCm % 100;
			val100 = (hgtCm - leftOver) / 100;
			hgtCm = leftOver;
		}
		
		if ( hgtCm >= 10 ) {
			leftOver = hgtCm % 10;
			val10 = ( hgtCm - leftOver ) / 10;
			hgtCm = leftOver;
		}
		else
			val10 = 0;
			
		val = hgtCm;
	}
	setSelectionOptionByValue(document.message.hundreds_cm, val100);
	setSelectionOptionByValue(document.message.tens_cm, val10);
	setSelectionOptionByValue(document.message.ones_cm, val);

}

function getMetricHeight()
{
	if (  gUnits != 2 ) 
		return;
	
	var hgtCm = 0;

	if(document.message.hundreds_cm.value != "e") 
		hgtCm += (parseInt(document.message.hundreds_cm.value) * 100);
	if(document.message.tens_cm.value != "e") 
		hgtCm += (parseInt(document.message.tens_cm.value) * 10);
	if(document.message.ones_cm.value != "e") 
		hgtCm += parseInt(document.message.ones_cm.value);
	return hgtCm;
}

function getUSWeight()
{
	if (  gUnits != 0 ) 
		return 0;
	
	var wgt = 0;
	if(document.message.hundreds_lb.value != "e") 
		wgt += (parseInt(document.message.hundreds_lb.value) * 100);
	if(document.message.tens_lb.value != "e") 
		wgt += (parseInt(document.message.tens_lb.value) * 10);
	if(document.message.ones_lb.value != "e") 
		wgt += parseInt(document.message.ones_lb.value);
	
	return wgt;	
}
function getMetricWeight()
{
	if (  gUnits != 2 ) 
		return 0;
	
	var wgt = 0;

	if(document.message.cur_weight_metric.value != "") 
		wgt = parseFloat(document.message.hundreds_kg.value);
	return wgt;	
}
function setUSWeight( wgt )
{
	if ( gUnits != 0 ) 
		return;
	
	var val = "e";
	var val10 = "e";
	var val100 = "e";
	
	if ( wgt > 0 ) {
		var leftOver;
		if ( wgt >= 100 ) {
			leftOver = wgt % 100;
			val100 = (wgt - leftOver) / 100;
			wgt = leftOver;
		}
		
		if ( wgt >= 10 ) {
			leftOver = wgt % 10;
			val10 = ( wgt - leftOver ) / 10;
			wgt = leftOver;
		}
		else
			val10 = 0;
			
		val = wgt;
	}
	setSelectionOptionByValue(document.message.hundreds_lb, val100);
	setSelectionOptionByValue(document.message.tens_lb, val10);
	setSelectionOptionByValue(document.message.ones_lb, val);
}

function setMetricWeight( wgt )
{
	if ( gUnits != 2 ) 
		return;
	
	var val = "e";
	var val10 = "e";
	var val100 = "e";
	
	if ( wgt > 0 ) {
		var leftOver;
		if ( wgt >= 100 ) {
			leftOver = wgt % 100;
			val100 = (wgt - leftOver) / 100;
			wgt = leftOver;
		}
		
		if ( wgt >= 10 ) {
			
			leftOver = wgt % 10;
			val10 = ( wgt - leftOver ) / 10;
			wgt = leftOver;
		}
		else
			val10 = 0;
			
		val = wgt;
	}
	setSelectionOptionByValue(document.message.hundreds_kg, val100);
	setSelectionOptionByValue(document.message.tens_kg, val10);
	setSelectionOptionByValue(document.message.ones_kg, val);
}
*/
function getClientDate()
{
	var dat = new Date();
	var month = dat.getMonth() + 1;
	var year = dat.getYear();
	year = year + "";  // Convert to string.
	year = year.substring(year.length - 2, year.length)
	return "20" + year + '-' + month + '-' + dat.getDate(); 
}

function focusObj(objName)
{
	var obj = MM_findObj(objName);
	if ( obj )
		obj.focus();
}

function Validate() {
	
	intsOnly(MM_findObj('age'));
	
	if(document.message.name.value == "") {
		window.alert("Please fill in your first name. Thanks.");
		focusObj('name');
		return false;
	}
	
	var sex = radioGroupValue(document.message.sex);
	if ( ! ((sex == "m") || (sex == "f")) ) {
		window.alert("Please select your sex. Thanks.");
		return false;
	}
	
	if ( true == gValidatingSuccess ) {
		if(document.message.starting_age.value == "") {
			window.alert("Please fill in your starting age. Thanks.");
			focusObj('starting_age');
			return false;
		}
		var age = parseInt(document.message.starting_age.value);
		if ( age < 5 ) {
			window.alert("Please correct your starting age. Thanks.");
			focusObj('starting_age');
			return false;
		}
	}


	if(document.message.age.value == "") {
		window.alert("Please fill in your age. Thanks.");
		focusObj('age');
		return false;
	}
	var age = parseInt(document.message.age.value);
	if ( age < 5 ) {
		window.alert("Please correct your age. Thanks.");
		focusObj('age');
		return false;
	}
	
	if ( gUnits == 2 ) {
		if ( true == gValidatingSuccess )
			numbersOnly(MM_findObj('starting_height_cm'));
		
		numbersOnly(MM_findObj('height_cm'));
		
		
		if ( true == gValidatingSuccess ) {
			var startingMHgt = document.message.starting_height_cm.value;
			if ( ( startingMHgt < 61 ) || ( startingMHgt > 213 ) ) {
				window.alert("Please correct your starting height. Thanks.");
				focusObj('starting_height_cm');
				return false;
			}
			document.message.starting_height_in.value =  Math.round(startingMHgt / 2.54);

		}

		var mHgt = document.message.height_cm.value;
		if ( ( mHgt < 61 ) || ( mHgt > 213 ) ) {
			window.alert("Please correct your height. Thanks.");
			focusObj('height_cm');
			return false;
		}
		document.message.height_in.value = Math.round(mHgt / 2.54);
		
		
		
		numbersOnly(MM_findObj('start_weight_metric'));
		if ( false == gValidatingSuccess )
			numbersOnly(MM_findObj('goal_weight_metric'));
		numbersOnly(MM_findObj('cur_weight_metric'));
		
		var startWgt = document.message.start_weight_metric.value || "";
		if ( startWgt == "") {
			window.alert("Please fill in your starting weight. Thanks.");
			focusObj('start_weight_metric');
			return false;
		}
		if ((startWgt < 13) || (startWgt > 317)) {
			window.alert("Please correct your starting weight. Thanks.");
			focusObj('start_weight_metric');
			return false;
		}
		document.message.start_weight_lb.value = startWgt * 2.2;
		
		
		var mWgt = document.message.cur_weight_metric.value || "";
		if ( mWgt == "") {
			window.alert("Please fill in your current weight. Thanks.");
			focusObj('cur_weight_metric');
			return false;
		}
		if (( mWgt < 13 ) || ( mWgt > 317 )) {
			window.alert("Please correct your current weight. Thanks.");
			focusObj('cur_weight_metric');
			return false;
		}
		document.message.weight_lb.value = Math.round(mWgt * 2.2);
		
		
		
		if ( false == gValidatingSuccess ) {
			var goalWgt = document.message.goal_weight_metric.value || "";
			if ( goalWgt == "") {
				window.alert("Please fill in your goal weight. Thanks.");
				focusObj('goal_weight_metric');
				return false;
			}
			if ((goalWgt < 13) || (goalWgt > 317)) {
				window.alert("Please correct your goal weight. Thanks.");
				focusObj('goal_weight_metric');
				return false;
			}
		}
		
		
		
	}
	else {
		numbersOnly(MM_findObj('feet'));
		numbersOnly(MM_findObj('inches'));
		
		if ( true == gValidatingSuccess ) {
			numbersOnly(MM_findObj('starting_feet'));
			numbersOnly(MM_findObj('starting_inches'));
			
			if(document.message.starting_feet.value == "") {
				window.alert("Please fill in your starting height (feet). Thanks.");
				focusObj('starting_feet');
				return false;
			}
			if(document.message.starting_inches.value == "") {
				window.alert("Please fill in your starting height (inches). Thanks.");
				focusObj('starting_inches');
				return false;
			}
		}
		
		if(document.message.feet.value == "") {
			window.alert("Please fill in your height (feet). Thanks.");
			focusObj('feet');
			return false;
		}
		if(document.message.inches.value == "") {
			window.alert("Please fill in your height (inches). Thanks.");
			focusObj('inches');
			return false;
		}
		
		if ( gUnits == 0 ) {
			numbersOnly(MM_findObj('start_weight_us'));
			if ( false == gValidatingSuccess )
				numbersOnly(MM_findObj('goal_weight_us'));
			numbersOnly(MM_findObj('cur_weight_us'));
			
			var startWgt = document.message.start_weight_us.value || "";
			if ( startWgt == "") {
				window.alert("Please fill in your starting weight. Thanks.");
				focusObj('start_weight_us');
				return false;
			}
			if ((startWgt < 30) || (startWgt > 700)) {
				window.alert("Please correct your starting weight. Thanks.");
				focusObj('start_weight_us');
				return false;
			}
			document.message.start_weight_lb.value = startWgt;

			var usWgt = document.message.cur_weight_us.value || "";
			if(usWgt == "") {
				window.alert("Please fill in your current weight. Thanks.");
				focusObj('cur_weight_us');
				return false;
			}
			if (( usWgt < 30 ) || ( usWgt > 700 ) ) {
				window.alert("Please correct your current weight. Thanks.");
				focusObj('cur_weight_us');
				return false;
			}
			document.message.weight_lb.value = usWgt;
			
			
			if ( false == gValidatingSuccess ) {
				var goalWgt = document.message.goal_weight_us.value || "";
				if ( goalWgt == "") {
					window.alert("Please fill in your goal weight. Thanks.");
					focusObj('goal_weight_us');
					return false;
				}
				if ((goalWgt < 30) || (goalWgt > 700)) {
					window.alert("Please correct your goal weight. Thanks.");
					focusObj('goal_weight_us');
					return false;
				}
			}
			
			
		}
		else {
		// british weight
			numbersOnly(MM_findObj('start_weight_brit_stone'));
			numbersOnly(MM_findObj('start_weight_brit_lb'));
			if ( false == gValidatingSuccess ) {
				numbersOnly(MM_findObj('goal_weight_brit_stone'));
				numbersOnly(MM_findObj('goal_weight_brit_lb'));
			}
			numbersOnly(MM_findObj('cur_weight_brit_stone'));
			numbersOnly(MM_findObj('cur_weight_brit_lb'));
						
			var startStone = document.message.start_weight_brit_stone.value || "";
			var startLb = document.message.start_weight_brit_lb.value || "";
			if ((startStone == "") && (startLb == "")) {
				window.alert("Please fill in your starting weight. Thanks.");
				focusObj('start_weight_brit_stone');
				return false;
			}
			if (startStone == "")
				startStone = 0;
			if (startLb == "")
				startLb = 0;
				
			var lbs = parseInt(startStone) * 14;
			lbs += parseFloat(startLb);
			if ((lbs < 30) || (lbs > 700)) {
				window.alert("Please correct your starting weight. Thanks.");
				focusObj('start_weight_brit_stone');
				return false;
			}
			document.message.start_weight_lb.value = lbs;



			var curStone = document.message.cur_weight_brit_stone.value || "";
			var curBritLb = document.message.cur_weight_brit_lb.value || "";
			if ((curStone == "") && (curBritLb == "")) {
				window.alert("Please fill in your current weight. Thanks.");
				focusObj('cur_weight_brit_stone');
				return false;
			}

			var britWgt = getBritishWeight();
			
			if (( britWgt < 30 ) || ( britWgt > 700 ) ) {
				window.alert("Please correct your current weight. Thanks.");
				focusObj('cur_weight_brit_stone');
				return false;
			}
			
			document.message.weight_lb.value = britWgt;
			
			
			if ( false == gValidatingSuccess ) {
				var goalStone = document.message.goal_weight_brit_stone.value || "";
				var goalLb = document.message.goal_weight_brit_lb.value || "";
				if ((goalStone == "") && (goalLb == "")) {
					window.alert("Please fill in your goal weight. Thanks.");
					focusObj('goal_weight_brit_stone');
					return false;
				}
				
				if (goalStone == "")
					goalStone = 0;
				if (goalLb == "")
					goalLb = 0;
					
				lbs = parseInt(goalStone) * 14;
				lbs += parseFloat(goalLb);
				if ((lbs < 30) || (lbs > 700)) {
					window.alert("Please correct your goal weight. Thanks.");
					focusObj('goal_weight_brit_stone');
					return false;
				}
			}
		}
		var usHgt = getUSHeight();
		if (( usHgt < 24 ) || ( usHgt > 84 ) ) {
			window.alert("Please correct your height. Thanks.");
			focusObj('feet');
			return false;
		}
		document.message.height_in.value = usHgt;
		
		if ( true == gValidatingSuccess ) {
	
			var usStartHgt = getUSStartingHeight();
			if (( usStartHgt < 24 ) || ( usStartHgt > 84 ) ) {
				window.alert("Please correct your starting height. Thanks.");
				focusObj('starting_feet');
				return false;
			}
			document.message.starting_height_in.value = usStartHgt;
		}
	}
	
	if ( false == gValidatingSuccess ) {
		var what = checkAge();
		if(what == false)
			return false;
	}
	
	var story = document.message.story.value;
	if ( story.length < 2 ) {
		window.alert("Please type your story or thoughts. Thanks.");
		focusObj('story');
		return false;
	}
	
	document.message.client_date.value = getClientDate(); 
	
	
	if ( false == gValidatingSuccess )
		storeItems();
	return true;
 }
 
//Store name, age, height, and weight
function storeItems() {
	var storeTime = 720;	// about two years
	var expireTime = -100;
	if(document.message.SaveCookie.checked == true) {
		var sexRadioGroup = MM_findObj('sex');
		var sex = ( sexRadioGroup ) ? radioGroupValue( sexRadioGroup) : "m";

		var cookieVal = '1|' + document.message.name.value + '|' + document.message.age.value + '|' + sex + '|' + gUnits;
		if ( gUnits == 0 ) {
			cookieVal += '|' + getUSHeight();
			cookieVal += '|' + document.message.cur_weight_us.value;
			cookieVal += '|' + document.message.start_weight_us.value;
			cookieVal += '|' + document.message.goal_weight_us.value;
		}
		else if ( gUnits == 1 ) {
			cookieVal += '|' + getUSHeight();
			cookieVal += '|' + getBritishWeight();
			cookieVal += '|' + document.message.start_weight_brit_lb.value;
			cookieVal += '|' + document.message.start_weight_brit_stone.value;
			cookieVal += '|' + document.message.goal_weight_brit_lb.value;
			cookieVal += '|' + document.message.goal_weight_brit_stone.value;
		}
		else {
			cookieVal += '|' + document.message.height_cm.value;
			cookieVal += '|' + document.message.cur_weight_metric.value;
			cookieVal += '|' + document.message.start_weight_metric.value;
			cookieVal += '|' + document.message.goal_weight_metric.value;
		}
		
		setCookiePath('boardVals', cookieVal, storeTime,'/board');
	} 
	else
		setCookiePath('boardVals', "0", storeTime,'/board');
	
	/*
	setCookiePath('height_cm', "", expireTime,'/board');
	setCookiePath('weight_kg', "", expireTime,'/board');
	setCookiePath('height_in', "", expireTime,'/board');
	setCookiePath('weight_lb', "", expireTime,'/board');
	setCookiePath('goal_weight_lb', "", expireTime,'/board');
	setCookiePath('start_weight_lb', "", expireTime,'/board');
	setCookiePath('start_weight_brit_lb', "", expireTime,'/board');
	setCookiePath('start_weight_brit_stone', "", expireTime,'/board');
	setCookiePath('goal_weight_brit_lb', "", expireTime,'/board');
	setCookiePath('goal_weight_brit_stone', "", expireTime,'/board');
	setCookiePath('start_weight_kg', "", expireTime,'/board');
	setCookiePath('goal_weight_kg', "", expireTime,'/board');
	*/
}

function showFull(pk, show)
{
	abbrObj = MM_findObj('msgAbbr' + pk, document);
	fullObj = MM_findObj('msgFull' + pk, document);
	if ( abbrObj && fullObj ) {
		if ( show ) {
			abbrObj.style.display = 'none';
			fullObj.style.display = '';
		}
		else {
			abbrObj.style.display = '';//block
			fullObj.style.display = 'none';
		}
	}
}

function validateSearch(form) 
{
	if ( form.srch.value == "" ) {
		alert("Please enter something to search for.");
		return false;
	}
	return true;
}

