function doCookbookSearch (s,cat,ckbkname) {
var regExp1 = /\bfield\b/;
var regExp2 = /[(,),<,>,\[,\]]/;
var cats = "";
var searchstr = "";
var ckbknamesearch = "";
var searchitems = 0;
var leftpar = ckbkname.indexOf('(');
var rightpar = ckbkname.indexOf(')');
var productname = ckbkname.replace('®','%26reg;');
productname = productname.replace('#','%23');
ckbkname = ckbkname.substring(leftpar +1,rightpar);
var str = s.value; if ( str == "" && cat.toLowerCase() == "all categories:" && ckbkname.toLowerCase() == ""){ 
alert("Please be sure to enter something to search for.");
s.focus();
} else { 
if ( typeof regExp1.source != 'undefined' ) //supports regular expression testing 
if ( regExp1.test( str ) || regExp2.test( str ) ){
var alrt = "Please note that you can not include:"; 
alrt += "\n\nThe reserved word 'field'\nthe characters [, ], (, ), < or >";
alrt += "\n\nin your search query!\n\nIf you are confident that you know";
alrt += "\nwhat you are doing, then you can\nmanually produce the URL required."
s.focus();
return alert( alrt );
}

if (cat.toLowerCase() != "all categories:") {
	cats = "%20FIELD%20category%20contains%20%22" + cat + "%22%20"
}
if (ckbkname.toLowerCase() != "") {
	ckbknamesearch = "%20FIELD%20itemnum%20contains%20%22" + ckbkname + "%22%20"
}
//Get count of search items
if (s.value !="") {searchitems++}
if (cat.toLowerCase() !="all categories:") {searchitems++}
if (ckbkname.toLowerCase() != "") {searchitems++}
if (searchitems == 3) {
	//All Three search items
	searchstr = s.value + "%20AND" + cats + "%20AND" + ckbknamesearch;
} else if (searchitems == 1) {
	if (s.value !="") {
		searchstr = s.value;
	} else if (cat.toLowerCase() !="all categories:") {
		searchstr = cats;
	} else {
		searchstr = ckbknamesearch;
	}
} else {
	if (s.value == "") {
		searchstr = cats + "%20AND" + ckbknamesearch;
	} else if (cat.toLowerCase() == "all categories:") {
		searchstr = s.value + "%20AND" + ckbknamesearch;
	} else {
		searchstr = s.value + "%20AND" + cats;
	}
}
window.location=hd + "/gooseberry/recipe.nsf/v.search?SearchView&Query=" + searchstr +  "&SearchOrder=4&SearchMax=15000&SearchWV=FALSE&SearchFuzzy=FALSE&start=1&count=15000&strstart=1&itemname=" + productname;
}
}
