From fbad74041c87c94038eafc7f38bb2e5a0c708cc6 Mon Sep 17 00:00:00 2001 From: Stephen Burrows Date: Thu, 14 Apr 2011 13:04:05 -0400 Subject: [PATCH] Set GoogleSearch to allow default args and to default to a search within the current site. --- contrib/sobol/search.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/contrib/sobol/search.py b/contrib/sobol/search.py index 8c695c6..39b93c7 100644 --- a/contrib/sobol/search.py +++ b/contrib/sobol/search.py @@ -300,10 +300,21 @@ class JSONSearch(URLSearch): class GoogleSearch(JSONSearch): search_url = "http://ajax.googleapis.com/ajax/services/search/web" - query_format_str = "?v=1.0&q=%s" # TODO: Change this template to reflect the app's actual name. result_template = 'search/googlesearch.html' _cache_timeout = 60 + verbose_name = "Google search (current site)" + + @property + def query_format_str(self): + default_args = self.default_args + if default_args: + default_args += " " + return "?v=1.0&q=%s%%s" % urlquote_plus(default_args).replace('%', '%%') + + @property + def default_args(self): + return "site:%s" % Site.objects.get_current().domain def parse_response(self, response, limit=None): responseData = json.loads(response.read())['responseData'] -- 2.20.1