
var cachedSearchTerms	= new Array();
cachedSearchTerms[0]	= "turkey";
cachedSearchTerms[1]	= "chicken";
cachedSearchTerms[2]	= "cookies";
cachedSearchTerms[3]	= "appetizers";
cachedSearchTerms[4]	= "candy";
cachedSearchTerms[5]	= "shrimp";
cachedSearchTerms[6]	= "pasta";
cachedSearchTerms[7]	= "desserts";
cachedSearchTerms[8]	= "apple pie";
cachedSearchTerms[9]	= "ham";
cachedSearchTerms[10]	= "beef";
cachedSearchTerms[11]	= "cheesecake";
cachedSearchTerms[12]	= "fudge";
cachedSearchTerms[13]	= "stuffing";
cachedSearchTerms[14]	= "sweet potatoes";
cachedSearchTerms[15]	= "mashed potatoes";
cachedSearchTerms[16]	= "potatoes";
cachedSearchTerms[17]	= "soup";
cachedSearchTerms[18]	= "sweet potato";
cachedSearchTerms[19]	= "pumpkin";
cachedSearchTerms[20]	= "pumpkin pie";
cachedSearchTerms[21]	= "pecan pie";
cachedSearchTerms[22]	= "cake";
cachedSearchTerms[23]	= "shrimp";
cachedSearchTerms[24]	= "green beans";
cachedSearchTerms[25]	= "gravy";
cachedSearchTerms[26]	= "salmon";
cachedSearchTerms[27]	= "cranberry";
cachedSearchTerms[28]	= "cranberry sauce";
cachedSearchTerms[29]	= "chili";
cachedSearchTerms[30]	= "thanksgiving";
cachedSearchResultUrl	= "http://web.foodnetwork.com/food/web/cachedSearchResults/0,7822,OID,00.html";
uncachedSearchResultUrl	= "http://web.foodnetwork.com/food/web/searchResults"



function DoSearch(theForm) {
	
	var isCachedTerm			= false;
	var searchString 			= theForm.searchString.value;
	var searchTypeControl		= theForm.searchType;
	var searchTypeControlType	= GetFormElementType(searchTypeControl);
	var searchType				= "";	
	
	// By default, set the form action to the uncached results
	theForm.action	= uncachedSearchResultUrl;

	
	// Get searchType value
	switch (searchTypeControlType) {
		case "checkbox": 
		case "radio":
			searchType = GetCheckboxValue(searchTypeControl);
			break;
		
		case "select": 
			searchType = searchTypeControl.options[searchTypeControl.selectedIndex].value;
			break;
		
		default:
			searchType = searchTypeControl.value;
			break;
	}
	
	
	// Only continue if this is a Recipe search
	if (searchType != "Recipe") return true;
	
	
	// Check for the search term in the array
	for (var i = 0; i < cachedSearchTerms.length; i++) {
		if (searchString.toLowerCase() == cachedSearchTerms[i]) {
			isCachedTerm = true;
			break;
		}
	}
			
	
	// Create and set new form action for cached terms
	if (isCachedTerm) {
		var oid 		= BagOid(searchString, searchType);
		var newAction	= cachedSearchResultUrl.replace(/OID/g, oid);
		theForm.action	= newAction;
	}
	

	// return true so that the form will always be submitted.
	return true;
	
}



function GetCheckboxValue(checkboxControl) {
	
	// Return value for group with only 1 item
	if (!checkboxControl.length) {
		if (checkboxControl.checked) {
			return checkboxControl.value;
		}
	}
	
	// Find the checked item in a group of checkboxes
	for (var i = 0; i < checkboxControl.length; i++) {
		if (checkboxControl[i].checked) return checkboxControl[i].value;
	}
	
	// Return empty string if none are checked.
	return "";
		
}


function GetFormElementType (formElement) {
	
	// Control Array. Use 0th element's type.
	if (formElement.length) {
		return formElement[0].type;
	} 
	
	// Single control. Use element's type.
	else {
		return formElement.type;
	}
}




function BagOid () {

	var baggedOid 	= new String();
	var oidParts	= new Array();
	var thisPart 	= new String();

	var i = 0;
	for (i = 0; i < arguments.length; i++) {
		thisPart = arguments[i];
		thisPart = thisPart.replace(/\&/g, "38");
		thisPart = thisPart.replace(/\'/g, "39");
		thisPart = thisPart.replace(/\,/g, "44");
		thisPart = thisPart.replace(/\./g, "46");
		thisPart = thisPart.replace(/\s/g, "~");
		oidParts = oidParts.concat(thisPart);
	}
	
	return oidParts.join("_");
	
}



var Tacoda_AMS_DDC_snippet_version = "1.2";
var Tacoda_AMS_DDC_clist = new Array("TID");
var Tacoda_AMS_DDC_clist_notset = null;
var Tacoda_AMS_DDC_keys = new Array();
var Tacoda_AMS_DDC_values = new Array();
var Tacoda_AMS_DDC_vars_num = 0;
function Tacoda_AMS_DDC_getCookie(name) {
var cname = name + "=";
var dc = document.cookie;
if (dc.length > 0) {
for(var begin = dc.indexOf(cname); begin != -1; begin = dc.indexOf(cname, begin)) {
if((begin != 0) && (dc.charAt(begin - 1) != ' ')) {
begin++;
continue;
}
begin += cname.length;
var end = dc.indexOf(";", begin);
if (end == -1)
end = dc.length;
return unescape(dc.substring(begin, end));
}
}
return Tacoda_AMS_DDC_clist_notset;
}
function Tacoda_AMS_DDC_addPair(key, value) {
Tacoda_AMS_DDC_keys[Tacoda_AMS_DDC_vars_num] = key;
Tacoda_AMS_DDC_values[Tacoda_AMS_DDC_vars_num] = value;
Tacoda_AMS_DDC_vars_num++;
}
function Tacoda_AMS_DDC_collect_vars() {
var Tacoda_AMS_DDC_vars_as_string = "";
for(var i = 0; i < Tacoda_AMS_DDC_vars_num; i++) {
Tacoda_AMS_DDC_vars_as_string += "&var_" + escape( Tacoda_AMS_DDC_keys[i] ) + "=" + escape( Tacoda_AMS_DDC_values[i] ) ;
}
return Tacoda_AMS_DDC_vars_as_string;
}
function Tacoda_AMS_DDC(Tacoda_AMS_DDC_img_url, Tacoda_AMS_DDC_js, Tacoda_AMS_DDC_Primary_img_url) {
Tacoda_AMS_DDC_js = parseFloat(Tacoda_AMS_DDC_js);
Tacoda_AMS_DDC_args = "?" + Math.random() + "&snippet_version=" + Tacoda_AMS_DDC_snippet_version + "&referrer=" + escape(document.referrer) + "&page=" + escape(window.location.href);
Tacoda_AMS_DDC_args += "&timezone=" + (new Date()).getTimezoneOffset();
for(var i = 0; i < Tacoda_AMS_DDC_clist.length; i++) {
var clist_name = Tacoda_AMS_DDC_clist[i];
var clist_value = Tacoda_AMS_DDC_getCookie(clist_name);
if(clist_value != null) {
Tacoda_AMS_DDC_args += "&clist_" + escape(clist_name) + "=" + escape(clist_value);
}
}
Tacoda_AMS_DDC_args += Tacoda_AMS_DDC_collect_vars();
var Tacoda_AMS_DDC_fake_image = new Image();
Tacoda_AMS_DDC_fake_image.src = Tacoda_AMS_DDC_img_url + Tacoda_AMS_DDC_args;
if ( Tacoda_AMS_DDC_Primary_img_url != null ) {
var Tacoda_AMS_DDC_primary_image = new Image();
Tacoda_AMS_DDC_primary_image.src = Tacoda_AMS_DDC_Primary_img_url;
}
}

