var a=0;
var b=1;
var c=2;
var d=3;
var e=4;
var f=5;
var g=6;
var h=7;
var i=8;
var j=9;
var k=10;
var l=11;
var m=12; 
var n=13; 
var o=true;
var p=1;
var q=2;
var r=3;
var s=4;
var flg1=true;
var flg2=true;

function startsearch(strValue) 
{ 
    var strValue	
	k= strValue	
    var oo;
    //k = window.location.search.substr(1);	
    k = unescape(k);
    if ( k.length > 0 ) 
    { 
        j = "";
        n= k; 
        k = findoper(k);
        func13();
        oo = k.toUpperCase();
        if ( !(m ) ) 
        {
            for( var cc=1; cc<searcharray.length; cc++ ) 
            { 
                func2( cc, oo ); 
            } 
            func3(); 
        } 
        func9();
        func8();
        func10();
        func11(); 
    }
  /* else
    { 
       alert("Please enter a keyword for search");
       document.formSearch.txtSearch.focus();
       parent.frames["main"].location.href="search.asp";
   }*/ 
  
} 

function func1(u) 
{
    if ((u>="a" && u<="z") || (u=="&") ||(u>="A" && u<="Z") || (u>="0" && u <="9")) 
    { 
        return true; 
    } 
    else 
    { 
        return false; 
    } 
}
function SearchMaker( cc, aa, oo ) 
{
    var v=searcharray[cc][aa].toUpperCase();
    var w, x, y; 
    var ff=0;
    searcharray[cc][f]=0;
    w=v.indexOf( oo );
    while (w >= 0)
    { 
        ff = ff + w + 1;
        if(( l== -2 ) || ( l== -5 )) 
        { 
            x = false; 
        } 
        else 
        { 
            if (w == 0) 
            { 
                x=false;
            } 
            else 
            { 
                x=func1(v.charAt(w-1)); 
            }  
        } 
        if(( l == -3 ) || ( l == -5 )) 
        { 
            y = false; 
        } 
        else 
        { 
            if ( v.length - w == oo.length) 
            { 
                y = false; 
            } 
            else 
            { 
                y = func1(v.charAt(w + oo.length)); 
            }  
        } 
        if (!x && !y) 
        { 
            searcharray[cc][i+searcharray[cc][f]] = ff - 1;
            searcharray[cc][f] ++; 
        } 
        v = v.substring(w+1,v.length);
        while( func1(v.charAt(0)) && v.length > 0 ) 
        { 
            v = v.substring( 1, v.length );
            ff ++; 
        } 
        w = v.indexOf(oo); 
    } 
} 
function func2(cc, oo) 
{ 
    var aa=-1, bb; 
    searcharray[cc][e]=-1;
    while( ++aa <= d && searcharray[cc][e]==-1 ) 
    { 
        bb = aa==0 ? b : (aa==1 ? c : (aa==2 ? a : d));
        SearchMaker( cc, bb, oo );
        if ( searcharray[cc][f] > 0 ) 
        { 
            searcharray[cc][e] = bb; 
        } 
    } 
} 
function func3() 
{ 
    var cc, aa, dd, ee;
    for( cc=1; cc<searcharray.length; cc++ ) 
    { 
        searcharray[cc][h] = cc; 
    } 
    if( o ) 
    {
        for( cc=1; cc<searcharray.length; cc++ ) 
        { 
            if( searcharray[cc][e] == b ) 
            { 
                searcharray[cc][g] = (4-p) * 15000; 
            }
            else if( searcharray[cc][e] == c ) 
            { 
                searcharray[cc][g] = (4-q) * 15000; 
            } 
            else if( searcharray[cc][e] == a ) 
            { 
                searcharray[cc][g] = (4-r) * 15000; 
            } 
            else 
            { 
                searcharray[cc][g] = (4-s) * 15000 + searcharray[cc][f]; 
            } 
        } 
        for( cc=2; cc<searcharray.length; cc++ ) 
        { 
            dd = searcharray[cc][g];
            ee = searcharray[cc][h];
            for( aa=cc; aa>1 && dd > searcharray[aa-1][g]; aa--) 
            { 
                searcharray[aa][g] = searcharray[aa-1][g];
                searcharray[aa][h] = searcharray[aa-1][h]; 
            }
            searcharray[aa][g] = dd;
            searcharray[aa][h] = ee; 
        } 
    }
} 

//function to add the link urls
function func4(cc) 
{ 
    var gg = searcharray[cc][f]==1 ? "" : "s";
    j += "<BR><SMALL>"; 
    j += "<font face='Verdana' size='1' color=gray>"; 
    j += "(" + searcharray[cc][f] + " quote" + gg + ")";
    j += "</font>"; 
    j += "</SMALL>"; 
} 
function func5(cc, sEArCHmaker) 
{ 
    var jj;
    var kk;
    var flg3 = false; 
    var ll=searcharray[cc][i + sEArCHmaker - 1]; 
    jj = ll<30 ? jj=0 : jj=ll-30;
    kk = (ll+30 > searcharray[cc][d].length) ? kk=searcharray[cc][d].length : kk=ll+30;
    while ((jj>=0) && !flg3) 
    { 
        if(func1(searcharray[cc][d].charAt(jj))) 
        { 
            jj--; 
        } 
        else 
        { 
            flg3=true; 
        } 
    } 
    jj++;
    flg3=false;
    while ((kk > ll) && !flg3) 
    { 
        if(func1(searcharray[cc][d].charAt(kk))) 
        { 
            kk--; 
        } 
        else 
        { 
            flg3=true; 
        } 
    } 
    j += "<BR><font face='Verdana' size='1'>\".. "+searcharray[cc][d].substring(jj,ll); 
    j += "<B><font color='#CC3300'>" + searcharray[cc][d].substring(ll , ll + k.length ) +"</font></B>";
    j += searcharray[cc][d].substring(ll + k.length ,kk) + " ..\"</font>";
} 
function func6( cc ) 
{ 
    if( flg1 ) 
    { 
        for( var aa=1; aa<=searcharray[cc][f]; aa++ ) 
        { 
            func5( cc, aa ); 
        } 
     }
     else 
     { 
         func5( cc, 1 ); 
     } 
     if( flg2 ) 
     { 
         func4( cc ); 
     } 
} 
function searchMaker( v, ll ) 
{  
    j += v.substring( 0, ll );
    j += "<B>" + v.substring( ll , ll + k.length ) +"</font></B>";
    j += v.substring( ll + k.length ,v.length ); 
} 
function func7( cc, ii ) 
{ 
    j += "<dt><dl><B><font face='Verdana' size='1'>" + ii +". ";
    j += "<A href=\""+searcharray[cc][a]+"\">"+searcharray[cc][b]+"</A></font></B><dd>";
    j += "<SMALL>URL:&nbsp;&nbsp;</SMALL>";
    j += "<font face='Verdana' size='1' color=gray>"; 
    if( searcharray[cc][e]==a ) 
    { 
        searchMaker( searcharray[cc][a], searcharray[cc][i] ); 
    } 
    else 
    { 
        j += searcharray[cc][a]; 
    } 
    j += "</font>"; 
    if( searcharray[cc][e]==c ) 
    { 
        j += "<BR>";
        searchMaker( searcharray[cc][c], searcharray[cc][i] ); 
    } 
    else 
    { 
        if( searcharray[cc][c].length > 0 ) 
        { 
            j += "<BR>" + searcharray[cc][c]; 
        } 
        else 
        {  
        } 
    } 
    if ( searcharray[cc][e]==d ) 
    { 
        func6(cc); 
    } 
    else 
    { 
        j+="</P>"; 
    } 
    j += "</dd></dl>"; 
}
function func8() 
{ 
    var ii = 0;
    if (! (m )) 
    { 
        for( var cc=1; cc<searcharray.length; cc++ ) 
        { 
            if( searcharray[searcharray[cc][h]][f] > 0 ) 
            { 
                 func7(searcharray[cc][h], ++ii); 
            } 
        }  
    } 
    else 
    { 
        if( l == -4 ) 
        { 
            j += "<P><B>ERROR:</B>&nbsp;The wildcard chararcter (*) must be at the beginning or end of the text.";
        } 
    }  
} 
function func9() 
{ 
   	
	j += "<html><head><title>Search results for \"" + n+ "\"</title></head>"; 
	j += "<body bgcolor='#FFFFFF' text='#000000' leftmargin='0' topmargin='0'";
	j += " marginwidth='0' marginheight='0' >";    
    j +="<table width=250 border='0' cellspacing=0 cellpadding=0><tr>";
    j +="<td width=1></td>";
    j +="<td align=right valign=top width=249>";
    j +="</td></tr></table>";
    j += "<p><font face='Verdana' size='2' color='#004480'><b>You searched for <font color='#CC3300'>" + n+"</font>.</b></font>"; 
} 
function func10() 
{ 
    var hh=0;
    if (!(m)) 
    { 
        for( var cc=1; cc<searcharray.length; cc++ ) 
        { 
            if( searcharray[cc][f]>0 ) 
            { 
                hh ++; 
            } 
         }  
    } 
    if(hh==0) 
    { 
        j += "<P class='search2'>No pages matched your search.&nbsp;&nbsp;"; 
    } 
    else 
    { 
        var gg = hh==1 ? "" : "s";
        j += "<P class='search2'>" + hh + " page" + gg + " listed.&nbsp;&nbsp;";
    } 
    
    j +="</P>"; 
    j += "</p></body></html>"; 
} 
function func11() 
{ 
    var mm = j;
    document.open();
    document.write(mm);
    document.close();
} 
function findoper( v ) 
{ 
    var nn="";
    for( var cc=0; cc<v.length; cc++) 
    { 
        if( v.charAt(cc)=="<" ) 
        { 
            nn += "&lt;"; 
        } 
        else if( v.charAt(cc)==">" ) 
        { 
            nn += "&gt;"; 
        } 
        else if( v.charAt(cc)=="\"" ) 
        { 
            nn += "&quot;"; 
        }
        else 
        { 
            nn += v.charAt(cc); 
        } 
        
     } 
     return( nn ); 
} 
function func13() 
{ 
    l = k.indexOf("*"); 
    if( l == 0 ) 
    { 
        l = -2; 
        m = false; 
    } 
    else if (l == k.length -1) 
    { 
        l = -3; 
        m = false; 
    } 
    else if (l > 0 ) 
    { 
        l = -4;
        m = true; 
    }
    else 
    { 
        m = false; 
    } 
    if ( k.indexOf("*") != k.lastIndexOf("*") ) 
    { 
        if( l == -2 ) 
        { 
            if( k.lastIndexOf("*") == k.length - 1 ) 
            { 
                 l = -5; 
            } 
            else 
            { 
                l = -4; 
                m = true; 
            } 
        } 
   }
   if( ( l == -2 ) || (l == -5 )) 
   { 
       k = k.substring( 1, k.length ); 
   } 
   if( ( l == -3 ) || (l == -5 )) 
   { 
       k = k.substring( 0, k.length - 1 ); 
   } 
} 
