From: mathieu Date: Tue, 26 Apr 2016 13:03:24 +0000 (+0200) Subject: MAJ locale X-Git-Tag: 1.6.2^2~15^2~8^2~2 X-Git-Url: https://git.parisson.com/?a=commitdiff_plain;h=80e8fadcfe2c2fa6349c54ca6203393d0fe48690;p=telemeta.git MAJ locale --- diff --git a/telemeta/forms/haystack_form.py b/telemeta/forms/haystack_form.py index 033327f8..adb39e00 100644 --- a/telemeta/forms/haystack_form.py +++ b/telemeta/forms/haystack_form.py @@ -41,7 +41,7 @@ class HaySearchForm(FacetedSearchForm): if self.cleaned_data['q']: #search input of a code, contains at least '_YYYY_' if not re.match('([a-zA-Z]*_?[EI])?_[0-9]{4}_([0-9]{3}_[0-9]{3})?', self.cleaned_data.get('q')): - sqs = sqs.filter(content__contains=self.cleaned_data['q']).facet('item_acces').facet('item_status').facet('digitized').facet('recording_context').facet('physical_format').facet('media_type') + sqs = sqs.filter(content__startswith=self.cleaned_data['q']).facet('item_acces').facet('item_status').facet('digitized').facet('recording_context').facet('physical_format').facet('media_type') else: sqs = sqs.filter(code__contains=self.cleaned_data['q']).facet('item_acces').facet('item_status').facet('digitized').facet('recording_context').facet('physical_format').facet('media_type') diff --git a/telemeta/locale b/telemeta/locale index 29bb7713..935fe71d 160000 --- a/telemeta/locale +++ b/telemeta/locale @@ -1 +1 @@ -Subproject commit 29bb7713cdc41042f0f7d0205eac32de202a8fbf +Subproject commit 935fe71dd269b94f3ae97a557abcb5a4410a1f4a diff --git a/telemeta/util/backend.py b/telemeta/util/backend.py index b52e6023..489a61d1 100644 --- a/telemeta/util/backend.py +++ b/telemeta/util/backend.py @@ -12,6 +12,8 @@ class CustomElasticBackend(ElasticsearchSearchBackend): {"type": "custom", "tokenizer": "whitespace", "filter": ["lowercase", "asciifolding"]} eb.setup() + +import unicodedata class CustomElasticSearchQuery(ElasticsearchSearchQuery): def build_query_fragment(self, field, filter_type, value): @@ -22,10 +24,10 @@ class CustomElasticSearchQuery(ElasticsearchSearchQuery): def build_query(self): valeur = super(CustomElasticSearchQuery, self).build_query() - print(valeur) + print (unicodedata.normalize('NFD', valeur).encode('ascii', 'ignore')) return valeur class CustomElasticEngine(ElasticsearchSearchEngine): backend = CustomElasticBackend - query = CustomElasticSearchQuery + query = CustomElasticSearchQuery#