$(document).ready(function(){	
	$.extend({
		getUrlVars: function(){
			var vars = [], hash;
			var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
			for(var i = 0; i < hashes.length; i++)
			{
				hash = hashes[i].split('=');
				vars.push(hash[0]);
				vars[hash[0]] = hash[1];
			}
			return vars;
		},
		getUrlVar: function(name){
			return $.getUrlVars()[name];
		}
	});
	
	var config = {
		siteURL		: 'aquaciencia.com.br',
		searchSite	: true,
		type		: 'web',
		append		: false,
		perPage		: 8,
		page		: 0
	}
	
	googleSearch();
	
	function googleSearch(settings){
		termo = $.getUrlVar('s');
		settings = $.extend({},config,settings);
		settings.term = 'site:'+settings.siteURL+' '+termo;
				
		// URL of Google's AJAX search API
		var apiURL = 'http://ajax.googleapis.com/ajax/services/search/'+settings.type+'?v=1.0&callback=?';
		var resultsDiv = $('#resultados');
		
		$.getJSON(apiURL,{q:settings.term,rsz:settings.perPage,start:settings.page*settings.perPage},function(r){
			
			var results = r.responseData.results;
			$('#mais').remove();
			
			if(results.length){
				var pageContainer = $('<div>',{className:'container'});
				
				for(var i=0;i<results.length;i++){
					pageContainer.append(new result(results[i]) + '');
				}
				
				if(!settings.append){
					resultsDiv.empty();
				}
				
				pageContainer.append('<div class="clear"></div>')
							 .hide().appendTo(resultsDiv)
							 .fadeIn('slow');
				var cursor = r.responseData.cursor;
				if( +cursor.estimatedResultCount > (settings.page+1)*settings.perPage){
					$('<div>',{id:'mais'}).appendTo(resultsDiv).click(function(){
						googleSearch({append:true,page:settings.page+1});
						$(this).fadeOut();
					});
				}
			}
			else {				
				resultsDiv.empty();
				$('<p>',{className:'naoEncontrado',html:'Nenhum resultado encontrado para o termo: \"' + termo + '\"<br/>Tente novamente com outro termo.'}).hide().appendTo(resultsDiv).fadeIn();
			}
		});
	}
	
	function result(r){
		var arr = [];
		arr = [
			'<div class="webResult">',
			'<h4><a href="',r.unescapedUrl,'">',r.title,'</a></h4>',
			'<p>',r.content,'</p>',
			'</div>'
		];		
		
		this.toString = function(){
			return arr.join('');
		}
	}	
});

