mirror of
https://github.com/reddit-archive/reddit.git
synced 2026-04-27 03:00:12 -04:00
Ensure that unicode is being passed to l2cs
This is in preparation for some enhancements to l2cs that require it to have a decent interface (i.e., it's going to require unicode rather than accepting either byte strings or unicode)
This commit is contained in:
@@ -683,13 +683,13 @@ class FrontController(RedditController):
|
||||
article.title)
|
||||
query = _force_unicode(query)
|
||||
query = query[:1024]
|
||||
query = "|".join(query.split())
|
||||
query = "title:'%s'" % query
|
||||
query = u"|".join(query.split())
|
||||
query = u"title:'%s'" % query
|
||||
rel_range = timedelta(days=3)
|
||||
start = int(time.mktime((article._date - rel_range).utctimetuple()))
|
||||
end = int(time.mktime((article._date + rel_range).utctimetuple()))
|
||||
nsfw = "nsfw:0" if not (article.over_18 or article._nsfw.findall(article.title)) else ""
|
||||
query = "(and %s timestamp:%s..%s %s)" % (query, start, end, nsfw)
|
||||
nsfw = u"nsfw:0" if not (article.over_18 or article._nsfw.findall(article.title)) else u""
|
||||
query = u"(and %s timestamp:%s..%s %s)" % (query, start, end, nsfw)
|
||||
q = SearchQuery(query, raw_sort="-text_relevance",
|
||||
syntax="cloudsearch")
|
||||
pane = self._search(q, num=num, after=after, reverse=reverse,
|
||||
|
||||
@@ -614,7 +614,7 @@ class CloudSearchQuery(object):
|
||||
syntax = self.default_syntax
|
||||
elif syntax not in self.known_syntaxes:
|
||||
raise ValueError("Unknown search syntax: %s" % syntax)
|
||||
self.query = query.encode("utf-8") if query else ''
|
||||
self.query = filters._force_unicode(query or u'')
|
||||
self.converted_data = None
|
||||
self.syntax = syntax
|
||||
self.sr = sr
|
||||
@@ -624,7 +624,7 @@ class CloudSearchQuery(object):
|
||||
else:
|
||||
self.sort = self.sorts[sort]
|
||||
self.faceting = faceting
|
||||
self.bq = ''
|
||||
self.bq = u''
|
||||
self.results = None
|
||||
|
||||
def run(self, after=None, reverse=False, num=1000, _update=False):
|
||||
@@ -648,14 +648,15 @@ class CloudSearchQuery(object):
|
||||
elif self.syntax == "lucene":
|
||||
bq = l2cs.convert(self.query, self.lucene_parser)
|
||||
self.converted_data = {"syntax": "cloudsearch",
|
||||
"converted": filters._force_unicode(bq)}
|
||||
"converted": bq}
|
||||
self.bq = self.customize_query(bq)
|
||||
elif self.syntax == "plain":
|
||||
q = self.query
|
||||
if g.sqlprinting:
|
||||
g.log.info("%s", self)
|
||||
return self._run_cached(q, self.bq, self.sort, self.faceting,
|
||||
start=start, num=num, _update=_update)
|
||||
return self._run_cached(q, self.bq.encode('utf-8'), self.sort,
|
||||
self.faceting, start=start, num=num,
|
||||
_update=_update)
|
||||
|
||||
def customize_query(self, bq):
|
||||
return bq
|
||||
|
||||
Reference in New Issue
Block a user