SCRIPT SOURCE


<SCRIPT>

<!-- hide this Javascript from old browser

var MAX_ENGINES = 75;
var SNARK_STRING = "go+get+it";

function MakeArray(n) {
for (var i = 1; i <= n; i++) {
this[i] = 0;
}
this.maxlen = n;
this.len = 0;

return this;
}

var engs = new MakeArray(MAX_ENGINES);

function find_substring(needle, haystack) {
var i, needlen = needle.length, haylen = haystack.length;
for (i=0; i<=haylen-needlen; i++) {
if (needle == haystack.substring(i,i+needlen))
return i;
}
return false;
}

function Engine(name, opts, home, search) {
var snark = find_substring(SNARK_STRING, search);
this.name = name;
this.opts = opts;
this.home = home;
this.pre_snark = search.substring(0,snark);
this.post_snark= search.substring(snark+SNARK_STRING.length, search.length);
}

function Add(name, opts, home, search) {
engs.len++;
if (engs.len <= engs.maxlen) {
engs[engs.len] = new Engine(name, opts, home, search)
}
else {
alert("Better increase MAX_ENGINES: " + engs.len + ">" + engs.maxlen)
}
}


Add("Yahoo!", "SELECTED",
"http://www.yahoo.com",
"http://search.yahoo.com/bin/search?p=go+get+it");


Add("Alta Vista", "",
"http://www.altavista.digital.com",
"http://www.altavista.com/cgi-bin/query?q=go+get+it");

Add("Lycos", "",
"http://www.lycos.com",
"http://www.lycos.com/cgi-bin/pursuit?query=go+get+it" );

Add("Infoseek", "",
"http://www.infoseek.com/",
"http://www.infoseek.com/Titles?qt=go+get+it" );

Add("Excite", "",
"http://www.excite.com/",
"http://search.excite.com/search.gw?search=go+get+it" );

Add("WebCrawler", "",
"http://www.webcrawler.com",
"http://www.webcrawler.com/cgi-bin/WebQuery?searchText=go+get+it" );

Add("America Online", "",
"http://www.aol.com",
"http://netfind.aol.com/search.gw?search=go+get+it" );


function HandleForm(form) {
form.submit(); // This fixes a mysterious Netscape bug. Without this line,
// you can't use to start the search the first time.
var i, oldq=form.query.value, newq="";
for (i=0; i var thischar = oldq.charAt(i);
if (thischar != ' ')
newq += thischar;
else if (lastchar != ' ')
newq += '+';
lastchar = thischar;
}
var eng = engs[1+form.service.selectedIndex];
location.href = newq ? eng.pre_snark + newq + eng.post_snark : eng.home;
}

function DisplayForm() {
document.writeln('<CENTER><FORM OnSubmit="HandleForm(this); return false"<');
document.writeln('<SELECT name="service">');
for (i=1; i <= engs.len; i++) {
document.writeln("