limit = self.result_limit
if limit is not None:
limit += 1
- results = self.get_results(self.result_limit)
+ results = self.get_results(limit)
except:
if settings.DEBUG:
raise
class DatabaseSearch(BaseSearch):
model = None
- def has_more_results(self):
- return self.get_queryset().count() > self.result_limit
-
def search(self, limit=None):
if not hasattr(self, '_qs'):
self._qs = self.get_queryset()
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']