/*

Searchlite v 0.1.1 Site Extension Port

Copyright (c) Tony Pisarra 2005
http://sophiaknows.com

DESCRIPTION: 

Adds coded highlighting to instances of searched terms occuring 
in site pages accessed via search engine results

CREATED:     2005-06-16
ISSUED:      2005-06-16
MODIFIED:    2005-06-23

*/

/* Searchlite (Begin Main) */

if(window.addEventListener) {
window.addEventListener("load", function(e) {
        var params=new Array();
        var swords='';
        var bgcolors=new Array("#fcc","#ffc","#cff","#ddd");
        var bstring=document.body.innerHTML;
        xtags=bstring.match(/<[^>]+>/g);
        bstring=bstring.replace(/<[^>]+>/g,'{T4G}');
        qparams=unescape(document.location.search.substring('1')).replace(/\+/g,' ').split('&');
        for(i=0;i<qparams.length;i++) {
            k=qparams[i].split('=');
            params[k[0]]=k[1];
            }
        if(params['q']) {swords=params['q'].split(' ');}
        if(params['p']) {swords=params['p'].split(' ');}
        if(swords) {
            for (i=0;i<swords.length;i++) {
                anchor="<span style=background:"+bgcolors[((29+i)%bgcolors.length)]+">$1<\/span>";
                exp=eval("/("+swords[i]+")/ig");
                bstring=bstring.replace(exp,anchor);
                } 
            for(h=0;h<xtags.length;h++) {
                bstring=bstring.replace("{T4G}",xtags[h]);            
                }
            document.body.innerHTML=bstring;
            document.close();
            }
        }, false);

}
/* Searchlite (End Main) */


// var params=new Array();var bodyhash=document.body.innerHTML;qparams=unescape(document.referrer).replace(/\+/g,' ').replace(/^.+\?/,'').split('&');for(i=0;i<qparams.length;i++) {k=qparams[i].split('=');params[k[0]]=k[1];}if(params['q']) {searchwords=params['q'].split(' ');}if(searchwords) {for (i=0;i<searchwords.length;i++) {anchor="<a name=matches_"+i+" style=background:#ddd>"+searchwords[i].toUpperCase()+"<\/a>";exp=eval("/"+searchwords[i]+"/ig");bodyhash=bodyhash.replace(exp,anchor);} document.body.innerHTML=bodyhash;document.close();}

