﻿// This code generates a "Raw Searcher" to handle search queries. The Raw Searcher requires
// you to handle and draw the search results manually.
google.load('search', '1');
google.load('feeds', '1');

var webSearch;
var contentDiv;
var query;

function setQuery(queryterm) {
    query = queryterm
}

function searchComplete() {
  // Check that we got results

  var results = webSearch.results;
  
  if (results && results.length > 0) {
    contentDiv.innerHTML = '';
    var newResultsDiv = document.createElement('div');
    newResultsDiv.id = 'results';
    
    for (var i = 0; i < results.length; i++) {
      var result = results[i];
      // Create HTML elements for search results
      var resultHTML = '<div class="serpTitle"><a href="' + result.unescapedUrl + '" target="_blank" rel="nofollow">' + result.titleNoFormatting + '</a></div>';
      resultHTML += '<div class="serpTitle">' + result.content + '</div>';
      resultHTML += '<div class="serpURL">' + result.visibleUrl + '</div>';
      newResultsDiv.innerHTML += resultHTML;
    }
    
    contentDiv.appendChild(newResultsDiv);
  }
}

function runSearch() {
  contentDiv = document.getElementById('contentWebSearch');

  // Create a BlogSearch instance.
  webSearch = new google.search.WebSearch();

  // Set searchComplete as the callback function when a search is complete.  The
  // blogSearch object will have results in it.
  webSearch.setSearchCompleteCallback(this, searchComplete, null);

  // Execute search query
  webSearch.execute(query);

  // Include the required Google branding
  //google.search.Search.getBranding('branding');
}

//RSS Feeds
function setRSS(){
  var rssSite = 'http://news.google.com/news?hl=en&q=dice&um=1&ie=UTF-8&output=rss'; //'http://news.google.com/news?hl=en&q=' + query.replace(" ", "+") + '&um=1&ie=UTF-8&output=rss';
  google.feeds.findFeeds(rssSite, findDone);
}

function findDone(result) {
  // Make sure we didn't get an error.
  if (!result.error) {
    // Get content div
    var content = document.getElementById('contentRSS');
    var html = '';

    // Loop through the results and print out the title of the feed and link to
    // the url.
    for (var i = 0; i < result.entries.length; i++) {
      var entry = result.entries[i];
      html += '<p class="serpTitle"><a href="' + entry.url + '" rel="nofollow">' + entry.title + '</a></p>';
    }
    content.innerHTML = html;
  }
}


function loadFeedControl() {
    var feed  = "http://news.google.com/news?hl=en&q=" + query.replace(" ", "+") + "&um=1&ie=UTF-8&output=rss";
    var options = {numResults : 10,
                   linkTarget : google.feeds.LINK_TARGET_BLANK,
                   pauseOnHover : false,
                   stacked : true,
                   title : query}
    new GFdynamicFeedControl(feed, "contentRSS", options);
  }
