// JavaScript Document
		
		var aValue;
		var content;
		var pag ;

function get_query()
	{
		
		var querystring = String(location.search);
		aValue1 = querystring.substring(querystring.indexOf("t=") + 2,querystring.length);
   		aValue = aValue1.replace(/%20/g," ");
		if(aValue!=='')
		{
	 	 	document.getElementById("s_query").value= aValue;
	  		var result_main=document.getElementById('result_main');
			result_main.style.display='';
			
			var loading=document.getElementById('loading_img');
			loading.style.display='';
			
			webSearch.execute(aValue);
	  		imageSearch.execute(aValue);
			videoSearch.execute(aValue);
	  		newsSearch.execute(aValue);
	  		blogSearch.execute(aValue);
			wikiSearch.execute(aValue);
			answerSearch.execute(aValue);
			get_value();
		}
	
	}


function get_value()
	{
		aValue=document.getElementById('s_query').value;
	}


function execute_all()
	{
	      if(document.getElementById('s_query').value)
		  {
		   var main_result = document.getElementById('result_main');
		   var pagination = document.getElementById('pagination');
		   var loading=document.getElementById('loading_img');
		  
		   main_result.style.display='';
		   pagination.style.display='BLOCK';
		   loading.style.display='';
		   //obj_main.r.innerHTML = '';
		  
		  obj_web.pingSearch();
		  obj_product.pingSearch();
		  obj_digg.pingSearch();
		  imageSearch.execute(aValue);
		  videoSearch.execute(aValue);
	  	  newsSearch.execute(aValue);
	  	  blogSearch.execute(aValue);
		  answerSearch.execute(aValue);
		  }
	}


var obj_main=
			{
				
				init:function()
				
				{
					
					//Google initialization Here
					google.load('search', '1');
					searchControl = new GSearchControl();
	  				searchControl.setResultSetSize(google.search.Search.LARGE_RESULTSET);
	  				searchControl.setLinkTarget(google.search.Search.LINK_TARGET_BLANK ); 
		
					webSearch = new google.search.WebSearch();
					imageSearch = new google.search.ImageSearch();
					videoSearch = new google.search.VideoSearch();
					newsSearch =new google.search.NewsSearch();
					blogSearch = new google.search.BlogSearch();
					wikiSearch = new google.search.WebSearch();
					answerSearch = new google.search.WebSearch();
		
					wikiSearch.setQueryAddition("Wikipedia");
					answerSearch.setQueryAddition("answer yahoo");
					
					searchControl.addSearcher(webSearch);
					searchControl.addSearcher(imageSearch);
					searchControl.addSearcher(videoSearch);
					searchControl.addSearcher(newsSearch);
					searchControl.addSearcher(blogSearch);
					searchControl.addSearcher(wikiSearch);
					searchControl.addSearcher(answerSearch);
					
					webSearch.setSearchCompleteCallback(this,execute_all,null);
					imageSearch.setSearchCompleteCallback(this,searchComplete_image,null);
					videoSearch.setSearchCompleteCallback(this,searchComplete_video,null);
					newsSearch.setSearchCompleteCallback(this,searchComplete_news,null);
					blogSearch.setSearchCompleteCallback(this,searchComplete_blog,null);
					wikiSearch.setSearchCompleteCallback(this,searchComplete_wiki,null);
					answerSearch.setSearchCompleteCallback(this,searchComplete_ans,null);
					
					var drawOptions = new GdrawOptions();
					drawOptions.setDrawMode(GSearchControl.DRAW_MODE_EXPAND);
					//drawOptions.setInput(document.getElementById('s_query'));
					searchControl.draw(document.getElementById("result_blog"), drawOptions);
					document.getElementById('result_blog').innerHTML='';
					
					
					//Getting the division elements
    				obj_main.s_query = document.getElementById('s_query');
    				obj_main.r = document.getElementById('result_web');
    								
					get_query();
					
					obj_main.page=0;
					pag = new YAHOO.widget.Paginator({ 
	    					rowsPerPage : 10, 
	    					totalRecords: 50, 
	    					containers  : 'pagination' 
						}); 
					pag.render();
					
					
					
				},
				handlePagination:function(state)
				{
					
					if (state.page==1)
						{
							obj_main.page=0;
						}
						else
						{
							obj_main.page = state.page*10+1;
						}
						pag.setState(state);
						obj_web.pingSearch();
				}
				
			}

var obj_keydown=
			
			{
					kd:function(e)
					{
										
					 	var s_query=obj_web.s_query;
						var key_code;
						// make it work on FF and IE
						if (!e) e = event;
						
						
						if(navigator.appName=='Netscape')
						{
						   if (!e)
						   e = document.event;
						   key_code=e.which;
						   
						}
						
						else
						key_code=e.keyCode;
						
						
						if (s_query == null)
							s_query = document.getElementById('s_query');
						
						if (key_code == 27)
						{
							
							obj_web.r.innerHTML = '';
				     		var main_result=document.getElementById('result_main');
							main_result.style.display='none';
							var pagination = document.getElementById('pagination');
							pagination.style.display='none';
							obj_main.s_query.value='';
				
						}
						
						
						else if(key_code==34||key_code==33||key_code==38||key_code==40||key_code==9||key_code==16||key_code==17||key_code==18||key_code==20||key_code==9)
						{	
						   window.focus();
						}
						else
						{
						  s_query.focus();
						}
					
				}
			}


var obj_web = 
		{
			init : function()
			{
					obj_web.s_query = document.getElementById('s_query');
    				obj_web.r = document.getElementById('result_web');
					obj_web.uri="http://api.search.live.net/json.aspx?JsonType=callback&JsonCallback=obj_web.pongSearch&sources=web&web.Count=10";
					obj_web.AppId = "&Appid=C9A85B01B3E0DA0DB11CA3FEC849CFAE2C17725C";
			},
			
			pingSearch: function()
			{
				if (obj_web.s_query.value)
    				{
						obj_web.s = document.createElement('script');
						var search_query = "&query=" + document.getElementById("s_query").value;
						var fullUri = obj_web.uri + obj_web.AppId + search_query+ "&web.Offset="+obj_main.page;
						obj_web.s.type ='text/javascript';
						obj_web.s.charset ='utf-8';
						obj_web.s.setAttribute("src",fullUri);
						document.getElementsByTagName('head')[0].appendChild(obj_web.s);
						
					}
			
			},
			pongSearch : function(results)
  			{
					obj_main.r.innerHTML = '';
					page_id=1;
    				var contentlbl = document.createElement('div');
		  			contentlbl.innerHTML='Web Results';
		  			contentlbl.className="result";
										
					var contentimg=document.createElement('img');
		  			contentimg.align="right";
		  			contentimg.valign="middle";
		  			contentimg.src="./Style/images/logo_bing.png";
					
					contentlbl.appendChild(contentimg);
					obj_main.r.appendChild(contentlbl);
					
					//obj_main.r.appendChild(contentimg);
					
					
					
					var result = null;
					var parent =document.createElement('div');
					var child = null;
					var displayUrl=null;
					var cache= null;
					
					if(results.SearchResponse.Web.Results)
					{
						for (var i = 0; i < results.SearchResponse.Web.Results.length; i++) 
						{
							result = results.SearchResponse.Web.Results[i];
							
							var child = document.createElement('a');
							var desc =document.createElement('div');
							var title=document.createElement('div');
							displayUrl = document.createElement('div');
							displayUrl.style.color="orange";
							cache=document.createElement('a');
							
							child.href=result.Url;
							child.target="_blank";
							
							title.innerHTML=result.Title;
							desc.innerHTML=result.Description;
							displayUrl.innerHTML=result.DisplayUrl;
							cache.href=result.CacheUrl;
							cache.target="_blank";
							cache.innerHTML='Cached Page'
							cache.style.color="orange";
							child.appendChild(title);
							parent.appendChild(child);
							parent.appendChild(desc);
							parent.appendChild(displayUrl);
							parent.appendChild(cache);
							
							
						}
						var loading=document.getElementById('loading_img');
						loading.style.display='none';
						obj_main.r.appendChild(parent);
						pag.subscribe('changeRequest',obj_main.handlePagination);
						
					}
					  else
					{
						var loading=document.getElementById('loading_img');
						loading.style.display='none';
						var child=document.createElement('div');
						child.innerHTML='No standard web pages containing all your search terms were found.<br/>Suggestions:<ul><li>Make sure all words are spelled correctly.</li><li>Try different keywords.</li><li>Try more general keywords.</li><li>Try fewer keywords.</li></ul>';  
						obj_main.r.appendChild(child);
					  }
						
				}
					
				
		}
		
var obj_product =
		{
			
  				init : function()
  				{
    				obj_product.s_query = document.getElementById('s_query');
    				obj_product.r = document.getElementById('result_products');
    			},
  				pingSearch : function()
  				{
    				get_value();
					if (aValue)
    				{
      				
					obj_product.s = document.createElement('script');
      				obj_product.s.charset ='utf-8';
					obj_product.s.src ='http://search.twitter.com/search.json?callback=obj_product.pongSearch&rpp=10&q='+aValue;
      				document.getElementsByTagName('head')[0].appendChild(obj_product.s);
					}
  				},
  				pongSearch : function(z)
  				{
    				obj_product.r.innerHTML = '';
					var lblimage = document.createElement('div');
					var lblLink = document.createElement('a');
					get_value();
					lblLink.href='Yahoo/Products/default.html?t='+aValue;
					lblimage.innerHTML='Twitter';
		  			lblimage.className="result";
					lblLink.appendChild(lblimage);
					obj_product.r.appendChild(lblLink);
					
					var j=0;		
					
					if(z.results.length > 0)
					{
							var ul=document.createElement('ul');
							for (var i = 1; i<6 ; i++)
									{
										
										var p = document.createElement('p');
										var newImg=document.createElement('img');
										var divImg=document.createElement('div');
										var user=document.createElement('a');
										var li=document.createElement('li');
										var newText=document.createElement('div');
										var cText=document.createElement('div');
										
										cText.className="twitter";
										
										newText.innerHTML=z.results[i].text;
										
										user.target="_blank";
										user.href="http://www.twitter.com/"+z.results[i].from_user;
										user.innerHTML=z.results[i].from_user+": ";
										
										cText.appendChild(user);
										cText.appendChild(newText)
										
										newImg.src=z.results[i].profile_image_url;
										newImg.height="48";
										newImg.width="48";
										
										divImg.className="twitter_img";
										
										p.style.clear="left";
										
										divImg.appendChild(newImg);
										li.appendChild(divImg);
										li.appendChild(cText);
										li.appendChild(p);
										ul.appendChild(li);
										
								}
								obj_product.r.appendChild(ul);
							}
							
							else
							{
							 var no = document.createElement('div');
							 no.innerHTML="No Results Found from Twitter";
							 obj_product.r.appendChild(no);
							}
						var see_more=document.createElement('a');
						see_more.innerHTML="See more";
						get_value();
						see_more.href='Yahoo/Products/default.html?t='+aValue;
						
						//obj_product.r.appendChild(table);
						obj_product.r.appendChild(see_more);
						
						
					}
				
		}

     var obj_digg=
     { 
	 
	init : function()
	   
  				{
    				obj_digg.s_query = document.getElementById('s_query');
    				obj_digg.r = document.getElementById('result_wiki');
    			},
  				pingSearch : function()
  				{
    				get_value();
					if (aValue)
    				{
      				
					obj_digg.s = document.createElement('script');
      				obj_digg.s.charset ='utf-8';
					obj_digg.s.src ='http://services.digg.com/topics?appkey=http%3A%2F%2Fwww.gdeep.in%2Fasknext&type=json&callback=obj_digg.pongSearch&query='+aValue;
      				document.getElementsByTagName('head')[0].appendChild(obj_product.s);
					//alert('ping');
					}
  				},
				
				pongSearch : function(z)
  				{
				    //alert('pong');
					obj_product.r.innerHTML = '';
					var lblimage = document.createElement('div');
					lblimage.innerHTML='Twitter';
		  			lblimage.className="result";
					obj_product.r.appendChild(lblimage);
					if(z.stories.count > 0)
					{
							var ul=document.createElement('ul');
  				            for (var i = 1; i<6 ; i++)
									{
										
										var p = document.createElement('p');
										var newImg=document.createElement('img');
										var divImg=document.createElement('div');
										var user=document.createElement('a');
										var li=document.createElement('li');
										var newText=document.createElement('div');
										var cText=document.createElement('div');
										cText.className="twitter";
										
										newText.innerHTML=z.stories[i].description;
										
										user.href=z.stories[i].href;
										user.innerHTML=z.stories[i].title;
										
										cText.appendChild(user);
										cText.appendChild(newText)
										
										//newImg.src=z.results[i].profile_image_url;
										newImg.className="digg";
										newImg.height="48";
										newImg.width="48";
										
										divImg.className="twitter_img";
										
										p.style.clear="left";
										
										divImg.appendChild(newImg);
										li.appendChild(divImg);
										li.appendChild(cText);
										li.appendChild(p);
										ul.appendChild(li);
										
								}
							obj_digg.r.appendChild(ul);
					 }
							
					else
					{
							var no = document.createElement('div');
							no.innerHTML="No Results Found from Twitter";
							obj_digg.r.appendChild(no);
					}
						var see_more=document.createElement('a');
						see_more.innerHTML="See more";
						get_value();
						see_more.href='Yahoo/Products/default.html?t='+aValue;
						
						//obj_product.r.appendChild(table);
						obj_digg.r.appendChild(see_more);
						
						
					}
  
		

										
     }
	function searchComplete_wiki() 	{}
   	function searchComplete_ans() 
    {
      // Check that we got results
      if (answerSearch.results && answerSearch.results.length > 0) 
      {
          // Grab our content div, clear it.
          var contentDiv = document.getElementById('result_ans');
          contentDiv.innerHTML='';
		  var contentlbl = document.createElement('div');
		  var lblLink = document.createElement('a');
		  contentlbl.innerHTML='Answer Results';
		  contentlbl.className="result";

		  lblLink.href="./Yahoo/Answers/default.html?t="+aValue;
		  lblLink.appendChild(contentlbl);
		  contentDiv.appendChild(lblLink);
    
          // Loop through our results, printing them to the page.
          var results = answerSearch.results;
          for (var i = 0; i < 2; i++) 
		  {
          // For each result write it's title and image to the screen
          var result = results[i];
          var webContainer = document.createElement('div');
          var content = document.createElement('div');
		  var url = document.createElement('div');
		  url.style.color="orange";
		  var url2 =document.createElement('div');
		  var a = document.createElement('a');
		  var br = document.createElement('br');
          
		  content.innerHTML= result.content.substring(0,100);
		  url.innerHTML = result.visibleUrl;
          a.href = result.url;
		  a.target="_BLANK";
		  a.innerHTML=result.title;

		   
          
          // There is also a result.url property which has the escaped version
          webContainer.appendChild(a);
          webContainer.appendChild(content);    
		  webContainer.appendChild(url);
		  webContainer.appendChild(br);
		  
          // Put our title + image in the content
          contentDiv.appendChild(webContainer);
        }
         var more = document.createElement('a');
		more.innerHTML="See more.....";
		get_value();
		more.href="./Yahoo/Answers/default.html?t="+aValue;
		contentDiv.appendChild(more);
        // Now add the paging links so the user can see more results.
       // addPaginationLinks(webSearch);
      }
    }
	
	function searchComplete_image() 
    {
      // Check that we got results
      if (imageSearch.results && imageSearch.results.length > 0) 
      {
          // Grab our content div, clear it.
          var contentDiv = document.getElementById('result_images');
		  contentDiv.innerHTML='';
          var table = document.createElement('table');
		  var lblimage = document.createElement('div');
		  var lblLink = document.createElement('a');
		  lblimage.innerHTML='Image Results';
		  lblimage.className="result";
		  //contentDiv.appendChild(lblimage);
		  var more = document.createElement('a');
		  more.innerHTML="See more.....";
		  get_value();
		  more.href="Bing/Images/default.html?t="+aValue;
		  lblLink.href="Bing/Images/default.html?t="+aValue;
		  lblLink.appendChild(lblimage);
		  contentDiv.appendChild(lblLink);		  
          // Loop through our results, printing them to the page.
          var results = imageSearch.results;
		  var j=0;
          for (var i = 0; i < 4; i++) 
		  {
          	// For each result write it's title and image to the screen
          	var result = results[i];
			var id = i+1;
      		var newImg = document.createElement('img');
			var a = document.createElement('a');
      		// There is also a result.url property which has the escaped version
	  
	  		if(i%2==0)
			{
			    
				var myRow = table.insertRow(j);	
				j++;
				
			}
			
			var myCell1 = myRow.insertCell(0);
			newImg.src = result.tbUrl;
			newImg.height="80";
	  		newImg.width="80";
			newImg.className="Myimg";
			a.target="_BLANK";
			a.href=result.url;
			a.appendChild(newImg)
			myCell1.appendChild(a);
            contentDiv.appendChild(table);
			contentDiv.appendChild(more);
			
			
		}
    
        // Now add the paging links so the user can see more results.
       // addPaginationLinks(imageSearch);
	   
	   
      }
    }
	
	function searchComplete_video() 
    {
	     // Check that we got results
      if (videoSearch.results && videoSearch.results.length > 0) 
      {
          // Grab our content div, clear it.
          var contentDiv = document.getElementById('result_videos');
		  contentDiv.innerHTML='';
          var table = document.createElement('table');
		  var lblvideo = document.createElement('div');
		  var lblLink = document.createElement('a');
		  lblvideo.innerHTML='Video Results';
		  lblvideo.className="result";
		  
		  var title = document.createElement('div');
		  var content = document.createElement('div');
		  	  
		 
		  
		  var more = document.createElement('a');
		  get_value();
		  more.innerHTML="See more.....";
		  more.href="./Bing/Videos/default.html?t="+aValue;
		  lblLink.href="./Bing/Videos/default.html?t="+aValue;
		  lblLink.appendChild(lblvideo);
		   contentDiv.appendChild(lblLink);
          // Loop through our results, printing them to the page.
          var results = videoSearch.results;
          for (var i = 0; i < 2; i++) 
		  {
          	// For each result write it's title and image to the screen
          	var result = results[i];
			var id = i+1;
      		var newImg = document.createElement('img');
			var a = document.createElement('a');
      		// There is also a result.url property which has the escaped version
	        
			var imgContainer = document.createElement('div');
			var myRow = table.insertRow(i);
			var myCell1 = myRow.insertCell(0);
			var myCell2 = myRow.insertCell(1);
			
			myCell1.valign="top";
			myCell2.valign="top";
			
			newImg.src = result.tbUrl;
			newImg.height="80";
	  		newImg.width="100";
			newImg.className="Myimg";
			a.target="_BLANK";
			a.href=result.url;
			a.appendChild(newImg)
			
			title.innerHTML= result.title.substring(0,30);
			title.style.color="orange";
			content.innerHTML=result.content.substring(0,20);
			myCell1.appendChild(a);
			myCell2.innerHTML=title.innerHTML;
		
				
		}
    
        contentDiv.appendChild(table);
		contentDiv.appendChild(more);
		
		// Now add the paging links so the user can see more results.
       // addPaginationLinks(imageSearch);
      }	
	}
	
    function searchComplete_news()
	{
	// Check that we got results
      if (newsSearch.results && newsSearch.results.length > 0) 
      {
          // Grab our content div, clear it.
          var contentDiv = document.getElementById('result_news');
		  contentDiv.innerHTML = '';
		  var contentlbl = document.createElement('div');
		  var lblLink = document.createElement('a');
		  contentlbl.innerHTML='News Results';
		  contentlbl.className="result";
		  get_value();
          lblLink.href="./News/default.html?t="+aValue;
		  // contentlbl.className="contentlbl";
		  lblLink.appendChild(contentlbl);
		  contentDiv.appendChild(lblLink);
    
          // Loop through our results, printing them to the page.
          var results = newsSearch.results;
          for (var i = 0; i < 3; i++) 
		  {
          	// For each result write it's title and image to the screen
          	var result = results[i];
          	var newsContainer = document.createElement('div');
          	var a = document.createElement('a');
		  	var br = document.createElement('br');
          
		  	
			publisher1 = result.publisher;
			date1 = result.publishedDate;
		  	a.href = result.unescapedUrl;
		  	a.target="_BLANK";
			a.innerHTML=result.title;
 
		    //date1.toString();
          	// There is also a result.url property which has the escaped version
          	newsContainer.appendChild(a);
          	newsContainer.appendChild(br);
		  	
		  	   
          	// Put our title + image in the content
          	contentDiv.appendChild(newsContainer);
        }
    	var more = document.createElement('a');
		more.innerHTML="See more.....";
		get_value();
		more.href="./News/default.html?t="+aValue;
		contentDiv.appendChild(more);
        // Now add the paging links so the user can see more results.
        //addPaginationLinks(webSearch);
      }
	
	 
    }
	
	function searchComplete_blog()
	{

      // Check that we got results
      if (blogSearch.results && blogSearch.results.length > 0) 
      {
          // Grab our content div, clear it.
          var contentDiv_blog = document.getElementById('result_blog');
          contentDiv_blog.innerHTML = '';
		  var contentlbl = document.createElement('div');
		  var lblLink = document.createElement('a');
		  contentlbl.innerHTML='Blog Result';
		  contentlbl.className="result";
		  
		  var contentimg=document.createElement('img');
		  contentimg.align="right";
		  contentimg.valign="middle";
		  contentimg.src="Style/images/poweredbygoogle.png";
		  
		  lblLink.href="./Blog/default.html?t="+aValue;
		  contentlbl.appendChild(contentimg);
		  lblLink.appendChild(contentlbl);
		  contentDiv_blog.appendChild(lblLink);
		  //contentDiv_blog.appendChild(contentimg);
		  
		  
    
          // Loop through our results, printing them to the page.
          var results = blogSearch.results;
          for (var i = 0; i < 4; i++) 
		  {
          // For each result write it's title and image to the screen
          var result = results[i];
          var blogContainer = document.createElement('div');
          var content = document.createElement('div');
		  var a1 = document.createElement('a');
		  var br = document.createElement('br');
		  var blogurl = document.createElement('div');
		  blogurl.style.color="yellow";
          
		  content.innerHTML= result.content;
		  a1.href = result.postUrl;
		  a1.target="_BLANK";
		  a1.innerHTML=result.postUrl;
		  blogurl.innerHTML= result.blogUrl;

		   
          blogContainer.appendChild(a1);
          blogContainer.appendChild(content);    
		  blogContainer.appendChild(blogurl);
		  
		  
		  blogContainer.appendChild(br);
		  // Put our title + image in the content
          contentDiv_blog.appendChild(blogContainer);
		  
		  
        }
    	var more = document.createElement('a');
		more.innerHTML="<b> See more..... </b>";
		get_value();
	    more.href="./Blog/default.html?t="+aValue;
		contentDiv_blog.appendChild(more);
	

        // Now add the paging links so the user can see more results.
        //addPaginationLinks(blogSearch);
      }
    
	}
