var loader;
var web;
var googleSearch;
var SilverlightSearchControl = null;

function pluginLoaded()
{
    SilverlightSearchControl = document.getElementById('silverlightPlugIn'); 
    web = new EggHeadCafeSearchLinks('googlesearchdiv');
}

 
function EggHeadCafeSearchLinks(search){ this.buildSearchControl(search); }
 
EggHeadCafeSearchLinks.prototype.buildSearchControl = function(search)
{
  googleSearch = new GwebSearch(); 
  googleSearch.name=search;
  googleSearch.setResultSetSize(GSearch.LARGE_RESULTSET);
  googleSearch.setNoHtmlGeneration(); 
  googleSearch.setSearchCompleteCallback(this, EggHeadCafeSearchLinks.prototype.searchComplete, [null]);
}
 
EggHeadCafeSearchLinks.prototype.execute = function(query){ googleSearch.execute(query);}
 
EggHeadCafeSearchLinks.prototype.clearAllResults = function () { googleSearch.clearAllResults; }

EggHeadCafeSearchLinks.prototype.searchComplete = function() {
    resultarr = googleSearch.results;

    var cursor = googleSearch.cursor;

    if (resultarr.length == 0) {
        SilverlightSearchControl.Content.SearchViewModelResponse.Send(1, "failure", "");
        return;
    }

    var xml = '<?xml version="1.0"?><message><pageCount>' + cursor.pages.length + '</pageCount><records>';
    var xml2 = '</records></message>';

    for (i = 0; i < resultarr.length; i++) {
   
        xml += '<record><url><![CDATA[' + resultarr[i].unescapedUrl + ']]></url>';
        xml += '<description><![CDATA[' + resultarr[i].title + ']]></description>';
        xml += '<summary><![CDATA[' + resultarr[i].content + ']]></summary></record>';
    }

    SilverlightSearchControl.Content.SearchViewModelResponse.Send(1, "200", xml + xml2);

}

function GotoGoogleSearchResultPage(pageNumber) {
  googleSearch.gotoPage(pageNumber);
}
 
function LoadGoogleSearchResults(searchTerm)
{
  loader=0;
  web.clearAllResults();
  web.execute(searchTerm);     
}
  
