/* Food and Fitness Planner JavaScript (Uses JQuery) - ail 11/08 */
var resPage = 50; // Number of results to display per pane
var landing = "food-fitness-planner"; // Name for Landing page
var calculator = "food-fitness-planner-calculator"; // Name for Calculator page
var nutrition = "food-fitness-nutritional-label"; // Name for Nutrition Label page
var earn = "healthtool-food-calorie-counter"; // Name for Nutrition Label page
var burn = "healthtool-fitness-calorie-counter"; // Name for Nutrition Label page
var xmlLoc = "http://www.webmd.com/api/xml/";
var fadeInSpd = 250; // Speed for fade-in of overlays in miliseconds
var showSpd = 250; // Speed for fade-in of search results in miliseconds
var fadeOutSpd = 250; // Speed for fade-in of overlays in miliseconds
var maxCat = 9; // Max number of categories brought back in search
var more;
var formfemale;

/*=========================================================================================================*/
/*/////////////////////////////////////- DO NOT EDIT BELOW THIS LINE -/////////////////////////////////////*/
/*=========================================================================================================*/

/*==================== Onload Functions ========================*/
$(document).ready(function() {
	var curl = window.location.href;
	if(curl.indexOf("print") != -1 && curl.indexOf(calculator) != -1) {
		$("head").append('<link rel="stylesheet" type="text/css" href="http://img.webmd.com/dtmcms/live/webmd/consumer_assets/site_images/tools/food_fit/dc-eb-pf.css" />');
		$("#eb_results_fmt h3").html("My Results <span>" + wmd_today + "</span>");
		$("#eb_results_fmt ul li:odd:last, #eb_results_fmt ul li:even:last").remove();
		$("#target_fmt").appendTo("#eb_results_fmt ul");
		$(".log_item_fmt .title_fmt").prepend("<span class='box'></span>");
		$("#eb_content_fmt").append("<p class='disclaimer_fmt'>You should always speak with your doctor or other qualified healthcare provider before you start or change any weight management or physical activity plan. This tool is intended for informational purposes only and does not provide medical advice and is not a substitute for professional medical advice from a qualified healthcare provider. Never stop or delay seeking treatment because of something you have read on the WebMD site. If you think you may have a medical emergency, call your doctor or 911 immediately.</p>");
	}
	if(curl.indexOf(calculator) != -1) {
		initialize();
		fillInfo(curl);
		rowHover();
		rowColor();
		writeLog();
		
		/* user for omniture user segment and assign prop 40 to segment */
		var p40 = '';
		if(user) {
			if(user.gender) { p40 += user.gender + '-'; }
			if(user.actlevel) {	
				switch(user.actlevel){
					case 1.2: p40 += 'sd-'; break;
					case 1.375: p40 += 'la-'; break;
					case 1.55: p40 += 'ma-'; break;
					case 1.725: p40 += 'va-'; break;
					case 1.9: p40 += 'ea-'; break;
				}
			};
			if(user.wg) { p40 += user.wg + '-'; };
			if(user.bmi) { 
				if (user.bmi < 18.5) { p40 += 'uw' }
				if ((user.bmi >= 18.5) && (user.bmi < 24.9)) { p40 += 'nw' }
				if ((user.bmi >= 25.0) && (user.bmi < 29.9)) { p40 += 'ow'; }
				if (user.bmi > 30) { p40 += 'ob'; }
			}
		}
		s_md.prop40=p40;
	}
	else if(curl.indexOf(nutrition) != -1) {
		loadLabel();
	}
	else if(curl.indexOf(earn) != -1 || curl.indexOf(burn) != -1) {
		initialize();
		resPage = 20; // Number of results to display per pane
		getQuery(curl);
		rowHover();
		rowColor();
	}
	else {
		fillForm();
		if(curl.indexOf(landing) != -1) { document.forms["prsinfo"].action = calculator; }
	}
	formFunctions();
});
/* Row BG Color */
function rowColor() {
	/* Initial Colors*/
	$(".log_row_fmt:odd, .activity_results_fmt li:odd, .food_results_list_fmt li:odd").css({ backgroundColor:"#f4f7fb"});
	$(".log_row_fmt:even, .activity_results_fmt li:even, .food_results_list_fmt li:even").css({ backgroundColor:"#ffffff"});
	$(".selected_item_fmt").css({ backgroundColor:"#fdfdb2"});
}
function rowHover() {
	$(".activity_results_fmt li,.food_results_list_fmt li").hover(function() { $(this).css({ backgroundColor:"#cee4f1" }); },function() { rowColor(); });
}
/* Form Functions */
function formFunctions() {
	/* Input Box Focus and Blur */
	$("input:text").focus(function () {
		this.value = (this.value.toLowerCase() == 'food or beverage' || this.value.toLowerCase() == 'exercise or activity' || this.value.toLowerCase() == 'type in an activity, exercise or sport' || this.value.toLowerCase() == 'example: apple') ? "" : this.value;
	});
	$("input:text").blur(function () {
		var message;
		this.value = ((this.value == '' || this.value == 0) && this.name == 'food') ? 'Food or Beverage' : this.value;
		this.value = ((this.value == '' || this.value == 0) && this.name == 'activity') ? 'Exercise or Activity' : this.value;
		this.value = ((this.value == '' || this.value == 0) && (this.name == 'earn_search' || this.name == 'term')) ? 'example: apple' : this.value;
		this.value = ((this.value == '' || this.value == 0) && this.name == 'burn_search') ? 'Type in an activity, exercise or sport' : this.value;
		this.value = ((this.value == '' || this.value == 0) && (this.name == "hf" || this.name == "hi" || this.name == "a" || this.name == "w")) ? '0' : this.value;
	});
	$('.text_fmt').focus(function () {
		if ((this.title == "" && this.value == "0") || this.value == "0") {
			this.title = this.name;
			this.value = '';
		}
	});
	$('.gender_fmt').click(function () {
		if (this.value == "m") {
			$('.pants_fmt').html(formmale);
		}
		else if (this.value == "f") {
			$('.pants_fmt').html(formfemale);
		}
	});
}
/* Set API Call */
function setAPIcall(api,query) {
	/* For datlap01 API */
	//var apiCall = "http://datlap01/ebCalc/nutrition.aspx?a=" + api;
	//if(api != "AdvSearchFoods") { apiCall += "&d="; }
	//apiCall += query; 
	
	/* For QA01 API */
	//var path = "api/diet/nutrition.aspx?a=" + api;
	//if(api != "AdvSearchFoods") { path += "&d="; }
	//path += query;
	//var apiCall = "http://datlap01/earned_and_burned/proxy.php?yws_path=" + encodeURIComponent(path);
	
	/* For Live API */
	var apiCall = "/api/diet/nutrition.aspx?a=" + api;
	if(api != "AdvSearchFoods") { apiCall += "&d="; }
	apiCall += query; 
	
	return apiCall;
}
/* AJAX Error */
function ajaxError() {
	$('#page_area').bind("ajaxError",function() {
		$("h3 span.no_error, .no_results, .results").css("display","none");
		$(".anchor").css("background-image","none");
		$("h3 strong.error").css("display","inline").html("We're sorry, there has been an internal error.  Please try your search again.  If the error persists, please <a href=\"http://www.webmd.com/about-webmd-policies/about-contact-us\" target=\"_blank\">contact us</a>.");
	});
}
/*==================== Cookies =================================*/
var prsinfo, addfood, addactv, foodfav, actfave, ownfood, ownactv, favofod, favoact;
if(document.cookie.split(";")) { setCookieNum(); }
function alertCookies(cke) {
	if(cke) {
		alert(unescape(document.cookie.split(";")[cke]));
	}
	else {
		for(var i=0; i<document.cookie.split(";").length; i++) {
			alert(unescape(document.cookie.split(";")[i]));
		}
	}
}
function writePersistentCookie(cookieName,cookieValue) {
	//alert("P: " + cookieName + " = " + cookieValue);
  var expireDate = new Date ();
  var year = expireDate.getYear();     
  // Note some browsers give only the years since 1900, and some since 0.
  if (year < 1000) year = year + 1900;  
  expireDate.setYear(year + 1);
  document.cookie = escape(cookieName) + "=" + escape(cookieValue) + "; expires=" + expireDate.toGMTString() + "; path=/";
  //document.cookie = escape(cookieName) + "=" + escape(cookieValue) + "; expires=" + expireDate.toGMTString() + "; domain=webmd.com; path=/";
	setCookieNum();
}
function writeSessionCookie(cookieName,cookieValue) {
	//alert("T: " + cookieName + " = " + cookieValue);
	document.cookie = escape(cookieName) + "=" + escape(cookieValue) + "; path=/";
	//document.cookie = escape(cookieName) + "=" + escape(cookieValue) + "; domain=webmd.com; path=/";
	setCookieNum();
}
function setCookieNum() {
	for(var c=0; c<document.cookie.split(";").length; c++) {
		switch (document.cookie.split("; ")[c].substr(0,7)) {
			case "prsinfo": prsinfo = c; break;
			case "addfood": addfood = c; break;
			case "addactv": addactv = c; break;
			case "foodfav": foodfav = c; break;
			case "actfave": actfave = c; break;
			case "ownfood": ownfood = c; break;
			case "ownactv": ownactv = c; break;
			case "favofod": favofod = c; break;
			case "favoact": favoact = c; break;
		}
	}
}
//alertCookies();
/*==================== Global Variables ========================*/
var foods = new Array();
	foods["b"] = new Array();
	foods["m"] = new Array();
	foods["l"] = new Array();
	foods["a"] = new Array();
	foods["d"] = new Array();
	foods["e"] = new Array();
var acts = new Array();
var earned = new Array();
var burned = new Array();
var meals = new Array();
	meals[0] = "b";
	meals[1] = "m";
	meals[2] = "l";
	meals[3] = "a";
	meals[4] = "d";
	meals[5] = "e";
var ml = new Array();
	ml["b"] = 0;
	ml["m"] = 0;
	ml["l"] = 0;
	ml["a"] = 0;
	ml["d"] = 0;
	ml["e"] = 0;
var al = 0;
var ni = new Array();
for(i=0; i<meals.length; i++) {
	ni[meals[i]] = new Array();
	ni[meals[i]]["earned"] = 0;
	ni[meals[i]]["tf"] = 0;
	ni[meals[i]]["tc"] = 0;
	ni[meals[i]]["pr"] = 0;
	ni[meals[i]]["so"] = 0;
	ni[meals[i]]["fb"] = 0;
	ni[meals[i]]["su"] = 0;
}
/* User Added Favorite Foods */
var ufid = new Array();
if (document.cookie.split(";")[favofod] && document.cookie.split(";")[favofod].split("=")[1]) {
	var cfdata = unescape(document.cookie.split(";")[favofod].split("=")[1]).split(",");
	var query = "";
	for(var q=0; q<cfdata.length; q++) {
		if(cfdata[q].split("|")[1]) {
			query += "id:t" + q + "|" + cfdata[q] + ",";
			ufid[q] = "t" + q;
		}
	}
	writeSessionCookie("ownfood",query);
}
/* User Added Favorite Activities */
var uaid = new Array();
if (document.cookie.split(";")[favoact] && document.cookie.split(";")[favoact].split("=")[1]) {
	var cfdata = unescape(document.cookie.split(";")[favoact].split("=")[1]).split(",");
	var query = "";
	for(var q=0; q<cfdata.length; q++) {
		if(cfdata[q].split("|")[1]) {
			query += "id:t" + q + "|" + cfdata[q] + ",";
			uaid[q] = "t" + q;
		}
	}
	writeSessionCookie("ownactv",query);
}
/* Search Results */
var results = new Array;
/*==================== Gauge Scripts ===========================*/
var flashGauge;
function initialize() {
	var isIE = navigator.appName.indexOf("Microsoft") != -1;
	flashGauge = (isIE) ? window['swf'] : document['swf'];
}
function callEarnFun(maxVal, currVal) {
	if((typeof flashGauge.needleSetEarn) == "function") {
		flashGauge.needleSetEarn(maxVal, currVal);
	}
}
function callBurnFun(burnVal) {
	if((typeof flashGauge.needleSetBurn) == "function") {
		flashGauge.needleSetBurn(burnVal);
	}
}
/*==================== Objects =================================*/
/*===== Object Definition =====*/
/* Nutrition Totals Object */
var nutr = new nutrObject();
/* User Object */
if (document.cookie.split(";")[prsinfo] && document.cookie.split(";")[prsinfo].split("=")[1]) {
	var userdata = unescape(document.cookie.split(";")[prsinfo].split("=")[1]);
	userdata = userdata.split("|");
	var user = new userObject(userdata);
}
else {
	var user = new userObject2();
}
/* Food/Meals Objects */
if (document.cookie.split(";")[addfood] && document.cookie.split(";")[addfood].split("=")[1]) {
	var fooddata = unescape(document.cookie.split(";")[addfood].split("=")[1]);
	fooddata = fooddata.split(",");
	$(fooddata).each(function(f) {
		var meal = fooddata[f].charAt(fooddata[f].length - 1);
		var food = fooddata[f].split("|");
		if(food[0] && meal != "0") {
			var fid = food[0].split(":")[1];
			foods[meal][fid] = new foodObject(food);
			ml[meal]++;
		}
	});
}
/* Activities Objects */
if (document.cookie.split(";")[addactv] && document.cookie.split(";")[addactv].split("=")[1]) {
	var actdata = unescape(document.cookie.split(";")[addactv].split("=")[1]);
	actdata = actdata.split(",");
	$(actdata).each(function(f) {
		var meal = actdata[f].charAt(actdata[f].length - 1);
		var act = actdata[f].split("|");
		if(act[0]) {
			var aid = act[0].split(":")[1];
			acts[aid] = new actObject(act);
			al++;
		}
	});
}
/*===== Object Creation =====*/
function nutrObject() {
	this.tf = 0;
	this.tc = 0;
	this.pr = 0;
	this.so = 0;
	this.fb = 0;
	this.su = 0;
	this.earned = 0;
	this.burned = 0;
}
function userObject(data) {
	var calAdj = 0;
	for(var u=0; u<data.length; u++) {
		var pair = data[u].split(":");
		switch (pair[0]) {
			case "g": this.gender = pair[1]; break;
			case "hf": this.hf = parseInt(pair[1]); break;
			case "hi": this.hi = parseInt(pair[1]); break;
			case "w": this.weight = parseInt(pair[1]); break;
			case "a": this.age = parseInt(pair[1]); break;
			case "p": this.pants =  parseInt(pair[1]); break;
			case "al": this.actlevel = parseFloat(pair[1]); break;
			case "wg":
				this.wg = pair[1];
				switch (pair[1]) {
					case "1": this.goal = "Lose 2 pounds per week"; calAdj = -1000; break;
					case "2": this.goal = "Lose 1 pound per week"; calAdj = -500; break;
					case "3": this.goal = "Maintain my current weight"; break;
					case "4": this.goal = "Gain 1 pound per week"; calAdj = 500; break;
					case "5": this.goal = "Gain 2 pounds per week"; calAdj = 1000; break;
				}
				break;
		}
	}
	this.height = (this.hf*12)+this.hi;
	this.bmi = (Math.round(((this.weight*703)/(this.height*this.height))*10))/10;
	this.wtr = (Math.round((this.pants/this.height)*100))/100;
	var g; if(this.gender == "f") { g = -161; } else { g = 5; }
	this.rmr = (Math.round(this.actlevel*((10*(this.weight/2.2))+(6.25*(this.height*2.54))-(5*this.age)+g)));
	this.delta = ((this.rmr + calAdj)<1200) ? (1200-(this.rmr + calAdj)) : 0;
	this.tdi = ((this.rmr + calAdj)<1200) ? 1200 : (this.rmr + calAdj);
	this.thr = 220-this.age;
	this.thrmin = Math.round(this.thr*.5);
	this.thrmax = Math.round(this.thr*.75);
	this.hbwmin = Math.round((18.5*(this.height*this.height))/703);
	this.hbwmax = Math.round((24.9*(this.height*this.height))/703);
	this.wrec = weightRec(this.wg,this.bmi,this.wtr, this.gender);
}
function userObject2() {
	this.tdi = 2000;
}
function foodObject(fdata) {
	var calAdj = 0;
	for(var u=0; u<fdata.length; u++) {
		var pair = fdata[u].split(":");
		switch (pair[0]) {
			case "id": this.id = pair[1]; break;
			case "s": this.s = parseInt(pair[1]); break;
			case "sf": this.sf = parseFloat(pair[1]); break;
			case "m": this.m = pair[1]; break;
			case "mu": this.mu = pair[1]; break;
		}
	}
	this.serving = this.s + this.sf;
	if(this.s<1){
		this.s = "";
	}
	switch (this.sf) {
		case 0.125: this.sf = " 1/8"; break;
		case 0.25: this.sf = " 1/4"; break;
		case 0.333: this.sf = " 1/3"; break;
		case 0.5: this.sf = " 1/2"; break;
		case 0.666: this.sf = " 2/3"; break;
		case 0.75: this.sf = " 3/4"; break;
		case 0: this.sf = ""; break;
	}
}
function actObject(adata) {
	var calAdj = 0;
	for(var u=0; u<adata.length; u++) {
		var pair = adata[u].split(":");
		switch (pair[0]) {
			case "id": this.id = pair[1]; break;
			case "h": this.h = parseInt(pair[1]); break;
			case "m": this.m = parseFloat(pair[1]); break;
			case "c": this.c = parseFloat(pair[1]); break;
		}
	}
	this.tm = (this.h*60)+this.m;
	return false;
}
function fSearchObject(data) {
	this.id = data.id;
	this.mu = data.mu;
	this.ca = Math.round(data.ca);
	this.qt = data.qt;
	this.ma = data.ma
	this.nm = data.nm;
	this.pn = data.pn;
	this.mf = data.mf;
}
function fSearchObjectU(id,mu,ca,qt,ma,nm,pn) {
	this.id = id;
	this.mu = mu;
	this.ca = Math.round(ca);
	this.qt = qt;
	this.ma = ma
	this.nm = nm;
	this.pn = pn;
}
function aSearchObject(data) {
	this.id = data.id;
	this.nm = data.nm;
}
function aSearchObjectU(id,nm) {
	this.id = id;
	this.nm = nm;
}
/*==================== Data ====================================*/
/* Personal Info Form Fill */
function fillForm() {
	if(user.gender) {
		if(user.gender == "m") {
			$("#gender_m").attr("checked","checked");
			$("#gender_f").removeAttr("checked");
			$('.pants_fmt').html(formmale);
			$(".pants_fmt option").each(function() { (this.value == user.pants) ? this.selected = "selected" : this.selected = ""; });
		}
		else {
			$("#gender_f").attr("checked","checked");
			$("#gender_m").removeAttr("checked");
			$('.pants_fmt').html(formfemale);
			$(".pants_fmt option").each(function() { (this.value == user.pants) ? this.selected = "selected" : this.selected = ""; });
		}
		$("#hf").val(user.hf);
		$("#hi").val(user.hi);
		$("#w").val(user.weight);
		$("#a").val(user.age);
		$("#al option").each(function() { (this.value == user.actlevel) ? this.selected = "selected" : this.selected = ""; });
		$("#wg option").each(function() { (this.value == user.wg) ? this.selected = "selected" : this.selected = ""; });
	}
}
/* Personal Info Results Fill */
function fillInfo(thisURL) {
	if(user.goal) {
		/* Review Results */
		if(user.goal) {	$("#weight_goal_fmt").html(user.goal); }
		if(user.tdi) {	$("#intake_fmt").html(user.tdi + " Calories"); }
		if(user.delta) { $("#intake_fmt").append(" <a href=\"\" onclick=\"return overlay('#calorie_delta_fmt');\"><img src=\"http://img.webmd.com/dtmcms/live/webmd/consumer_assets/site_images/modules/top12QuestionMark.gif\" id=\"cal_q\" /></a>"); }
		if(more == "lwno" || more == "gwno") { $("#intake_fmt").html("<a href=\"\" onclick=\"return overlay('#weight_rec_" + more + "_fmt');\" id=\"see_weight\">See Weight Recommendation</a>"); }
		if(user.bmi) {	$("#bmi_fmt").html(user.bmi); }
		if(user.wtr) {	$("#wh_ratio_fmt").html(user.wtr); }
		if(user.hbwmin) {	$("#weight_range_fmt").html(user.hbwmin + " to " + user.hbwmax); }
		if(user.thr) {	$("#heart_rate_fmt").html(user.thrmin + " to " + user.thrmax); }
		if(user.bmi) {	$("#weight_rec_fmt").html(user.wrec); }
		if(user.thr) {	$(".maxhr_fmt").html(user.thr); }
		if(user.thrmin) {	$(".minthr_fmt").html(user.thrmin); }
		if(user.thrmax) {	$(".maxthr_fmt").html(user.thrmax); }
	}
	else if(thisURL.indexOf(calculator) != -1) {
		window.location.href = landing;
	}
}
/* Form Validation */
function validate(formName) {
	var e = 0;
	$("#" + formName + " :input:not(:radio):not(:image):not(:checkbox)").each(function() {
		if (this.value == '' && (formName != "burnact" && this.name != "c" && this.name != "em")) {
			var message = "Sorry, you have left a field blank or entered an invalid value. Please return to the question and try again.";
			switch (this.name) {
				case "id": message = (formName == "burnact") ? "Please click on an activity from your search result to make a selection. Thank you.": "Please click on a food or beverage from your search result to make a selection. Thank you."; break;
				case "m": message = "Please select the meal time for this food or beverage."; break;
				case "hf": message = "Sorry, you must enter your height."; break;
				case "hi": message = "Sorry, you must enter your height."; break;
				case "a": message = "Sorry, you must enter your age."; break;
				case "w": message = "Sorry, you must enter your weight."; break;
			}
			alert(message); this.value=""; if (this.name != 'id') {this.focus();}
			e++;
			return false;
		}
		else if(this.name == "s" || this.name == "sf") {
			var serving = document.forms[formName].s.value + document.forms[formName].sf.value;
			if(serving <= 0) { alert("Sorry, your serving amount cannot be zero. Please enter your serving amount. If you're not sure how many servings you've had check the WebMD Portion Plate for help."); this.focus(); e++; return false; }
		}
		else {
			if (this.name == "hf" || this.name == "hi" || this.name == "a" || this.name == "w" || (formName != "burnact" && this.name == "c") || this.name == "cal" || this.name == "more" || this.name == "less" || this.name == "ss") {
				var num = parseInt(this.value);
				switch (this.name) {
					case "hf":
						if (isNaN(num)) { alert("Please enter a number for height."); this.focus(); e++; return false;};
						if (num <= 2 || num >= 9) { alert("The height you have entered is outside of our calculable range. Please enter a height of 3 feet or taller.  Thank you."); this.focus(); e++; return false;}
						break;
					case "hi":
						if (isNaN(num)) { alert("Please enter a number for height."); this.focus(); e++; return false;};
						if (num < 0 || num >= 12) { alert("The height you have entered is outside of our calculable range."); this.focus(); e++; return false;}
						break;
					case "a":
						if (isNaN(num)) { alert("You entered a letter into the age field.  Please enter a number for your age.  Thank you."); this.focus(); e++; return false;};
						if (num < 18) { alert("This calculator is designed for men and women over the age of 18.  Children and teens have different caloric and nutritional needs. You must be at least 18 years old to use this tool."); this.focus(); e++; return false;}
						else if (num > 99) { alert("The age you have entered is outside of our calculable range."); this.focus(); e++; return false;}
						break;
					case "w":
						if (isNaN(num)) { alert("Please enter a number for weight."); this.focus(); e++; return false;};
						if ((num < 90 || num > 800) && formName != "burnact") { alert("If you are below 90 lbs or above 800 lbs we advise that you speak with your doctor or other qualified healthcare provider before creating a Food & Fitness Plan. Thank you."); this.focus(); e++; return false;}
						break;
					case "c":
						if (isNaN(num)) { alert("Please enter a number for calories."); this.focus(); e++; return false;};
						if ((num > 10000 || num <= 0) && formName == "newactv") { alert("Sorry, you have entered an incorrect value.  Please re-enter between 1 and 10,000 calories. Thank you."); this.focus(); e++; return false;}
						break;
					case "cal":
						if (isNaN(num)) { alert("Please enter a number for calories."); this.focus(); e++; return false;};
						if (num > 10000 || num < 0) { alert("Sorry, you have entered an invalid option. Please check your foods' Nutrition Label and try again. Thank you."); this.focus(); e++; return false;}
						break;
					case "more":
						if (isNaN(num)) { alert("Please enter a valid number."); this.focus(); e++; return false;};
						break;
					case "less":
						if (isNaN(num)) { alert("Please enter a valid number."); this.focus(); e++; return false;};
						break;
					case "ss":
						if (isNaN(num)) { alert("Please enter a valid number."); this.focus(); e++; return false;};
						if (num > 20 || num < 0) { alert("Sorry, you have entered an invalid option. Please check your foods' Nutrition Label and try again. Thank you."); this.focus(); e++; return false;}
						break;
				}
			}	
		}
	});
	if(e > 0) { return false; }
	else { return true; }
}
/* Write Cookie String */
function formCStr(formName,cookieName) {
	var cookieStr = "";
	var inputItems = "";
	var mt = "";
	switch (cookieName) {
		case "addfood": inputItems = "#foodid, #foodmu, #serving, #servfrac, #mealtime"; break;
		case "ownfood": inputItems = "#foodid, #fname, #servsize, #calories"; break;
		case "foodfav": inputItems = "#foodid, #foodmu"; break;
		case "addactv": inputItems = "#actid, #cals, #hours, #mins"; break;
		case "ownactv": inputItems = "#actid, #aname, #met"; break;
		case "actfave": inputItems = "#actid"; break;
		default: inputItems = "#" + formName + " :input:radio:checked, #" + formName + " :input:not(:radio):not(:image):not(:checkbox):not(#oldmeal)"; break;
	}
	$(inputItems).each(function() {
		if(this.id != "mealtime") {
			cookieStr += (cookieStr) ? "|" : "";
			cookieStr += this.name + ":" + this.value;
		} else {
			mt += "|" + this.name + ":" + this.value;
		}
	});
	cookieStr += mt;
	return cookieStr;
}
/* Show/Hide Overlay */
function overlay(id,f,sb,sid,m) {
	if(f && f != "") { var k = f; }
	if((id == "#food_search_fmt" || id == "#activity_search_fmt") && ($(id).html() == null || sb)) {
		if(!sb) {	var formName = (id.indexOf("food") != -1) ? "searchfoods" : "searchacts"; }
		else {	var formName = (id.indexOf("food") != -1) ? "sbfoods" : "sbactvs"; }
		var query = document.forms[formName].elements[0].value;
		if((query.toLowerCase() == "exercise or activity" || query == "") && id.indexOf("act") != -1) {
			alert("Please enter an exercise or activity to search for.");
			document.forms[formName].elements[0].focus();
			return false;
		}
		else if((query.toLowerCase() == "food or beverage" || query == "") && id.indexOf("food") != -1) {
			alert("Please enter a food or beverage to search for.");
			document.forms[formName].elements[0].focus();
			return false;
		}
		else if(query.length < 2) {
			alert("Sorry, you must enter more than one character.");
			document.forms[formName].elements[0].focus();
			return false;
		}
		if(($("#food_faves_fmt").html() != null) || ($("#activity_faves_fmt").html() != null)) { 
			formName = (id.indexOf("food") != -1) ? "sbfoods" : "sbactvs";
			var searchTerm = document.forms[formName].elements[0].value;
			var sbar = true;
		}
	}
	$("input").blur();
	if(!k) { $('#eb_overlays_fmt div.eb_overlay_rdr:visible:not(id)').fadeOut(fadeOutSpd); }
	if($(id).is(':visible')) {
		if(!k || ($('#eb_overlays_fmt div.eb_overlay_rdr:visible').length<2)) { $("#whiteout").fadeOut(fadeOutSpd); }
		$(id).fadeOut(fadeOutSpd);
	}
	else {
		var content = "";
		var query = id.replace("_fmt","").replace("#","");
		var htmlCall = xmlLoc + query + ".html";
		var wo = $("#page_area").height();
		var ww = windowWdth();
		var t = 30;
		var l = 40;
		var idh = (id != "#food_search_fmt") ? $(id).height() : ($(id).height()+75);
		var idw = $(id).width();
		var wdth = $("#page_area").width();
		var whgt = windowHgt();
		var wpos = windowPos();
		var adj = parseInt(((whgt-idh)/2)*.25);
		l = ((wdth-idw)/2);
			t = (idh<whgt) ? (parseInt((((whgt-idh)/2)+wpos)-adj))-220 : (wpos-210);
		if(t < -200 && wpos < 100) { t = -131; }
		if(id !="#pp_pop_fmt" && id !="#smart_choices_fmt" && id !="#searchtips_fmt") {
			$.get(htmlCall,function(data) {
				if(!k) {
					$("#eb_overlays_fmt").empty();
					$("#eb_overlays_fmt").append(data);
				}
				else {
					$("#eb_overlays_fmt").append(data);
				}
				$(id).css("top","0px").css("left","-5000px").css("display","block");
				if(id.indexOf("weight_rec_") != -1 || id == "#fitness_rec_more_fmt" || id == "#calorie_delta_fmt") { fillWeightRec(); }
				var wo = $("#page_area").height();
				var ww = windowWdth();
				$("#whiteout").css("height",(wo+"px")).css("width",(ww+"px"));
				var t = 30;
				var l = 40;
				var idh = (id != "#food_search_fmt") ? $(id).height() : ($(id).height()+75);
				var idw = $(id).width();
				var wdth = $("#page_area").width();
				var whgt = windowHgt();
				var wpos = windowPos();
				var adj = parseInt(((whgt-idh)/2)*.25);
				l = ((wdth-idw)/2);
				t = (idh<whgt) ? (parseInt((((whgt-idh)/2)+wpos)-adj))-220 : (wpos-210);
				if(t < -200 && wpos < 100) { t = -131; }
				$(id).css("display","none");
				$(id).animate({top:t, left:l},1);
				$(id).fadeIn(fadeInSpd, function() { onShow(id,sbar,searchTerm,m,sid); });
				$("#whiteout").fadeIn(fadeInSpd);
			});
		}
		else {
			$(id).css("top","0px").css("left","-5000px").css("display","block");
			$("#whiteout").css("height",(wo+"px")).css("width",(ww+"px"));
			$(id).css("display","none");
			$(id).animate({top:t, left:l},1);
			$(id).fadeIn(fadeInSpd);
			$("#whiteout").fadeIn(fadeInSpd);
		}
	}
	return false;
}
/* Once the div is visible, do this... */
function onShow(id,sbar,searchTerm,m,sid) {
	$("#activity_faves_fmt .anchor, #activity_search_fmt .anchor, #food_search_fmt .anchor, #food_faves_fmt .anchor").css("background-image","url(http://img.webmd.com/dtmcms/live/webmd/consumer_assets/site_images/modules/loading_small.gif)");
	switch (id) {
		case "#food_search_fmt":
			if(sbar) { searchFood("sbfoods",true,searchTerm); }
			else { searchFood("searchfoods",false); }
			break;
		case "#food_faves_fmt":
			faveFood();
			break;
		case "#edit_food_fmt":
			editFood(m,sid);
			break;
		case "#activity_search_fmt":
			if(sbar) { searchAct("sbactvs",true,searchTerm); }
			else { searchAct("searchacts",false); }
			break;
		case "#activity_faves_fmt":
			faveAct();
			break;
		case "#activity_dur_fmt":
			editAct(sid);
			break;
	}
	formFunctions();
}
/* Function to return Window Height */
function windowHgt() {
	var h;
	if(typeof(window.innerHeight) == 'number') { h = window.innerHeight; }
	else if(document.documentElement && document.documentElement.clientHeight) { h = document.documentElement.clientHeight; }
	else if(document.body && document.body.clientHeight) { h = document.body.clientHeight; }
	else if(!h) { h = 0; }
	return h;
}
/* Function to return Window Width */
function windowWdth() {
	var w;
	if(typeof(window.innerHeight) == 'number') { w = window.innerWidth; }
	if(document.documentElement && document.documentElement.clientWidth) { w = document.documentElement.clientWidth; }
	if(document.body && document.body.clientWidth) { w = document.body.clientWidth; }
	if(!w) { w = 0; }
	return w;
}
/* Function to return Window Scroll Position */
function windowPos() {
	var p;
	if(typeof(window.pageYOffset) == 'number') { p = window.pageYOffset; }
	else if(document.body && document.body.scrollTop) { p = document.body.scrollTop; }
	else if(document.documentElement && document.documentElement.scrollTop) { p = document.documentElement.scrollTop; }
	else if(!p) { p = 0; }
	return p;
}
/* Pagination */
function pagination(num,list,formName,query) {
	if(num<=resPage) {
		showLi(1,num,list,num,formName,query);
	}
	else {
		showLi(1,resPage,list,num,formName,query);
	}
}
function showLi(f,l,list,num,formName,query) {
	var top = (l>num) ? top=num : top=l;
	var range = (f==top) ? "Result " + top : "Results " + f + "-" + top;
	$(".res_range_fmt").html(range);
	$(list).empty();
	$(".food_results_list_fmt, .activity_results_list_fmt").scrollTop(0);
	for(var p = (f-1); p<top; p++) {
		var s;
		if(list.indexOf("food") != -1 && results[p]) {
			s = "<li id='" + results[p].id + "_" + results[p].mu + "' onclick='wmdPageLink(\"dc-fd-res-select_1\"); selectFoodItem(\"" + results[p].id + "_" + results[p].mu + "\",\"" + formName + "\");'>";
			s += "<span class='calories_fmt'>" + Math.round(results[p].ca) + "</span>";
			s += "<span class='ss_fmt'>" + results[p].qt + " " + results[p].ma + "</span>";
			s += "<p>" + results[p].nm;
			if(results[p].pn) {s += ", " + results[p].pn; }
			/*if(results[p].mf) {s += " " + results[p].mf; }*/
			s += "</p><div class='clearingDiv_fmt'></div></li>";
		}
		else if(list.indexOf("act") != -1 && results[p]) {
			s = "<li id='" + results[p].id + "' onclick='selectActItem(\"" + results[p].id + "\",\"" + formName + "\");'>" + results[p].nm + "</li>";
		}
		else {
			s = "<li class='error'>Error - " + p + ", " + results[p] + "</li>";
		}
		$(list).append(s);
	}
	if(f < 2) { $(".f_prev_link").hide(); }
	else {
		$(".f_prev_link").show();
		$(".f_prev_link").attr("href","javascript:showLi(" + (f-resPage) + "," + (l-resPage) + ",'" + list + "'," + num + ",'" + formName + "','" + query.replace(/ /g,"%20").replace(/,/g,"%20").replace(/'/g,"%20") + "');");
	}
	if(l >= num) { $(".f_next_link").hide(); }
	else {
		$(".f_next_link").show();
		$(".f_next_link").attr("href","javascript:showLi(" + (f+resPage) + "," + (l+resPage) + ",'" + list + "'," + num + ",'" + formName + "','" + query.replace(/ /g,"%20").replace(/,/g,"%20").replace(/'/g,"%20") + "');");
	}
	rowColor();
	rowHover();
	if(((f+resPage) > resPage) && ((f+resPage) <= num) && (!results[f+50])) {
		var api = (formName.indexOf("food") != -1) ? "SearchFoods" : "SearchActivity";
		loadNext((f+resPage),query,api);
	}
}
function loadNext(start,query,api) {
	query = query.replace(/ /g,"%20").replace(/,/g,"%20").replace(/'/g,"%20").replace(/-/g,"%20");
	var r = (start-1);
	var q =  query + "&s=" + r;
	var apiCall = setAPIcall(api,q)
	$.getJSON(apiCall, function(json){
		$.each(json.items,function(i,item) {
			if(api.indexOf("Food") != -1) {
				switch (item.qt) {
					case "0.125": item.qt = "1/8"; break;
					case "0.25": item.qt = "1/4"; break;
					case "0.33": item.qt = "1/3"; break;
					case "0.5": item.qt = "1/2"; break;
					case "0.66": item.qt = "2/3"; break;
					case "0.75": item.qt = "3/4"; break;
				}
				results[r] = new fSearchObject(item);
			}
			else {
				results[r] = new aSearchObject(item);
			}
			r++;
		});
	});
	rowColor();
	rowHover();
}
/* Remove Favorites */
function removeFave(formName,check) {
	if(check.checked) {
		var id = document.forms[formName].id.value;
		if(id == 0) {
			alert("Sorry, you must select the item you want to remove from your favorites to continue.");
			check.checked = false;
		}
		else {
			var name = $(".selection").html().split("<")[0];
			var sure = confirm("Are you sure you want to remove this item, " + name + ", from your favorites?");
			if(sure) {
				var cookieName, cookieNum;
				var query;
				if(formName == "addfavfood") { cookieName = "foodfav"; cookieNum = foodfav; query = "id:" + id + "|mu:" + document.forms[formName].mu.value + ","; selectFoodItem("0_0",formName); }
				else if(formName == "addfavactv") { cookieName = "actfave"; cookieNum = actfave; query = id + ","; selectActItem("0",formName); }
				var cookieStr = (document.cookie.split(";")[cookieNum]) ? unescape(document.cookie.split(";")[cookieNum].split("=")[1]) : "";
				cookieStr = cookieStr.replace(query,"");
				writePersistentCookie(cookieName,cookieStr);
				if(formName == "addfavfood") { faveFood(); }
				else if(formName == "addfavactv") { faveAct(); }
				document.forms[formName].reset();
			}
			else {
				check.checked = false;
			}
		}
	}
}
/*==================== Personal Information ====================*/
/* Personal Info Form Submit */
function persInfo(thePage) {
	var formName = "prsinfo";
	var valid = validate(formName);
	if(valid) {
		var cookieStr = formCStr(formName,formName);
		writePersistentCookie(formName,cookieStr);
		if (thePage == 'bmi_plus') {getEmail('prsinfo','em','lnch-nl','WeightLossWisdomWMD'); initBMI(); goTab(1);}
		else {document.location.href = calculator;}
	}
	return false;
}
/* Object Support */
function weightRec(wg,bmi,wtr,gen) {
	var goal;
	switch (wg) {
		case "1": goal = "lose"; break;
		case "2": goal = "lose"; break;
		case "3": goal = "keep"; break;
		case "4": goal = "gain"; break;
		case "5": goal = "gain"; break;
	}
	return weight(bmi,wtr,gen,goal);
}
function weight(bmi,wtr,gen,goal) {
	var w, content, rec;
	switch (gen) {
		case "f": w = .53; break;
		case "m": w = .55; break;
	}
	switch (goal) {
		case "lose":
			if(bmi<18.5) { content = "Your weight is lower than what's considered healthy and"; more = "lwno"; }
			else {
				if(bmi<=24.9) { content = "Your current weight is within the normal range; however"; more = "lwok"; }
				else if(bmi<=29.9) {
					if(wtr<=w) { content = "Your BMI is higher than what's considered healthy, but"; more = "lwow"; }
					else { content = "Your current weight is higher than what's considered"; more = "lwys"; }
				}
				else { content = "Your current weight is higher than what's considered"; more = "lwyo"; }
			}
			break;
		case "keep":
			if(bmi<18.5) { content = "Your current weight is lower than what's considered"; more = "mwok"; }
			else {
				if(bmi<=24.9 || (bmi >= 25 && wtr<=w)) { content = "Your current weight is within the healthy range"; more = "mwys"; }
				else { content = "Your current weight is higher than what's considered"; more = "mwno"; }
			}
			break;
		case "gain":
			if(bmi<18.5) { content = "Your current weight is lower than what's considered"; more = "gwys"; }
			else {
				if(bmi<=24.9 || (bmi >= 25 && wtr<=w)) { content = "Your current weight is within the healthy range. Though"; more = "gwok"; }
				else { content = "Your current weight is higher than what's considered"; more = "gwno"; }
			}
			break;
	}
	content += '&hellip; <a href="#wr_more" onclick="wmdPageLink(\'dc-perinfo_weightmore\'); return overlay(\'#weight_rec_' + more + '_fmt\');" id="wr_more">more</a>';
	return content;
}
function fillWeightRec() {
	var wd = (user.gender == "m") ? "waist" : "dress";
	var g; if(this.gender == "f") { g = -161; } else { g = 5; }
	var dci = (Math.round(user.actlevel*(((10*(user.hbwmin/2.2))+(6.25*(user.height*2.54))-(5*user.age)))))+g;
	var size;
	if(user.gender == "m") { size = Math.round(user.height*.55); }
	else { size = Math.round(user.height*.53); if(size<26) { size = "0"; } else if(size<27) { size = "2"; } else if(size<28) { size = "4"; } else if(size<30) { size = "6"; } else if(size<32) { size = "8"; } else if(size<33) { size = "10"; } else if(size<35) { size = "12"; } else if(size<36) { size = "14"; } else if(size<38) { size = "16"; } else if(size<40) { size = "18"; } else if(size<42) { size = "20"; } else if(size<44) { size = "22"; } else if(size<46) { size = "24"; } else if(size<48) { size = "26"; } else if(size<50) { size = "28"; } else if(size<52) { size = "30"; } else if(size<54) { size = "32"; } else if(size<56) { size = "34"; } else if(size<58) { size = "36"; } else if(size<60) { size = "38"; } else { size = "40"; } }
	$(".eb_overlay_rdr .intake_fmt").html(user.tdi);
	$(".weight_range_fmt").html(user.hbwmin + " and " + user.hbwmax);
	$(".min_dci_fmt").html(dci);
	$(".bmi_fmt").html(user.bmi);
	$(".weight_max_fmt").html(user.hbwmax);
	$(".wst_drs_fmt").html(wd);
	$(".wp_size_fmt").html(size);
	if(user.thrmin) {	$(".minthr_fmt").html(user.thrmin); };
	if(user.thrmax) {	$(".maxthr_fmt").html(user.thrmax); };
	if(user.thr) {	$(".maxhr_fmt").html(user.thr); };
	if(user.delta) {	$(".burn_shift_fmt").html(user.delta); };
}
/*==================== Foods ===================================*/
/* Add Food Form Submit (used to update foods as well) */
function addFood(formName) {
	var valid = validate(formName);
	if (document.cookie.split(";")[addfood] && document.cookie.split(";")[addfood].split("=")[1]) {
		var fd = unescape(document.cookie.split(";")[addfood].split("=")[1]);
		fd = fd.split(",");
		$(fd).each(function(f) {
			var tm = fd[f].charAt(fd[f].length - 1);
			var tid = fd[f].split("|")[0].split(":")[1];
			if((formName == "addfood" && tm == $("#mealtime option:selected").val()) && tid == $("#foodid").val()) {
				if (confirm("You have already added this food for this meal. Click OK to edit portion size or meal, or Cancel to select a different food or meal.")) {editFood(tm,tid); valid = false; return false;} else {valid = false; return false;}
			}
			if((formName == "addfavfood" && tm == $("#mealtime option:selected").val()) && tid == $("#foodid").val()) { 
				if (confirm("You have already added this food for this meal. Click OK to edit portion size or meal, or Cancel to select a different food or meal.")) {editFood(tm,tid); valid = false; return false;} else {valid = false; return false;}
			}
			if((formName == "newfood" && tm == $("#mealtime option:selected").val()) && tid == $("#foodid").val()) { 
				if (confirm("You have already added this food for this meal. Click OK to edit portion size or meal, or Cancel to select a different food or meal.")) {editFood(tm,tid); valid = false; return false;} else {valid = false; return false;} 
			}
		});
	}
	if(valid) {
		var cookieStr = (document.cookie.split(";")[addfood]) ? unescape(document.cookie.split(";")[addfood].split("=")[1]) : "";
		var meal = formCStr(formName,"addfood").charAt(formCStr(formName,"addfood").length - 1);
		var food = formCStr(formName,"addfood").split("|");
		if((meal == "b" || meal == "l" || meal == "d") && (ml[meal] >= 10)) {
			alert("Sorry, you have already added the maximum number of foods for this meal.  Please remove a food or add to another meal or snack.");
			return false;
		}
		else if((meal == "m" || meal == "a" || meal == "e") && (ml[meal] >= 3)) {
			alert("Sorry, you have already added the maximum number of foods for this snack.  Please remove a food or add to another snack or meal.");
			return false;
		}
		else {
			if(formName == "addfood" || formName == "newfood") {
				if(document.forms[formName].ffaves.checked) {
					addFoodFave(formCStr(formName,"foodfav"));
				}
			}
			cookieStr += formCStr(formName,"addfood") + ",";
			writeSessionCookie("addfood",cookieStr);
			if(formName == "addfood") { overlay('#food_search_fmt'); }
			if(formName == "addfavfood") { overlay('#food_faves_fmt'); }
			if(formName == "updtfood") { overlay('#edit_food_fmt'); }
			if(formName == "newfood") { overlay('#add_new_food_fmt'); }
			if(food[0]) {
				var fid = food[0].split(":")[1];
				foods[meal][fid] = new foodObject(food);
				writeFood(meal,fid);
				ml[meal]++;
			}
			$(document.forms).each(function() { this.reset(); });
		}
	}
	return false;
}
/* Add/Remove Fave Food to/from Cookie */
function addFoodFave(str) {
	var cookieStr = (document.cookie.split(";")[foodfav]) ? unescape(document.cookie.split(";")[foodfav].split("=")[1]) : "";
	var num;
	if (document.cookie.split(";")[foodfav] && document.cookie.split(";")[foodfav].split("=")[1]) {
		var fd = unescape(document.cookie.split(";")[foodfav].split("=")[1]);
		fd = fd.split(",");
		num = fd.length;
		$(fd).each(function(f) {
			var tid = fd[f].split("|")[0].split(":")[1];
			if(tid == $("#foodid").val()) {
				var query = "id:" + $("#foodid").val() + "|mu:" + $("#foodmu").val() + ",";
				cookieStr = cookieStr.replace(query,"");
				num--;
			}
		});
	}
	if (num > 35) {
		alert("Sorry, you have already added the maximum number of favorite foods.  You must remove a food in order to add a new one to your favorites list.");
	}
	else {
		cookieStr += str.split("|")[0] + "|" + str.split("|")[1] + ",";
		writePersistentCookie("foodfav",cookieStr);
	}
}
/* Remove Food from Log */
function removeFood(meal,id,g) {
	var formName = "addfood";
	if(foods[meal][id].s == ""){
		foods[meal][id].s = "0";
	}
	var sf;
	switch (foods[meal][id].sf) {
		case " 1/8": sf = ".125"; break;
		case " 1/4": sf = ".25"; break;
		case " 1/3": sf = ".333"; break;
		case " 1/2": sf = ".5"; break;
		case " 2/3": sf = ".666"; break;
		case " 3/4": sf = ".75"; break;
		case "": sf = "0"; break;
	}
	var cookieStr = (document.cookie.split(";")[addfood]) ? unescape(document.cookie.split(";")[addfood].split("=")[1]) : "";
	var query = "id:" + id + "|mu:" + foods[meal][id].mu + "|s:" + foods[meal][id].s + "|sf:" + sf + "|m:" + meal + ",";
	cookieStr = cookieStr.replace(query,"");
	writeSessionCookie(formName,cookieStr);
	ml[meal]--;
	$("#" + meal + " #" + id + "_" + foods[meal][id].mu).replaceWith("");
	addSubNutr(meal,id,"s");
	rowColor();
	replaceNV(g);
	return false;
}
/* Edit Food (brings up overlay with form) */
function editFood(meal,id) {
	if(id != "") {
		var foodname = "";
		var apiCall = setAPIcall("GetFoods",id);
		if(id.indexOf("t") == -1) {
			$.getJSON(apiCall, function(json){
				$.each(json,function(i,item) { if(item.mu == foods[meal][id].mu) { foodname = item.nm; if(foodname != "") { $("#edit_food_fmt h3").html(foodname); } } });
			});
		}
		else {
			var cookieStr = (document.cookie.split(";")[ownfood]) ? unescape(document.cookie.split(";")[ownfood].split("=")[1]) : "";
			var data = cookieStr.split(",");
			for(var t = 0; t<data.length; t++) {
				if(data[t].split("|")[0].split(":")[1] == id) { foodname = data[t].split("|")[1].split(":")[1]; if(foodname != "") { $("#edit_food_fmt h3").html(foodname); } }
			}
		}
		if(($("#edit_food_fmt h3").html() == "&nbsp;" || $("#edit_food_fmt h3").html() == null) && foodname != "") { $("#edit_food_fmt h3").html(foodname); }
		fillEditForm(meal,id,foodname);
	}
	return false;
}
function fillEditForm(meal,id,fn) {
	var foodname = fn;
	if(foodname != "") { $("#edit_food_fmt h3").html(foodname); }
	var sf;
	switch (foods[meal][id].sf) {
		case " 1/8": sf = ".125"; break;
		case " 1/4": sf = ".25"; break;
		case " 1/3": sf = ".333"; break;
		case " 1/2": sf = ".5"; break;
		case " 2/3": sf = ".666"; break;
		case " 3/4": sf = ".75"; break;
		case "": sf = "0"; break;
	}
	document.updtfood.id.value = id;
	document.updtfood.mu.value = foods[meal][id].mu;
	document.updtfood.om.value = meal;
	document.updtfood.s.value = foods[meal][id].s;
	document.updtfood.sf.value = sf;
	document.updtfood.m.value = foods[meal][id].m;
}
/* Update Food (removes the food from the log and adds it back with the changes) */
function updateFood() {
	var valid = validate("updtfood");
	if(valid) {
		var meal = document.updtfood.om.value;
		var id = document.updtfood.id.value;
		removeFood(meal,id,1);
		var u = setTimeout("addFood(\"updtfood\");",250);
	}
	return false;
}
/* Add Food Not Listed */
function newFood() {
	var formName = "newfood";
	document.newfood.id.value = "0";
	var valid = validate(formName);
	if(valid) {
		document.newfood.id.value = setId(formName);
		var newData = formCStr(formName,"ownfood");
		var query = newData + ",";
		
		// Session Cookie
		var cookieStr = (document.cookie.split(";")[ownfood]) ? unescape(document.cookie.split(";")[ownfood].split("=")[1]) : "";
		if (document.cookie.split(";")[ownfood] && cookieStr != "") {
			if(cookieStr.indexOf(query) != -1) {
				cookieStr = cookieStr.replace(query,"");
			}
		}
		cookieStr += query;
		writeSessionCookie("ownfood",cookieStr);
		
		// Persistent Cookie
		var cookieStr2 = (document.cookie.split(";")[favofod]) ? unescape(document.cookie.split(";")[favofod].split("=")[1]) : "";
		query = newData.replace(newData.split("|")[0] + "|","") + ",";
		if (document.cookie.split(";")[favofod] && cookieStr2 != "" && document.newfood.ffaves.checked) {
			if(cookieStr2.indexOf(query) != -1) {
				cookieStr2 = cookieStr2.replace(query,"");
			}
		}
		cookieStr2 += query;
		writePersistentCookie("favofod",cookieStr2);
		
		addFood(formName);
	}
	return false;
}
/* Determine the id for User-Created foods */
function setId(formName) {
	var id = "0", ids = 0;
	var cookieStr = (document.cookie.split(";")[ownfood]) ? unescape(document.cookie.split(";")[ownfood].split("=")[1]) : "";
	if (document.cookie.split(";")[ownfood] && document.cookie.split(";")[ownfood].split("=")[1]) {
		var fd = unescape(document.cookie.split(";")[ownfood].split("=")[1]).split(",");
		$(fd).each(function(f) {
			if(fd[f].split("|")[1] && fd[f].split("|")[1].split(":")[1]) {
				if(fd[f].split("|")[1].split(":")[1].toLowerCase() == $("#fname").val().toLowerCase()) { id = fd[f].split("|")[0].split(":")[1]; }
				else {
					id = "t" + (parseInt(fd[f].split("|")[0].split(":")[1].replace("t","")) + 1);
				}
			}
		});
	}
	if(id == "0" && ids == 0) { id = "t0"; }
	return id;
}
/* My Favorite Foods */
function faveFood() {
	var query = "";
	var r = 0;
	var fdfvs = new Array();
	var fdfvsmu = new Array();
	$("#food_faves_list").empty();
	$(".search_selection_fmt").css("background","#ffffff");
	if (document.cookie.split(";")[foodfav] && (document.cookie.split(";")[foodfav].split("=")[1] != 'undefined' && document.cookie.split(";")[foodfav].split("=")[1])) {
		var fooddata = unescape(document.cookie.split(";")[foodfav].split("=")[1]);
		fooddata = fooddata.split(",");
		$(fooddata).each(function(f) {
			if(fooddata[f].split("|")[0]){
				fdfvs[f] = fooddata[f].split("|")[0].split(":")[1];
				fdfvsmu[fdfvs[f]] = fooddata[f].split("|")[1].split(":")[1];
				if(fdfvs[f].indexOf("t") == -1) {
					query += (query) ? "," + fdfvs[f] : fdfvs[f];
				}
				else {
					var cookieStr = (document.cookie.split(";")[ownfood]) ? unescape(document.cookie.split(";")[ownfood].split("=")[1]) : "";
					var data = (cookieStr != "") ? cookieStr.split(",") : "";
					var name = "";
					var cal = 0;
					var serv = 0;
					var meas = setMeas(fdfvsmu[fdfvs[f]]);
					for(var d=0; d<data.length; d++) {
						if(data[d] != "" && (data[d].split("|")[0].split(":")[1] == fdfvs[f])) {
							name = data[d].split("|")[1].split(":")[1];
							cal = parseFloat(data[d].split("|")[3].split(":")[1]);
							serv = parseFloat(data[d].split("|")[2].split(":")[1]);
						}
					}
					if(name != "") {
						results[r] = new fSearchObjectU(fdfvs[f],fdfvsmu[fdfvs[f]],cal,serv,meas,name);
						r++;
						$(".results_num").html(r);
					}
					if(r<1) {
						$(".results_num").html("0");
						$(".found").css("display","inline");
						$(".no_results").css("display","block");
						$(".searching, .results").css("display","none");
					}
					else {
						showResults(r,"#food_faves_list","addfavfood");
						$(".results_num").html(r);
						$(".found").css("display","inline");
						$(".results").css("display","block");
						$(".searching, .no_results").css("display","none");
					}
				}
			}
		});
	}
	var apiCall = setAPIcall("GetFoods",query)
	$.getJSON(apiCall, function(json){
		$.each(json,function(i,item) {
			switch (item.qt) {
				case "0.125": item.qt = "1/8"; break;
				case "0.25": item.qt = "1/4"; break;
				case "0.33": item.qt = "1/3"; break;
				case "0.5": item.qt = "1/2"; break;
				case "0.66": item.qt = "2/3"; break;
				case "0.75": item.qt = "3/4"; break;
			}
			if(item.mu == fdfvsmu[item.id]) {
				results[r] = new fSearchObject(item);
				r++;
				$(".results_num").html(r);
			}
		});
		if(r<1) {
			$(".results_num").html("0");
			$(".found").css("display","inline");
			$(".no_results").css("display","block");
			$(".searching, .results").css("display","none");
		}
		else {
			showResults(r,"#food_faves_list","addfavfood");
			$(".results_num").html(r);
			$(".found").css("display","inline");
			$(".results").css("display","block");
			$(".searching, .no_results").css("display","none");
		}
	});
	return false;
}
function setMeas(num) {
	var m;
	switch (num) {
		case "1": m = "tsp"; break;
		case "2": m = "Tbsp"; break;
		case "3": m = "cup"; break;
		case "4": m = "pce"; break;
		case "5": m = "ea"; break;
		case "6": m = "oz"; break;
		case "7": m = "lb"; break;
		case "8": m = "g"; break;
		case "9": m = "Kg"; break;
		case "10": m = "fl-oz"; break;
		case "11": m = "ml"; break;
		case "12": m = "ltr"; break;
		case "13": m = "gal"; break;
		case "14": m = "pnt"; break;
		case "15": m = "qt"; break;
		case "16": m = "mg"; break;
		case "17": m = "mcg"; break;
		case "18": m = "intk"; break;
		case "20": m = "btl"; break;
		case "21": m = "box"; break;
		case "22": m = "can"; break;
		case "24": m = "cube"; break;
		case "25": m = "jar"; break;
		case "26": m = "stk"; break;
		case "30": m = "slc"; break;
		case "31": m = "svg"; break;
		case "36": m = "indv"; break;
		case "37": m = "scp"; break;
		case "620": m = "bag"; break;
		case "625": m = "barrel"; break;
		case "630": m = "carton"; break;
		case "635": m = "case"; break;
		case "640": m = "cntr"; break;
		case "645": m = "doz"; break;
		case "650": m = "pkg"; break;
		case "655": m = "sack"; break;
	}
	return m;
}
/* Food Search Functions */
function searchFood(formName,sbar,q,c,cn) {
	$("h3 span.no_error").css("display","inline");
	$("h3 strong.error").css("display","none");
	var query = (q) ? q : encodeURIComponent(document.forms[formName].elements[0].value.replace(/[^a-zA-Z 0-9]+/g,' '));
	if((query.toLowerCase() == "food or beverage" || query == "") && sbar != false) {
		alert("Please enter a food or beverage to search for.");
		document.forms[formName].elements[0].focus();
		return false;
	}
	else if(query.length < 2 ) {
		alert("Sorry, you must enter more than one character.");
		document.forms[formName].elements[0].focus();
		return false;
	}
	else {
		//document.forms['sbfoods'].elements[0].focus();
		if(sbar) {
			$(".found, .no_results, .results, #cat_tips_fmt, #incat, #searchback, #category_list3").css("display","none");
			$(".searching").css("display","inline");
			$("#food_search_list, #category_list1, #category_list2, #category_list3").empty();
			document.forms['addfood'].id.value = 0;
			document.forms['addfood'].mu.value = 0;
			$(".selection, .results_num, #incat strong").html("");
			$("#select_nutr_fmt,#category_list1, #category_list2, .search_tips_fmt, .anchor").css("display","block");
			$(".search_selection_fmt").css("background","#ffffff");
		}
		var r = 0;
		var topCat = new Array();
		var apiCall = setAPIcall("SearchFoods",query);
		ajaxError();
		$.getJSON(apiCall, function(json){
			if(json.items){
				if(json.refs.length>1 && json.len > 50 && !c) {
					$.each(json.refs, function(i,item) {
						var cat = "<li id='c" + item.id + "'><a href='' onclick='wmdPageLink(\"dc-fd-srchr_" + (i+1) + "\"); return showCat(\"" + query + "\",\"" + item.id + "\");'>" + item.nm + "&nbsp;(" + item.no + ")</a></li>";
						if(json.refs.length<=maxCat) {
							if(i <= (json.refs.length/2)) { $("#category_list1").append(cat); }
							else { $("#category_list2").append(cat); }
						}
						else {
							if(i<maxCat) {
								if(i <= (maxCat/2)) { $("#category_list1").append(cat); }
								else { $("#category_list2").append(cat); }
							}
							topCat += item.no + ":" + cat + "|";
							$("#category_list3").append(cat);
						}
					});
					if(json.refs.length>maxCat) {
						$("#category_list2").append("<li id='all_cat'><a href='' onclick='wmdPageLink(\"dc-fd-srchr_more\"); return allCat();'><strong>See All Categories (" + json.refs.length + ")</strong></a></li>");
						$("#category_list3").append("<li id='back_cat'><a href='' onclick='return backCat();'><strong>Back to Search Results</strong></a></li>");
					}
					$("#cat_tips_fmt").css("display","block");
				}
				else if(c) {
					$("#incat, #searchback").css("display","inline");
					$("#incat strong").html(cn);
				}
				results = new Array();
				$.each(json.items,function(i,item) {
					switch (item.qt) {
						case "0.125": item.qt = "1/8"; break;
						case "0.25": item.qt = "1/4"; break;
						case "0.33": item.qt = "1/3"; break;
						case "0.5": item.qt = "1/2"; break;
						case "0.66": item.qt = "2/3"; break;
						case "0.75": item.qt = "3/4"; break;
					}
					results[r] = new fSearchObject(item);
					r++;
				});
			}
			if(r<1) {
				$(".results_num").html("0");
				$(".found").css("display","inline");
				$(".no_results").css("display","block");
				$(".searching, .results").css("display","none");
			}
			else {
				showResults(json.len,"#food_search_list","addfood",query);
				$(".results_num").html(json.len);
				$(".found").css("display","inline");
				$(".results").css("display","block");
				$(".searching, .no_results").css("display","none");
			}
		});
		query = query.split("&")[0].replace(/%20/g," ").replace(/%2C/g,",");
		$(".search_term").html(query);
		document.forms[formName].elements[0].value = "";
		document.forms["sbfoods"].elements[0].value = query;
		rowColor();
		rowHover();
		return false;
	}
}
function miniPP(y) {
	if(y == 1) {
		$("#mini_pc_content p").css("display","none");
		$("#mini_pc_content.portion_checker").hide("fast");
		$("#nutrition_fmt").show("slow");
	}
	else {
		$("#mini_pc_content p").css("display","block");
		$("#nutrition_fmt").hide("fast");
		$("#mini_pc_content.portion_checker").show("slow");
	}
	return false;
}
function showCat(query,cid,f) {
	query += "&r=" + cid;
	var cn = $("#c" + cid + " a").html().split("&nbsp;(")[0];
	if(f) { searchEarn(query,true,cn); }
	else { searchFood('sbfoods',true,query,true,cn); }
	return false;
}
function allCat() {
	$("#category_list1, #category_list2, .search_tips_fmt, .eb_overlay_cnt_fmt .anchor").css("display","none");
	$("#category_list3").fadeIn("slow");
	return false;
}
function backCat() {
	$("#category_list3").css("display","none");
	$("#category_list1, #category_list2, .search_tips_fmt, .anchor").fadeIn("slow");
	return false;
}
function searchBack(f) {
	var query = $(".search_term").html();
	if(f) { searchEarn(query); }
	else { searchFood('sbfoods',true,query); }
	return false;
}
function showResults(r,list,formName,query,start) {
	if(!start) { var start = r; }
	if(r<2) { 
		$(".num_res").html("result was");
		$(".fave_text").html("favorite activity");
	}
	else {
		$(".num_res").html("results were");
		$(".fave_text").html("favorite activities");
	}
	clearNutLabel();
	pagination(start,list,formName,query);
}
function selectFoodItem(itemid,formName) {
	var id = itemid.split("_")[0];
	var mu = itemid.split("_")[1];
	$(".selected_item_fmt").removeClass("selected_item_fmt");
	$("#" + itemid).addClass("selected_item_fmt");
	document.forms[formName].id.value = id;
	document.forms[formName].mu.value = mu;
	$("#cals").html("0");
	clearNutLabel();
	$(".selection").html("");
	if(itemid.indexOf("t") == -1) {
		var apiCall = setAPIcall("GetFoods",id);
		$.getJSON(apiCall, function(json){
			$.each(json,function(i,item) {
				if(item.mu == mu) {
					$(".selection").html(item.nm + "<span class=\"cals\">, " + Math.round(item.ca) + " calories</span>");
					$(".search_selection_fmt").css("background","#fdfdb2");
					nutLabel(item);
					earnCalc(formName);
				}
			});
		});
	}
	else {
		var cookieStr = (document.cookie.split(";")[ownfood]) ? unescape(document.cookie.split(";")[ownfood].split("=")[1]) : "";
		var data = (cookieStr != "") ? cookieStr.split(",") : "";
		var name = "";
		var cal = "";
		for(var d=0; d<data.length; d++) {
			if(data[d] != "" && (data[d].split("|")[0].split(":")[1] == id)) {
				name = data[d].split("|")[1].split(":")[1];
				cal = data[d].split("|")[3].split(":")[1];
			}
		}
		$(".selection").html(name + "<span>, " + Math.round(cal) + " calories</span>");
		$(".search_selection_fmt").css("background","#fdfdb2");
	}
	$("#select_nutr_fmt").fadeOut(showSpd);
	rowColor();
	rowHover();
}
/* Nutrition Label */
function nutLabel(item) {
	/* Conversions */
	switch (item.qt) {
		case "0.125": item.qt = "1/8"; break;
		case "0.25": item.qt = "1/4"; break;
		case "0.33": item.qt = "1/3"; break;
		case "0.5": item.qt = "1/2"; break;
		case "0.66": item.qt = "2/3"; break;
		case "0.75": item.qt = "3/4"; break;
	}
	/* Calculations */
	var cf = (Math.round(item.ft*9)>0) ? Math.round(item.ft*9) : "0";
	var ftp = (Math.round((parseFloat(item.ft)/65)*100)>0) ? Math.round((parseFloat(item.ft)/65)*100) : "0";
	var sfp = (Math.round((parseFloat(item.sf)/20)*100)>0) ? Math.round((parseFloat(item.sf)/20)*100) : "0";
	var chp = (Math.round((parseFloat(item.ch)/300)*100)>0) ? Math.round((parseFloat(item.ch)/300)*100) : "0";
	var sop = (Math.round((parseFloat(item.so)/2400)*100)>0) ? Math.round((parseFloat(item.so)/2400)*100) : "0";
	var cbp = (Math.round((parseFloat(item.cb)/300)*100)>0) ? Math.round((parseFloat(item.cb)/300)*100) : "0";
	var fbp = (Math.round((parseFloat(item.fb)/25)*100)>0) ? Math.round((parseFloat(item.fb)/25)*100) : "0";
	var prp = (Math.round((parseFloat(item.pr)/50)*100)>0) ? Math.round((parseFloat(item.pr)/50)*100) : "0";
	
	var vap = (Math.round((parseFloat(item.va)/5000)*100)>0) ? Math.round((parseFloat(item.va)/5000)*100) : "0";
	var vcp = (Math.round((parseFloat(item.vc)/60)*100)>0) ? Math.round((parseFloat(item.vc)/60)*100) : "0";
	var cap = (Math.round((parseFloat(item.cc)/1000)*100)>0) ? Math.round((parseFloat(item.cc)/1000)*100) : "0";
	var irp = (Math.round((parseFloat(item.fe)/18)*100)>0) ? Math.round((parseFloat(item.fe)/18)*100) : "0";
	/* Fill out table */
	$(".servingSize").html(item.qt + " " + item.mn.toLowerCase());
	$(".cal").html(Math.round(item.ca));
	$(".calFat").html(cf);
	$(".totFat").html(Math.round(item.ft) + "g");
	$(".totFatP").html(ftp);
	$(".satFat").html(Math.round(item.sf) + "g");
	$(".satFatP").html(sfp);
	$(".transFat").html(Math.round(item.tf) + "g");
	$(".chol").html(Math.round(item.ch) + "mg");
	$(".cholP").html(chp);
	$(".sod").html(Math.round(item.so) + "mg");
	$(".sodP").html(sop);
	$(".carb").html(Math.round(item.cb) + "g");
	$(".carbP").html(cbp);
	$(".dFiber").html(Math.round(item.fb) + "g");
	$(".dFiberP").html(fbp);
	$(".sugar").html(Math.round(item.su) + "g");
	$(".prot").html(Math.round(item.pr) + "g");
	$(".vitA").html(vap);
	$(".vitC").html(vcp);
	$(".calcium").html(cap);
	$(".iron").html(irp);
}
function clearNutLabel() {
	$(".servingSize").html("0");
	$(".cal").html("0");
	$(".calFat").html("0");
	$(".totFat").html("0g");
	$(".totFatP").html("0");
	$(".satFat").html("0g");
	$(".satFatP").html("0");
	$(".transFat").html("0g");
	$(".chol").html("0mg");
	$(".cholP").html("0");
	$(".sod").html("0mg");
	$(".sodP").html("0");
	$(".carb").html("0g");
	$(".carbP").html("0");
	$(".dFiber").html("0g");
	$(".dFiberP").html("0");
	$(".sugar").html("0g");
	$(".prot").html("0g");
	$(".protP").html("0");
	$(".vitA").html("0");
	$(".vitC").html("0");
	$(".calcium").html("0");
	$(".iron").html("0");
}
/*==================== Activities ==============================*/
/* Add Activity */
function addAct(formName) {
	var cookieStr = (document.cookie.split(";")[addactv]) ? unescape(document.cookie.split(";")[addactv].split("=")[1]) : "";
	var valid = validate(formName);
	if (document.cookie.split(";")[addactv] && document.cookie.split(";")[addactv].split("=")[1]) {
		var fd = unescape(document.cookie.split(";")[addactv].split("=")[1]);
		fd = fd.split(",");
		$(fd).each(function(f) {
			var tid = fd[f].split("|")[0].split(":")[1];
			if((formName == "addactv" || formName == "addfavactv" || formName == "newact") && tid == $("#actid").val()) { removeAct(tid); }
		});
	}
	if(valid) {
		if(document.forms[formName].c.value == "0") { calculate(formName); }
		var act = formCStr(formName,"addactv").split("|");
		if(al >= 10) {
			alert("Sorry, you have already added the maximum number of activities.");
			return false;
		}
		else {
			if((document.forms[formName].afaves.checked)) { addActFave(formName); }
			cookieStr += formCStr(formName,"addactv") + ",";
			writeSessionCookie("addactv",cookieStr);
			switch (formName) {
				case "addactv": overlay('#activity_search_fmt'); break;
				case "addfavactv": overlay('#activity_faves_fmt'); break;
				case "updactv": overlay('#activity_dur_fmt'); break;
				case "newactv": overlay('#add_new_act_fmt'); break;
			}
			if(act[0]) {
				var aid = act[0].split(":")[1];
				acts[aid] = new actObject(act);
				writeAct(aid);
				al++;
			}
			$(document.forms).each(function() { this.reset(); });
		}
	}
	return false;
}
/* Add/Remove Fave Activity to/from Cookie */
function addActFave(formName) {
	var str = formCStr(formName,"actfave");
	var cookieStr = (document.cookie.split(";")[actfave]) ? unescape(document.cookie.split(";")[actfave].split("=")[1]) : "";
	var num;
	if (document.cookie.split(";")[actfave] && document.cookie.split(";")[actfave].split("=")[1]) {
		var fd = unescape(document.cookie.split(";")[actfave].split("=")[1]);
		fd = fd.split(",");
		num = fd.length;
		$(fd).each(function(f) {
			var tid = fd[f];
			if(tid == $("#actid").val()) {
				var query = $("#actid").val() + ",";
				cookieStr = cookieStr.replace(query,"");
				num--;
			}
		});
	}
	if(formName != "addfavactv") {
		if (num > 35) {
			alert("Sorry, you have already added the maximum number of favorite activities.  You must remove an activity in order to add a new one to your favorites list.");
		}
		else {
			cookieStr += str.split("|")[0].split(":")[1] + ",";
			writePersistentCookie("actfave",cookieStr);
		}
	}
	else {
		writePersistentCookie("actfave",cookieStr);
	}
}
/* Remove Activity from Log */
function removeAct(id,g) {
	var formName = "addactv";
	if(acts[id].s == ""){
		acts[id].s = "0";
	}
	var cookieStr = (document.cookie.split(";")[addactv]) ? unescape(document.cookie.split(";")[addactv].split("=")[1]) : "";
	var query = "id:" + id + "|c:" + acts[id].c + "|h:" + acts[id].h + "|m:" + acts[id].m + ",";
	cookieStr = cookieStr.replace(query,"");
	writeSessionCookie(formName,cookieStr);
	nutr.burned = nutr.burned - parseInt(acts[id].c);
	al--;
	$("#activity_fmt #" + id).replaceWith("");
	acts[id] = "";
	rowColor();
	replaceNV(g);
	return false;
}
/* Edit Activity (brings up overlay with form) */
function editAct(id) {
	if(id != "") {
		var actname = "";
		if(id.indexOf("t") == -1) {
			var apiCall = setAPIcall("GetActivity",id);
			$.getJSON(apiCall, function(json){
				$.each(json,function(i,item) { actname = item.nm; if(actname != "") { $("#act_dur_h3").html(actname); } });
			});
		}
		else {
			var cookieStr = (document.cookie.split(";")[ownactv]) ? unescape(document.cookie.split(";")[ownactv].split("=")[1]) : "";
			var data = cookieStr.split(",");
			for(var t = 0; t<data.length; t++) {
				if(data[t].split("|")[0].split(":")[1] == id) { actname = data[t].split("|")[1].split(":")[1]; if(actname != "") { $("#act_dur_h3").html(actname); } }
			}
		}
		if(($("#act_dur_h3").html() == "&nbsp;" || $("#act_dur_h3").html() == null) && actname != "") { $("#act_dur_h3").html(actname); }
		fillEditForm2(id,actname);
	}
	return false;
}
function fillEditForm2(id,an) {
	var actname = an;
	if(actname != "") { $("#act_dur_h3").html(actname); }
	document.updactv.h.value = acts[id].h;
	document.updactv.m.value = acts[id].m;
	document.updactv.c.value = acts[id].c;
	document.updactv.id.value = id;
}
/* Update Activity (removes the activity from the log and adds it back with the changes) */
function updateAct() {
	var valid = validate("updactv");
	if(valid) {
		var id = document.updactv.id.value;
		removeAct(id,1);
		calculate("updactv",1);
	}
	return false;
}
/* Add Activity Not Listed */
function newAct() {
	var formName = "newactv";
	document.newactv.id.value = "0";
	var valid = validate(formName);
	if(valid) {
		document.newactv.id.value = setActId(formName);
		document.newactv.met.value = setMET(formName);
		var newData = formCStr(formName,"ownactv");
		newData = newData.replace(/\,/,' ');
		var query = newData + ",";
		var cookieStr = (document.cookie.split(";")[ownactv]) ? unescape(document.cookie.split(";")[ownactv].split("=")[1]) : "";
		var cookieStr2 = (document.cookie.split(";")[favoact]) ? unescape(document.cookie.split(";")[favoact].split("=")[1]) : "";
		// Session Cookie
		if (document.cookie.split(";")[ownactv] && cookieStr != "") {
			if(cookieStr.indexOf(query) != -1) {
				cookieStr = cookieStr.replace(query,"");
			}
		}
		cookieStr += query;
		writeSessionCookie("ownactv",cookieStr);
		// Persistent Cookie
		query = newData.replace(newData.split("|")[0] + "|","") + ",";
		if (document.cookie.split(";")[favoact] && cookieStr2 != "") {
			if(cookieStr2.indexOf(query) != -1) {
				cookieStr2 = cookieStr2.replace(query,"");
			}
		}
		cookieStr2 += query;
		writePersistentCookie("favoact",cookieStr2);
		calculate(formName,1);
	}
	return false;
}
/* Determine the id for User-Created Activities */
function setActId(formName) {
	var id = "0", ids = 0;
	var cookieStr = (document.cookie.split(";")[ownactv]) ? unescape(document.cookie.split(";")[ownactv].split("=")[1]) : "";
	if (document.cookie.split(";")[ownactv] && document.cookie.split(";")[ownactv].split("=")[1]) {
		var fd = unescape(document.cookie.split(";")[ownactv].split("=")[1]).split(",");
		$(fd).each(function(f) {
			if(fd[f].split("|")[1] && fd[f].split("|")[1].split(":")[1]) {
				if(fd[f].split("|")[1].split(":")[1].toLowerCase() == $("#aname").val().toLowerCase()) { id = fd[f].split("|")[0].split(":")[1]; }
				ids++;
			}
		});
	}
	if(id == "0") { id = "t0"; }
	return id;
}
/* Determine the MET for User-Created Activities */
function setMET(formName) {
	var met = 0;
	var cal = parseFloat(document.newactv.c.value);
	var tm = (parseFloat(document.newactv.h.value)*60)+parseFloat(document.newactv.m.value);
	met = (Math.round((((cal/tm)*60)/(user.weight/2.2))*10))/10;
	return met;
}
/* My Favorite Activities */
function faveAct() {
	var query = "";
	var r = 0;
	var acfvs = new Array();
	$("#act_faves_list").empty();
	$(".search_selection_fmt").css("background","#ffffff");
	if (document.cookie.split(";")[actfave] && (document.cookie.split(";")[actfave].split("=")[1] && document.cookie.split(";")[actfave].split("=")[1] != 'undefined')) {
		var actdata = unescape(document.cookie.split(";")[actfave].split("=")[1]);
		actdata = actdata.split(",");
		$(actdata).each(function(f) {
			if(actdata[f] != "") {
				acfvs[f] = actdata[f];
				if(acfvs[f].indexOf("t") == -1 && acfvs[f] != "") {
					query += (query) ? "," + acfvs[f] : acfvs[f];
				}
				else {
					var cookieStr = (document.cookie.split(";")[ownactv]) ? unescape(document.cookie.split(";")[ownactv].split("=")[1]) : "";
					var data = (cookieStr != "") ? cookieStr.split(",") : "";
					var name = "";
					for(var d=0; d<data.length; d++) {
						if(data[d] != "" && (data[d].split("|")[0].split(":")[1] == acfvs[f])) {
							name = data[d].split("|")[1].split(":")[1];
						}
					}
					if(name != "") {
						results[r] = new aSearchObjectU(acfvs[f],name);
						r++;
						$(".results_num").html(r);
					}
					if(r<1) {
						$(".results_num").html("0");
						$(".found").css("display","inline");
						$(".no_results").css("display","block");
						$(".searching, .results").css("display","none");
					}
					else {
						showResults(r,"#act_faves_list","addfavactv");
						$(".results_num").html(r);
						$(".found").css("display","inline");
						$(".results").css("display","block");
						$(".searching, .no_results").css("display","none");
					}
				}
			}
		});
	}
	if(query != "") {
		var apiCall = setAPIcall("GetActivity",query);
		$.getJSON(apiCall, function(json){
			$.each(json,function(i,item) {
				results[r] = new aSearchObject(item);
				r++;
				$(".results_num").html(r);
			});
			if(r<1) {
				$(".results_num").html("0");
				$(".found").css("display","inline");
				$(".no_results").css("display","block");
				$(".searching, .results").css("display","none");
			}
			else {
				showResults(r,"#act_faves_list","addfavactv");
				$(".results_num").html(r);
				$(".found").css("display","inline");
				$(".results").css("display","block");
				$(".searching, .no_results").css("display","none");
			}
		});
	}
	else if(r<1) {
		$(".results_num").html("0");
		$(".found").css("display","inline");
		$(".no_results").css("display","block");
		$(".searching, .results").css("display","none");
	}
	return false;
}
/* Activity Search Functions */
function searchAct(formName,sbar,q) {
	$("h3 span.no_error").css("display","inline");
	$("h3 strong.error").css("display","none");
	var query = (q) ? q : document.forms[formName].elements[0].value;
	if((query.toLowerCase() == "exercise or activity" || query == "") && sbar != false) {
		alert("Please enter an exercise or activity to search for.");
		document.forms[formName].elements[0].focus();
		return false;
	}
	else if(query.length < 2) {
		alert("Sorry, you must enter more than one character.");
		document.forms[formName].elements[0].focus();
		return false;
	}
	else {
		document.forms['sbactvs'].elements[0].focus();
		if(sbar) {
			$(".no_results, .results").css("display","none");
			$("#act_search_list").empty();
			document.forms['addactv'].id.value = 0;
			$(".selection, .results_num").html("");
			$(".search_selection_fmt").css("background","#ffffff");
		}
		var r = 0;
		var apiCall = setAPIcall("SearchActivity",query.replace(/[^a-zA-Z 0-9 ,&]+/g,' '));
		ajaxError();
		$.getJSON(apiCall, function(json){
			results = new Array();
			if(json.items){
				$.each(json.items,function(i,item) {
					results[r] = new aSearchObject(item);
					r++;
				});
			}
			if(r<1) {
				$(".results_num").html("0");
				$(".found").css("display","inline");
				$(".no_results").css("display","block");
				$(".searching, .results").css("display","none");
			}
			else {
				showResults(json.len,"#act_search_list","addactv",query);
				$(".results_num").html(json.len);
				$(".found").css("display","inline");
				$(".results").css("display","block");
				$(".searching, .no_results").css("display","none");
			}
		});
		$(".search_term").html(query);
		document.forms["sbactvs"].elements[0].value = query;
		document.forms[formName].elements[0].value = "";
		return false;
	}
}
function selectActItem(itemid,formName) {
	$(".selected_item_fmt").removeClass("selected_item_fmt");
	$("#" + itemid).addClass("selected_item_fmt");
	document.forms[formName].id.value = itemid;
	$(".selection").html("");
	if(itemid.indexOf("t") == -1) {
		var apiCall = setAPIcall("GetActivity",itemid);
		$.getJSON(apiCall, function(json){ 
			$.each(json,function(i,item) {
				$(".selection").html(item.nm);
				$(".search_selection_fmt").css("background","#fdfdb2");
				if((parseInt(document.forms[formName].h.value) + parseInt(document.forms[formName].m.value)) > 0) { calculate(formName); }
			});
		});
	}
	else {
		var cookieStr = (document.cookie.split(";")[ownactv]) ? unescape(document.cookie.split(";")[ownactv].split("=")[1]) : "";
		var data = (cookieStr != "") ? cookieStr.split(",") : "";
		var name = "";
		for(var d=0; d<data.length; d++) {
			if(data[d] != "" && (data[d].split("|")[0].split(":")[1] == itemid)) {
				name = data[d].split("|")[1].split(":")[1];
			}
		}
		$(".selection").html(name);
		$(".search_selection_fmt").css("background","#fdfdb2");
	}
	if(acts[itemid]) {
		document.forms[formName].h.value = acts[itemid].h;
		document.forms[formName].m.value = acts[itemid].m;
		document.forms[formName].c.value = acts[itemid].c;
	}
	rowColor();
}
/* Calculate Calories Burned */
function calculate(formName,add) {
	var id = document.forms[formName].id.value;
	var mins = parseInt(document.forms[formName].m.value);
	if(mins > 59) {
		document.forms[formName].h.value = parseInt(document.forms[formName].h.value) + ((mins-(mins%60))/60);
		document.forms[formName].m.value = mins = (mins%60);
	}
	var hours = parseInt(document.forms[formName].h.value);
	if(hours > 10 || (hours == 10 && mins > 0)) { alert("You may enter up to 10 hours of activity at a time. If you have exercised for more then 10 hours please create a second activity entry. Thank you."); document.forms[formName].h.focus(); return false; }
	else if(id != "") {
		var w = (formName == "burnact") ? parseInt(document.forms[formName].w.value) : user.weight;
		var totMins = ((hours*60)+mins);
		var cal = 0;
		if(w == "" || w == 0) { alert("Please enter your weight in pounds."); document.forms[formName].w.focus(); return false; }
		else if(isNaN(w)) { alert("Please enter a number for your weight. Thank you."); document.forms[formName].w.value = ""; document.forms[formName].w.focus(); return false; }
		else if(parseInt(w) < 90 || parseInt(w) > 800) { alert("If you are below 90 lbs or above 800 lbs we advise that you speak with your doctor or other qualified healthcare provider before creating a Food & Fitness Plan. Thank you."); document.forms[formName].w.focus(); return false; }
		else if(totMins > 0 && totMins < 601 && id != 0) {
			if(id.indexOf("t") == -1) {
				var apiCall = setAPIcall("GetActivity",id);
				$.getJSON(apiCall, function(json){
					$.each(json,function(i,item) { cal = (Math.round((((w/2.2)*item.met)/60)*totMins)>0) ? Math.round((((w/2.2)*item.met)/60)*totMins) : "0"; document.forms[formName].c.value = cal; $("#cals span").html(cal); if(formName != "burnact" && add) { addAct(formName); } });
				});
			}
			else {
				var cookieStr = (document.cookie.split(";")[ownactv]) ? unescape(document.cookie.split(";")[ownactv].split("=")[1]) : "";
				var data = (cookieStr != "") ? cookieStr.split(",") : "";
				var met = 0;
				for(var d=0; d<data.length; d++) {
					if(data[d] != "" && (data[d].split("|")[0].split(":")[1] == id)) {
						met = data[d].split("|")[2].split(":")[1];
					}
				}
				cal = (Math.round((((w/2.2)*met)/60)*totMins)>0) ? Math.round((((w/2.2)*met)/60)*totMins) : "0";
				document.forms[formName].c.value = cal;
				$("#cals span").html(cal);
				if(formName != "burnact" && add) { addAct(formName); }
			}
			if(formName == "burnact" && !add) { return true; }
			else { return false; }
		}
		else { alert("Sorry, you have entered an incorrect value for your activity duration.  Please re-enter your activity duration with a number. Thank you."); document.forms[formName].h.focus(); return false; }
	}
	else { alert("Please click on an activity from your search result to make a selection. Thank you."); return false; }
}
/*==================== LOG =====================================*/
function writeLog() {
	$("#total_earned_fmt").html("0");
	$("#total_burned_fmt").html("0");
	$("#total_fat strong").html("0");
	$("#total_carbs strong").html("0");
	$("#total_protein strong").html("0");
	$("#total_sodium strong").html("0");
	$("#total_fiber strong").html("0");
	$("#total_sugar strong").html("0");
	nutr.tf = 0;
	nutr.tc = 0;
	nutr.pr = 0;
	nutr.so = 0;
	nutr.fb = 0;
	nutr.su = 0;
	nutr.earned = 0;
	nutr.burned = 0;
	$(meals).each(function(i) {
		writeMeal(meals[i]);
	});
	writeActs();
	rowColor();
	var b = setTimeout("confirmCal();",1000);
}
function clearLog() {
	$(meals).each(function(i) {
		meals[i] = new Array();
	});
	nutr.tf = 0;
	nutr.tc = 0;
	nutr.pr = 0;
	nutr.so = 0;
	nutr.fb = 0;
	nutr.su = 0;
	nutr.earned = 0;
	nutr.burned = 0;
	writeSessionCookie("addfood", "");
	writeSessionCookie("addactv", "");
	overlay('#new_plan_fmt');
	location.reload();
	//writeLog();
	return false;
}
function replaceNV(g) {
	(parseInt(nutr.burned)) ? $("#total_burned_fmt").html(parseInt(nutr.burned)): $("#total_burned_fmt").html("0");
	(parseInt(nutr.burned)) ? $("#acst").html(parseInt(nutr.burned)): $("#acst").html("0");
	(parseInt(nutr.earned)) ? $("#total_earned_fmt").html(parseInt(nutr.earned)): $("#total_earned_fmt").html("0");
	(parseInt(nutr.tf)) ? $("#total_fat strong").html(parseInt(nutr.tf)) : $("#total_fat strong").html("0");
	(parseInt(nutr.tc)) ? $("#total_carbs strong").html(parseInt(nutr.tc)) : $("#total_carbs strong").html("0");
	(parseInt(nutr.pr)) ? $("#total_protein strong").html(parseInt(nutr.pr)) : $("#total_protein strong").html("0");
	(parseInt(nutr.so)) ? $("#total_sodium strong").html(parseInt(nutr.so)) : $("#total_sodium strong").html("0");
	(parseInt(nutr.fb)) ? $("#total_fiber strong").html(parseInt(nutr.fb)) : $("#total_fiber strong").html("0");
	(parseInt(nutr.su)) ? $("#total_sugar strong").html(parseInt(nutr.su)) : $("#total_sugar strong").html("0");
	(parseInt(((nutr.tf*9)/nutr.earned)*100)>0) ? $("#total_fat_perc strong").html(parseInt(((nutr.tf*9)/nutr.earned)*100)) : $("#total_fat_perc strong").html("0");
	(parseInt(((nutr.tc*4)/nutr.earned)*100)>0) ? $("#total_carbs_perc strong").html(parseInt(((nutr.tc*4)/nutr.earned)*100)) : $("#total_carbs_perc strong").html("0");
	(parseInt(((nutr.pr*4)/nutr.earned)*100)>0) ? $("#total_pro_perc strong").html(parseInt(((nutr.pr*4)/nutr.earned)*100)) : $("#total_pro_perc strong").html("0");
	if (!g) {
		var maxCal = 1000;
		if(window.location.href.indexOf(earn) == -1) { maxCal = user.tdi; }
		callEarnFun(maxCal,nutr.earned);
		callBurnFun(nutr.burned);
	}
}
function confirmCal() {
	var total = 0;
	var ntf = 0;
	var ntc = 0;
	var npr = 0;
	var nso = 0;
	var nfb = 0;
	var nsu = 0;
	$(meals).each(function(i) {
		total += ni[meals[i]]["earned"];
		ntf += ni[meals[i]]["tf"];
		ntc += ni[meals[i]]["tc"];
		npr += ni[meals[i]]["pr"];
		nso += ni[meals[i]]["so"];
		nfb += ni[meals[i]]["fb"];
		nsu += ni[meals[i]]["su"];
	});
	nutr.earned = total;
	nutr.tf = ntf;
	nutr.tc = ntc;
	nutr.pr = npr;
	nutr.so = nso;
	nutr.fb = nfb;
	nutr.su = nsu;
	replaceNV();
	callBurnFun(nutr.burned);
}
function clearCookies() {
	if($("#remove").attr("checked") == true) {
		$(meals).each(function(i) {
			meals[i] = new Array();
		});
		nutr.tf = 0;
		nutr.tc = 0;
		nutr.pr = 0;
		nutr.so = 0;
		nutr.fb = 0;
		nutr.su = 0;
		nutr.earned = 0;
		nutr.burned = 0;
		writeSessionCookie("addfood", "");
		writeSessionCookie("addactv", "");
		writeSessionCookie("ownfood", "");
		writeSessionCookie("ownactv", "");
		writePersistentCookie("prsinfo", "");
		writePersistentCookie("foodfav", "");
		writePersistentCookie("actfave", "");
		writePersistentCookie("favofod", "");
		writePersistentCookie("favoact", "");
		overlay('#remove_cookie');
		writeLog();
	}
	else {
		alert("You must check the box to remove all your cookied Food & Fitness information.");
		$("#remove").focus();
	}
	return false;
}
/*===== Food Log =====*/
function writeMeal(meal) {
	var query = "";
	var c = 0;
	ni[meal]["earned"] = 0;
	ni[meal]["tf"] = 0;
	ni[meal]["tc"] = 0;
	ni[meal]["pr"] = 0;
	ni[meal]["so"] = 0;
	ni[meal]["fb"] = 0;
	ni[meal]["su"] = 0;
	for(var u=0; u < ufid.length; u++) {
		if(ufid[u] && foods[meal][ufid[u]]) {
			$("#" + meal).empty();
			var cookieStr = (document.cookie.split(";")[ownfood]) ? unescape(document.cookie.split(";")[ownfood].split("=")[1]) : "";
			var data = (cookieStr != "") ? cookieStr.split(",") : "";
			var name = "";
			var cal = 0;
			for(var d=0; d<data.length; d++) {
				if(data[d] != "" && (data[d].split("|")[0].split(":")[1] == ufid[u])) {
					name = data[d].split("|")[1].split(":")[1];
					cal = parseFloat(data[d].split("|")[3].split(":")[1]);
				}
			}
			var totCal = parseInt(foods[meal][ufid[u]].serving*cal);
			c += totCal;
			if(c<1) { c = "0"; }
			$("#" + meal + "st").html(c);
			c = parseInt(c);
			ni[meal]["earned"] += totCal;
			writeFoodRow(foods[meal][ufid[u]].id,name,meal,totCal,"n");
			rowColor();
		}
	}
	$(foods[meal]).each(function() {
		if(this.id) {
			query += (query) ? "," : "";
			query += this.id;
		}
	});
	if(query != "") {
		var apiCall = setAPIcall("GetFoods",query);
		$.getJSON(apiCall, function(json){
			$.each(json,function(i,item) {
				if(item.mu == foods[meal][item.id].mu) {
					var totCal = parseInt(foods[meal][this.id].serving*item.ca);
					writeFoodRow(item.id,item.nm,meal,totCal);
					rowColor();
					c += totCal;
					if(c<1) { c = "0"; }
					$("#" + meal + "st").html(c);
					c = parseInt(c);
					ni[meal]["earned"] += totCal;
					ni[meal]["tf"] += (parseFloat(item.ft)*foods[meal][this.id].serving);
					ni[meal]["tc"] += (parseFloat(item.cb)*foods[meal][this.id].serving);
					ni[meal]["pr"] += (parseFloat(item.pr)*foods[meal][this.id].serving);
					ni[meal]["so"] += (parseFloat(item.so)*foods[meal][this.id].serving);
					ni[meal]["fb"] += (parseFloat(item.fb)*foods[meal][this.id].serving);
					ni[meal]["su"] += (parseFloat(item.su)*foods[meal][this.id].serving);
				}
			});
		});
		rowColor();
	}
	var n = setTimeout("totalNutr('" + meal + "'); replaceNV();",500);
}
function writeFoodRow(id,name,meal,totCal,n) {
	if(n) { $("#" + meal).append('<div class="log_item_fmt log_row_fmt" id="' + id + "_" + foods[meal][id].mu + '"><div class="title_fmt">' + name + '</div><div class="amount_fmt"><span>' + foods[meal][id].s + foods[meal][id].sf + '</span><a href="" onclick="wmdPageLink(\'dc-showfood_edit\'); return overlay(\'#edit_food_fmt\',\'\',\'\',\'' + id + '\',\'' + meal + '\');">edit</a></div><div class="cal_fmt">' + totCal + '</div><div class="remove_fmt"><a href="" onclick="wmdPageLink(\'dc-showfood_rem\');return removeFood(\'' + meal + "\',\'" + id + '\');"><img src="http://img.webmd.com/dtmcms/live/webmd/consumer_assets/site_images/tools/food_fit/remove_btn.gif" alt="Remove this" width="12" height="12" border="0" class="remove_btn_fmt" /></a></div></div>'); }
	else { $("#" + meal).append('<div class="log_item_fmt log_row_fmt" id="' + id + "_" + foods[meal][id].mu + '"><div class="title_fmt">' + name + ' <a href="' + nutrition + '?id=' + id + '" target="_blank" onclick="ctrs(\'dc-showfood_info\');" title="See Nutritional Information for this food."><img src="http://img.webmd.com/dtmcms/live/webmd/consumer_assets/site_images/tools/food_fit/info_btn.gif" alt="See Nutritional Information for this food." width="13" height="12" border="0" class="food_info_fmt" /></a></div><div class="amount_fmt"><span>' + foods[meal][id].s + foods[meal][id].sf + '</span><a href="" onclick="wmdPageLink(\'dc-showfood_edit\'); return overlay(\'#edit_food_fmt\',\'\',\'\',\'' + id + '\',\'' + meal + '\');">edit</a></div><div class="cal_fmt">' + totCal + '</div><div class="remove_fmt"><a href="" onclick="wmdPageLink(\'dc-showfood_rem\'); return removeFood(\'' + meal + "\',\'" + id + '\');"><img src="http://img.webmd.com/dtmcms/live/webmd/consumer_assets/site_images/tools/food_fit/remove_btn.gif" alt="Remove this" width="12" height="12" border="0" class="remove_btn_fmt" /></a></div></div>'); }
}
function writeFood(meal,id) {
	var c = parseInt($("#" + meal + "st").html());
	if(id.indexOf("t") != -1) {
		if(foods[meal][id]) {
			var cookieStr = (document.cookie.split(";")[ownfood]) ? unescape(document.cookie.split(";")[ownfood].split("=")[1]) : "";
			var data = (cookieStr != "") ? cookieStr.split(",") : "";
			var name = "";
			var cal = 0;
			for(var d=0; d<data.length; d++) {
				if(data[d] != "" && (data[d].split("|")[0].split(":")[1] == id)) {
					name = data[d].split("|")[1].split(":")[1];
					cal = parseFloat(data[d].split("|")[3].split(":")[1]);
				}
			}
			var totCal = parseInt(foods[meal][id].serving*cal);
			c += totCal;
			if(c<1) { c = "0"; }
			$("#" + meal + "st").html(c);
			c = parseInt(c);
			nutr.earned += totCal;
			writeFoodRow(foods[meal][id].id,name,meal,totCal,"n");
			rowColor();
		}
	}
	else if(id != "") {
		var apiCall = setAPIcall("GetFoods",id);
		$.getJSON(apiCall, function(json){
			$.each(json,function(i,item) {
				if(item.mu == foods[meal][id].mu) {
					var totCal = parseInt(foods[meal][this.id].serving*item.ca);
					writeFoodRow(item.id,item.nm,meal,totCal);
					rowColor();
					c += totCal;
					if(c<1) { c = "0"; }
					$("#" + meal + "st").html(c);
					c = parseInt(c);
				}
			});
		});
		rowColor();
		addSubNutr(meal,id);
	}
	var n = setTimeout("replaceNV();",500);
}
function totalNutr(meal) {
	nutr.earned += ni[meal]["earned"];
	nutr.tf += ni[meal]["tf"];
	nutr.tc += ni[meal]["tc"];
	nutr.pr += ni[meal]["pr"];
	nutr.so += ni[meal]["so"];
	nutr.fb += ni[meal]["fb"];
	nutr.su += ni[meal]["su"];
	replaceNV();
}
function addSubNutr(meal,id,f) {
	var c = parseInt($("#" + meal + "st").html());
	var itemNutr = new Array();	
	if(id.indexOf("t") == -1) {
		var apiCall = setAPIcall("GetFoods",id);
		$.getJSON(apiCall, function(json){
			$.each(json,function(i,item) {
					if(item.mu == foods[meal][item.id].mu) {
						var totCal = parseInt(foods[meal][this.id].serving*item.ca);
						itemNutr["ea"] = (f=="s") ? (-totCal) : totCal;
						itemNutr["tf"] = (f=="s") ? (-(parseFloat(item.ft)*foods[meal][id].serving)) : (parseFloat(item.ft)*foods[meal][id].serving);
						itemNutr["tc"] = (f=="s") ? (-(parseFloat(item.cb)*foods[meal][id].serving)) : (parseFloat(item.cb)*foods[meal][id].serving);
						itemNutr["pr"] = (f=="s") ? (-(parseFloat(item.pr)*foods[meal][id].serving)) : (parseFloat(item.pr)*foods[meal][id].serving);
						itemNutr["so"] = (f=="s") ? (-(parseFloat(item.so)*foods[meal][id].serving)) : (parseFloat(item.so)*foods[meal][id].serving);
						itemNutr["fb"] = (f=="s") ? (-(parseFloat(item.fb)*foods[meal][id].serving)) : (parseFloat(item.fb)*foods[meal][id].serving);
						itemNutr["su"] = (f=="s") ? (-(parseFloat(item.su)*foods[meal][id].serving)) : (parseFloat(item.su)*foods[meal][id].serving);
						nutr.earned = parseInt(nutr.earned + itemNutr["ea"]);
						nutr.tf = parseInt(nutr.tf + itemNutr["tf"]);
						nutr.tc = parseInt(nutr.tc + itemNutr["tc"]);
						nutr.pr = parseInt(nutr.pr + itemNutr["pr"]);
						nutr.so = parseInt(nutr.so + itemNutr["so"]);
						nutr.fb = parseInt(nutr.fb + itemNutr["fb"]);
						nutr.su = parseInt(nutr.su + itemNutr["su"]);
						replaceNV();
						if(f=="s") {
							foods[meal][id] = "";
							((c + itemNutr["ea"])>0) ? $("#" + meal + "st").html(c + itemNutr["ea"]) : $("#" + meal + "st").html("0");
						}
					}
			});
		});
	}
	else {
		if(foods[meal][id]) {
			var cookieStr = (document.cookie.split(";")[ownfood]) ? unescape(document.cookie.split(";")[ownfood].split("=")[1]) : "";
			var data = (cookieStr != "") ? cookieStr.split(",") : "";
			var cal = 0;
			for(var d=0; d<data.length; d++) {
				if(data[d] != "" && (data[d].split("|")[0].split(":")[1] == id)) {
					cal = parseFloat(data[d].split("|")[3].split(":")[1]);
				}
			}
			var totCal = parseInt(foods[meal][id].serving*cal);
			itemNutr["ea"] = (f=="s") ? (-totCal) : totCal;
			nutr.earned = parseInt(nutr.earned + itemNutr["ea"]);
			replaceNV();
			if(f=="s") {
				foods[meal][id] = "";
				((c + itemNutr["ea"])>0) ? $("#" + meal + "st").html(c + itemNutr["ea"]) : $("#" + meal + "st").html("0");
			}
		}
	}
	replaceNV();
}
/*===== Activity Log =====*/
function writeAct(id) {
	if(id.indexOf("t") != -1) {
		if(acts[id]) {
			var cookieStr = (document.cookie.split(";")[ownactv]) ? unescape(document.cookie.split(";")[ownactv].split("=")[1]) : "";
			var data = (cookieStr != "") ? cookieStr.split(",") : "";
			var name = "";
			var cal = 0;
			for(var d=0; d<data.length; d++) {
				if(data[d] != "" && (data[d].split("|")[0].split(":")[1] == id)) {
					name = data[d].split("|")[1].split(":")[1];
				}
			}
			nutr.burned += acts[id].c;
			writeActRow(acts[id].id,name,acts[id].c,acts[id].tm);
			rowColor();
		}
	}
	else if(id != "") {
		var apiCall = setAPIcall("GetActivity",id);
		$.getJSON(apiCall, function(json){
			$.each(json,function(i,item) {
				var hours = (acts[item.id].h>0) ? acts[item.id].h + " hrs" : "";
				var mins = (acts[item.id].m>0) ? acts[item.id].h + " min" : "";
				nutr.burned += acts[item.id].c;
				writeActRow(item.id,item.nm,acts[item.id].c,acts[item.id].tm);
				rowColor();
			});
		});
		rowColor();
	}
	var n = setTimeout("replaceNV();",500);
}
function writeActs() {
	var query = "";
	$("#activity_fmt").empty();
	for(var u=0; u < uaid.length; u++) {
		if(uaid[u] && acts[uaid[u]]) {
			var cookieStr = (document.cookie.split(";")[ownactv]) ? unescape(document.cookie.split(";")[ownactv].split("=")[1]) : "";
			var data = (cookieStr != "") ? cookieStr.split(",") : "";
			var name = "";
			var cal = 0;
			for(var d=0; d<data.length; d++) {
				if(data[d] != "" && (data[d].split("|")[0].split(":")[1] == uaid[u])) {
					name = data[d].split("|")[1].split(":")[1];
					cal = parseFloat(data[d].split("|")[2].split(":")[1]);
				}
			}
			nutr.burned += acts[uaid[u]].c;
			writeActRow(uaid[u],name,acts[uaid[u]].c,acts[uaid[u]].tm);
			rowColor();
		}
	}
	$(acts).each(function() {
		if(this.id) {
			query += (query) ? "," : "";
			query += this.id;
		}
	});
	if(query != "") {
		var apiCall = setAPIcall("GetActivity",query);
		$.getJSON(apiCall, function(json){
			$.each(json,function(i,item) {
				var hours = (acts[item.id].h>0) ? acts[item.id].h + " hrs" : "";
				var mins = (acts[item.id].m>0) ? acts[item.id].h + " min" : "";
				nutr.burned += acts[item.id].c;
				writeActRow(item.id,item.nm,acts[item.id].c,acts[item.id].tm);
				rowColor();
			});
		});
		rowColor();
	}
	var n = setTimeout("replaceNV();",500);
}
function writeActRow(id,name,cal,dur) {
	$("#activity_fmt").append('<div class="log_item_fmt log_row_fmt" id="' + id + '"><div class="title_fmt">' + name + '</div><div class="amount_fmt"><span>' + dur + ' min</span><a href="" onclick="wmdPageLink(\'dc-showact_edit\'); return overlay(\'#activity_dur_fmt\',\'\',\'\',\'' + id + '\');" id="edit_' + id + '">edit</a></div><div class="cal_fmt">' + cal + '</div><div class="remove_fmt"><a href="" onclick="wmdPageLink(\'dc-showact_rem\'); return removeAct(\'' + id + '\');"><img src="http://img.webmd.com/dtmcms/live/webmd/consumer_assets/site_images/tools/food_fit/remove_btn.gif" alt="Remove this" width="12" height="12" border="0" class="remove_btn_fmt" /></a></div></div>');
}
/*==================== Nutrition Page ==========================*/
function loadLabel() {
	if(window.location.href.split("?")[1]) {
		var id = window.location.href.split("?")[1].split("=")[1];
		var apiCall = setAPIcall("GetFoods",id);
		$.getJSON(apiCall, function(json){
			$.each(json,function(i,item) {
				$("#food_name").html(item.nm);
				nutLabel(item);
			});
		});
	}
}
/*==================== O-Meters ================================*/
function removeSum(id) {
	if(id.indexOf("_") != -1) { nutr.earned = nutr.earned - parseInt($("#food_fmt #" + id + " .cal_fmt").html()); }
	else { nutr.burned = nutr.burned - parseInt($("#activity_fmt #" + id + " .cal_fmt").html()); }
	replaceNV();
	$("#activity_fmt #" + id + ", #food_fmt #" + id).remove();
	$("#activity_fmt, #food_fmt").append("<div class=\"log_item_fmt log_row_fmt blank_row\"><div class=\"remove_fmt\">&nbsp;</div><div class=\"title_fmt\">&nbsp;</div><div class=\"amount_fmt\">&nbsp;</div><div class=\"cal_fmt\">&nbsp;</div></div>");
	rowColor();
	return false;
}
function getQuery(str) {
	if(str.split('?')[1]) {
		var qs = str.split('?')[1].split('&');
		for(var y=0; y<qs.length; y++) {
			var pair = qs[y].split('=');
			if(pair[0] == "e" && str.indexOf(earn) != -1) {
				var ern = setTimeout("searchEarn('" + pair[1] + "');",fadeOutSpd);
			} else if(pair[0] == "b" && str.indexOf(burn) != -1) {
				var brn = setTimeout("searchBurn('" + pair[1] + "');",fadeOutSpd);
			}
		}
	}
	//else { $("#eb_content_fmt h3").css("display","none"); }
}
/*==================== Food-o-Meter ============================*/
function quickEarn(form) {
	var query = form.elements[0].value;
	if(query.toLowerCase() == "food or beverage" || query == "") {
		alert("Please enter a food or beverage to search for.");
		form.elements[0].focus();
		return false;
	}
	else if(query.length < 2) {
		alert("Sorry, you must enter more than one character.");
		form.elements[0].focus();
		return false;
	}
	window.location.href = earn + "?e=" + query.replace(/ /g,"%20").replace(/,/g,"%2C").replace(/'/g,"%27");
	return false;
}
function quickESrch(l,d) {
	if(window.location.href.indexOf(earn) != -1) { if(d) { searchEarn(l); } else { searchEarn($(l).html()); } }
	else if(window.location.href.indexOf(burn) != -1) { if(d) { searchBurn(l); } else {searchBurn($(l).html()); } }
	return false;
}
function searchEarn(query,c,cn) {
	query = query.replace(/%20/g," ").replace(/%2C/g,",").replace(/%27/g,"\'");
	$("h3 span.no_error").css("display","inline");
	$("h3 strong.error").css("display","none");
	if(query.toLowerCase() == "example: apple" || query == "") {
		alert("Please enter a food or beverage to search for.");
		//document.forms[formName].elements[0].focus();
		return false;
	}
	else if(query.length < 2 ) {
		alert("Sorry, you must enter more than one character.");
		//document.forms[formName].elements[0].focus();
		return false;
	}
	else {
		refreshAllAds();
		wmdPageview('');
		$(".found, .no_results, .results, #cat_tips_fmt, #wthbtwn, #incat, #searchback, #category_list3").css("display","none");
		$(".searching").css("display","inline");
		$("#food_search_list, #category_list1, #category_list2, #category_list3").empty();
		$("#def_land_fmt").hide("fast");
		$("#search_pane").fadeIn("slow", function() {
			$(".anchor").css("background-image","url(http://img.webmd.com/dtmcms/live/webmd/consumer_assets/site_images/modules/loading_small.gif)");
			document.forms['earnfood'].id.value = 0;
			document.forms['earnfood'].mu.value = 0;
			document.forms['searchearn'].earn_search.value = query.split("&")[0].replace(/%26/g,"&");
			document.forms['advsrchearn'].term.value = query.split("&")[0].replace(/%26/g,"&");
			$(".selection, .results_num, #incat strong").html("");
			$("#select_nutr_fmt,#category_list1, #category_list2, .search_tips_fmt, .anchor").css("display","block");
			$(".food_results_list_fmt, .activity_results_list_fmt").scrollTop(0);
			var r = 0;
			var topCat = new Array();
			results = new Array();
			var apiCall = setAPIcall("SearchFoods",query.replace(/[^a-zA-Z 0-9 ,&=]+/g,' '));
			ajaxError();
			$.getJSON(apiCall, function(json){
				if(json.items){
					if(json.refs.length>1 && json.len > 50 && !c) {
						$.each(json.refs, function(i,item) {
							var cat = "<li id='c" + item.id + "'><a href='' onclick='wmdPageLink(\"dc-fd-srchr_" + (i+1) + "\"); return showCat(\"" + query + "\",\"" + item.id + "\",true);'>" + item.nm + "&nbsp;(" + item.no + ")</a></li>";
							if(json.refs.length<=maxCat) {
								if(i <= (json.refs.length/2)) { $("#category_list1").append(cat); }
								else { $("#category_list2").append(cat); }
							}
							else {
								if(i<maxCat) {
									if(i <= (maxCat/2)) { $("#category_list1").append(cat); }
									else { $("#category_list2").append(cat); }
								}
								topCat += item.no + ":" + cat + "|";
								$("#category_list3").append(cat);
							}
						});
						if(json.refs.length>maxCat) {
							$("#category_list2").append("<li id='all_cat'><a href='' onclick='wmdPageLink(\"dc-fd-srchr_more\"); return allCat();'><strong>See All Categories (" + json.refs.length + ")</strong></a></li>");
							$("#category_list3").append("<li id='back_cat'><a href='' onclick='return backCat();'><strong>Back to Search Results</strong></a></li>");
						}
						$("#cat_tips_fmt").css("display","block");
					}
					else if(c) {
						$("#incat, #searchback").css("display","inline");
						$("#incat strong").html(cn);
					}
					results = new Array();
					$.each(json.items,function(i,item) {
						switch (item.qt) {
							case "0.125": item.qt = "1/8"; break;
							case "0.25": item.qt = "1/4"; break;
							case "0.33": item.qt = "1/3"; break;
							case "0.5": item.qt = "1/2"; break;
							case "0.66": item.qt = "2/3"; break;
							case "0.75": item.qt = "3/4"; break;
						}
						results[r] = new fSearchObject(item);
						r++;
					});
				}
				if(r<1) {
					$(".results_num").html("0");
					$(".found").css("display","inline");
					$(".no_results").css("display","block");
					$(".searching, .results").css("display","none");
				}
				else {
					showResults(json.len,"#food_search_list","earnfood",query);
					$(".results_num").html(json.len);
					$(".found").css("display","inline");
					$(".results").css("display","block");
					$(".searching, .no_results").css("display","none");
				}
			});
			query = query.split("&")[0].replace(/%20/g," ").replace(/%2C/g,",").replace(/%26/g,"&");
			if($(".no_error strong").html().indexOf("\"") > 0) { $(".no_error strong").html("\"<span class='search_term'></span>\""); }
			$(".search_term").html(query);
			document.forms['searchearn'].elements[0].value = "";
		});
		return false;
	}
}
function earnFood(formName) {
	if($("#cals").html() == "0") { earnCalc(formName); }
	var valid = validate(formName);
	var rows = $(".blank_row").length;
	if(valid && rows > 0) {
		var food = formCStr(formName,formName).split("|");
		if(food[0]) {
			var fid = food[0].split(":")[1];
			earned[fid] = new foodObject(food);
			writeEarnedFood(fid);
			$(document.forms).each(function() { this.reset(); });
			$(".selection").html("");
			$(".selected_item_fmt").removeClass("selected_item_fmt");
			$("#select_nutr_fmt").fadeIn(showSpd);
			clearNutLabel();
		}
		$("#cals").html("0");
	}
	else if(valid) {
		alert("You may only add up to 5 foods.  Please either remove a food from your list or check out the Food & Fitness Planner to plan your meals.");
	}
	earnCalc(formName);
	return false;
}
function writeEarnedFood(id) {
	if(id != "") {
		var apiCall = setAPIcall("GetFoods",id);
		$.getJSON(apiCall, function(json){
			$.each(json,function(i,item) {
				if(item.mu == earned[id].mu) {
					var totCal = parseInt(earned[this.id].serving*item.ca);
					writeEarnedFoodRow(item.id,item.nm,totCal);
					rowColor();
					nutr.earned += totCal;
					replaceNV();
				}
			});
		});
	}
}
function writeEarnedFoodRow(id,name,totCal) {
	$(".blank_row:first").replaceWith('<div class="log_item_fmt log_row_fmt" id="' + id + "_" + earned[id].mu + '"><div class="remove_fmt"><a href="" onclick="wmdPageLink(\'dc-fd-planlist_del\'); return removeSum(\'' + id + "_" + earned[id].mu + '\');"><img src="http://img.webmd.com/dtmcms/live/webmd/consumer_assets/site_images/tools/food_fit/remove_btn.gif" alt="Remove this" width="12" height="12" border="0" class="remove_btn_fmt" /></a></div><div class="title_fmt">' + name + '</div><div class="amount_fmt"><span>' + earned[id].s + earned[id].sf + '</span></div><div class="cal_fmt">' + totCal + '</div></div>');
}
function earnCalc(formName) {
	var serv = parseInt(document.forms[formName].s.value) + parseFloat(document.forms[formName].sf.value);
	var id = document.forms[formName].id.value;
	var mu = document.forms[formName].mu.value;
	if(id !='' && id != "0") {
		var apiCall = setAPIcall("GetFoods",id);
		$.getJSON(apiCall, function(json){
			$.each(json,function(i,item) {
				if(item.mu == mu) {
					var totCal = (parseInt(serv*item.ca)>0) ? parseInt(serv*item.ca) : "0";
					$("#cals").html(totCal);
				}
			});
		});
	}
	else {
		$("#cals").html("0");
	}
}
function swtchTabs(type) {
	if(type == "a") { $("#fom_search_rdr").css("display","none"); $("#fom_advsearch_rdr").css("display","block"); }
	else { $("#fom_search_rdr").css("display","block"); $("#fom_advsearch_rdr").css("display","none"); }
	return false;
}
function advSrchEarn(form) {
	$("h3 span.no_error").css("display","inline");
	$("h3 strong.error").css("display","none");
	if(validate("advsrchearn")) {
		refreshAllAds();
		wmdPageview('');
		if(form.term.value == "example: apple" || query == "") { alert("Please enter a food or beverage to search for."); form.term.focus(); }
		else if(form.term.value != "" && form.term.value.length < 2) { alert("Sorry, you must enter more than one character."); form.term.focus(); return false; }
		else {
			$("#eb_content_fmt h3").css("display","block");
			checkVals(form);
			var cat = (form.cats.value!= "0") ? "&r=" + form.cats.value : "&r=" + $("#cat_fmt input:radio:checked").val();
			var cn = "";
			var c = false;
			var kw = (form.term.value != "") ? "&kw=" + form.term.value : "";
			if(cat == "&r=0" || cat == "&r=undefined") { cat = ""; } else { c = true; }
			if(c) { cn = $("#cats option[value='" + cat.split("=")[1] + "']").text(); }
			var query = kw + "&typ=" + form.wth.value + "&min=" + form.more.value + "&max=" + form.less.value + cat;
			var apiCall = setAPIcall("AdvSearchFoods",query);
			$(".anchor").css("background-image","url(http://img.webmd.com/dtmcms/live/webmd/consumer_assets/site_images/modules/loading_small.gif)");
			$(".found, .no_results, .results, #cat_tips_fmt, #incat, #searchback, #category_list3").css("display","none");
			$(".searching").css("display","inline");
			$("#food_search_list, #category_list1, #category_list2, #category_list3").empty();
			$(".selection, .results_num, #incat strong").html("");
			$("#select_nutr_fmt,#category_list1, #category_list2, .search_tips_fmt, .anchor").css("display","block");
			$(".food_results_list_fmt, .activity_results_list_fmt").scrollTop(0);
			$("#def_land_fmt").hide("fast");
			$("#search_pane").fadeIn("slow");
			var r = 0;
			var topCat = new Array();
			results = new Array();
			ajaxError();
			$.getJSON(apiCall, function(json){
				if(json.items){
					if(json.refs.length>1 && json.len > 50 && !c) {
						$.each(json.refs, function(i,item) {
							var cat = "<li id='c" + item.id + "'><a href='' onclick='wmdPageLink(\"dc-fd-srchr_" + (i+1) + "\"); return showCat(\"" + query + "\",\"" + item.id + "\",true);'>" + item.nm + "&nbsp;(" + item.no + ")</a></li>";
							if(json.refs.length<=maxCat) {
								if(i <= (json.refs.length/2)) { $("#category_list1").append(cat); }
								else { $("#category_list2").append(cat); }
							}
							else {
								if(i<maxCat) {
									if(i <= (maxCat/2)) { $("#category_list1").append(cat); }
									else { $("#category_list2").append(cat); }
								}
								topCat += item.no + ":" + cat + "|";
								$("#category_list3").append(cat);
							}
						});
						if(json.refs.length>maxCat) {
							$("#category_list2").append("<li id='all_cat'><a href='' onclick='wmdPageLink(\"dc-fd-srchr_more\"); return allCat();'><strong>See All Categories (" + json.refs.length + ")</strong></a></li>");
							$("#category_list3").append("<li id='back_cat'><a href='' onclick='return backCat();'><strong>Back to Search Results</strong></a></li>");
						}
						$("#cat_tips_fmt").css("display","block");
					}
					else if(c) {
						$("#incat, #searchback").css("display","inline");
						$("#incat strong").html(cn);
					}
					results = new Array();
					$.each(json.items,function(i,item) {
						switch (item.qt) {
							case "0.125": item.qt = "1/8"; break;
							case "0.25": item.qt = "1/4"; break;
							case "0.33": item.qt = "1/3"; break;
							case "0.5": item.qt = "1/2"; break;
							case "0.66": item.qt = "2/3"; break;
							case "0.75": item.qt = "3/4"; break;
						}
						results[r] = new fSearchObject(item);
						r++;
					});
				}
				if(r<1) {
					$(".results_num").html("0");
					$(".found").css("display","inline");
					$(".no_results").css("display","block");
					$(".searching, .results").css("display","none");
				}
				else {
					showResults(json.len,"#food_search_list","earnfood",query);
					$(".results_num").html(json.len);
					$(".found").css("display","inline");
					$(".results").css("display","block");
					$(".searching, .no_results").css("display","none");
				}
			});	
			var qs = query.split('&');
			for(var y=0; y<qs.length; y++) {
				var pair = qs[y].split('=');
				switch(pair[0]) {
					case "typ": var ty = pair[1]; break;
					case "min": var mi = pair[1]; break;
					case "max": var ma = pair[1]; break;
				}
			}
			var meu = "g";
			switch (ty) {
				case "ca": ty = "Calories"; meu = ""; break;
				case "ft": ty = "total fat"; break;
				case "sf": ty = "saturated fat"; break;
				case "ch": ty = "cholesterol"; meu = "mg"; break;
				case "so": ty = "sodium"; meu = "mg"; break;
				case "cb": ty = "carbohydrates"; break;
				case "fb": ty = "fiber"; break;
				case "su": ty = "sugars"; break;
				case "pr": ty = "protein"; break;
			}
			$("#wthbtwn").css("display","inline");
			var range = (ty == "Calories") ? mi + meu + " and " + ma + meu + " " + ty: mi + meu + " and " + ma + meu + " of " + ty;
			$("#wthbtwn span").html(range);
			if(c) {
				$("#incat, #searchback").css("display","inline");
			}
			if(query.indexOf("&kw=") != -1) {
				query = query.split("&")[1].replace("kw=","").replace(/%20/g," ").replace(/%2C/g,",");
				$("h3 strong").html("\"<span class=\"search_term\">" + query + "</span>\"");
				$("#incat strong").html(cn);
				$(".search_term").html(query);
			}
			else {
				$("h3 strong").html("<span class=\"search_term\"><span style=\"font-weight:normal\">foods</span></span>");
				$("#incat strong").html(cn);
			}
		}
	}
	return false;
}
function checkVals(form) {
	if(parseInt(form.more.value) > parseInt(form.less.value)) {
		var mn = form.less.value;
		var mx = form.more.value;
		form.less.value = mx;
		form.more.value = mn;
	}
	if(form.more.value < 0) { form.more.value = "0"; }
	if(form.less.value < 0) { form.less.value = "0"; }
	if(form.more.value == form.less.value && form.more.value != "0") { form.more.value = (form.less.value-1); }
}
/* Ads Refresh */
function refreshAllAds() {
	var transTileId = Math.round(99999999*Math.random());
	/* Grab the top divs for both ads on the page */
	$("#leftAd_fmt, #rightAd_fmt, #bannerAd_fmt").each( function() {
		/* Remove all children of the original webmd iframe */ 
		$(this).children("*[id*='Ad_Iframe']").children("*").remove();
		/* Update the src for each  */
		var strSrc = $(this).children("*[id]").attr("src");
		strSrc = strSrc.replace(new RegExp("transactionID=[0-9]+"), "transactionID=" + transTileId);
		strSrc = strSrc.replace(new RegExp("tile=[0-9]*"), "tile=" + transTileId);
		$(this).children("*[id]").attr({src: strSrc});
	});               
}
/*==================== Fit-o-Meter ============================*/
function quickBurn(form) {
	var query = form.elements[0].value;
	if(query.toLowerCase() == "exercise or activity" || query == "") {
		alert("Please enter an exercise or activity to search for.");
		form.elements[0].focus();
		return false;
	}
	else if(query.length < 2) {
		alert("Sorry, you must enter more than one character.");
		form.elements[0].focus();
		return false;
	}
	window.location.href = burn + "?b=" + query;
	return false;
}
function searchBurn(query) {
	query = query.replace(/%20/g," ").replace(/%2C/g,",").replace(/%27/g,"\'");
	$("h3 span.no_error").css("display","inline");
	$("h3 strong.error").css("display","none");
	if(query.toLowerCase() == "type in an activity, exercise or sport" || query == "") {
		alert("Please enter an activity, exercise or sport to search for.");
		//document.forms[formName].elements[0].focus();
		return false;
	}
	else if(query.length < 2 ) {
		alert("Sorry, you must enter more than one character.");
		//document.forms[formName].elements[0].focus();
		return false;
	}
	else {
		$(".found, .no_results, .results, #cat_tips_fmt, #incat, #searchback, #category_list3").css("display","none");
		$(".searching").css("display","inline");
		$("#act_search_list, #category_list1, #category_list2, #category_list3").empty();
		$("#def_land_fmt").hide("fast");
		$("#search_pane").fadeIn("slow", function() {
			$(".anchor").css("background-image","url(http://img.webmd.com/dtmcms/live/webmd/consumer_assets/site_images/modules/loading_small.gif)");
			document.forms["burnact"].id.value = "";
			document.forms['searchburn'].burn_search.value = query.split("&")[0];
			$(".selection, .results_num, #incat strong").html("");
			$("#select_nutr_fmt,#category_list1, #category_list2, .search_tips_fmt, .anchor").css("display","block");
			$(".food_results_list_fmt, .activity_results_list_fmt").scrollTop(0);
			var r = 0;
			results = new Array();
			var apiCall = setAPIcall("SearchActivity",query.replace(/[^a-zA-Z 0-9 ,&]+/g,' '));
			ajaxError();
			$.getJSON(apiCall, function(json){
				if(json.items){						
					results = new Array();
					$.each(json.items,function(i,item) {
						results[r] = new aSearchObject(item);
						r++;
					});
				}
				if(r<1) {
					$(".results_num").html("0");
					$(".found").css("display","inline");
					$(".no_results").css("display","block");
					$(".searching, .results").css("display","none");
				}
				else {
					showResults(json.len,"#act_search_list","burnact",query);
					$(".results_num").html(json.len);
					$(".found").css("display","inline");
					$(".results").css("display","block");
					$(".searching, .no_results").css("display","none");
				}
			});
			$(".search_term").html(query);
		});
	}
	return false;
}
function burnAct(formName) {
	var valid = calculate(formName);
	var weight = parseInt(document.forms[formName].w.value);
	var rows = $(".blank_row").length;
	if(rows > 0 && valid) {
		var act = formCStr(formName,formName).split("|");
		if(act[0]) {
			var aid = act[0].split(":")[1];
			burned[aid] = new actObject(act);
			writeBurnedAct(aid);
			$(".selection").html("");
			$(".selected_item_fmt").removeClass("selected_item_fmt");
			$("#cals span").html("0");
		}
		$(document.forms).each(function() { this.reset(); });
		document.forms[formName].w.value = weight;
	}
	else if(valid) {
		alert("You may only add up to 5 activities.  Please either remove an activity from your list or check out the Food & Fitness Planner to plan your activities.");
	}
	return false;
}
function writeBurnedAct(id) {
	if(id != "") {
		var apiCall = setAPIcall("GetActivity",id);
		$.getJSON(apiCall, function(json){
			$.each(json,function(i,item) {
				writeBurnedActRow(item.id,item.nm,burned[item.id].c,burned[item.id].tm);
				rowColor();
				nutr.burned += burned[item.id].c;
				replaceNV();
			});
		});
		$("#cals span").html("0");
	}
}
function writeBurnedActRow(id,name,cal,dur) {
	$(".blank_row:first").replaceWith('<div class="log_item_fmt log_row_fmt" id="' + id + '"><div class="remove_fmt"><a href="" onclick="return removeSum(\'' + id + '\');"><img src="http://img.webmd.com/dtmcms/live/webmd/consumer_assets/site_images/tools/food_fit/remove_btn.gif" alt="Remove this" width="12" height="12" border="0" class="remove_btn_fmt" /></a></div><div class="title_fmt">' + name + '</div><div class="amount_fmt"><span>' + dur + '&nbsp;min</span></div><div class="cal_fmt">' + cal + '</div></div>');
	$("#cals span").html("0");
}
