if(keys.length!=body.length) {
alert("Error - please make sure the number of keys[n] and body[n] entries in the database is the same.");
}

function ffind(a) {

var cs = document.f1.cs.checked;
var as = document.f1.as.checked;
var b = new Array();
var e = 0;
var ind = new Array();
var hit = new Array();

if(!as) { b[0] = a; }
else { b = a.split(/\s+/); }

for(i=0; i<b.length; i++) {
	if(b[i]=="" || b[i]==" ") { b.splice(i,1); }
	}

if(b[0]=="" || b.length==0) { b[0] = "missing_search_string"; }

dcont = "";

for(i=0; i<keys.length; i++) {
	var c1 = new Array();
	if(!as) { c1[0] = keys[i]; }
	else { c1 = keys[i].split(/\s+/); }
	var d = 0;
	var f = 0;

	for(j=0; j<b.length; j++) {
	var c2;
	if(!cs) { b[j] = b[j].toLowerCase(); }

	for(k=0; k<c1.length; k++) {
		if(!cs) { c1[k] = c1[k].toLowerCase(); }
		c2 = c1[k].indexOf(b[j]);
		if(c2 != -1) {
			d += 1;
			if(d==1) { e += 1; }
			if(c1[k].length==b[j].length) { f += 1; }
			if(c1.length==b.length && c1.length==f) {
				d += 1000;
				}
			ind[e-1] = i; hit[e-1] = d;
			}
		}
	}
}

for (i=0; i<ind.length-1; i++) {
	for (j=0; j<ind.length-i-1; j++) {
		if (hit[j] < hit[j+1]) {
		tmp = hit[j]; hit[j] = hit[j+1]; hit[j+1] = tmp;
		tmp = ind[j]; ind[j] = ind[j+1]; ind[j+1] = tmp;
		}
	}
}

/* for (i=0; i<ind.length && i<100; i++) {                                                             Limit to first 100 results */
for (i=0; i<ind.length; i++) {
dcont += "<table class=\"tab1\" cellspacing=\"0\" border=\"0\" width=\"700\" bgcolor=\"#bab9b9\"><tr class=\"col1\"><td>";
dcont += body[ind[i]];
dcont += "</table>";
}

if(e==0) { dcont += "<br><b>Found no matches for "; }
else if(e==1) { dcont += "<br><b>" + "Found one match for "; }
else dcont += "<br><b>Found " + e + " matches for ";
/* else if(e<=100) { dcont += "<br>Found " + e + " matches for "; }                  Limit to first 100 results */
/* else if(e>100) { dcont += "<br>First 100 matches displayed for "; }             Limit to first 100 results */
dcont += "\"" + a + "\"</b>";

document.all.content.innerHTML = dcont;

}
