(function($) {
	$(function() {
		GSearch.getBranding($('#branding')[0], GSearch.HORIZONTAL_BRANDING); 

		$('#searchform').submit(function(e) {
			e.preventDefault();

			if ($('#searchbtn').is('.btn-disabled')) 
				return;

			$('#searchbtn').addClass('btn-disabled');

			$('#sitesearch').innerHTML = 'Searching...';
			siteSearch = new google.search.WebSearch();
			siteSearch.setSiteRestriction("tinymce.moxiecode.com");
			siteSearch.setResultSetSize(GSearch.LARGE_RESULTSET);
			siteSearch.setNoHtmlGeneration();

			siteSearch.setSearchCompleteCallback({search : siteSearch, target : 'siteresults', type : 'site'}, function() {
				var s = this.search;

				$('#searchbtn').removeClass('btn-disabled');
				$('#paging').hide();
				$('#sitesearch,#paging ul').html('');

				if (s.results.length) {
					$.each(s.results, function(i, o) {
						$('<div class="item"><a href="' + unescape(o.url) + '">' + o.title +
							'</a></div><div class="result-content">' + o.content + '</div><div class="link">' +
							unescape(o.url) + '</div>'
						).appendTo('#sitesearch');
					});

					$('#paging dt').html('Page ' + (s.cursor.currentPageIndex + 1) + ' of ' + s.cursor.pages.length);

					if (s.cursor.pages.length > 1) {
						$('#paging').show();

						$.each(s.cursor.pages, function(i) {
							$('#paging ul').append('<li><a class="' + (i == s.cursor.currentPageIndex ? ' active' : '') + '" href="#">' + (i + 1) + '</a></li>');
						});
					}
				} else
					$('#sitesearch').html('No results found.');
			});

			siteSearch.execute($('#searchquery').val());

			$("#paging ul").delegate("a", "click", function(e) {
				e.preventDefault();

				$(this).addClass('active');
				$("#paging a").removeClass('active');

				siteSearch.gotoPage($.inArray(this, $("#paging a")));
			});
		}).submit();

		/*$('#searchquery').keyup(function() {
			$('#searchform').submit();
		});*/

		$('#searchbtn').click(function() {
			$('#searchform').submit();
		});
	});
})(jQuery);
